Hakkında Künye

Blackberry 10 ve QNX

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? Bu yeni platformun beni en çok ilgilendiren kısmı ise 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.

Blackberry 10 cihazlarına son kullanıcı çerçevesiyle baktığımızda Nokia'nın MeeGo'lu N9'una epey benzer tarzda bir kullanıcı arayüzü görüyoruz. Swipe gestureları 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 benziyor.

Ancak bu sakın bir hırsızlık gibi anlaşılmasın, çünkü BB10, “MeeGo'yu geliştirseniz nasıl olurdu?” sorusuna bir cevap gibi duruyor. Bir çok açık kaynak nesnesinde bu yeni platform 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 olduğundan, çok fazla vakıf olamasam da 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 etkili olabilir. Linux çekirdeği, çok fazla karmaşık bileşen içeren komutlar 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. Tabii 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 ve 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 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 olsak da, 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.

Tabii 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 etkili 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(çoklu görev) deneyimini, bu miktardaki RAM ile yaşayabilirsiniz demektir de aynı zamanda. Tabii şuan cihazı test etmediğim için, gerçek zamanlı bir multi-tasking var mı bilemiyorum ama olmaması için de 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ı, 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, görsel hafıza 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 ve daha az iş yükü olarak adlandırabileceğimiz bir mimariye borçludur. Size yetecek olan bileşenleri toplayarak minimal bir şekilde 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, “İnsanların ondan beklentileri ne seviyeye gelecek veya ileride bazı ihtiyaçları karşılamakta mikro çekirdekli sistemler sorun yaratacak mı?” gibi soruların cevabını bulmak 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. Tabii BB10 için yukarıda anlattığıma benzer durumlara sahip uygulamalar ne kadar vardır 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 etkili bir eyleme dönüşür. Üstelik işlemciyi arttırmaktansa bu 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 oldukça 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?

Oytun Eren Şengül
- 5 -