Android işletim sistemi nasıl çalışır?
Android, Linux çekirdeği üzerine kurulu, birkaç katmandan oluşan bir yazılım platformudur: çekirdek ve sürücüler, yerel kütüphaneler, Android Runtime (ART) ve uygulama çerçevesi; uygulamalar, izin yönetimi ve enerji tüketimi kontrolü ile izole konteynerlerde çalışır. İki cümleyle özeti: çalışma prensibi ve mimarisi.
İçindekiler {{TOC_AUTOMATIC}}
Katmanlara göre Android mimarisi
Mimariyi bir yığın olarak düşünmek uygundur: donanım katmanı → Linux çekirdeği → yerel kütüphaneler → Android Runtime ve çerçeve → uygulamalar ve arayüz.
- Donanım katmanı: SoC (genellikle ARM), bellek, sensörler, modem, kameralar ve GPU. Çekirdek ve sürücüler donanımla iletişimi sağlar.
- Linux çekirdeği: süreç yönetimi, bellek, dosya sistemleri ve güvenlik; üreticiler ve Google mobil senaryolar için (enerji tasarrufu, flash bellek) yamalar ekler.
- Yerel kütüphaneler: grafik (Skia, OpenGL/Vulkan), multimedya (kodekler), WebView (Chromium tabanlı), SQLite ve diğerleri.
- Android Runtime (ART): Uygulama bytecode'unu çalıştırır, AOT ve JIT derlemesini birleştirir, çöp toplamayı yönetir ve performans ile pil tasarrufu sağlar.
- Çerçeve (API): Activity/Window/Package/Notification/Content Provider ve servisler (telefon, konum, kamera). Neredeyse tüm uygulamalar bu katman üzerinden çalışır.
- Uygulama katmanı: Sistem uygulamaları, üretici servisleri, Google bileşenleri (varsa) ve üçüncü taraf APK'lar.
Yaşam döngüsü, süreçler ve kaynak yönetimi
Android çoklu görev destekleyen bir sistemdir, ancak uygulamalar "her zaman aktif" değildir. Sistem, bellek ve pil optimizasyonu için durumları yönetir.
- Süreç durumları: foreground → visible → background → cached/kill. Bellek yetersiz olduğunda Android en düşük öncelikli süreçleri sonlandırır.
- Activity yaşam döngüsü: onCreate → onStart → onResume → onPause → onStop → onDestroy. Yaşam döngüsünün doğru şekilde ele alınması bellek sızıntılarını ve aşırı enerji tüketimini önler.
- Geliştirici/kullanıcı için öneriler:
- Durumu onSaveInstanceState içinde kaydedin ve onPause/onStop sırasında kaynakları serbest bırakın.
- Uygulamaları manuel olarak "öldürmeye" gerek yoktur — sistem bunu daha verimli yapar.
- Uzun süren görevler (müzik, navigasyon) için bildirimle birlikte foreground service kullanın.
Görev yöneticisi aracılığıyla uygulamaları agresif bir şekilde kapatmak pil tüketiminin artmasına neden olabilir: uygulama yeniden başlatıldığında donmuş duruma kıyasla daha fazla kaynak tüketir.
Güvenlik, izinler ve veri depolama
Android'de güvenlik birkaç katmanda inşa edilir: uygulama izolasyonu, izin modeli ve sistem koruma mekanizmaları.
- Sandbox: Her uygulama benzersiz bir UID altında çalışır, ayrı bir /data klasörüne sahiptir ve açık API olmadan diğer uygulamaların verilerini okuyamaz.
- İzinler: Riskli işlemler (kamera, mikrofon, konum, SMS) runtime izinleri gerektirir; modern sürümler "sadece kullanım sırasında" veya "bir kerelik" erişim sunar.
- Scoped Storage, uygulamaların harici depolamaya erişimini kısıtlayarak veri sızıntılarını azaltır.
- Önyükleme koruması: Verified Boot, başlangıçta sistemin bütünlüğünü doğrular; düzenli güvenlik yamaları açıklıkları kapatır.
- Depolama: Sistem bölümleri — /boot, /system (ana kod), /vendor (üretici sürücüleri), /data (kullanıcı verileri). Uygulama ve fotoğraf yedeklerini sıkça bulutta saklamak veya yerleşik araçlarla yerel yedekler almak gerekir.
Güncellemeler, özelleştirme ve diğer işletim sistemlerinden farkı
- Güncellemeler çekirdek/güvenlik yaması seviyesinde veya büyük sürüm olarak gelir. Üretici yeni sürümü belirli cihaz için adapte eder — bu nedenle güncelleme teslim süreleri satıcıya bağlıdır.
- AOSP — Android'in açık kaynak temeli; üreticiler bunun üzerine kabuklar (başlatıcı, UI özellikleri) ve kendi uygulamalarını ekler.
- iOS'tan farkları: Daha açık ekosistem, resmi mağaza dışından APK yükleme imkanı ve güçlü özelleştirme; bu esneklik sağlarken cihaz ve sürüm parçalanmasına da yol açar.
Cihaz ne zaman güncelleme alır?
- Google platformu yayınlıyor; üretici chipset ve sürücülere göre adapte ediyor; ardından test ve yayın aşaması geliyor. Amiral gemisi modeller güncellemeleri daha hızlı alıyor.
Sık yapılan hatalar
- Anında güncelleme beklentisi: Birçok cihaz major sürümleri hızlı almaz.
- Sistem uygulamalarının erken kaldırılması: Kabuk çalışmasını bozabilir.
- Runtime izinlerinin göz ardı edilmesi: Verilere gereksiz erişim sağlar.
- Güvenilmeyen kaynaklardan imzasız APK kullanımı — kötü amaçlı modül riski.
SSS
- ART nedir ve neden gereklidir?
- ART (Android Runtime) bytecode'u çalıştırır, hız ve enerji tasarrufunu artırmak için AOT/JIT derlemesini birleştirir.
- AOSP ile telefonda bulunan Android arasındaki fark nedir?
- AOSP saf açık kaynak koddur. Telefonda genellikle ek tescilli bileşenler ve üretici servisleri bulunur.
- Arka plan süreçlerinden belleği manuel olarak temizlemek gerekir mi?
- Genellikle hayır — Android belleği kendisi yönetir ve zorla kapatma durumunda daha fazla pil tüketebilir.
- Telefonun güvenlik yamalarını alıp almadığını nasıl kontrol edebilirim?
- Ayarlarda genellikle güvenlik yamasının tarihi görüntülenir; bunu kontrol edin ve sistemi güncelleyin.
Gerekirse — sistem katmanlarına dair kısa bir infografik ekleyebilir veya Android sürümlerini temel değişikliklere göre karşılaştıran bir tablo hazırlayabilirim (isteği kopyalayın).