MacOS

Tarihçe

Mac işletim sisteminin onuncu sürümü olmasına rağmen, Mac OS X'in gelişimi çoğu alanda klasik Mac OS'ten bağımsızdır. Sistemin altyapısını NextStep'ten alınmış ve daha sonra Darwin adı altında açık kaynak olarak sunulmuş Mach mikro çekirdeği ve BSD oluşturur. Bu sebepten dolayı Mac OS X Unix tabanlı bir işletim sistemidir.
1985 yılında Apple "yeni nesil" bir işletim sistemi yaratmak için kolları sıvamıştı (bakınız: Taligent ve Copland). Başarısızlıkla sonuçlanan girişimden sonra NeXT'in işletim sistemi (o zamanki adıyla OPENSTEP) yeni Mac işletim sisteminin temeli olarak kararlaştırılmıştı. Bu kararı takiben NeXT Apple tarafından alındı ve Steve Jobs Apple'a geri dönmüş oldu.
Jobs geri döndükten kısa bir süre sonra şirket başkanlığını geri aldı ve yeni işletim sistemi üzerindeki çalışmaları yoğunlaştırdı. OPENSTEP'i yavaş yavaş geliştirerek Mac OS X yapmayı amaç edinen bu projeye Rhapsody adı verildi. 
SH bilgisayarlarındaki donanım zorlukları, nesne tabanlı yeni bir yazılım mimarisi ve bazı ticari konulardaki anlaşmazlıklar yüzünden sancılı bir geçiş dönemi yaşanmış olsa da, Rhapsody Mac OS X adıyla 24 Mart 2001'de piyasaya sürüldü.

Ürün İsimleri

Mac OS X olarak başlayan serideki X harfi Mac OS 9'dan sonrasını ifade eder. Mac OS X 10.0 ile başlayan isim serisinde Kedigiller baz alınmıştır, fakat OS X Mavericks ile bu isimlendirme serisi sona ermiş, onun yerine ünlü yerlerin isimleri kullanılmaya başlanmıştır.

Mimari

MacOS'un çekirdeğinde, XNU çekirdeğinin üzerine kurulmuş, komut satırı arayüzünde standart Unix özellikleri bulunan POSIX uyumlu bir işletim sistemi bulunur. Apple bu yazılım ailesini Darwin adlı özgür ve açık kaynaklı bir işletim sistemi olarak piyasaya sürdü. Apple, Darwin'in üstünde, MacOS olan GUI tabanlı işletim sistemini tamamlamak için Aqua arayüzü ve Finder da dahil olmak üzere bir dizi bileşene katman yapmıştır.
Mac OS X olarak orijinal tanıtımı ile sistem, önceki sürümlerinden klasik Mac OS'den daha istikrarlı ve güvenilir bir platform sağlamak için yeni yetenekler getirdi. Örneğin, önleyici çoklu görev ve bellek koruması, sistemin birbirlerini kesmeden veya bozmadan aynı anda birden çok uygulamayı çalıştırma becerisini geliştirdi. MacOS mimarisinin birçok yönü, bir platformdan diğerine geçişi kolaylaştırmak için taşınabilir olacak şekilde tasarlanan OPENSTEP'den türetilmiştir. Örneğin NeXT, Apple'ın satın almasından önce orijinal 68k tabanlı NeXT iş istasyonlarından x86 ve diğer mimarilere taşınmış ve OPENSTEP daha sonra Rhapsody projesinin bir parçası olarak PowerPC mimarisine taşınmıştır.
MacOS High Sierra'dan önce ve katı hal sürücülerden (SSD'ler) başka sürücülerde varsayılan dosya sistemi klasik Mac OS'dan miras kalan HFS + 'dır. İşletim sistemi tasarımcısı Linus Torvalds, tasarımının "kullanıcı verilerini aktif olarak bozduğu" muhtemelen en kötü dosya sistemidir "diyerek HFS + 'yi eleştirdi. Apple, dosya sisteminin Unicode'u destekleyecek şekilde genişletildiğinde kötüleşen bir tasarımın dosya adlarının davaya duyarsızlığını eleştirdi. Başlangıçta, HFS Plus, big-endian 68K ve PowerPC sistemlerinde çalışan klasik Mac OS için tasarlandı. Apple, Macintosh'u little-endian Intel işlemcilere değiştirdiğinde, HFS + dosya sistemlerinde big-endian bayt sırası kullanmaya devam etti. Sonuç olarak, mevcut Mac'lerdeki macOS, dosya sistemi verilerini okurken bayt takas yapmalıdır. Bu endişeler macOS High Sierra'daki SSD'lerde dosya sistemleri için kullanılan yeni Apple Dosya Sistemi ile ele alınmaktadır.
MacOS'daki Darwin alt sistemi, Unix izinleri katmanını içeren dosya sistemi yönetiminden sorumludur. 2003 ve 2005'te iki Macworld editörü izin şemasını eleştirdi; Rob Roy Griffiths, bazı kullanıcıların izinleri her gün sıfırlamak zorunda kalabileceğini, 15 dakikaya kadar sürebilen bir işlemi önermişti: Ted Landau, yanlış yapılandırılmış izinleri "en yaygın hayal kırıklığı" olarak adlandırdı. Daha yakın zamanlarda, başka bir Macworld editörü olan Dan Frakes, izinlerin aşırı onarılması prosedürünü çok fazla kullandı. MacOS'un genellikle kullanıcı müdahalesi olmaksızın izinleri düzgün bir şekilde işlediğini ve sorunların ortaya çıktığı anda izinlerin sıfırlanmasının denenmesi gerektiğini savundu.
MacOS'un mimarisi katmanlı bir tasarıma sahiptir: katmanlı çerçeveler, ortak görevler için mevcut kodu sağlayarak uygulamaların hızlı gelişimine yardımcı olur. Apple kendi yazılım geliştirme araçlarını, en belirgin olarak Xcode adlı entegre bir geliştirme ortamı sağlamaktadır. Xcode, C, C ++, Objective-C ve Swift gibi çeşitli programlama dillerini destekleyen derleyicilere arabirimler sağlar. Apple-Intel geçişi için, geliştiriciler, uygulamalarını hem Intel tabanlı hem de PowerPC tabanlı Macintosh satırları ile uyumluluk sağlayan evrensel bir ikili olarak oluşturabilmeleri için değiştirildi. Birinci ve üçüncü parti uygulamalar, AppleScript çerçevesini kullanarak, klasik Mac OS'den veya programlama bilgisi gerektirmeyen önceden yazılmış görevler sunan yeni Automator uygulamasını kullanarak programlı olarak kontrol edilebilir.