İŞLETİM SİSTEMLERİ - Ünite 7: Mobil İşletim Sistemleri Özeti :

PAYLAŞ:

Ünite 7: Mobil İşletim Sistemleri

Giriş

Günümüzde mobil iletişim teknolojileri sadece iletişim kurma ya da konuşma amaçlı kullanılmamaktadır. Sosyal medya uygulamalarını takip etme, video izleme, oyun oynama, lokasyon tabanlı aramalar yapma, mobil bankacılığı kullanma, bir ürün araştırması yapma ve bir ürün satın alma gibi işlemlerin %20-30’luk kısmı akıllı telefonlar üzerinden gerçekleşmektedir. Mobil işletim sistemleri mobil cihazlardaki donanım kaynaklarını yöneten ve çeşitli uygulama yazılımları için yaygın servisleri sağlamakla sorumludur. Mobil işletim sistemleri, masaüstü bilgisayarlardaki işletim sistemlerinden tasarım ve sahip olduğu yetenekler açısından farklıdır. Mobil işletim sistemleri mobil cihazlardaki ekran boyutu, bellek, işlemci gibi donanımsal özelliklerle sınırlıdır.

Mobil İşletim Sistemlerinin Gelişimi

Mobil teknoloji tarihinde cep telefonları üzerinden kablosuz çağrıyı ilk gerçekleştiren kişi Martin Cooper olmuştur. 1973 yılında Motorola’ da mühendis olarak çalışan Martin Cooper 1 kg’dan fazla ağırlıkta olan 20 dakikalık görüşme yapılabilecek batarya gücüne sahip Motorola Dyna-Tac’i icat etmiştir. İlk akıllı telefonlar 1990’ların başında üretilmeye başlandı. Akıllı telefonlar cep telefonlarına göre daha ileri performans, işlem kapasitesine ve daha iyi bağlantıya sahip mobil işletim sistemi olan telefonlardı. 1992 yılında IBM firması tarafından dünyanın ilk dokunmatik ekranlı akıllı telefonu IBM Simon cihazı üretildi. Faks, çağrı cihazı gibi özellikleri ve takvim, elektronik posta, ajanda, dünya saatleri, not defteri, oyunlar gibi araçlara sahip olan bu cihazın dokunmatik ekranına parmak ya da özel kalemi ile dokunarak işlem yapılabiliyordu. Telefonun işletim sistemi olarak 1989 yılında geliştirilen Datalight DOS olarak da bilinen gömülü disk işletim sistemi ROM-DOS kullanıldı.

1996 yılında dünyanın ikinci akıllı telefonu Nokia 9000 Communicator piyasaya sürüldü. Katlanan bir ekrana sahip olan akıllı telefon, Intel 24 Mhz’lik işlemciye, 8Mb’lik hafızaya, 4 Mb’lık ön belleğe ve grafiksel kullanıcı arabirimi kullanan GeOS 3.0 işletim sistemine sahipti. Dünyanın ilk tam QWERTY klavyeli cep telefonu olarak tarihe geçti. Akıllı telefon tarihinde ise 1997 yılında piyasaya süren ve “akıllı telefon” kavramını ilk kullanan Ericsson GS88 olmuştur. 2002 yılı farklı akıllı telefonların ve işletim sistemlerinin piyasaya çıktığı bir yıl oldu. Blackberry OS işletim sistemini kullanmaktaydı; özellikle e-posta alışverişi için özelleştirildi. Aynı yıl Microsoft Windows Pocket PC OS işletim sistemi ve Pocket PC akıllı telefonu ile piyasadaki rekabete katıldı. 2004 yılında batarya konusunda ilerleme kaydedilmiş, lityum-iyon bataryalar kullanılmaya başlanmıştır.

2005 yılında PALM işletim sistemine sahip PALM Treo 700w modelini piyasaya sundu. PalmOS işletim sistemine sahip mobil cihazlar çoğunlukla PDA (personal digital assistant - kişisel dijital yardımcı) olarak lanse edildi. PDA’ler normal bir bilgisayarın yapabildiği çoğu işlemi yaptığı için cep bilgisayarları olarak da bilinmektedir.

2007 yılında iPhone mobil pazarda büyük bir dönüşüm başlattı. Apple’ın akıllı telefon tarihinde bir milat yarattığı, sonraki yıllarda tüm üretici firmalar tarafından da kabul edildi. Apple, Steve Jobs öncülüğünde Apple iOS işletim sistemi ile piyasaya sunulan ilk iPhone modelinin tam anlamıyla dokunmatik ekran oluşu, oyun, e-posta, İnternet gibi ihtiyaçları karşılayabilmesi, multi-touch (aynı anda çoklu dokunma ya da çoklu dokunmatik) özelliği ile piyasadaki akıllı telefonlara fark atmıştır. Günümüzde de hâlâ mobil pazarda önemli bir yere sahiptir.

2008 yılında Tayvanlı HTC, ilk Android işletim sistemi HTC Dream adındaki akıllı telefonu piyasaya sürdü. TMobile G1 olarak da bilinen bu telefon da Google’un Gmail, Google Talk, Google Harita gibi uygulamaların neredeyse tamamı kullanılabiliyordu. Mobil pazarda Android işletim sisteminin 2012’den bu yana düzenli olarak büyüdüğü ve pazara hakim olduğu görülmektedir.

Mobil işletim sistemlerinde yerleşik Uygulama Mağazası hizmeti sayesinde ise farklı kategorilerde sunulan, ücretli ve ücretsiz olarak indirilebilen uygulamalara erişilebilmektedir. Mobil işletim sistemleri üzerinde çalışan uygulamalar kullanıcılara hareketlilik kazandırmıştır. Mobil uygulamalar sayesinde kulanıcılar nöbetçi eczane, otobüs saatleri, uçuş bilgileri, en yakın hastane, en yakın restoran gibi acil ve gerek duyulan bilgilere ulaşabilmektedir.

iOS Mobil İşletim Sistemi

iOS, Apple firmasının mobil işletim sistemidir. Aslında iPhone telefonlar için geliştirilen iOS günümüzde iPod Touch (medya oynatıcısı), iPAD (tablet) gibi cihazlarda da kullanılmaktadır. iOS, MAC işletim sistemi olan MAC OS X’ten türetilmiştir.

2007’den bu yana yıllar geçmesine rağmen iOS işletim sistemine yönelik Apple firmasının ilkelerinin değişmediği görülmektedir. Bu ilkeleri şöyle sıralayabiliriz: Kullanıcı dostu olması, güvenlik, gizlilik, tasarım. Kullanıcı dostu olması, iOS işletim sisteminin kullanımı kolay arayüzünü ifade eder. iOS işletim sistemin en temel araçları tüm kullanıcıların rahatlıkla kullanabilecekleri basitlikte kolay anlaşılabilecek şekilde tasarlanmış olmasıdır. Güvenlik açısından donanım, yazılım ve işletim sistemi, mobil cihazın ve cihazdaki içeriklerin güvenliğini sağlamak için yerleşik özelliklere sahiptir. Bir başka deyişle, donanım ve yazılım özellikleri zararlı yazılımlara ve virüslere karşı koruma sağlayacak şekilde tasarlanmıştır. İşletim sistemi kimlik doğrulama desteği, parmak izini parola olarak kullanma gibi hizmetler sunmaktadır. Gizlilik açısından mobil uygulamalar, takvim, kişiler, anımsatıcılar veya fotoğraflardan konum bilgilerini veya verilerinizi isterse kullanıcıdan izin almak zorundadır. Sanal sohbet araçlarındaki iletiler şifrelendiği için, yazılan iletilerin başkaları tarafından görülmesi ve okunması mümkün olmamaktadır. Aynı zamanda Safari özel web tarayıcısında kullanıcı eğer isterse İnternet’te gizliliğini koruyarak web sitelerini kullanabilir.

2007 yılında Apple’ın yöneticisi Steve Jobs’ın iPhone cihazını duyurması ile birlikte mobil dünyada bir dönüşüm yaşanmıştır. Öncesinde daha yavaş çalışan, e-postaların okunması ve web sayfalarındaki metinlerin ve düşük çözünürlüklü resimlerin görüntülenmesi için kullanılan mobil cihazlar, bu dönüşümden sonra yüksek çözünürlüklü dokunmatik ekranlara, güçlü işlemci hızlarına, hızlı İnternet ağlarına kavuştular. Özellikle Safari gibi kullanışlı web tarayıcıların çıkmasıyla mobil cihazlar üzerinden farklı ekran boyutlarına uyumlu web tasarımlarının geliştirilmesi sonucunda mobil web sayfalarında okunabilirlik arttı. Bu dönüşüm, aynı zamanda dokunmatik ekranların yaşamımıza girmesini sağlamış ve kullanıcı deneyimlerinde de yenilik yaratmıştır.

iOS9'dan sonra Apple 2016'da iOS10, 2017'de iOS11, 2017'de ise iOS12 sürümleri yayınladı. Bu sürümlerde başlıca yenilikler olarak; Apple Pay, gelişmiş siri desteği, alt uygulama menüsü, Sesli Notlar, Apple News, Apple ARKit 2.0 sayılabilir.

iOS işletim sistemi mimarisi, Unix tabanlı çekirdeğin üzerinde yapılandırılmış dört servis katmanından oluşmaktadır. Bunlar “Çekirdek İşletim Sistemi”, “Çekirdek Hizmetleri”, “Medya Servisleri” ve “Cocoa Touch”’tır. Framework (çatı), dosyalar, resim dosyaları gibi kaynaklarla ilişkili dinamik paylaşımlı kütüphaneleri içeren bir pakettir. Yapılandırılmış dizin olarak da ifade edilebilir. Bir uygulama geliştirirken doğrudan servislerle değil bu servislerde kullanılan çatıları (framework) kullanırız.

iOS işletim sistemi, Unix tabanlı dört servis katmanı ve bu katmanlarda yer alan yapılandırılmış dizinler olarak adlandırılan çatılardan oluşmaktadır. Bu katmanlar şu şekilde ifade edilmektedir;

  • Çekirdek işletim sistemi katmanı: iOS işletim sistemi mimarisinin en alt katmanında yer alan çekirdeğe en yakın katmandır.
  • Çekirdek hizmetleri katmanı: uygulamalara yönelik temel sistem hizmetlerini içeren, lokasyon, iCloud, sosyal medya ve ağ gibi özellikleri destekleyen katmandır.
  • Medya hizmeti katmanı: iOS işletim sistemi mimarisinin ses, video, animasyon ve grafiksel işlemlerin gerçekleştirilmesini sağlayan katmandır.
  • Cocoa touch katmanı: Uygulama Geliştirme Arayüzü (API) olarak bilinen iOS işletim sisteminin en üstünde yer alan katmandır.

iOS işletim sistemi kapsamında uygulama geliştirmeye yönelik olarak iOS SDK (iOS Yazılım Geliştirme Kiti) yazılım geliştirme kiti kullanılmaktadır. Uygulama geliştirme sürecinde söz konusu kit içerisinde bulunan hazır sınıf ve kütüphanelerden yararlanılırken Objective C dili kullanılmaktadır.

Xcode IDE çok gelişmiş bir yazılım geliştirme kitidir. XCode geliştirme ortamı, Objective C dilinin yanı sıra C ve C++ dilleriyle de uygulama geliştirmeye olanak tanımaktadır. Xcode IDE ile entegre bir şekilde çalışan iOS simülatör, geliştirdiğiniz uygulamaları cihaz üzerinde test etmenizi sağlar. iOS uygulamalarınız görsel olarak tasarlamak için Interface Builder (arayüz oluşturucu) aracı kullanılabilir. XCode IDE ile bütünleşik olarak çalışan bu araç sayesinde sürükle bırak mantığıyla etiketlerin ve metin kutuları gibi kontrollerin ekran üzerinde yerleri konumlandırılabilir. Mobil cihazlar üzerinde uygulama geliştirmek için sınırlı hafıza ve işlem gücünü en verimli şekilde kullanmak gerekir. Instruments isimli araç, uygulamalarınızdaki performans açıklarınızı bulmaya ve bunları çözümleyebilmenize yardımcı olmaktadır.

Android İşletim Sistemi

Android, cep telefonu ve tablet gibi mobil cihazlar için tasarlanmış Linux tabanlı bir işletim sistemidir. Ancak günümüzde akıllı televizyon, e-okuyucular, akıllı saat, Google glass gibi teknolojileri de kapsayacak şekilde oldukça geniş kullanım alanına sahiptir. Uygulama geliştirme JAVA program dili ile yapılmaktadır, ancak C/C++ dilllerini de destekler. Geliştirilen uygulamaların uzantısı “.apk”dır. Youtube, Facebook gibi en yaygın kullanılan sosyal ağlar, Gmail ve Gmail takvim gibi hizmetlere kullanıcılar kolaylıkla erişebilir.

Android işletim sistemine yönelik tarihçe çok eski değildir. İlk Android işletim sistemi 2003 yılında Andrew Rubin, Rich Miner, Nick Sears ve Chris White tarafından Android firması altında Amerika Birleşik Devletleri’nde gerçekleştirildi. Android firmasının amacı taşınabilir cihazlara ilişkin gelişmiş Linux tabanlı, esnek, güncelleştirilebilir işletim sistemi yaratmaktı. 2005 yılında Android firması Google tarafından satın alındı. 5 Kasım 2007 yılında Google’ın çeşitli donanım, yazılım ve mobil operatör firmalarının yer aldığı (Broadcom, HTC, Sony, Dell, Intel, Motorala, Qualcomm, Texas Instruments, Samsun, LG, T-Mobile, Nvidia vb.) Open Handset Alliance isimli topluluğu (konsorsiyum) kurdu. Bu topluluğun amacı telefon sektöründe Apple ve Nokia gibi firmalara karşı ortak, açık ve standart bir platform oluşturmaktı. Google, Android adında açık kaynak kodlu Linux kernel (çekirdek) v2.6 tabanlı bir mobil işletim sistemini tüm kamuoyuna duyurdu. Desteklediği platformlar ise ARM, MIPS ve x86 olarak lanse etti ve geliştiriciler için yazılım geliştirme kitini (Software development kit–SDK) 12 Kasım 2007 tarihinde yayınladı. Android, 2008 yılından bu yana kullanıcı sayısı açısında en hızlı büyüyen teknoloji platformu olarak tarihe geçti. Android işletim sisteminin hızlı benimsenmesinin en önemli faktörü açık kaynak kodlu olmasıdır. Android’in açık kaynak kodlu bir yapıya sahip olması hem donanım üreticilerine hem de kullanıcılara büyük kolaylıklar sağlamaktadır.

2018 Nisan ayı verilerine göre Android dünyada kullanılan mobil işletim sistemlerinin %75.66’ını oluşturuyor.

22 Ağustos 2016 tarihinde Android 7.0 – Nougat, 21 Ağustos 2017 tarihinde Android 8.0 – Oreo ve 8 Mayıs 2018’de Android 9.0 – Android P yayınlandı. Bu sürümlerde öne çıkan yenilikler ise; VR modu, Vulkan API desteği, çoklu ekran desteği, Google Play Protect ve arayüz güncellemeleri sıralanabilir.

Android işletim sistemi mimarisi, Linux çekirdeği (kernel), sistem kütüphaneleri (libraries), android çalışma zamanı (runtime), uygulama geliştirme çatıları (framework) ve yerleşik temel uygulamalardan oluşmaktadır.

Temel yapı: Android işletim sistemi mimarisinin en altında Linux Kernel (çekirdek) bulunmaktadır. Linux Kernel katmanında bellek yönetimi, işlem kontrolü, güvenlik modeli, güç ve ağ yönetimi gerçekleştirilir.

Yerel (Sistem) kütüphaneler: Web tarayıcı, veri tabanı ve grafik-arayüz kütüphanelerinden oluşmaktadır. Yazılım uzmanları için gerekli olan bütün altyapıyı geniş bir kütüphane içerisinde sunulmaktadır. Android, çeşitli araçlar tarafından kullanılan bir dizi C/ C++ kütüphanelerine sahiptir. Medya kütüphaneleri pek çok popüler ses formatını oynatma ve kaydını desteklemektedir. Yerel kütüphanelere gömülü SGL birincil 2D grafik sağlayıcısı, açık GL/ES 3D grafik desteği sağlar.

Android çalışma zamanı: Temel Java kütüphaneleri ve Dalvik Sanal (virtual) Makinesi olarak iki önemli bileşeni vardır. Temel Java kütüphaneleri Java için çekirdek API’lerini içerir. Dalvik Sanal makinası, uygulamaların çalıştığı katmandır.

Uygulama çatısı: Uygulama platformudur. Android yazılım geliştiriciler için zengin bir platform sunmaktadır. Etkinlik yöneticisi, görünümler, bildirim yöneticisi, içerik sağlayıcılar ve kaynak yöneticisi servislerini içermektedir.

Uygulamalar: Java uygulamaları içerir; android çatısı altındaki servisler ve sınıflar kullanılarak oluşturulan yerel ve üçüncü parti uygulamaları kapsar. Lokasyon tabanlı hizmetler, zemin servisleri desteği, harita tabanlı etkinlikler, 2D ve 3D grafiklerine yönelik uygulamalar bulunur. App Widgetleri ana ekrana gömülüdür.

Android işletim sisteminde uygulama geliştirme, Android SD, açık kaynak kodlu Eclipse ID, Eclipse versiyonuna uygun ADT eklentisi ve en son sürüme sahip SDK araçlarının kurulumunu gerektirmektedir. SDK araçları sundukları hazır şema ve şablonlar ile kütüphaneler aracılığıyla kullanıcılara uygulama geliştirme olanağı sunmaktadır.

Windows Mobile İşletim Sistemi

Windows Mobile Microsoft tarafından PDA, akıllı telefonlar, tabletler gibi mobil cihazlar için tasarlanmış işletim sistemidir. Windows Mobile işletim sistemi Windows CE çekirdeği üzerine temellendirilmiştir. Windows Mobile kullanan PDA’lara Pocket PC denmektedir.

Windows Mobile işletim sistemi, Microsoft tarafından masaüstü bilgisayarlardan yapılan tüm işlemlerin akıllı telefonlar üzerinden gerçekleşmesi için tasarlandı. İşletim sisteminin çekirdeği Windows Compact Edition (CE) tabanlıydı. Windows CE, sanılanın aksine küçültülmüş Windows değil, özel olarak yazılmış işletim sistemidir. 2012 yılında devrim niteliğinde bir karar alarak Microsoft, mobil işletim sistemini sıfırdan yenileyerek akıllı bir işletim sistemi hâline getirmiştir ve bu yeni işletim sistemini piyasaya Windows Phone ismiyle sürmüştür. Windows Phone 8 sürümünde dosya sistemi (NTFS), ağ yığını, güvenlik elemanları, grafik motoru (DirectX), aygıt sürücüsü çerçevesi ve donanım soyutlama katmanı dahil olmak üzere Windows 8 ile aynı mimariyi payla- şan NT kernel üzerine kurulu bir platforma geçmiştir. 2013 yılında satın aldığı Nokia ile birlikte bu işletim sistemleri tanıtmakta, mobil pazarda rakipleri arasında yer bulmaya çalışmaktadır. Windows Phone 8 işletim sisteminin başlıca özellikleri Microsoft Cortana isimli sesli yardımcı, Word Flow Türkçe destekli klavyesi (tek parmağı sürükleyerek yazı yazma), bildirim alanı, ekran butonları ve de uygulamaları SD karta taşıma özelliğidir. Windows Mobile 10 ile gelen evrensel ofis uygulamaları oldukça elverişlidir. Mobil cihazlar için bu uygulama tek elle kullanım için optimize edilmiş, hızlı düzeltmeleri not tutma ve görüntülemeleri kolaylaştıracak şekilde tasarlanmıştır. Microsoft, daha sonra akıllı telefonlar ve ekran boyutu 8 inçten küçük tabletler için tasarlanan Windows Mobile 10 sürümünü çıkarmıştır. ARM’nin yanı sıra IA-31 işlemci mimarileri üzerinde çalışmaktadır. Windows 10 ile birlikte Universal Windows Platform (UWP–Evrensel Windows Platformu) gelmiştir; kodların %90’ının paylaşımını sağlayan bir platformdur. Bir kez kodlandı mı her platformda çalışabilen uygulamalar ile uygulama kullanma alışkanlarını değiştirmiştir.

Windows Phone işletim sisteminde uygulama geliştirmek için resmî platform Visual Studio 2013’dür. Bu platform Windows 8 Pro veya Windows 8 Enterprise 64Bit bilgisayarlarda çalışır. Windows Phone 8 uygulaması geliştirmek için işlemcinizin SLAT (Second Level Address Translation) destekli olması, BİOS ayarlarında sanallaştırmanın aktif hâle getirilmesi, Windows bileşenlerinden Hyper-V’nin aktif olması, bilgisayarınızın RAM’inin 4G ve üzeri olması gerekmektedir.

Mobil İşletim Sistemlerinin Karşılaştırılması

Mobil işletim sistemleri; yazılım, donanım, multimedya (Çokluortam), güç yönetimi ve geliştirme ortamı açılarından incelenebilir. Yazılım kategorisinde çağrı, bellek yönetimi ve çoklu görev yönetimi; donanım kategorisinde işletim sistemleri tarafından desteklenen donanım özellikleri; çokluortam kategorisinde işletim sisteminin desteklediği ses, video ve medya uygulamaları; güç yönetimi kategorisinde sistem enerji tasarrufu ve geliştirme ortamı kategorisinde ise üçüncü parti geliştiriciler için istenen platforma yönelik uygulama geliştirmeleri için ne kadar güvenilir olduğu yer alır. Geliştiriciler için en önemli kategoriler yazılım ve geliştirme ortamı kategorileri olurken iş uygulamalarına yönelik en temel kategoriler yazılım ve donanım, sıradan kullanıcının en önem verdiği kategoriler ise güç yönetimi, çokluortam özellikleri ve donanım desteği olarak değişmektedir. Kullanıcılar, mobil işletim sistemini seçerken hangi özelliklerin onların gereksinimlerine daha uygun olduğunun farkında olarak seçmesi gerekir. iOS’un, en büyük avantajları kullanıcıların rahatlığı, gizliliği ve güvenliğine yönelik tasarlanmış olmasıdır. Uygulama çeşitliliği ile sayısı açısından en zengin işletim sistemidir. Kapalı kaynak kodlu bir işletim sistemi olması nedeniyle Android işletim sisteminden daha yavaş geliştiğini söylemek mümkündür. iOS işletim sistemine sahip cihazlarla harika bir uyum gösterir ancak NfC desteği sunmaması bir eksiklik olarak görülmektedir. Android işletim sistemi mobil cihaz üreticilerinin kendi işletim sistemlerini üretmelerini açık kaynak kodlu ve ücretsiz olmasından dolayı gereksiz kılmaktadır. Her telefon üreticisi kendi arayüzünü geliştirebilir; bunu kullanabilir. Uygulama geliştiricilerde kendileri için uygulama geliştirebilir ve kullanıcı arayüzünü özelleştirebilir. Bu kullanıcıya ve üreticilere özgürlük sağlamaktadır. Gmail, Google Harita ve Google Play market uygulamalarla sosyal entegrasyonları da oldukça yüksektir. Sistem güvenliği açısında iOS ve Windows Mobile’ın gerisinde yer almaktadır. Android işletim sisteminin dezavantajları ise uygulama geliştirme açısından güncelleme konusudur. Android’in çok farklı versiyonları bulunmaktadır. Her telefon üreticisi kendisine göre ROM yazdığı için bu bir problem olmaktadır. Her cihaza özgü Android versiyonları da bulunmaktadır.