我以爲我瞭解MacOSX如何管理內存,但最近我對它的性能感到莫名其妙。這裏的情況是:在MacOSX中無法理解非活動內存
- 我有一個運行的MacOSX 10.6.7物理內存8GB一個全新的Core i7系統。
- 有幾個應用程序定期運行佔用一些內存 - Safari,Mail,Xcode,終端等。
- 我需要並行運行三個64位進程,每個應用程序使用大約2000M的實數記憶。
- 儘管有線存儲器保持在1000M以下(即我有超過7000M可用於進程),但是我看到繁重的尋呼活動導致了我啓動的三個內存密集型進程的非常糟糕的性能。
- 很顯然,我不運行的可用內存,因爲報道不活動的內存總是在那裏,2500M和活動內存不會超過5000M。
誰能給我一個線索,爲什麼MacOSX的不釋放對需要它的過程中無效的記憶,而不是訴諸分頁?另外,是否有任何適當的方式來影響系統的內存管理?
我唯一想到的是32位內核可能是限制因素,儘管我不知道爲什麼。我知道,你可以用64位內核引導MacOSX的,但後來我將無法加載了一些32位應用程序,所以這不是我的選擇。
你問題的最後一句話並不完全正確。您仍然可以在64位內核上運行32位應用程序。你無法運行的*唯一的東西是32位內核擴展。看起來相對不太可能你擁有那些你根本無法生存的人。 – 2011-04-01 09:13:08
感謝科迪,我不知道,所以我想我可能會嘗試64位內核。在這種情況下,我如何檢查哪些kext是32位的? – 2011-04-01 09:15:31
請注意,我不一定建議這會解決你的記憶「問題」。我從來沒有在OS X上做過任何內存分析,所以我對它一無所知。您可以使用System Profiler的軟件選項卡或活動監視器來確定哪些kext是32位的。 – 2011-04-01 09:19:46