Saya memiliki Windows 2003 Server berjalan agak lambat di mana biaya komit dan penggunaan file halaman berdetak dan naik sampai akhirnya saya reboot. Untuk memperbaikinya, saya perlu mencari tahu apa yang menghabiskan semua memori, dan di sinilah misteri besarnya.
Statistik terkini dari Task Manager:
Physical Memory (K): 2096400
Commit Charge (K): 5364848
Page file usage: 5.11 GB
Baik, jadi mari kita tarik SysInternals Process Explorer dan periksa ukuran set yang berfungsi dari semua yang berjalan. Penyebab terbesar adalah contoh Tomcat menggunakan 121.980K WS, 481.284K Ukuran VM. Tidak ada yang mendekati menjelaskan biaya komit 5 GB.
Langkah selanjutnya: SysInternals pslist : pslist -m
, berpisah output dengan kolom dan kolom menghitung jumlah untuk 61 proses yang dilaporkan.
SUM (Working Set) : 681,484 K
SUM (Private Bytes): 593,424 K
Apakah saya salah paham secara mendasar tentang apa yang dilaporkan oleh alat? Saya selalu berada di bawah kesan bahwa OS akan benar-benar melakukan memori jauh lebih sedikit daripada jumlah penuh memori virtual yang dipetakan oleh suatu proses, dengan asumsi bahwa itu tidak akan benar-benar pernah menggunakan sebanyak itu, dan bahwa melihat VM di sini adalah ikan herring merah.