前言
前段時間在用程序對較大數據進行處理時,發現自己電腦原有內存不夠用而經常行卡死,於是想到了利用swap分區來擴容內存的方式。現在做一個簡要的總結:
swap分區的概念
初試swap分區是在進入實驗室安裝linux系統的時候,當時並不了解該分區,只是參看師哥們的筆記進行設置。但是swap分區到底是干嘛用的? windows里面沒有該分區么?有設置的必要性么?
一般來講,swap分區可以提高linux系統性能swap分區是在硬盤空間中開辟一塊區域,用來存放內存溢出來的數據。比如將內存想象成一個杯子,程序運行時產生的數據作為水放進杯子中,當我們運行的程序過多,或是處理的數據量過大時,杯子慢慢變滿,導致乘不下了,此時如果有swap分區的話,就如同將過多的水倒入swap分區這個杯子中。
在windows的swap分區,我們更常稱之為虛擬內存。雖然兩者的技術實現上有有很大差異,但是我們可以姑且認為它們具有相同的作用吧。此外,linux系統休眠的數據是保存到swap分區中的,換言之,如果系統沒用配置swap分區,linux是無法休眠的!(這個未親身驗證過)
從理論上講,swap分區確實是增大了可使用的內存空間,但是,內存中數據交換速度非常快,而swap分區講物理內存當作內存的載體,物理磁盤的數據交換速度遠遠落后於物理內存,因此不可避免的帶來運行效率的下降。
如何增加/創建物理內存
通常swap分區都是在裝系統硬盤分區時設定的,在這主要介紹在系統已安裝完成后,進行swap分區擴展的方法。一般來講,有兩種方法可以選擇。
在這之前,先通過指令來查看swap分區使用情況。使用free指令。
bzc@bzc-pc:build$ free
顯示如下圖所示:系統的swap分區未空。
未完。。。