NOT: Bu yazıda yapılanlar cihazınıza zarar verebilir. Sorumluluk kabul etmiyorum. Tüm riskleri kabul ederek devam ediniz.
Bu yazı, yalnızca bilgilendirme ve eğitim amaçlı sunulmuştur.
MTK cihazları anlamamız için ilk önce cihaz tamamen kapalıyken cihazı başlattığımızda olan temel adımları öğrenelim:
BootROM, cihazda ilk başlayan yazılım olduğu için kritik görevlere sahiptir:
1. bootloader'dır. eMMC veya UFS'te çoğunlukla boot0 disk bölümünde yer alır. Preloader da önemli bir bileşendir, Little Kernel'ın çalışması için uygun ortamı hazırlar.
"seccfg" denilen disk bölümünde Bootloader kilidinin açık veya kapalı olduğunu belirten bir değer bulunur.
Ayrıca "SBC" denilen sistem de LK'nın kontrol edilip edilmeyeceğini belirler.
4 farklı kombinasyon vardır:
SBC var + Kilitli
SBC var + Kilit açık
SBC yok + Kilitli
SBC yok + Kilit açık
Bunlar şöyle de kaydedilir:
preloader 1 0 3 0
lk 1 0 3 0
1= kontrol et
0= kontrol etme
3= daha sıkı bir kontrolden geçir
Bu değerler değiştirilemez.)
3. LK (Little Kernel)
2. bootloader'dır. Çoğunlukla "lk" isimli disk bölümünde yer alır.
Sadece 64 bit cihazlarda bulunur. Bilgim doğruysa, LK'dan önce başlar. LK'yı ve ondan sonra gelenleri kontrol eder. Eğer bilgim doğru ise, bl2_ext varsa LK Android için kontrolde bulunmaz.
4. Android boot bölümü
Android boot bölümünden başlatılır ve cihaz açılır.
Bu yazı, yalnızca bilgilendirme ve eğitim amaçlı sunulmuştur.
MTK cihazları anlamamız için ilk önce cihaz tamamen kapalıyken cihazı başlattığımızda olan temel adımları öğrenelim:
- BootROM
BootROM, cihazda ilk başlayan yazılım olduğu için kritik görevlere sahiptir:
- Temel donanımı başlatma
- Secure Boot Policy'yi E-Fuse'ları okuyarak alma
- USB flash modu (Çoğunlukla Android 9.0 ve daha düşük cihazlarda ses + ve - tuşlarıyla erişilir, ancak bazı cihazlarda "testpoint" yöntemi zorunludur. Bazı cihazlarda ise tamamen devre dışı bırakılmıştır)
- Preloader'ı kontrol etme (bazı durumlarda kontrol yapılmaz) ve eMMC veya UFS'ten alıp RAM'e yükleme
1. bootloader'dır. eMMC veya UFS'te çoğunlukla boot0 disk bölümünde yer alır. Preloader da önemli bir bileşendir, Little Kernel'ın çalışması için uygun ortamı hazırlar.
- Donanımın çoğunu veya tamamını başlatır
- USB flash modu (Cihaz kapalıyken herhangi bir tuşa basılmadan erişilebilir, bazı cihazlarda tamamen devre dıyı bırakılmıştır.
- LK'yı (Little Kernel) kontrol eder (bazı durumlarda kontrol yapılmaz) ve başlatır.
"seccfg" denilen disk bölümünde Bootloader kilidinin açık veya kapalı olduğunu belirten bir değer bulunur.
Ayrıca "SBC" denilen sistem de LK'nın kontrol edilip edilmeyeceğini belirler.
4 farklı kombinasyon vardır:
SBC var + Kilitli
SBC var + Kilit açık
SBC yok + Kilitli
SBC yok + Kilit açık
Bunlar şöyle de kaydedilir:
preloader 1 0 3 0
lk 1 0 3 0
1= kontrol et
0= kontrol etme
3= daha sıkı bir kontrolden geçir
Bu değerler değiştirilemez.)
3. LK (Little Kernel)
2. bootloader'dır. Çoğunlukla "lk" isimli disk bölümünde yer alır.
- Android'in modifiye edilmediğini kontrol eder.
- FASTBOOT modu, LK içinde çalışır.
- Android'i başlatır.
Sadece 64 bit cihazlarda bulunur. Bilgim doğruysa, LK'dan önce başlar. LK'yı ve ondan sonra gelenleri kontrol eder. Eğer bilgim doğru ise, bl2_ext varsa LK Android için kontrolde bulunmaz.
4. Android boot bölümü
Android boot bölümünden başlatılır ve cihaz açılır.