天天看點

hp-ux pseudo-swap(僞交換分區)淺析

 1、 HP-UX的交換分區機制:

        系統每啟動一個程序,都會在交換區預留一定的空間(等同于該程序使用實體記憶體的大小),以防記憶體不足時,有足夠的交換區來臨時存放資料,但不一定真正使用。但是交換區預留以後,不管是不是真的被使用,就不能再被其它程序預留(使用),除非該程序運作完畢自然釋放。

    那麼這裡就一個沖突,大記憶體的時候,SWAP分區不會設定為記憶體的1-2倍,通常會比記憶體小,那麼這個機制就導緻大記憶體不能使用,這裡就引出了僞交換區的概念

2、 系統會預設為交換分區的總數

交換分區的總數=實體記憶體的75%+其它交換區的總數(75%的虛假交換區的前提:在核心參數中設定swapmem_on=1,開啟)

3、 樣例

racdb1#[/]swapinfo -atm

             Mb      Mb     Mb   PCT  START/     Mb

TYPE      AVAIL    USED   FREE  USED   LIMIT RESERVE  PRI NAME

dev        8192       0   8192    0%       0      -    1  /dev/vg00/lvol2

dev        8192       0   8192    0%       0      -    1  /dev/vg00/lv_swap01

reserve       -   13687 -13687

memory   124169   86058  38111   69%

total    140553   99745  40808   71%  

看看total的使用率,最好dev的使用率為0%

注:

dev 駐留在海量儲存設備上的分頁空間

reserve 保留的分頁空間。這是目前正在運作的程序可能需要的分頁空間容量(這與實際程序所用的實體記憶體大小相等),但是尚未從上述分頁區之一(dev,fs,localfs)進行配置設定

對于裝置分頁區,該值始終為“—”。對于檔案系統分頁區,該值是為普通使用者使用的檔案系統保留的1KB塊的數量,與為swapon 提供的reserve值相同

memory 記憶體分頁區(pseudo-swap (虛假swap),也稱為僞交換)。這是在上述所有分頁區均用完的情況下,可用于儲存頁的系統記憶體容量

pseudo-swap是為了使用大記憶體,減少DEV SWAP的容量而設定的,使用了1%和100%對實際的系統性能沒有任何影響。如果真的有也要換出,會使用真的實體swap