728x90
반응형
SMALL
안드로이드 부팅 시 작동순서
1. 리눅스 커널
ROM CPU 전원이 인가되면, 지정 번지의 ROM code를 찾아 실행한다.
ROM code는 Bootloader를 RAM에 적재시키는 역할을 수행한다.
2. init 프로세스
Bootloader Ram 초기화, HW 초기화, kernel과 Ramdisk를 RAM으로 올린다.
그리고 kernel 시작 지점으로 Jump해서 kernel을 시작시킨다.
init 프로세스는 리눅스 커널이 부팅되면 가장 먼저 실행되는 프로세스 중 하나이다.
이 프로세스는 시스템 초기화를 담당하며, 안드로이드 프레임워크 동작에 필요한 각종 데몬,
컨텍스트 매니저, 미디어 서버, Zygote 등을 실행한다.
3. 컨텍스트 매니저
컨텍스트 매니저(Context Manager)가 실행된다.
init 프로세스가 실행되면 컨텍스트 매니저는 디바이스를 초기화한다.
4. 미디어 서버
미디어 서버(Media Server)가 실행된다.
5. Zygote
Zygote(접합자)가 실행된다.
안드로이드 부팅 과정에서 Zygote은 안드로이드 어플리케이션의
로딩 시간을 단축하기 위해 고안된 프로세스이다.
Zygote은 '분할 전의 세포나 수정란'. 개체가 생성되기 이전의 불완전한 상태라는 뜻으로
프로세스를 모방하여 만드는 역할을 한다.
728x90
반응형
LIST
'안드로이드 보안 > 이론' 카테고리의 다른 글
[Android] NDK란? (1) | 2023.03.11 |
---|---|
[Android] 안드로이드에서 사용하는 Java (0) | 2023.03.11 |
[Android] JNI(Java Native Interface)란? (0) | 2023.03.09 |
[Android] 디컴파일(Decompile)이란? (0) | 2023.03.09 |
[Android] Apktool이란? (0) | 2023.03.09 |