Reklamı Kapat

Çek köşe yazarı Patrick Zandl, bu ay iş dünyasının kişisel bilgisayarlardan cep telefonlarına dönüşümünü ve ardından beş yıl süren, Apple'ın dünyanın en değerli şirketi haline geldiği dönemi anlatan bir kitap yayınladı. Cep telefonlarındaki büyük devrimin arkasında yatan her şeyi ve bunun tamamen yeni bir tablet pazarının oluşmasına nasıl yardımcı olduğunu ayrıntılı olarak okuyacaksınız. İşte kitaptan ilk örnekler.

iPhone OS X - iOS için işletim sistemi nasıl oluşturuldu?

İşletim sistemi, yakında çıkacak olan Apple cep telefonunun başarısında da belirleyici oldu. Bu, 2005'te pek yaygın olmayan bir inançtı; "akıllı telefonlar" en çok satanlar değildi, tam tersine, tek amaçlı yazılıma sahip telefonlar sıcak kek gibi satılıyordu. Ancak Jobs'un telefonundan gelecekte önemli bir genişleme olasılığına, geliştirmede esnekliğe ve dolayısıyla ortaya çıkan trendlere yanıt verme yeteneğine ihtiyacı vardı. Ve ayrıca mümkünse Mac platformuyla mümkün olan en iyi uyumluluk, çünkü şirketin başka bir işletim sisteminin geliştirilmesi nedeniyle bunalıma girmesinden korkuyordu. Yazılım geliştirme, gösterdiğimiz gibi, uzun süredir Apple'ın en güçlü noktalarından biri olmadı.

Karar, Şubat 2005'te Cingular Wireless temsilcileriyle Motorola'nın davet edilmediği gizli bir toplantıdan kısa bir süre sonra geldi. Jobs, Cingular'ı Apple'ın kendi telefonundan elde edilen gelirden pay alacağına ve Cingular'ı bir hücresel ağ kurma konusunda ciddi olmaya ikna etmeyi başardı. O zamanlar bile Jobs mobil ağdan müzik indirme fikrini destekliyordu ancak Cingular temsilcileri internetten indirmenin yaratabileceği yük artışı konusunda kötümserdi. Zil sesleri ve web siteleri indirme deneyimini tartıştılar ve geleceğin göstereceği gibi, Jobs'un cihazıyla yaratabildiği heyecanı hafife aldılar. Bu da kısa sürede onlara geri teper.

Bu projeyi başlatır Mor 2Jobs'un Motorola ile tatmin edici olmayan işbirliğinin ufkunun ötesine geçmek istediği. Hedef: Jobs'un piyasaya sürmek istediği tabletin yapımında kullanmayı planladığı, Apple'ın şimdiye kadar edindiği veya hızla geliştireceği teknolojilere dayalı, kendine ait bir cep telefonu (FingerWorks gibi). Ancak bir seçim yapması gerekiyordu: Ya hızlı bir şekilde birleşik iPod'lu bir cep telefonu piyasaya sürecek ve böylece yaklaşan iPod satış krizinden kurtulacak ya da hayalini gerçekleştirip bir tablet piyasaya sürecek. Her ikisine de sahip olamayacak çünkü Motorola ile işbirliği ona cep telefonunda bir iPod sağlamayacak; bu o noktada zaten oldukça açıktı, ancak Motorola ROKR'ın piyasaya çıkması bir altı ay daha alacak. pazar. Sonunda, belki şaşırtıcı ama çok mantıklı bir şekilde, Jobs müzik piyasasını kurtarmaya karar verdi, tabletin piyasaya sürülmesini erteledi ve tüm kaynakları, amacı iPod'lu dokunmatik ekranlı bir telefon yapmak olan Purple 2 projesine kaydırdı.

Şirketin Mac OS X işletim sistemini cep telefonları için uyarlama kararı, yalnızca çok fazla seçeneğin olmamasından değil, aynı zamanda daha sonra cihaz yakınsaması olasılığından da kaynaklanıyordu. Mobil cihazların artan bilgi işlem gücü ve bellek kapasitesi, Jobs'u gelecekte telefonda da masaüstü bilgisayarlarda kullanılanlara benzer uygulamalar sunmanın mümkün olacağına ve tek bir işletim sistemi çekirdeğine güvenmenin avantajlı olacağına ikna etti.

Geliştirmeyi hızlandırmak için iki bağımsız ekibin oluşturulmasına da karar verildi. Donanım ekibi cep telefonunu hızlı bir şekilde inşa etme görevini üstlenecek, diğer ekip ise OS X işletim sistemini uyarlamaya odaklanacak.

 Mac OS X, OS X ve iOS

Apple'da işletim sistemi sürümlerinin etiketlenmesi konusunda biraz kafa karışıklığı var. iPhone işletim sisteminin orijinal sürümünün aslında bir adı yok - Apple, pazarlama materyallerinde "iPhone, OS X'in bir sürümünü çalıştırıyor" ifadesini kullanıyor. Daha sonra telefonun işletim sistemine atıfta bulunmak için "iPhone OS" kullanmaya başlar. 2010 yılında dördüncü versiyonunun piyasaya sürülmesiyle birlikte Apple, iOS adını sistematik olarak kullanmaya başladı. Şubat 2012'de "Mac OS X" masaüstü işletim sistemi yalnızca "OS X" olarak yeniden adlandırılacak ve bu durum kafa karıştırıcı olabilir. Örneğin, iOS'un özünde OS X'ten geldiği gerçeğini hesaba katmaya çalıştığım bu bölümün başlığında.

Arka planda Darwin

Burada Darwin işletim sistemine doğru bir yol daha yapmamız gerekiyor. Apple, 1997 yılında Jobs'un şirketi NeXT'yi satın aldığında, NeXTSTEP işletim sistemi ve onun Sun Microsystems ile işbirliği içinde oluşturulan ve OpenSTEP adı verilen varyantı da bu işlemin bir parçası oldu. NeXTSTEP işletim sistemi aynı zamanda Apple'ın yeni bilgisayar işletim sisteminin de temeli olacaktı, sonuçta Apple'ın Jobs'un NeXT'sini satın almasının nedenlerinden biri de buydu. NeXTSTEP'in çekici ve o zamanlar belki de yeterince takdir edilmeyen çekiciliği, çoklu platform yapısıydı; bu sistem hem Intel x86 platformunda hem de Motorola 68K, PA-RISC ve SPARC'da, yani masaüstü platformlar tarafından kullanılan hemen hemen tüm işlemcilerde çalıştırılabiliyordu. o zaman. Ve tüm işlemci platformları için programın ikili sürümlerini içeren, yağ ikili dosyaları adı verilen dağıtım dosyalarını oluşturmak mümkündü.

NeXT'in mirası, Apple'ın ilk kez 1997'de bir geliştirici konferansında sunduğu Rhapsody adlı yeni bir işletim sisteminin geliştirilmesinin temelini oluşturdu. Bu sistem, bizim bakış açımıza göre, Mac OS'nin önceki sürümleriyle karşılaştırıldığında bir takım değişiklikler getirdi. bunlar esas olarak şunlardır:

  • çekirdek ve ilgili alt sistemler Mach ve BSD'ye dayanıyordu
  • önceki Mac OS (Mavi Kutu) ile uyumluluk için bir alt sistem - daha sonra daha çok Klasik arayüz olarak biliniyordu
  • OpenStep API'nin (Sarı Kutu) genişletilmiş uygulaması - daha sonra Cocoa'ya dönüştü.
  • Java sanal makinesi
  • Displa PostScript tabanlı bir pencereleme sistemi
  • Mac OS tabanlı ancak OpenSTEP ile birleştirilmiş arayüz

Apple, Mac OS'tan QuickTime, QuickDraw 3D, QuickDraw GX veya ColorSync gibi çoğu yazılım yapısını (çerçevesini) ve ayrıca orijinal Apple bilgisayarlarından Apple Dosyalama Protokolü (AFP), HFS, UFS ve diğerlerinden dosya sistemlerini Rhapsody'ye aktarmayı planladı . Ancak kısa sürede bunun hiç de kolay bir iş olmadığı anlaşıldı. Eylül 1'deki ilk geliştirici sürümünü (DR1997), Mayıs 2'deki ikinci DR1998 izledi, ancak hâlâ yapılması gereken çok iş vardı. İlk geliştirici önizlemesi (Geliştirici Önizlemesi 1) yalnızca bir yıl sonra, Mayıs 1999'da geldi ve sistem zaten Mac OS X olarak adlandırılıyordu; bundan bir ay önce Apple, Mac OS X Server 1 sunucu sürümünü ondan ayırdı. Darwin'in resmi olarak yayınlanmış ve aynı zamanda açık kaynak versiyonu, böylece bunu gerektiren diğer açık kaynak parçalarını kullanan ve Apple'ın yayınlandığında sistemine dahil ettiği bir sistemin kaynak kodlarını yayınlama koşulunun (çok tartışılan ve tartışılan) kısmını karşılıyor. Mach ve BSD çekirdeklerine dayanmaktadır.

Darwin aslında grafik arayüzü olmayan ve FairPlay müzik dosyası güvenliği gibi bir dizi özel kitaplığa sahip olmayan Mac OS X'tir. İndirebilirsiniz, çünkü daha sonra ikili versiyonlar değil, yalnızca kaynak dosyalar mevcut olacaktır, bunları çok çeşitli işlemci platformlarında bir işletim sistemi olarak derleyebilir ve çalıştırabilirsiniz. İleriye dönük olarak Darwin, Apple'da iki rol üstlenecek: Mac OS X'i başka bir işlemci platformuna taşımanın imkansız olacak kadar zor olmayacağını sürekli olarak hatırlatacak. Ve bu, Apple'ın yazılımının kapalı, tescilli olduğu yönündeki itirazlara da bir cevap olacaktır ki bu da Apple'ın daha sonra özellikle Avrupa'da yaratacağı izlenimdir. Eğitimde daha yaygın olduğu ve Darwin'in burada birçok okul sunucusunda yaygın olarak kullanıldığı Amerika'da, Apple yazılımında açıklık ve standart bileşenlerin kullanımı konusundaki farkındalık çok daha fazla. Darwin bugün hâlâ her Mac OS X sisteminin çekirdeğini oluşturuyor ve açık kaynak geliştirilmesine katkıda bulunan oldukça geniş bir gruba sahip; bu gelişme Mac OS X'in çekirdeğini de besliyor.

Mac OS X 10.0'ın Cheetah adlı ilk sürümü, Apple platformunda kullanım için kolayca değiştirilebileceği düşünülen Rhapsody'nin geliştirilmeye başlamasından dört yıl sonra, Mart 2001'de yayınlandı. Şirket için bir takım sorunlar yaratan bir ironi, çünkü bu dört yıl boyunca kullanıcılarını tatmin edici olmayan ve gelecek vaat etmeyen bir Mac OS platformuna zorladı.

Böylece Darwin, Project Purple 2 kapsamındaki işletim sisteminin temeli oldu. Apple'ın tasarım hissesine sahip olduğu ARM işlemcileri mi, yoksa masaüstü bilgisayarlarda yeni yeni kullanılmaya başlanan Intel'i mi kullanacağı belirsizliğini koruyan bir dönemde. , çok ihtiyatlı bir seçimdi çünkü tıpkı Apple'ın PowerPC ve Intel'de yaptığı gibi işlemci platformunu çok fazla acı çekmeden değiştirmeyi mümkün kıldı. Üstelik bu, bir arayüzün (API) eklenmesi gereken kompakt ve kanıtlanmış bir sistemdi - bu durumda, cep telefonu kitaplığına sahip, dokunmatik olarak optimize edilmiş bir OpenSTEP API olan Cocoa Touch.

Son olarak sistemi dört soyutlama katmanına bölen bir tasarım oluşturuldu:

  • sistemin çekirdek katmanı
  • çekirdek hizmetleri katmanı
  • medya katmanı
  • Cocoa Touch dokunmatik arayüz katmanı

Neden önemliydi ve dikkate değer mi? Jobs, cep telefonunun kullanıcının gereksinimlerine mükemmel şekilde yanıt vermesi gerektiğine inanıyordu. Kullanıcı bir düğmeye basarsa telefonun yanıt vermesi gerekir. Açıkça kullanıcının girişini kabul ettiğini kabul etmelidir ve bu en iyi şekilde istenen işlevin gerçekleştirilmesiyle yapılır. Geliştiricilerden biri bu yaklaşımı Jobs'a Symbian sistemli bir Nokia telefonunda gösterdi; telefon, tuşa basıldığında çok geç tepki verdi. Kullanıcı listedeki bir adı kaydırdı ve yanlışlıkla başka bir adı aradı. Bu Jobs için sinir bozucuydu ve cep telefonunda böyle bir şey görmek istemiyordu. İşletim sistemi kullanıcının seçimini öncelikli olarak işlemek zorundaydı, Cocoa Touch dokunmatik arayüzü sistemde en yüksek önceliğe sahipti. Ancak ondan sonra sistemin diğer katmanlarının önceliği oldu. Kullanıcı bir seçim yaptıysa veya girdi yaptıysa, kullanıcıya her şeyin yolunda gittiğine dair güvence verecek bir şeyin olması gerekiyordu. Bu yaklaşımın diğer bir argümanı da masaüstü Mac OS X'teki "atlama simgeleri"ydi. Kullanıcı bir programı sistem yuvasından başlatırsa, genellikle program diskten bilgisayarın RAM'ına tamamen yüklenene kadar bir süre gözle görülür hiçbir şey olmadı. Kullanıcılar programın zaten belleğe yüklendiğini bilmedikleri için simgeye tıklamaya devam edeceklerdir. Geliştiriciler daha sonra bu sorunu, programın tamamı belleğe yüklenene kadar simgenin etrafta dolaşmasını sağlayarak çözdüler. Mobil versiyonda sistemin herhangi bir kullanıcı girişine anında tepki vermesi gerekiyordu.

Bu yaklaşım daha sonra mobil sistemde o kadar kökleşmiş hale geldi ki, Cocoa Touch içindeki bireysel işlevler bile farklı öncelik sınıflarıyla sistemde işleniyor, böylece kullanıcı mümkün olan en iyi telefon kullanımı görünümüne sahip oluyor.

Şu anda Apple, telefonda üçüncü taraf uygulamaları çalıştırma konusunda ciddi değildi. O dönemde bu arzu bile edilmiyordu. Elbette, gelecek işletim sistemi, modern işletim sistemlerinin önleyici çoklu görevi, bellek korumasını ve diğer gelişmiş özelliklerini tam olarak destekledi; bu, o zamanki bellek koruması (Symbian), çoklu görev (Palm OS) veya dönüşümlü olarak sorun yaşayan diğer işletim sistemlerinin aksine. her ikisiyle de ( Windows CE). Ancak Jobs, yakında çıkacak olan cep telefonunu öncelikle Apple tarafından sağlanan müziği tüketmek için kullanılacak bir cihaz olarak değerlendirdi. Üçüncü taraf uygulamalar yalnızca gecikmeye yol açacaktı ve Jobs, dağıtım sistemi gibi bir dizi ayrıntının bunların etrafında çözülmesi gerektiğini fark etti; bu nedenle, mobil OS X, arka planda ek uygulamaları yerel olarak çalıştırma yeteneğini desteklese de, Apple yapay olarak sınırlandırdı. bu olasılık. iPhone çıktığında, yalnızca bu korumaya sahip olmayan "jailbreak'li" telefonlar yeni ortaya çıkan üçüncü taraf uygulamaları yükleyebiliyordu. Ocak 2007'de iPhone'un piyasaya sürülmesinden çok sonra Jobs, geliştiricilerin yalnızca web uygulamaları oluşturacağını ve yalnızca Apple'ın yerel uygulamalar oluşturacağını varsaydı.

Ancak 2006 yazında bile OS X'in mobil sürümünün geliştirilmesi tamamen yetersiz bir durumdaydı. Her ne kadar sistemin temel taşıma işlemi sadece iki mühendisten oluşan bir ekiple rekor bir sürede gerçekleşmiş olsa da, cep telefonu arayüzünün bireysel elemanlarının birbirine bağlılığı ve koordinasyonu umutsuzdu. Aramalar kesildi, yazılım sık sık çöküyor, pil ömrü mantıksız derecede düşüktü. Eylül 2005'te projede 200 kişi çalışırken, iki paralel ekiple bu sayı hızla XNUMX'e çıktı ama yine de yeterli olmadı. Apple'ın çalıştığı gizlilik ciddi bir dezavantajdı: yeni insanlar kamuya açık olarak işe alım yoluyla değil, genellikle aracılar aracılığıyla tavsiye yoluyla bulunabiliyordu. Örneğin, yazılım ekibinin test kısmı büyük ölçüde sanaldı; prototip oluşturma ve testler, birbirleriyle çoğunlukla e-posta yoluyla iletişim kuran ve uzun süre Apple için çalıştıklarını bile bilmeyen kişilerle gerçekleştirildi. Ta ki böyle bir gizlilik seviyesine ulaşana kadar.

 

Kitap hakkında daha fazla bilgiyi şu adreste bulabilirsiniz: Patrick Zandl'ın web sitesi. Kitabı kitapçılardan basılı olarak satın alabilirsiniz Neoluksor a kosmaselektronik versiyonu hazırlanmaktadır.

.