Junior
Android'de çalışma zamanı ne işe yarar?
sobes.tech yapay zeka
AI'dan gelen yanıt
Android’deki Runtime, uygulamaların ve sistem süreçlerinin kodunu yürütmekle sorumludur. ART (Android Runtime) veya Dalvik gibi sanal makineleri içerir ve Android bayt kodunu (DEX) makine koduna derler veya yorumlar.
Runtime’un temel görevleri:
- Bellek yönetimi: Nesneler için bellek tahsisi ve serbest bırakma, çöp toplama.
- İş parçacığı yönetimi: Paralel iş parçacıklarının planlanması ve yürütülmesi.
- İstisna işleme: Çalışma sırasında hataların yakalanması ve işlenmesi.
- İşlem izolasyonu: Her uygulamanın sınırlı izinlerle ayrı bir işlemde çalıştırılmasıyla güvenliğin sağlanması.
- Bayt kod dönüşümü: DEX dosyalarının JIT (Just-In-Time) veya AOT (Ahead-Of-Time) derlenmesi. ART varsayılan olarak AOT derlemesini kullanır, bu da performansı artırır.
- Yerel kütüphanelerle etkileşim: JNI (Java Native Interface) aracılığıyla C/C++ ile yazılmış kodu çağırmak için arayüz sağlar.
// Android’da yeni bir iş parçacığı oluşturma örneği (runtime’da yürütülür)
new Thread(new Runnable() {
@Override
public void run() {
// Yeni iş parçacığında yürütülecek kod
System.out.println("Yeni iş parçacığından merhaba!");
}
}).start();
| Runtime bileşeni | Açıklama |
|---|---|
| Sanal makine (ART/Dalvik) | Android bayt kodunu yürütür |
| Çöp toplayıcı | Belleğin serbest bırakılmasını yönetir |
| İş planlayıcı | İş parçacıkları arasında CPU zamanını dağıtır |
| JNI | Java/Kotlin ile yerel kod arasında köprü |
Genel olarak, runtime, Android işletim sisteminin temel bir bileşenidir ve uygulamaların güvenli ve verimli bir şekilde çalışmasını sağlar.