Blackberry yeni işletim sistemi Blackberry 10’u Ocak ayında tanıttı. Tamamen dokunmatik ekranlı ve klavyeli iki yeni modelle birlikte gelecek bu yeni mobil işletim sistemiyle Blackberry, yeniden pazarda yükselmek istiyor. Bakalım hedefini tutturabilecek mi? Fakat bu yeni platformun beni en çok ilgilendiren kısmı, Blackberry 10’un altyapısı. QNX işletim sistemi altyapısını kullanan yeni Blackberry 10 ile kullanıcılar mobil alanda değişik sulara yelken açıyor.
1982 yılından beri masaüstü işletim sistemi olarak varolan QNX, sonraları mikro çekirdek yapısıyla gömülü sistemlerde epey yaygınlaşmaya başladı. Özellikle son dönemlerde araç içi sistemlerde sıklıkla kullanılan bir platforma dönüşen QNX, son olarak Harman şirketinin elindeyken, Blackberry tarafından 2010 yılında satın alındı. Daha önceleri bazı kodları açık olan QNX, Blackberry sonrası tamamen kapalı kaynak haline geldi (http://www.qnx.com/news/pr_4114_1.html%20News%20Release).
Blackberry 10 cihazlarına son kullanıcı çerçevesiyle baktığımızda Nokia’nın MeeGo‘lu N9’una epey benzer stilde bir kullanıcı arayüzü görüyoruz. Swipe gesture’ları ile yönetilen arayüz, uygulamalar arası geçişler ve içeriğinde bolca Qt-QML elementleri içeren uygulamalar ile bu iki platform birbirine epey benzeşiyor.
Ancak sakın bu çalma gibi anlaşılmasın, MeeGo’yu geliştirseniz nasıl olurduya bir cevap gibi duruyor BB10. Bir çok açık kaynak objelerinde bu yeni platformda kullanılması da cabası. Fakat karıştırılmaması gereken önemli bir nokta var. Blackberry’nin tüm platformları gibi BB10’da, her ne kadar bu yeni platform açık kaynak bir çok geliştirme ortamını barındırsa da, sistem kapalı! Yani MeeGo, WebOS, Tizen, Android değil! Telefonunuzda açıp içini karıştırabileceğiniz bir Terminal yok. Blackberry gibi bir şirket açısındandan da bu durum, son derece normal gibi duruyor.
QNX vs. Linux | Micro kernel vs. Monolithic kernel
QNX alt yapısıyla geliştirilen yeni BB10’in son derece stabil bir performans göstermesi bekleniyor. QNX, gelişiminden bu yana son derece stabil çalışan ve küçük cihazlarda daha iyi bir performans göstermesi beklenen bir sistemdir. Mikro çekirdek yapısıyla günümüzde kullandığımız çoğu platformdan ayrılır. Hatta farklı kullanım alanlarında ve kullanıcı alışkanlıklarına göre, diğer platformlara ve çekirdeklere nazaran, üstün yanları da vardır. Bu yanlarını özellikle mobil cihazlarda göstermesi beklenir. Blackberry 10 sisteminin geliştirilmesi aşamasına, kapalı bir sistem oluşundan, çok fazla vakıf olamasamda teoride iyi bir optimizasyonla çok iyi neticeler alınabileceğini düşünüyorum. Linux çekirdeği, doğası gereği monolitik bir yapıya sahip olduğundan, bazı noktalarda mikro çekirdeklere oranla daha az efektif olabilir. Linux çekirdeği, çok fazla karmaşık bileşen içeren komutların farklı aralıklarla kendisine yönetildiğinde bazen bazı görevleri ıskalayabilir ya da öncelik sırasını beklemediğiniz bir yönde kullanabilir. Bu sistemler ve ihtiyaçlar büyüdükçe olasıdır. Tabi burada epey üst düzey görevlerden ve işlemlerden bahsediyoruz. Ancak QNX gibi, daha az özellik beklediğiniz ve ona göre derleyebildiğiniz çekirdeklerde işlemleri sıfıra yakın hatayla yürütebilirsiniz.Bu yüzden aslında akıllı telefonlar ya da bazı gömülü sistemlerde, daha çok sınırlı sayıda uygulama kapasitesi ve belirli alanlara hızlı ulaşım gerektiren işletim sistemleri mimarisinde mikro çekirdek kullanımı daha iyi sonuçlar verebilir gibi duruyor. Son kullanıcı noktasında bunlar pek hissedilmeyebilir zaten fakat sistemi kurcalayanlar, birşeyler ekleyip çıkarmak isteyenler ve bu iki çekirdek yapısını birbirinden ayıran noktalara temas eden uygulama yazanlar bunları fark edebilirler.
(Linux çekirdeğine sahip mobil bir işletim sistemi ile QNX çekirdeğine sahip bir mobil işletim sisteminin yarışı epey ilgi çekici olurdu. Maalesef piyasada ciddi bir optimizasyon sürecinden geçmiş, gerçek zamanlı Linux çekirdeğe sahip bir platform olmadığından böyle bir yarışmayı şimdilik seyredemiyoruz. Biz bu yarışa şimdilik tanıklık edemiyor olsakta, mikro çekirdeğin güzel bir işletim sistemiyle birleştiği BB10 platformunu seyretmek de zevkli olacaktır.)
Yukarıda belirttiğim farklılıkları daha detaylı açıklamak adına, uygulamaya yönelik bir örnek vereyim. Blackberry 10 etkinliğinde tanıtılan, Blackberry Z10 ve Blackberry Q10, donanımsal açıdan gayet iyi bir setle geliyor karşımıza (http://us.blackberry.com/smartphones/blackberry-z10/specifications.html).
Tabi bu yazı genellikle ülkemizde pazarlama odaklı sözde donanım editörlerinden çıkmadığı için, olaya çipset modellerinin salt çekirdek hızları penceresinden bakmayacağız. Eğer öyle yazarsak, ki örneklerine şimdiden hazırlanın Blackberry Z10 incelemeleri için: “yeni Blackberry cihazında kullanılan işlemci her ne kadar günümüz işlemcileriyle kıyaslandığında düşük kalsa da 2 Gb RAM iyi görünüyor.” olabilirdi.
Bu nedenle açıklayalım; mikro çekirdek yapısı, eğer sistem iyi bir optimizasyon sürecinden geçtiyse, işlemci gücüne yapacağınız katkıdan ziyade RAM’e yapacağınız katkıyı daha efektif kullanır. 2 Gb RAM demek, Blackberry Z10’daki mevcut çip setiyle birlikte çok iyi bir performans verecektir. Yani bu miktardaki RAM’in, Android yüklü bir cihazda bulunan 2 Gb RAM ile kıyaslanamayacak seviyede sistemin performansına etkisi olacaktır! Gerçek multi-tasking deneyimini, bu miktardaki RAM ile yaşayabilirsiniz demektir de aynı zamanda. Tabi şuan cihazı test etmediğim için, gerçek zamanlı bir multi-tasking var mı bilemiyorum ama olmaması içinde bir sebep yok gibi görünüyor. En son test ettiğim Blackberry Dev-Alpha B cihazlarında o an açabildiğim tüm uygulamalarda gerçek zamanlı multi-tasking gözlemlediğimi belirteyim.
Buna rağmen önemli bir ayrıntıda, BB10 bazı uygulamaları arka planda gerçek zamanlı çalıştıramayabilir! Yukarıda belirli sebeplerden övdüğümüz mikro çekirdek yapısının da bazı handikapları vardır. Bazı çoklu görevler, o uygulamaların sistemde neleri/nereleri kullandığıyla/ihtiyaç duyduğuyla alakalı olarak, arka planda çalıştırılamayabilir. Mikro çekirdek, daha optimize ve stabil çalışmak adına, kabaca kontrolleri sıklaştırabilir ve bazı şeylere izin vermeyebilir. Mikro çekirdeklerin en büyük handikapları belki de, virtual memory ve çok fazla sayıda kod içeren her türlü uygulamadır. Ancak Linux’un da içinde bulunduğu monolitik çekirdeklerde, işlemci gücünüzün fazlalığıyla birlikte, böyle bir sıkıntıya düşmesiniz. Fakat konu mobil cihazlar ve Blackberry 10 ise; böyle bir yapıda gerçek zamanlı multi-tasking için RAM miktarı hayati önem taşıyacağından, Blackberry’nin yeni platformunda 2 Gb RAM ile yola çıkması son derece isabetli görünüyor. Ayrıca mikro çekirdekler, hızlarını ve stabilitelerini, daha az erişim noktaları, daha az görev, daha az iş yükü olarak tabir edebileceğimiz bir mimariye borçludur. Size yetecek olan bileşenleri toplayarak minimal bir konseptte derleyeceğiniz mikro çekirdekler, belki de bu yüzden mobil cihazlar için iyi bir alternatif olabilir. Özellikle pil tüketiminin gün geçtikçe önemini arttırdığı bir mobil dünyada. Mobil cihazlar bu hızla geliştikçe, tabi insanların ondan beklentileri ne seviyeye gelecek kestirmek epey güç fakat belki ileride bazı ihtiyaçları karşılamakta mikro çekirdekli bir sistem sorun yaratır mı, orasını şimdiden kestirmek güç. Kimler elindeki mobil cihazlar ile görüntü işlemek ister, bunu heralde zaman gösterecek? Ancak kısa ve orta vadede pek sanmıyorum. Tabi yukarıda anlattığıma benzer durumlara sahip uygulamalar ne kadar vardır BB10 için, bilemiyorum ama potansiyeli olduğunu da şimdiden belirteyim. Yani, yeni alacağınız Blackberry 10 cihazınızda her uygulama arka planda istediğiniz gibi gerçek zamanlı çalışmaz ise, büyük ihtimalle sebebi bundandır ve beni anarsınız 🙂 İşin diğer bir boyutu olan maliyetlere bakacak olursak da, işlemciyi güçlendirmenin maliyeti RAM’i güçlendirmekten daha pahalıya gelir. Yani Blackberry, QNX gibi bir mikro çekirdek kullanarak bir taşla iki kuş vurmuş oluyor.
Sonuç itibariyle tüm bunların en anlama geldiğini basit bir şekilde toparlamak gerekirse; olmaz ama olabileceğini varsayarak, aynı masaüstülerimiz gibi; eğer yeni Blackberry Z10 cihazınızın ilerleyen yıllarda performansını beğenmezseniz, piyasaya göre geride kaldığını düşünürseniz, içini açıp RAM miktarını arttırdığınızda gözle görülür bir performans ilerlemesini hissedebileceksiniz. Üstelik mikro çekirdeğe sahip işletim sistemleri, zaman geçtikçe diğer çekirdek yapılarına oranla daha geç yavaşlarlar (kalıtsal özellikler) ve RAM’i arttırmak gibi yöntemler yine diğer çekirdek yapılarına göre çok daha efektif bir eyleme dönüşür. Üstelik işlemciyi arttırmak yerine daha fiyat-performans odaklı bir harekettir.
Blackberry 10 gibi yeni işletim sistemi ve mimarilerle tanışmak, araştırmak epey heyecan verici bir alan olduğu gibi hızla gelişen mobil dünyada yeni oyuncuların yeni silahlarla pazara katılmalarıda hayli ilgi çekici. Blackberry 10 ne kadar başarılı olacak, bunu tabii ki zaman gösterecek. Fakat 2013 yılı sonunda mobil dünyada taşların yerine oturacağı ve kimlerin artık sahalara veda edeceğini bizzat gözlemleyeceğimizi düşünüyorum. Bakalım Blackberry bu zorlu yılı nasıl geçirecek?
Son olarak bu kadar yazıyı özetleyen soruyu sorayım kendime. Param olsa alır mıyım?
Dokunmatik ve klavyeli iki modelinde dışarıdan al benisi olduğunu inkar edemem. N9 gibi fiyakalı ama daha business duruyorlar. Fiyatı düşerse kesin alırım.
http://e-bergi.com/2013/Nisan/blackberry-10-ve-qnx