問題タブ [virtual-memory]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
windows - セクション オブジェクト (CreateFileMapping) を使用した I/O は、基本的な API (Read/WriteFile) よりも高速ですか?
- CreateFileMapping と MapViewOfFile を実行し、memcpy などの関数で I/O を実行します。
- Read/WriteFile を使用するだけです。
最初のものは2番目よりも速いですか?わかりません。
なぜ速いのですか?
セクション オブジェクトを使用すると、VMM またはキャッシュ マネージャーからより多くのキャッシュの利点を得ることができますか?
c++ - C++で利用可能な仮想メモリの量を取得するには?
mmap 関数を使用してファイルをメモリにマップしたいと考えており、現在のプラットフォームの仮想メモリの量が巨大なファイルをマップするのに十分かどうかを知りたいです。32 システムの場合、4 Gb を超えるファイルをマップできません。アドレス可能なメモリの量を教えてくれますか、それともテストする必要がある他の型 (off_t など) はありますか
?std::numeric_limits<size_t>::max()
Lie Ryan がコメントで指摘しているように、ここでの「仮想メモリ」は悪用されています。ただし、問題は次のとおりです。ポインターに関連付けられた型があり、システムで対処できる上限を定義する最大値があります。このタイプは何ですか?size_t ですか、それとも ptrdiff_t ですか?
virtualization - ハードウェア仮想化 - ハイパーバイザー クエリ
ゲスト OS のゲスト ページ テーブルに変更があった場合、ハイパーバイザーはどのように変更を反映しますか。ゲスト ページ マッピングとシャドウ ページ マッピングの間の対応はどのように維持されますか?
1 つの方法は、メモリ アドレスの書き込み保護です。ゲスト ページ テーブルへの書き込みがあるときはいつでも、シャドウ ページ テーブルへの対応する変更を保証する適切なハンドラーがあります。この分野でさらにいくつかの情報を得ることができますか?
c - / proc / self/maps出力のヒープまでのセグメント
私のプログラムは、実行の特定の時点で、ヒープまで(およびヒープを含めて)自身の/ proc / self/mapsを1行ずつ読み取ります。プログラムのパスは「/home/t4」です。出力は次のとおりです。
コード、定数、静的変数、ヒープの4つのセグメントのみを期待していました。しかし、ここには5つあります。最初のものは明らかにコードでなければならず、最後はヒープです。おそらく2つ目は定数ですが、他の2つは何ですか?ありがとう!
c++ - 自動/静的メモリ割り当て
素朴な質問かもしれませんが...
確認または拒否:
自動および静的ストレージ期間のオブジェクト/変数のメモリの存在はコンパイル時に決定され、自動オブジェクトに十分なメモリがなかったためにプログラムが実行時に失敗する可能性はまったくありません。
当然、自動オブジェクトのコンストラクターが動的割り当てを実行し、そのような割り当てが失敗した場合、これは動的割り当ての失敗であり、自動ではないと見なされます。
memory-management - すべてのプロセスに独自のページ テーブルがありますか?
すべてのプロセスに独自のページ テーブルがありますか、それともページ エントリを 1 つの大きなページ テーブルに追加するだけですか?
c - Linuxは仮想メモリ範囲を既存の仮想メモリ範囲にマッピングしますか?
Linux では、既存の仮想アドレス範囲をバックアップする物理ページに仮想アドレス範囲を (ユーザー空間で) マップする方法はありますか? mmap() 関数では、ファイルまたは「新しい」物理ページをマップすることしかできません。次のようなことができる必要があります。
memory-management - スタックアドレスがメモリアドレスの減少に向かって増加するのはなぜですか?
メモリアドレスを減らすとスタックが大きくなるという教科書を読みました。つまり、上位アドレスから下位アドレスへ。悪い質問かもしれませんが、コンセプトがよくわかりませんでした。説明できますか?
php - PHP コードを最適化して仮想メモリを削減するにはどうすればよいですか?
私の現在のコード (以下を参照) は、147MB の仮想メモリを使用しています! 私のプロバイダーはデフォルトで 100MB を割り当てており、プロセスが実行されると強制終了され、内部エラーが発生します。コードは curl multi を使用しており、仮想メモリを最小限に抑えながら、150 回を超える反復でループできる必要があります。以下のコードは 150 回の反復のみに設定されており、依然として内部サーバー エラーが発生します。90 回の反復では問題は発生しません。
リソースの使用量や仮想メモリを減らすためにコードを調整するにはどうすればよいですか?
ありがとう!
memory-management - 仮想メモリのページテーブルからの物理アドレスの決定
ページ長が4kの仮想メモリページングシステムを想定すると、次の表が与えられました。
の実際のアドレスは何ですかと尋ねました0x003A78
。
私はここで少し迷っています、私はアイデアが0x003A78
2に分解することだと思いますか?それは0x003A78になるので、そうなるでしょう(2 * 4k) + 0x078
か?
これですか、それとも私はこれを完了していますか?