Dalvik仮想マシンはすべてのプロセスで実行する必要があるのですか? -- dalvik フィールド と processes フィールド android 関連 問題

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












2
vote

問題

日本語

JVMとDVMはどちらも仮想環境を提供します。 JVMはすべてのプロセスにある必要はありません。 DVMはなぜすべてのプロセスにある必要があるのですか? ありがとう。

英語

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.

     

回答リスト

7
 
vote

DVMもJVMもプロセスすべての実行でも実行されません。ネイティブにコンパイルされたアプリケーション(ターミナルエミュレータの内部が表示されるもの)は、DVMまたはJVMには関連付けられていません。

そしてあなたがAndroidの "APK"アプリケーションのみを数える場合でも、JVM / DVMを(ほぼ)すべてのプロセスのアドレス空間に持つオーバーヘッドは、共有ダイナミックライブラリであるため、Linuxはコピーで一度スマートにロードされます。 OS全体の書き込みバッファ。

 

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

AndroidアプリケーションはDalvik ByteCodeを実行するので、DVMを実行する必要があります。 PC上のJava ByteCodeの実行方法と同じように、JVMを実行する必要があります。

 

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.

 
 
   
   

関連する質問

0  それでも謎。 ThumbData3ファイルスペースとパフォーマンスホッグ  ( Still a mystery thumbdata3 file space performance hog ) 
私はこの問題を解決する方法がわからない。 私はほとんどすべてを試してみました。 99887765544330 ファイルがたくさんのスペースを占めるファイルの場合、他のスレッドを読んでいます。私のファイルはほぼ20 GBを占めています、そして私はそのスペース無...

42  バックグラウンドプロセスを制限するためのダウンサイドやリスクはありますか?  ( Are there any downsides or risks to limiting background processes ) 
私のSamsung Galaxy Grand Duosで開発者オプションを有効にしてから、標準制限からなしの背景プロセスに「制限バックグラウンドプロセス」オプションを変更しました。 その後、私の電話がうまく機能しています。ぶら下がっている問題や前のように静止し...

3  Android 4.0.3低迷:NANDDプロセスHOGGING CPU  ( Android 4 0 3 sluggish nandd process hogging cpu ) 
私はAllwinner A10タブレットクローンを持っています。タブレットを「フリーズ」している間は、定期的に「フリーズ」しますが、2~15秒の間の時間の間にはあまり頻繁にはしません。別の説明的に説明されています:タブレットは使用可能ですが、素晴らしい「流体」...

3  特定のアプリによって要求されたネットワークトラフィックを表示する方法  ( How to view network traffic requested by a specific app ) 
どのアプリがネットワーク接続を要求しているかを確認する方法についての議論がたくさんあります。私は次のアプリを試しました: <事前> <コード> 9988776655443330 しかし、それらのどれも有用ではありませんでした。たとえば、短期間で、表示できる3...

2  Dalvik仮想マシンはすべてのプロセスで実行する必要があるのですか?  ( Why does dalvik virtual machine need to run in every process ) 
JVMとDVMはどちらも仮想環境を提供します。 JVMはすべてのプロセスにある必要はありません。 DVMはなぜすべてのプロセスにある必要があるのですか? ありがとう。 ...

7  AndroidタスクのCPUアフィニティを設定する方法  ( How to set cpu affinity for android tasks ) 
デュアルコアAndroidデバイスを持っています。 AndroidタスクのCPUアフィニティを設定する方法はありますか? ...

5  ルートターミナルコマンドサービスを殺すか停止する?  ( Root terminal command to kill or stop a service ) 
最新 LiveViewアプリケーション LiveViewデバイスが接続されていなくてもステータスバーに表示されています。この動作を無効にする手段が見つかりませんので、タスクーーを介して自分の修正を作成します。デバイスが切断されたときにLiveViewプロセスが...

3  "system_server" - BluetoothPhoneServiceが高いCPU使用量を引き起こします  ( System server bluetoothphoneservice causes high cpu usage ) 
Nexus 4上のAndroid 5.1を使用しており、数ヶ月前に通常よりも早く電池の排水排水を急ぎました。私が最初にCPU使用率をチェックすることを決定し、プロセス "system_server" - BluetoothPhoneServiceを実行す...

1  バッテリの履歴に表示される無効なアプリエントリ。疑わしい?  ( Unlabled app entries appearing in battery history suspicious ) 
今朝私は私のバッテリーの歴史の中で奇妙な無題のエントリーに気づいた。また、何らかの行がパーセンテージを表示していないのかはわかりません。 (タップされると、エントリ詳細ビューにはパーセンテージが表示されます。)エントリはAndroid OSエントリと同じコード...

19  Android 7(Nougat)で実行中のプロセスとCPU使用率を表示しますか?  ( View running processes and cpu usage in android 7 nougat ) 
Androidの以前のバージョンでは、私の電話バッテリーがすぐにダウンしていたとき、私は OSモニタ、ロットCPUを使用しているのか(多くの場合それは常時存在またはmaps.me)を使用してから、そのプロセスをキルします。 しかし、OSモニタと類似のアプリは...




© 2022 cndgn.com All Rights Reserved. Q&Aハウス 全著作権所有