Por que a máquina virtual dalvik precisa correr em todos os processos? -- dalvik campo com processes camp android Relacionado O problema

Why does Dalvik virtual machine need to run in every process?


2
vote

problema

português

JVM e DVM ambos fornecem ambiente virtual. A JVM não precisa estar em todos os processos. Por que o DVM precisa estar em todos os processos? Obrigado.

english

JVM and DVM both provide virtual environment. JVM doesn't need to be in every process. why DVM need to be in every process? Thanks.

     

Lista de respostas

7
 
vote

Nem DVM nem JVM são executados em todos os processos. Aplicativos compilados nativamente (por exemplo, os que você vê dentro do emulador terminal) não estão associados a qualquer DVM ou JVM.

e mesmo quando você só conta aplicativos "APK" Android, a sobrecarga de JVM / DVM em (quase) o espaço de endereço de cada processo é mínimo, pois eles são uma biblioteca dinâmica compartilhada, portanto, o Linux os carregará uma vez em uma cópia -on-escrever buffer para todo o sistema operacional.

 

Neither DVM nor JVM runs on every processes. Natively compiled applications (e.g. the ones you see inside Terminal Emulator) are not associated with any DVM or JVM.

And even when you only count Android "apk" applications, the overhead of having JVM/DVM on (nearly) every process' address space is minimal since they are a shared dynamic library so Linux will smartly load them once in a copy-on-write buffer for the whole OS.

 
 
       
       
4
 
vote

Aplicativos Android Execute Dalvik Bytecode, portanto, o DVM precisa estar em execução. Assim como a execução do Java Bytecode em um PC requer uma JVM para executar.

 

Android applications run Dalvik bytecode, so the DVM needs to be running. Just like how running Java bytecode on a PC requires a JVM to run.

 
 
   
   

Perguntas relacionadas

42  Há alguma desvantagem ou riscos para limitar os processos de fundo?  ( Are there any downsides or risks to limiting background processes ) 
Eu permiti opções de desenvolvedor no meu Samsung Galaxy Grand Duos e, em seguida, alterou a opção "Limit Background Process" de Limite padrão para Nenhum ...

3  "System_Server" - BluetoothPhoneservice provoca alto uso da CPU  ( System server bluetoothphoneservice causes high cpu usage ) 
Eu estou usando o Android 5.1 no Nexus 4 e notei o dreno da bateria mais rápido do que o habitual há alguns meses. Pensando que eu preciso atualizar Android p...

1  Entradas de aplicativos livradas aparecendo no histórico da bateria. Suspeito?  ( Unlabled app entries appearing in battery history suspicious ) 
Esta manhã, notei estranhas entradas sem título na história da minha bateria, que eu nunca tinha visto antes. Eu também não tenho certeza porque algumas linha...

19  Ver processos em execução e uso da CPU no Android 7 (Nougat)?  ( View running processes and cpu usage in android 7 nougat ) 
em versões anteriores do Android, quando minha bateria do telefone estava indo para baixo rapidamente, eu poderia abrir um aplicativo como OS Monitor , consu...

3  Como visualizar o tráfego de rede solicitado por um aplicativo específico?  ( How to view network traffic requested by a specific app ) 
Há muita discussão sobre como ver qual aplicativo está solicitando conexão de rede. Eu tentei os seguintes aplicativos: tcapturepacket wifi monitor connect...

0  ainda um mistério. ThumbData3 espaços de arquivo e desempenho do desempenho  ( Still a mystery thumbdata3 file space performance hog ) 
Eu não sei corrigir esse problema. Eu tentei quase tudo e desisto. Eu li outros tópicos sobre o que fazer se houver .thumbdata3 arquivo que ocupa muito espa...

3  Android 4.0.3 SLUGGISH: NANDD Process Hogging CPU  ( Android 4 0 3 sluggish nandd process hogging cpu ) 
Eu tenho um clone de tablet A10 Allwinner. Enquanto trabalhava o tablet "congela" regularmente, mas não com muita frequência para uma strech do tempo entre 2 ...

5  Comando de terminal raiz para matar ou parar um serviço?  ( Root terminal command to kill or stop a service ) 
o mais recente Aplicativo LiveView Para o meu dispositivo continua aparecendo na barra de status mesmo se o dispositivo LiveView não estiver conectado. Como...

7  Como definir a afinidade da CPU para tarefas Android  ( How to set cpu affinity for android tasks ) 
Eu tenho um dispositivo Android Dual Core. Existe alguma maneira de definir a afinidade da CPU para tarefas Android? ...

2  Por que a máquina virtual dalvik precisa correr em todos os processos?  ( Why does dalvik virtual machine need to run in every process ) 
JVM e DVM ambos fornecem ambiente virtual. A JVM não precisa estar em todos os processos. Por que o DVM precisa estar em todos os processos? Obrigado. ...




© 2022 pergunte.org All Rights Reserved. Casa de perguntas e respostas todos os direitos reservados


Licensed under cc by-sa 3.0 with attribution required.