Ini output htop saya:
Misalnya, saya bingung dengan skrip ruby ini:
Berapa banyak memori fisik yang digunakan? 3+1+8+51+51
? 51
? 51+51
?
ya, saya melihatnya. Tapi yang mana penggunaan memori oleh skrip saya? Mengapa ada dua
—
Lai Yu-Hsuan
51
? Apakah ini mengkonsumsi 102 megabita? Atau hanya 51 megabita? Dalam RES proses luar berisi RES proses batin, mengapa 3
, 1
, 8
semua kurang dari 51
?
Ada dua 51 karena proses bercabang. Kemungkinan besar tidak mengkonsumsi 102 megabita karena kedua proses masing-masing menggunakan 51 megabita yang sama, tetapi Anda tidak dapat dengan mudah mengatakannya. Proses lainnya, RES berisi proses dalam jika ingatan itu juga ada di proses lain dan tidak jika itu tidak. Kolom RES memberi tahu Anda berapa banyak memori fisik yang digunakan setiap proses, tetapi proses lain mungkin (atau mungkin tidak) menggunakan memori fisik yang sama juga.
—
David Schwartz
Jika Anda ingin tahu apakah kedua proses menggunakan memori yang sama, gunakan pmap -d <process id>
—
Sirch
@ LaiYu-Hsuan: Ya, Anda salah. Halaman tidak disalin, mereka dibagikan. Mereka hanya disalin jika salah satu proses menulis ke halaman, maka mereka harus dibagikan. (Ini disebut "copy on write" atau "CoW".)
—
David Schwartz
RES
kolom adalah yang ingin Anda lihat.