* Zygote (자이고트)

> 안드로이드를 초기에 부팅할때 Zygote 라고 부르는 특수한 프로세스를 실행한다. 자이고트는 가상 머신을 구동하고, 코어 라이브러리를 미리 

적재하고, 다양한 공유 구조체를 초기화한다. 그런 후에 소켓에 연결대기를 함으로써 명령을 기다린다.

> 애플리케이션을 실행하면, 자이고트는 가상머신을 생성하는 명령어를 받는다. 미리 Warming up 되어있는 VM 프로세르를 fork 해 가상 머신 

생성 후, COW (Copy On Write) 기술을 사용해 메모리를 부모와 공유하는 새로운 자식 프로세스를 생성한다

- 가상 머신과 코어 라이브러리를 미리 메모리에 적재한다

- 코어 라이브러리와 공용 구조체가 존재하는 메모리를 자이고트 및 모든 다른 애플리케이션과 함께 공유한다.

> fork 된 각 애플리케이션 프로세스는 독립적으로 실행한다.

'SW > Android' 카테고리의 다른 글

Dalvik VM  (0) 2020.08.15
AsyncTask  (0) 2020.08.15
ANR (Application Not Responding)  (0) 2020.08.15
//View  (0) 2020.06.20
//RecyclerView  (0) 2020.05.23

+ Recent posts