Saya telah menonaktifkan file halaman di sistem saya (hard disk terlalu lambat, tidak dapat langsung membeli yang baru, tidak bisa memindahkan file halaman ke partisi lain). Ketika saya melihat Monitor Sumber Daya, menggunakan aplikasi yang menuntut memori, sistem menunjukkan bahwa biaya komit hampir 100% penuh. Memang, jika saya terus menuntut lebih banyak memori, program mulai mogok karena biaya komit secara efektif mencapai 100%.
Sementara itu, sistem mengatakan saya menggunakan hanya 50-60% memori fisik dan memiliki sekitar 1GB memori yang tersedia (gratis + siaga).
Jika biaya komit adalah total memori yang sebenarnya diminta, mengapa sistem mengatakan begitu banyak memori yang gratis? Apakah memori fisik tidak digunakan oleh Windows? Apakah grafik memori salah? Apakah saya melewatkan sesuatu?
sumber
Jawaban:
Kehabisan batas komit sementara Anda masih memiliki banyak RAM yang tersedia sama sekali tidak biasa. Baik batas komit maupun biaya komit tidak terkait langsung dengan RAM gratis atau yang tersedia.
Batas komit = ukuran file halaman saat ini + ukuran RAM.
Karena Anda tidak memiliki file halaman, batas komit lebih kecil daripada jika Anda memiliki file halaman. Tidak masalah berapa banyak RAM yang gratis . Untuk batas komit, hanya jumlah RAM yang diinstal yang penting. Anda dapat kehabisan batas komit bahkan dengan 90% RAM Anda gratis atau tersedia.
Biaya komit adalah hitungan memori virtual, bukan fisik. Misalkan program saya meminta komitmen 2 GB, tetapi hanya mengakses 0,5 GB. Sisa 1,5 GB tidak pernah rusak, tidak pernah ditugaskan ke RAM, jadi penggunaan RAM tidak mencerminkan 2 GB, hanya 0,5 GB.
Namun, "sistem komit" meningkat sebesar 2 GB karena sistem telah "berkomitmen" bahwa akan ada tempat untuk menyimpan 2 GB saya, haruskah saya benar-benar membutuhkan semuanya. Fakta bahwa pada setiap menjalankan program saya tidak akan selalu mencoba menggunakannya semuanya tidak membantu. Saya meminta 2 GB dan berhasil kembali dari panggilan itu memberi tahu saya bahwa OS "berkomitmen" - yaitu berjanji - bahwa saya dapat menggunakan banyak ruang alamat virtual. OS tidak dapat membuat janji itu kecuali ada tempat untuk menyimpan semuanya.
Jadi: kembalikan pagefile Anda, tambahkan lebih banyak RAM, atau jalankan lebih sedikit barang sekaligus. Atau kombinasi dari ketiganya. Ini adalah satu-satunya pilihan Anda untuk menghindari kesalahan "kehabisan memori" dan "kehabisan memori".
Lihat juga jawaban saya di sini (lebih lama) dan di sini (lebih lama).
sumber
Seperti yang diilustrasikan oleh tes alokasi memori dalam artikel di http://brandonlive.com/2010/02/21/measuring-memory-usage-in-windows-7/ , Windows adalah jenis sistem yang akan gagal mengalokasikan memori besar. jika alokasi tersebut, bersama dengan semua alokasi sebelumnya (konsep yang disebut Microsoft sebagai "komit"), akan menjadikan total "komit" di atas jumlah memori fisik dan jumlah semua file halaman (swap).
Pertimbangkan bahwa alokasi dengan sendirinya tidak menggunakan memori yang sebenarnya (baik fisik maupun swap), sebelum membaca atau menulis yang terjadi dalam ruang alamat virtual dari proses untuk alokasi tersebut. Misalnya alokasi 2GB dengan sendirinya hanya akan mempengaruhi angka "Commit" (di Windows 7 bicara), meninggalkan "Memori Fisik" saja (sampai membaca / menulis dalam alokasi tersebut terjadi).
Sejauh desain OS berjalan, pendekatan alternatif akan selalu memungkinkan alokasi ukuran apa pun (kecuali memori yang tersedia sudah benar-benar habis), dan kemudian membiarkan aplikasi gagal pada baca / tulis sebagai gantinya. Lihat /cs/42877/when-theres-no-memory-should-malloc-or-read-write-fail untuk detail lebih lanjut.
sumber
Memori yang tersedia tidak seperti yang Anda pikirkan. Itu tidak digunakan itu benar-benar file cache dari proses yang baru-baru ini dihentikan atau proses yang dipangkas yang telah dipaksa untuk memberikan sebagian memori ke proses lain. Mereka dapat dipanggil kembali ke tujuan semula. lihat lebih detail.
http://support.microsoft.com/kb/312628
Karena tidak memiliki file halaman ini sangat buruk. Windows tidak terdegradasi dengan buruk. Ingat, bahkan file yang dapat dieksekusi digunakan sebagai file swap ketika tidak ada file halaman. Bahkan jika drive lambat, lebih baik memiliki file halaman sampai Anda mendapatkan hingga 8 hingga 16 gigs memori. Beberapa orang berpikir Bahkan windows 7 dapat berjalan tanpa itu.
Saya secara teratur memberi dorongan pada mesin tua dengan melakukan beberapa hal. Bersihkan hard drive sebanyak mungkin. Salin apa pun yang Anda dapat sementara hapus dari drive ke cadangan. Hapus aplikasi yang tidak Anda butuhkan. Hapus aplikasi dapat menginstal ulang.
Ketika semua itu dilakukan defragment hard disk Anda. Pada saat itu buat ulang file halaman Anda. Ini akan menjadi yang paling dekat dengan bagian depan drive. Buat ukuran yang tetap sekitar 1,5 kali memori. Itulah aturan saya, biasanya saya telah melihat ukuran antara 1 dan 3 kali memori. Ini akan memberikan sedikit peningkatan kecepatan di tempat-tempat biasa yang akan ditempatkan.
Saya menggunakan auslogic defrager gratis (iklan untuk lebih banyak alat). Ada yang lain yang melakukan ini juga. Lihat defrager di portableapps.com. Ini mengoptimalkan disk dengan menempatkan file yang baru diakses di dekat bagian depan drive untuk akses yang lebih cepat. Ini menunjukkan di mana file halaman ditempatkan sehingga Anda dapat melihat apakah Anda memindahkannya ke 25% teratas dari drive.
Setelah itu instal ulang aplikasi dan salin kembali data Anda.
Saya akan mengatakan Anda mendapatkan 10 atau 20% peningkatan. Tetapi nilai utama adalah banyak keraguan hilang untuk pengalaman yang lebih halus.
sumber