W Androidzie 10 i 11
dysk Ramdisk pierwszego etapu
zawiera plik binarny init pierwszego etapu (wykonuje wczesne podłączanie zgodnie z wymaganiami
według wpisów fstab) i plików fstab dostawcy. (Tak jak w Androidzie 9 i starszych
system.img
zawiera zawartość $TARGET_ROOT_OUT
.)
W przypadku urządzeń z dyskiem rozruchowym (innym niż A/B) inicjowanie pierwszego etapu jest statyczne plik wykonywalny znajdujący się pod adresem
/init
. Te urządzenia podłączająsystem.img
jako/system
. a następnie wykonaj operację przełącznika poziomu głównego, aby przesunąć uchwyt w miejscu/system
do/
. Po zakończeniu podłączania zawartość dysku RAM jest zwalniana.W przypadku urządzeń używających odzyskiwania jako dysku RAM, inicjowanie pierwszego etapu znajduje się
/init
w dysku pamięci RAM przywracania. Te urządzenia najpierw przełączają poziom główny na/first_stage_ramdisk
, aby usunąć ze środowiska komponenty przywracania, wykonaj te same czynności co w przypadku urządzeń z dyskiem rozruchowym (czylisystem.img
jako/system
, przełącz się na użytkownika root, aby przenieść ten uchwyt do/
, i uwolnij zawartości pamięci RAM po podłączeniu). Jeśliandroidboot.force_normal_boot=1
to w wierszu poleceń jądra (lub plik rozruchowy z Androida) 12 i nowszych), urządzenia uruchamiają się normalnie (w przypadku Androida). zamiast uruchamiać tryb przywracania.
Po zakończeniu pierwszego etapu wykonuje on polecenie /system/bin/init
,
selinux_setup
do skompilowania i wczytania SELinux w systemie. I na koniec,
init ponownie wykonuje polecenie /system/bin/init
z argumentem second_stage
. W tym miejscu
gdy główna faza inicjowania jest uruchamiana i kontynuowana jest za pomocą
init.rc
skryptu.
W poniższych sekcjach opisaliśmy różnice w układach partycji innych niż A/B na urządzeniach z Androidem 10 i nowszym.
Układy partycji (urządzenia inne niż A/B)
W poniższych sekcjach opisaliśmy różnice w układach partycji innych niż A/B na urządzeniach z Androidem 10 i nowszym.
obraz rozruchowy
Ramdisk (Android 8.x lub starszy) |
System jako root (Android 9) |
Ramdisk (Android 10 i 11) |
---|---|---|
Zawiera jądro i ramdisk.img -/ - init.rc - init - etc -> /system/etc - system/ (mount point) - vendor/ (mount point) - odm/ (mount point) ... |
Zawiera tylko normalne jądro rozruchowe. | Zawiera jądro i ramdisk.img -/ - init - vendor fstab files - system/ (mount point) - vendor/ (mount point) - odm/ (mount point) ... |
odzyskiwania.obraz
Zawiera jądro przywracania i system przywracania ramdisk.img
obraz systemu.
Ramdisk (Android 8.x lub starszy) |
System jako root (Android 9) |
Ramdisk (Android 10 i 11) |
---|---|---|
Zawiera system.img -/ - bin/ - etc - vendor -> /vendor - ... |
Zawiera scaloną treść elementów system.img -/ - init.rc - init - etc -> /system/etc - system/ - bin/ - etc/ - vendor -> /vendor - ... - vendor/ (mount point) - odm/ (mount point) ... |
Zawiera scaloną treść elementów system.img -/ - init.rc - init -> /system/bin/init - etc -> /system/etc - system/ - bin/ - etc/ - vendor -> /vendor - ... - vendor/ (mount point) - odm/ (mount point) ... |
Układy partycji (urządzenia A/B)
W poniższych sekcjach znajdziesz szczegółowe informacje o różnicach w układach partycji w przypadku urządzeń A/B przed i po Androidzie 10.
obraz rozruchowy
System jako root (Android 9) |
Ramdisk (Android 10 i 11) |
---|---|
Zawiera normalne jądro rozruchowe i dysk pamięci masowej przywracania
(BOARD_USES_RECOVERY_AS_BOOT := true ).dysk pamięci RAM służy wyłącznie do uruchamiania systemu przywracania. |
Zawiera normalne jądro rozruchowe i dysk pamięci masowej przywracania
(BOARD_USES_RECOVERY_AS_BOOT := true ). dysk pamięci RAM jest używany do uruchamiania zarówno w systemie odzyskiwania, jak i w systemie Android. ramdisk.img -/ - init -> /system/bin/init - first_stage_ramdisk - vendor fstab files - etc -> /system/etc - system/ (mount point) - vendor/ (mount point) - odm/ (mount point) ... |
obraz systemu.
Zawiera scaloną zawartość pól $TARGET_SYSTEM_OUT
i $TARGET_ROOT_OUT
.
system.img
-/
- init.rc
- init -> /system/bin/init
- etc -> /system/etc
- system/
- bin/
- etc/
- vendor -> /vendor
- ...
- vendor/ (mount point)
- odm/ (mount point)
...