→ mp607:為什麼要free? 06/13 23:26
→ jameschen1:對啊,為什麼要Free? 06/13 23:34
→ jameschen1:沒用到就不需要啊! 06/13 23:35
推 philip:記憶體管理還是交給OS就好 06/13 23:40
→ leondemon:就是因為free的不夠用 結果開始用硬碟... 速度變慢 06/13 23:48
→ leondemon:有1.2GB是inactive我不知道該怎麼讓那些記憶體可以使用 06/13 23:49
推 decten:你了解OS管理記憶體的方式嗎? 06/14 00:36
→ leondemon:願聞其詳 06/14 00:39
最後還是自己找到keyword了 => purge
http://www.electrictoolbox.com/purge-free-inactive-memory-mac-osx/
簡單的說就是某些剛結束的程式還是保留在記憶體內沒有真的free
目的是為了可以讓這些程式可以在接下來能夠快速被開啟
但是一直佔住記憶體的結果就是當free memory用光時
就會開始使用讀寫較慢的硬碟做取代 於是就會變得很慢...
不過奇怪的是明明OS應該收到low memory warning然後幫我把inactive memory清除掉
可是等了很久都沒清掉.... Orz
※ 編輯: leondemon 來自: 111.80.239.114 (06/14 00:51)
→ jameschen1:inactive就是要用的時候就會釋出啊 06/14 01:20
推 SansWord:mac 上他標示成inactive就代表等等要用到就會釋出呀 06/14 04:19
→ SansWord:不需要手動清,OS做的夠好User就不用管這鳥事。 06/14 04:20
噓 upyours:又是windows那套思維 06/14 14:27
推 rw0226:樓上有必要噓嗎......................................... 06/14 14:28
推 philip:大部分CPU在執行的東西一定會被送到RAM裡面去,所以OS會自 06/14 15:33
→ philip:幾幫你swap出來,一般所謂的用到硬碟是指所有執行的程式需 06/14 15:33
→ philip:要的RAM大於你的總記憶體,又因為要做到分時多工,所以swap 06/14 15:34
→ philip:過於頻繁拖慢速度,如果你的程式開著但是沒有在跑,等到需 06/14 15:35
→ philip:要RAM的時候OS自然會去把那塊記憶體拿回來。 06/14 15:36
→ philip:同樣的問題似乎在windows也常常有人會提到,因為windows會 06/14 15:48
→ philip:superfetch一些東西到RAM裡面,造成系統"吃RAM"的誤解。 06/14 15:48
→ philip:事實上這是系統想辦法幫user榨乾RAM的方式,這是好事才對XD 06/14 15:49
我已經在前面的連結貼了 為什麼一堆人都不看還要來砲我說不用手動free... Orz
要不是沒有需求我也不會來問 很明顯的就是OS沒有即時幫我把inactive memory給free掉
我關了大程式 多了1.2G的inactive memory 但是電腦還是慢得離譜 當然只好手動purge
為什麼一堆人很愛看黑影就開槍... Orz
※ 編輯: leondemon 來自: 119.77.248.55 (06/14 22:13)
→ philip:我看起來像在炮你嗎@@?..那抱歉不好意思打擾了 06/14 23:01
→ rw0226:應該是在說那個噓文的吧(茶) 06/15 00:07