Junior
Android-də runtime nə üçün cavabdehdir?
sobes.tech Süni İntellekt
AI-dan cavab
Android-də Runtime tətbiqlərin və sistem proseslərinin kodunu icra etməkdən məsuldur. ART (Android Runtime) və ya Dalvik kimi virtual maşını əhatə edir və Android bayt kodunu (DEX) maşın koduna tərtib edir və ya şərh edir.
Runtime-un əsas vəzifələri:
- Yaddaş idarəetməsi: Ob'ektlər üçün yaddaş ayırma və sərbəst buraxma, tullantıların toplanması.
- İş parçacığı idarəetməsi: Paralel iş parçacıklarının planlaşdırılması və icrası.
- İstisna ilə işləmə: İcra zamanı səhvlərin tutulması və işlənməsi.
- Proseslərin izolyasiyası: Hər bir tətbiqin məhdud hüquqlarla ayrı bir prosesdə işlədilməsini təmin etməklə təhlükəsizliyi təmin edir.
- Bayt kodunun çevrilməsi: DEX fayllarının JIT (Just-In-Time) və ya AOT (Ahead-Of-Time) tərtibi. ART standart olaraq AOT tərtibindən istifadə edir, bu da performansı artırır.
- Nativ kitabxanalarla qarşılıqlı əlaqə: JNI (Java Native Interface) vasitəsilə C/C++ ilə yazılmış kodu çağırmaq üçün interfeys təmin edir.
// Android-də yeni iş parçacığı yaratma nümunəsi (runtime-də icra olunur)
new Thread(new Runnable() {
@Override
public void run() {
// Yeni iş parçacığında icra olunacaq kod
System.out.println("Yeni iş parçacığından salam!");
}
}).start();
| Runtime komponenti | Təsviri |
|---|---|
| Virtual maşın (ART/Dalvik) | Android bayt kodunu icra edir |
| Tullantı toplayıcı | Yaddaşın sərbəst buraxılmasını idarə edir |
| İş planlayıcı | CPU vaxtını iş parçacqları arasında bölür |
| JNI | Java/Kotlin və nativ kod arasında körpü |
Ümumiyyətlə, runtime Android əməliyyat sisteminin əsas komponentidir və tətbiqlərin təhlükəsiz və səmərəli işləməsini təmin edir.