• Sonuç bulunamadı

6. MOBĠL SĠSTEMLER

6.5. Mobil Cihazlarda Kullanılan İşletim Sistemleri

6.5.1. Palm

Palm OS orijinal olarak US Robotics firmasının çıkardığı Pilot isimli PDA için tasarlanmıştır. İşletim sisteminin ilk sürümü Pilot 1000 ve Pilot 5000 cihazlarında, ikinci sürümü PalmPilot Personal ve PalmPilot Professional isimli PDA’larda kullanılmıştır (Boztaş, 2006).

PDA’lar PALM (Palm OS işletim sistemi kullanılır ) ve Pocket PC (Windows CE işletim sistemi kullanılır ) diye ikiye ayrılır. Ayırım işletim sistemi kaynaklıdır, fakat donanım da tamamen birbirinden farklıdır.

Palm OS açık kodlu ve iyi dokümante edilmiş bir işletim sistemidir. Yapısı olgu güdümlüdür. Her türlü eylem bir olgu üretir, bu bir olgu sırasına (event queue) girer ve işlemlenir. Gelişmiş bir bellek yöneticisi (memory manager) vardır. Bellek işletim sisteminin bazı fonksiyonlarının çağırılması ile kullanıma alınır (allocate). Tüm kalıcı bellek işlemleri RAM’de geçekleştirilir. Kullanıma alma eylemi durağan veya devingen olabilir. Durağan kullanımda alınan bellek bölgesi belirli bir adreste tutulur. Devingen

türde ise bellek içeriği işletim sistemi tarafından başka adreste tutulabilir. Tüm devingen bellek bölgelerinin özgün bir numarası vardır. Erişim bu numaranın verilmesi ile işletim sistemi üzerinden (bir tabloya bakması sureti ile) yapılır. Bu bir miktar yavaşlığa neden olur, ancak böylece işletim sistemi tarafından bir çöp toplama işlemi yapılabilir. Palm OS’un DataBase (File Manager) yapısal desteği vardır. Burada DataBase (dosya) kayıtlardan (record) oluşur. Bir dosya yöneticisinden beklenecek yarat, yok et, kopyala, vb. işlevler mevcuttur. Bunlar yalnızca kayıtlardan oluşmuş bilgi depoları olup. ilişkisel değildirler (Boztaş, 2006).

Palm OS için birçok yazılım geliştirme aracı üretilmiştir. Metrowerks CodeWarrior, Handheld Basic, NS Basic, AppForge, Pocket Studio, OrbForms Designer, CASL, Pocket C ve PDA Toolbox gibi yazılımlar ile Palm OS programları geliştirilebilir. Palm aynı zamanda J2ME ve MIDP profillerini de desteklemektedir.

6.5.2. Symbian

Symbian Nokia, Ericsson, Panasonic ve Psion ortaklığıyla kurulmuş bir şirkettir. Markalar arası uyumsuzluğu giderici bir yapı olarak tasarlanmıştır. Amacı farklı markaların gelecekteki ürünleri için ortak bir platform oluşturmaktır. En önemli ürünü olan Symbian OS ise, mobil cihazlarda, ikinci ve üçüncü nesil telefonlar için temel işletim sistemi olmuştur (Boztaş, 2006).

Symbian OS, Symbian şirketi tarafından mobil cihazlar (PDA’lar ve akıllı telefonlar) için geliştirilmiş bir işletim sistemidir. Psion şirketinin geliştirdiği EPOC işletim sistemine dayanmaktadır.

Symbian işletim sistemi ortamında; C++, Java ve Visual Basic yazılım araçları kullanılarak program yazmak olanaklıdır, ancak özellikle C++ ile işletim sisteminin sunduğu bütün servislere API’ler (Application Program Interface) kullanılarak erişmek ve servis hizmetlerinden faydalanmak mümkündür. Bunun için Visual C++ v6.0 ortamının kullanılmasına gereksinim duyulmaktadır (Kaya, 2009).

Temel olarak Symbian telsiz haberleşme cihazlarında kullanılmak üzere özel olarak tasarlanmış açık bir standarttır ve her donanım üreticisi tarafından kullanılabilir.

Symbian uygulamaları doğal makine kodunda derlendiğinden uygulamalar Java 2 Micro Edition’a (J2ME) göre daha hızlı çalışmaktadır. Birçok Symbian’lı telefonda olan SyncML (Synchronization Markup Language) desteği ile telefonlar, PDA’lar ve bilgisayarlar arasında rehber, takvim ve e-mail paylaşımı ve senkronizasyonu kolayca

gerçekleştirilebilir. Birçok Symbian’lı telefonda kızılötesi ve bluetooth desteği olduğundan, telefon şebekesine ihtiyaç kalmadan hızlı bir yerel bağlantı sağlanabilir ve uygulamalar arası veri transferi hızlı olur (Boztaş, 2006).

6.5.3. J2ME

Tüketici aygıtları ve gömülü aygıtlar (cep telefonları, PDA’lar, TV dekoderleri ve diğer türden tüm mobil ve kablosuz aygıtlar) için tasarlanmış Java platformudur. J2ME, JRE (Java Runtime Environment), Standard Edition gibi Java platformunun standart yönergelerine uygun olarak üretilmiş ve sektörün önde gelen mobil aygıt üreticileri ile kablosuz hizmet sağlayıcılarının katkılarıyla geliştirilmiştir. J2ME, cep telefonunlarına ya da PDA aygıtına yeni uygulamaların gücünü ve en ileri kablosuz bağlantı teknolojisinin avantajlarını kazandıran bir platformdur. JMobil telefon gibi küçük cihazlar için geliştirilecek olan Java uygulamalarının standardını belirlemektedir. Standart J2SE’nin (Java 2 Standart Edition) bir alt grubu gibi olmaktadır (Kaya, 2009).

J2ME’nin desteklediği kullanıcı arayüzü (user interface) oluşturma özelliği ile geliştiriciler kişiye özel bir görsel yapı hazırlayabilmektedir. Symbian kullanan telefonlar J2ME desteği de vermektedirler. Bu yüzden J2ME uygulamaları seri 60 gibi Symbian işletim sistemi içeren telefonlarda da çalışmaktadır. Bunlar J2ME’nin güçlü yönleridir (Boztaş, 2006).

Java dili yorumlanmış bir dildir. Bu yüzden derlenmiş olan Symbian uygulamaları daha hızlı çalışır, performans olarak J2ME uygulamalarından daha iyidir. J2ME, standart Javanın desteklediği JNI (Java Native Interface)’yı desteklememektedir. Bu yüzden uygulama geliştirenler Java ile telefonun diğer yapılarına (SMS gibi) ulaşamazlar. Bu yapıları kullanmak için telefonun özel API’lere sahip olması gereklidir. Nokia’nın SMS API’si gibi buna imkân veren API’lerde tüm telefonlarda olmadığından, uygulamaların tüm telefonlarda aynı şekilde çalışması mümkün olmamaktadır (Kaya, 2009).

J2ME ile uygulama geliştirmek için ilk aşamada uygulamanın çalışacağı mobil cihazlara göre konfigürasyon ve buna bağlı olarak profilin belirlenmesi gerekmektedir. Daha sonra bu konfigürasyon ve profile sadık kalarak uygulamalar geliştirilmiştir. Bu geliştirilen uygulamalar aynı profile sahip bütün cihazlarda çalıştırılabilmektedir.

6.5.4. Windows Mobile

Microsoft Windows uzun süre mobil cihaz işletim sistemlerinden uzak durarak, Windows CE ile mobil cihazlar için işletim sistemi geliştirmeye başlamıştır.

Microsoft, mobil cihazlar için kendi PC ürünleri ile uyum içinde çalışan ve kullanıcı ara yüzü Windows dünyasını çağrıştıran Windows CE işletim sistemini geliştirmiştir.

Pocket PC için uygulama geliştirme masaüstü Windows için uygulama geliştirmeye benzerlik göstermektedir. Bunun için temel olarak derleyici, hata ayıklayıcı, yazılım geliştirme aracı (Software Development Kit- SDK) ve araçların üzerinde çalışacağı bir iş istasyonu ile programlanacak bir Pocket PC gerekmektedir (Boztaş, 2006).

Windows Mobile Microsoft firması tarafından PDA ve akıllı telefonlar gibi mobil cihazlar için tasarlanmış olan bir işletim sistemidir. Windows CE çekirdeği üzerine temellendirilmiştir. Kullanımı kolay, bilinen ofis yazılımının mobil sürümü üzerinde çalışan bir yazılımdır. Kişisel bilgisayarların birçok özelliğini smartphone veya el bilgisayarı gibi bir mobil cihaza taşıyan işletim sistemidir.

Windows Mobile’da temel programlama dilleri Visual Basic ve C#’tır. Visual Studio ile birlikte Compact Framework sürümleri gelerek PDA’lar üzerinde yazılım geliştirilmesine imkân tanımaktadır (Boztaş, 2006). Genel olarak geliştirilecek yazılım Windows tabanlı işletim sistemi kullanan bir bilgisayarda tasarlanarak Windows mobile ortamına aktarılması ile gerçekleştirilmektedir. Bu da bize hem zaman açısından kolaylık hem de yazılımı geliştirme açısından imkân tanımaktadır.

Windows Mobile 6 ise bir önceki sürüm temel alınarak hazırlanmıştır. Windows mobile 6.1 ile oldukça stabil bir hale gelmiştir. 6.5 ve 7.0 versiyonları da duyurulmuştur. Windows Mobile’in genel özellikleri ise şunlardır (Özlü, 2007):

1. Cihaz başlatıldığında birçok işletim sisteminde bulunan "masaüstü" benzeri bir ortam yerine "bugün ekranı" (Today screen) gelir. Bugün ekranı randevuları, yapılacaklar listesini, e-posta mesajlarını gösterir. Bu ekrana daha fazla şey eklemenizi sağlayan programlar bulunmaktadır. Ayrıca artalan resmi değiştirilebilmektedir.

2. Üstte bulunan görev çubuğu saati, ses düzeyini ve bağlantı bilgilerini gösterir. Çubukta bulunan "başlat" düğmesi Windows'un masaüstü sürümlerindeki başlat düğmesine benzemektedir.

3. Windows Mobile ile birlikte (PDA’larda) Word Mobile, Excel Mobile, PowerPoint Mobile gibi programlar gelir. Bu programlar masaüstü sürümleri kadar özellik içermese de temel görüntüleme ve düzenleme işlemleri için yeterlidir. PowerPoint Mobile ise sadece sunumları görüntülemek için kullanılabilir, düzenlemeye izin vermemektedir.

4. Outlook ve Windows Media Player programları da Windows Mobile ile yüklü gelen yazılımlardandır.

5. Windows’un masaüstü sürümlerinin aksine görev çubuğu üstte, menüler altta bulunur. Ayrıca "kapat" düğmesi genellikle programları kapatmak yerine simge durumuna küçültür, ancak açık programlar görev çubuğunda listelenmediği için bu durum birçok programın açık kalmasına ve dolayısı ile sorunlara sebep olabilmektedir.

6.6. .NET Platformu

.NET Platformu, Microsoft firması tarafından 2002 yılında piyasaya sürülen, bir iş stratejisi olması yanında geliştiricilere yönelik birçok teknolojiyi kendi içinde barındıran bir platformdur. Bu platformun ana amacı, işletme sahipleri ve geliştiricilerin, diğer Microsoft ürünleri ile mükemmel bir uyumluluk içinde kendi yazılımlarını, cihazlarını ve diğer bilgi sistemleri işlemlerini hızlı ve verimli bir şekilde Web, Windows ve Mobil ortamlarda geliştirmelerini amaçlamaktadır. Bu platform içinde sunucular, servisler, web tabanlı veri depolama sistemleri ve cihaz yazılımları bulunduğu gibi, Web-Servisleri, Click-Once ve benzeri yeni teknolojileri de tam destek sağlamaktadır. .NET Platformunun sahip olduğu ana özellikler şunlardır (Yiğit, 2009):

 Bilgisayar cihazlarının uyumlu bir şekilde birbirleriyle çalışabilmesini sağlayarak, bu cihazların kendi aralarında otomatik bilgi güncelleme ve senkronize işlevlerini yerine getirmektedir.

 HTML (Hyper Textup Markup Language) yerine XML (Extensible Markup Language) teknolojisinin ağırlıklı olarak kullanılması ise daha interaktif web sitelerinin tasarımını mümkün kılmaktadır.

 Veri depolamayı merkezileştirerek, bilgiye daha etkin ve kolay bir şekilde ulaşılmasını sağlar ve kullanıcı ile cihazlar arasındaki bilgi alış verişini senkronize etmektedir.

 E-mail, faks ve telefon gibi birçok iletişim cihazlarına entegre olabilmektedir.  Geliştiriciler için, hatalardan arınmış ve daha üretken tekrar kullanılabilen

modüllere sahiptir.

 C#, VB, C++, J# vb. günümüzün en popüler programlama dillerini destekleyerek, geliştirilen modüllerin Web, Windows ve Mobil ortamlarında ortak bir şekilde kullanılmasını sağlamaktadır.

6.7. .NET Framework

.NET Framework, yeni nesil uygulama ve XML Web Servislerinin çalışması ve yazılmasını sağlayan bütünleyici bir Windows bileşenidir. NET Framework aşağıdaki işlevleri gerçekleştirmek için tasarlanmıştır (Yiğit, 2009);

1. Kalıcı nesne tabanlı programlama ortamı sağlayarak kodların yerel olarak depolanması ve çalıştırılmasını veya kodların yerel olarak depolanması fakat internet ile dağıtılarak, uzaktan çalıştırılmasını sağlamaktır.

2. Kodların, geliştirme aşamasında çalıştırılmasını sağlayarak, sürüm sayısını azaltmak ve hata oranını minimum düzeye çekmektir.

3. Üçüncü parti güvenilir kodların veya modüllerin güvenli bir şekilde çalıştırılmasını sağlamaktır.

4. Yazılmış veya yorumlanmış kodlardaki performans problemlerini en aza indirgeyecek kod çalıştırma ortamı oluşturmaktır.

5. Geliştiricilerin yazdıkları kodların aynı anda Windows, Web ve Mobil ortamlarında kullanılmasını sağlamaktır.

.NET Framework, iki ana bileşenden oluşmaktadır. Bunlar CLR (Common Language Runtime) ve FCL (.NET Framework sınıf kütüphaneleri)’dir.

CLR, .NET Framework bileşeninin temel yapısını oluşturmaktadır. CLR bileşenini, kodun çalışma süresinde devreye giren, bellek yönetimi, iş yönetimi ve yönlendirme gibi çekirdek işlevlerini yerine getiren diğer bir yandan güvenli ve sağlam tip güvenli kodlar yazılmasını zorlayan bir araç olarak görülebilir. CLR tarafından işlenmiş kodlara “Managed” kod, aksi durumda ise bu kodlar “Unmanaged” kod olarak adlandırılmıştır. NET Framework uygulamaları Unmanaged uygulamalar tarafından kullanılabildiği gibi, “Managed” ve “Unmanaged” özellikleri bir arada bulunduran programlarda mevcuttur (Yiğit, 2009).

FCL, uygulama geliştirmemizi kolaylaştıracak olan hazır sınıf kitaplıklarıdır (Çamoğlu ve Atasever, 2010).

Şekil 6.8’de yapısı görülen. NET Framework, program geliştirme aşamasında ister konsol ister GUI (Graphical User Interface) uygulamaları veya ASP.NET teknolojisi ile web sayfaları ve web servisleri yapımında kullanılan, tekrar tekrar kullanılabilen, geniş kapsamlı ve nesne tabanlı sınıflardan oluşan kütüphanedir (Yiğit, 2009).

ġekil 6.8. .NET framework yapısı

6.7.1. .NET Compact Framework

.NET Compact Framework mobil cihazlar için geliştirilmiş .NET Framework’ün küçültülmüş bir versiyonudur. .NET Framework’teki her özelliği barındırmasa da, tam olarak nesneye yönelik sınıf ve fonksiyon kitaplarıyla birçok temel işlemin gerçekleştirilebilmesini desteklemektedir. Ayrıca mobil cihazların özel durumlarına göre düzenlenmiş olan fonsiyonlarla işlemci ve bellek kullanımında performans mobil cihazlara uygun olarak düzenlenmiştir (Fox ve Box, 2003).

.NET Compact Framework kurulabilmesi için Windows tabanlı bir el cihazına ve el cihazına uygun .NET Compact Framework sürümüne ihtiyaç vardır. Son zamanlarda ise Windows tabanlı çoğu mobil cihazın üzerinde .NET Compact Framework yüklü gelmektedir (Özay, 2007). .Net Compact Framework’ün şimdiye kadar yayınlanmış üç sürümü bulunmaktadır (Şekil 6.9):

• .NET Compact Framework 1.0 • .NET Compact Framework 2.0 • .NET Compact Framework 3.5

.NET Compact Framework 1.0

.NET Compact Framework 2.0 .NET Compact Framework 3.5

Pocket PC Pocket PC 2000 Pocket PC 2002 Windows Mobile 2003 for Pocket PC Windows Mobile 5 Windows Mobile 6 Smartphone Windows Mobile 2003 for Smartphone Windows Mobile 5 Windows Mobile 6

7. MOBĠL YAZILIM GELĠġTĠRME ÇALIġMALARI

Benzer Belgeler