[Prática de projeto] Introdução ao Android Zygote

1. O que é zigoto?

Zygote é traduzido como "ovo fertilizado".
Android Zygote é um processo no sistema Android.
Android Zygote é um dos principais componentes do sistema Android. Android
Zygote é um processo muito importante no sistema Android.
Android Zygote é um sistema chave serviço no sistema operacional Android.
O processo Android Zygote começa quando o sistema é inicializado e executado até que o sistema seja desligado.

Android é o kernel do Linux, e todos os programas executados no sistema Android são colocados na máquina virtual Dalvik. O Zygote não é exceção. Na verdade, é o primeiro processo de máquina virtual Dalvik executado pelo Android. O Zygote é criado pelo Init, um processo de nível de usuário iniciado pelo kernel do Linux.

2. Principais funções do Zigoto

No Android, o processo Zygote é o principal responsável pela incubação de novos processos, e outros processos de aplicação são incubados por ele. Ele fornece recursos e serviços compartilhados ao sistema e é responsável por iniciar outros processos. Ele é carregado na inicialização do sistema, fornecendo uma maneira rápida e eficiente de recursos para a execução de aplicativos.

2.1 Pré-carregar bibliotecas e classes compartilhadas

Quando o Zygote é iniciado, ele pré-carrega bibliotecas e classes compartilhadas por todos os aplicativos no sistema Android, como Android Runtime, bibliotecas de classes Java padrão, etc. Zygote fornece recursos e serviços compartilhados para o sistema, como bibliotecas de sistema, serviços de sistema, estruturas de aplicativos, etc.

2.2 Replicação de processos de aplicação

Quando um novo aplicativo Android precisa ser iniciado, não há necessidade de inicializar um novo ambiente de tempo de execução Dalvik ou ART do zero. O processo Zygote copiará um ambiente de tempo de execução já inicializado por meio da operação fork. Isso pode reduzir significativamente o tempo de inicialização do aplicativo e economizar recursos do sistema.

Também é responsável por iniciar outros processos, como processos de aplicativos e processos de serviços do sistema. Quando um aplicativo precisa ser iniciado, o processo Zygote bifurca um novo processo e carrega o código e os recursos do aplicativo no novo processo.

2.3 Fornecer isolamento de aplicativos

Cada processo bifurcado possui seu próprio ambiente de execução independente, o que garante que a falha de um aplicativo não afetará outros aplicativos.

2.4 Manter a estabilidade do sistema

Ao reutilizar recursos e bibliotecas do sistema já carregados, o Zygote pode manter a estabilidade de todo o sistema e não desperdiçará recursos do sistema devido a uma exceção em um aplicativo.

2.5 Gerenciamento de permissões

A Zygote é responsável por definir as permissões correspondentes para cada processo de aplicação com base no arquivo de manifesto do Android (AndroidManifest.xml).

3. Modelo de zigoto e delegação parental

O processo Zygote usa um modelo de delegação parental para gerenciar a inicialização do aplicativo. Quando um aplicativo precisa ser iniciado, o processo Zygote bifurca um novo processo e carrega o código e os recursos do aplicativo no novo processo. O novo processo continua executando o código do aplicativo, enquanto o processo Zygote continua a servir outros aplicativos.

Supongo que te gusta

Origin blog.csdn.net/wstever/article/details/132902654
Recomendado
Clasificación