Czy ktoś może wyjaśnić proces rozruchu urządzenia z systemem Android?

24

Z perspektywy użytkownika po włączeniu telefonu widzę dwie animacje rozruchu w moim LG P500 z CM10. Pierwsza animacja pochodzi z LG, a druga z CM10. Potem pojawia się z zablokowanym ekranem gotowym na moje wejście.

Czy ktoś wystarczająco kompetentny (i miły) może wyjaśnić, co dzieje się za sceną (ekranem) podczas procesu rozruchu, gdy urządzenie z Androidem jest włączone? Pomocne będzie, jeśli odpowiedzi pomogą nie-maniakowi zrozumieć różnych procesów i żargonów (takich jak fastboot, bootloader, odzyskiwanie, jeśli dotyczy itp.) Dotyczących sekwencji rozruchowej.

Narayanan
źródło

Odpowiedzi:

23

Znajdziesz dobre wyjaśnienie, w tym grafikę, aby zobrazować, co się dzieje w artykule Proces uruchamiania systemu Android od momentu włączenia . Zasadniczo kroki są następujące:

  1. Uruchom kod rozruchowy ROM. Jest on przechowywany w obszarze specyficznym dla sprzętu i przechowuje informacje o tym, gdzie znaleźć pierwszy etap modułu ładującego, który jest następnie ładowany do pamięci RAM. Możesz porównać Boot ROM z BIOS w komputerze stacjonarnym.
  2. Wykonaj pierwszy etap modułu ładującego. Na komputerach stacjonarnych można to porównać z menu rozruchowym, np. Grub / LiLo w systemie Linux. Ustawia kilka podstawowych rzeczy, a następnie przełącza kontrolę na ...
  3. Jądro Linux, które wraz z procesem init zainicjuje system podstawowy, np. Pamięci podręczne, systemy plików itp., A następnie wywoła ...
  4. Zygote, który inicjuje maszynę wirtualną Dalvik, a następnie uruchamia ...
  5. Serwer systemowy. Teraz jesteśmy w systemie Android i konfigurujemy wszystkie usługi specyficzne dla Androida, takie jak np. Menedżer telefonii i bluetooth. Wreszcie przychodzi:
  6. Uruchamianie zakończone - to wydarzenie zostanie nadane, więc uruchomione zostaną aplikacje, które mają zarejestrowanych słuchaczy.

Aby pomóc ci to zwizualizować, oto ostatnie zdjęcie ze wspomnianej strony:

Proces uruchamiania systemu Android

Izzy
źródło
Co to jest fastboot w tym kontekście? Również w link2sd.info/faq wymieniono pojęcie szybkiego rozruchu i prawdziwego rozruchu. Zakładam, że szybki rozruch polega na ponownym uruchomieniu bibliotek interfejsu użytkownika, który różni się od szybkiego uruchamiania, choć wydaje się analogiczny. Czy możesz to wyjaśnić we własnym (i dobrym) stylu?
Narayanan,
4
Masz rację co do szybkiego rozruchu: To po prostu powoduje powrót systemu do kroku 5 i ponowne uruchomienie serwera systemowego. Termin Fastboot jest jednak nieco mylący; Uproszczony powiedział, że przechodzi do kroku 3, a następnie czeka na polecenia (jest to specjalny tryb do flashowania aktualizacji / nowych obrazów ROM na twoim urządzeniu).
Izzy