因為Mac和Windows的記憶體使用邏輯是完全不一樣的。
首先要知道記憶體的訪問速度是極快的。
DDR4記憶體大概是3GB/s的水平NVMe ssd大概是2000MB/s的水平SATA ssd大概是450MB/s的水平機械硬碟大概是100~150MB/s的水平
Win系統記憶體使用邏輯是用多少就佔多少。不用某個軟體或不載入某個檔案時,就把記憶體釋放出來,從而等到系統下一次分配使用。
Mac OS剛好與Win系統相反。這個是因為它基於UNIX開發的因素,講求最大利益化利用記憶體。設計時考慮:當一個程式被使用訪問,那麼在它的附近內容很可能會在短時間內被再次訪問。為了最大化提升系統流程程度,會把這些可能要訪問到的內容全部都塞進記憶體裡。從而達到快速呼叫的效果。所以看上去Mac的記憶體總是佔用很大。
但如果程式需要的記憶體不足時,Mac OS也會釋放掉一些系統載入的內容,因此也不要害怕會把系統“卡死”。
這個其實不是macOS的問題,而是linux的通病。linux有個策略,就是通過大量的使用記憶體去儘可能的避免讀取硬碟,從而提高程式的執行效率。
因為Mac和Windows的記憶體使用邏輯是完全不一樣的。
首先要知道記憶體的訪問速度是極快的。
DDR4記憶體大概是3GB/s的水平NVMe ssd大概是2000MB/s的水平SATA ssd大概是450MB/s的水平機械硬碟大概是100~150MB/s的水平
Windows記憶體使用原則Win系統記憶體使用邏輯是用多少就佔多少。不用某個軟體或不載入某個檔案時,就把記憶體釋放出來,從而等到系統下一次分配使用。
Mac OS記憶體使用原則Mac OS剛好與Win系統相反。這個是因為它基於UNIX開發的因素,講求最大利益化利用記憶體。設計時考慮:當一個程式被使用訪問,那麼在它的附近內容很可能會在短時間內被再次訪問。為了最大化提升系統流程程度,會把這些可能要訪問到的內容全部都塞進記憶體裡。從而達到快速呼叫的效果。所以看上去Mac的記憶體總是佔用很大。
但如果程式需要的記憶體不足時,Mac OS也會釋放掉一些系統載入的內容,因此也不要害怕會把系統“卡死”。