HP-UX作業系統的記憶體
(1) 核心 無命令可檢視大小
(2) 程式(包括核心程式) top -d1 -n1 -s1;export UNIX95=1;ps -eopid,sz,vsz,comm,args
(3) 裝置的快取:BUFFER 無命令可檢視大小
(4) 裝置檔案緩衝:CACHE 無命令可檢視大小
(5) 頁面排程 swapinfo
(6) 空閒記憶體 top -d1 -n1 -s1;
“export UNIX95=1;ps -epid,sz,vsz,comm”命令檢視的SZ總和,VSZ總和與top命令的
活動的程式記憶體、程式的虛存 基本相同。
■ 記憶體使用率的計算問題
參照LINUX的記憶體使用率計算公式,BUFFER、CACHE被認為是空閒的,記憶體使用率的計算公式為:
記憶體使用率 = 1 - (free + CACHE + BUFFER)/ 實體記憶體大小
當HP-UX作業系統之上有 資料庫系統等大型應用進行大量的檔案IO操作(包括網路SOCKET)時,
HP-UX作業系統為了提高裝置及檔案的IO效率,將會把大量的記憶體用於CACHE、BUFFE。這樣從OS角度
看的空閒記憶體就比較小了。
CACHE、BUFFER的大小在HP-UX下沒辦法獲取,假定為0,自然計算出的記憶體使用率就偏高了。
按照HP工程師的說法,如果 基於裝置或檔案系統的 SWAP使用率為0,即使記憶體使用率接近100%,
也不能說明記憶體不夠用。
在某些情況下,雖然top看到還有空閒記憶體,但由於HP-UX的記憶體管理機制(下述的記憶體請求的預定),
有可能出現程式請求記憶體或啟動程式時,由於可以用於 頁面排程的剩餘空間 不能滿足 請求空間預定
的 要求而被拒絕,這時從應用角度看 就會出現 記憶體不夠 或 程式啟動不了的情況了。在發生這種情
況時,應該加大SWAP空間,以滿足OS對 頁面排程空間的 預定需求。
程式預定的SWAP空間,只有在真正發生頁面交換(swap)時,才會被使用。請看下述的 HP-UX對swapinfo
的資訊解釋 。
■ swapinfo對 頁面排程 分配 的解釋
swapinfo命令的樣本:
$ swapinfo
Kb Kb Kb PCT START/ Kb
TYPE AVAIL USED FREE USED LIMIT RESERVE PRI NAME
dev 1048576 0 1048576 0% 0 - 1 /dev/vg00/lvol2
reserve - 368628 -368628
memory 747268 455972 291296 61%
swapinfo命令的線上手冊檢視命令:
$ man swapinfo
HP-UX系統命令“swapinfo”線上幫助關於 頁面排程 的部分內容含義:
(paging:記憶體分頁、頁面排程)
dev Paging space residing on a mass storage device,
either taking up the entire device or, if the
device contains a file system, taking up the
space between the end of the file system and
the end of the device. This space is
exclusively reserved for paging, and even if it
is not being used for paging, it cannot be used
for any other purpose. Device paging areas
typically provide the fastest paging.
裝置 在一個塊儲存裝置上的頁面排程空間,或佔用整個裝置,或如果裝置包含一個檔案
系統,則佔用在檔案系統末端與裝置末端間的空間。該空間被排他地保留為頁面調
度,該空間不能用於任何其它目的。裝置頁面排程區域提供快速的頁面排程。
fs Dynamic paging space available from a file
system. When this space is needed, the system
creates files in the file system and uses them
as paging space. File system paging is
typically slower than device paging, but allows
the space to be used for other things (user
files) when not needed for paging.
檔案系統 在一個檔案系統上的可用的動態頁面排程空間。但這個空間被需要,系統在檔案
系統上建立檔案並將其用於頁面排程空間。檔案系統頁面排程比裝置頁面排程慢,
但不需要用於頁面排程時,允許這些空間用於其它事情(使用者檔案)。
localfs File system paging space (see fs above) on a
file system residing on a local disk.
本地檔案系統 在一個本地磁碟上的檔案系統的 檔案系統的頁面排程空間(見上述的fs)。
network File system paging space (see fs above) on a
file system residing on another machine. This
file system would have been mounted on the
local machine via NFS.
網路 在另一臺機器的一個檔案系統上的檔案系統的頁面排程空間(見上述的fs)。這個檔案
系統在本地機器透過NFS掛接。
reserve Paging space on reserve. This is the amount of
paging space that could be needed by processes
that are currently running, but that has not
yet been allocated from one of the above paging
areas. See "Paging Allocation" below.
預訂 被預訂的頁面排程空間。當前正在執行的所有程式可能需要
的頁面排程空間總量,但還沒有在上述的頁面排程區域被分配。
請看後述的“記憶體分頁分配”。
memory Memory paging area (also known as pseudo-swap).
This is the amount of system memory that can be
used to hold pages in the event that all of the
above paging areas are used up. See "Paging
Allocation" below. This line appears only if
memory paging is enabled.
記憶體 記憶體頁面排程區域(也稱作 偽交換區)。在上述所有頁面排程
區域被用完時,存放頁面的的系統記憶體總量。請看後述的
“頁面排程分配”。僅當 記憶體頁面排程啟用下才出現。
Paging Allocation
記憶體分頁分配
Paging areas are enabled at boot time (for device paging areas
configured into the kernel) or by the swapon command (see swapon(1M)),
often invoked by /sbin/init.d/swap_start during system initialization
based on the contents of /etc/fstab. When a paging area is enabled,
some portion of that area is allocated for paging space. For device
paging areas, the entire device is allocated, less any leftover
fraction of an allocation chunk. (The size of an allocation chunk is
controlled by the tunable parameter swchunk, and is typically 2 MB.)
For file system paging areas, the minimum value given to swapon
(rounded up to the nearest allocation chunk) is allocated.
頁面排程區域在啟動時被啟用(配置於核心的裝置頁面排程區域) 或者 用swapon命
令(請看swapon在1M節的手冊,即用“man 1M swapon” 命令列來檢視),在基於
“/etc/fstab”內容的系統初始化期間swapon命令經常被“/sbin/init.d/swap_start”
呼叫。但一個頁面排程區域被啟用時,該區域的某些部分被分配用於頁面排程空間。
基於裝置的頁面調取區域,除了少量的不夠一個分配塊的多餘碎片外,整個設
備將被分配(一個可分配塊的大小由可調整的引數swchunk控制,並且典型塊大小為2M);
基於檔案系統的頁面調取區域,按照swapon命令指定的最小值(被調整到
的分配塊)來分配。
When a process is created, or requests additional space, space is
reserved for it by increasing the space shown on the reserve line
above. When paging activity actually occurs, space is used in one of
the paging areas (the one with the lowest priority number that has
free space available, already allocated), and that space will be shown
as used in that area.
當一個程式被建立或請求額外的空間時,透過 增加 上述預定行的空間,請求的空間
被預定。當頁面排程活動真正發生時,頁面排程區域之一(有空閒可用空間的最低優
先號的那個,已分配的)的空間被使用,並且那個空間將作為已使用被顯示。
The sum of the space used in all of the paging areas, plus the amount
of space reserved, can never exceed the total amount allocated in all
of the paging areas. If a request for more memory occurs which would
cause this to happen, the system tries several options:
所有頁面排程區域已使用空間的總和,加上被預定的空間總量,永遠不會超出所有頁面
排程區域已分配的總量。如果發生需要更多記憶體,可能引起這種情況發生的請求,系統
嘗試幾種選擇:
1. The system tries to increase the total space available by
allocating more space in file system paging areas.
系統嘗試 用在檔案系統的頁面排程區域分配更多空間的辦法增加總的可用空間。
2. If all file system paging areas are completely allocated and the
request is still not satisfied, the system will try to use memory
paging as described on the memory line above. (Memory paging is
controlled by the tunable parameter swapmem_on, which defaults to
1 (on). If this parameter is turned off, the memory line will
not appear.)
如果所有檔案系統的頁面排程區域完全分配但請求還不能滿足,系統將嘗試用上
述“記憶體”行描述的記憶體頁面排程。(記憶體頁面排程有可調整的引數swapmem_on控
制,預設為1(on)。如果該引數被關閉,那個“記憶體”行將不出現)
3. If memory paging also cannot satisfy the request, because it is
full or turned off, the request is denied.
如果記憶體頁面排程也不能滿足請求,由於其已滿(用完)或被關閉,該請求被拒絕。
Several implications of this procedure are noteworthy for
understanding the output of swapinfo:
為理解swapinfo輸出,這個過程的幾個含義值得注意:
+ Paging space will not be allocated in a file system paging area
(except for the minimum specified when the area is first enabled)
until all device paging space has been reserved, even if the file
system paging area has a lower priority value.
在檔案系統的頁面排程區域,頁面排程空間將不被分配(除非當該區域首次啟用時
指定了最小值),除非所有裝置的頁面裝置度空間已被預訂,即使檔案系統的頁面
排程區域有更低優先值。
+ When paging space is allocated to a file system paging area, that
space becomes unavailable for user files, even if there is no
paging activity to it.
但頁面排程空間被分配在一個檔案系統的頁面排程區域時,那個空間成為使用者檔案
不可用空間,即使在那個空間沒有頁面排程活動。
+ Requests for more paging space will fail when they cannot be
satisfied by reserving device, file system, or memory paging,
even if some of the reserved paging space is not yet in use.
Thus it is possible for requests for more paging space to be
denied when some, or even all, of the paging areas show zero
usage - space in those areas is completely reserved.
預留在裝置、檔案系統或記憶體的頁面排程空間 不能滿足 需要更多頁面排程空間的請
求時,這些請求將失敗,即使某些預定頁面排程空間還沒使用。因此,當某些或所有
頁面排程區域顯示0使用率——這些區域的空間被完全預定時,有可能發生需要更多頁
面排程空間的請求被拒絕,
+ System available memory is shared between the paging subsystem
and kernel memory allocators. Thus, the system may show memory
paging usage before all available disk paging space is completely
reserved or fully allocated.
在頁面排程子系統和核心記憶體分配器間,系統可用記憶體被共享。如此,在所有可用的
磁碟頁面排程空間被全部預定或完全分配之前,系統顯示基於記憶體的頁面排程空間使
用率。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/25462274/viewspace-1442413/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 作業系統-記憶體管理作業系統記憶體
- 作業系統——記憶體管理作業系統記憶體
- 作業系統的虛擬記憶體作業系統記憶體
- 作業系統記憶體管理概述作業系統記憶體
- 作業系統記憶體管理-原理作業系統記憶體
- 【作業系統】記憶體管理概述作業系統記憶體
- windows作業系統支援的最大記憶體Windows作業系統記憶體
- 作業系統-記憶體、檔案管理作業系統記憶體
- MySQL記憶體管理,記憶體分配器和作業系統MySql記憶體作業系統
- 作業系統的記憶體管理你知道嗎作業系統記憶體
- 淺談作業系統對記憶體的管理作業系統記憶體
- 作業系統——記憶體管理學習筆記作業系統記憶體筆記
- Linux作業系統記憶體淺析Linux作業系統記憶體
- 計算機作業系統——虛擬記憶體與實體記憶體計算機作業系統記憶體
- 作業系統(八) -- 記憶體的分段與分頁作業系統記憶體
- Android 作業系統的記憶體回收機制Android作業系統記憶體
- 作業系統的記憶體對齊機制學習筆記作業系統記憶體筆記
- 作業系統——記憶體連續分配管理方式作業系統記憶體
- WindowsXP作業系統記憶體最佳化指南(轉)Windows作業系統記憶體
- 記憶體瘋狂換頁!CPU怒批作業系統記憶體作業系統
- 作業系統思考 第六章 記憶體管理作業系統記憶體
- linux查詢作業系統資訊(CPU、記憶體、硬碟)Linux作業系統記憶體硬碟
- SQL Server記憶體遭遇作業系統程式壓榨案例SQLServer記憶體作業系統
- Linux作業系統:快速記憶體操作技術(轉)Linux作業系統記憶體
- 作業系統HugePage配置導致記憶體驟降探究作業系統記憶體
- Linux作業系統中記憶體buffer和cache的區別Linux作業系統記憶體
- linux作業系統修改共享記憶體的簡單方法(轉)Linux作業系統記憶體
- Linux作業系統記憶體管理的原始碼實現(轉)Linux作業系統記憶體原始碼
- 給HP-UX作業系統打補丁UX作業系統
- 讀懂作業系統之虛擬記憶體頁表(五)作業系統記憶體
- 探索Linux 作業系統記憶體模型和管理-1(轉)Linux作業系統記憶體模型
- 探索Linux 作業系統記憶體模型和管理8(轉)Linux作業系統記憶體模型
- 作業系統(十) -- 段頁結合的實際記憶體管理模型作業系統記憶體模型
- 檢視CentOS伺服器的cpu、記憶體、作業系統版本資訊CentOS伺服器記憶體作業系統
- [zt] 如何使作業系統使用超過4G的記憶體作業系統記憶體
- 作業系統:x86下記憶體分頁機制 (1)作業系統記憶體
- 《作業系統真象還原》核心記憶體分佈與載入作業系統記憶體
- 華納雲:Linux作業系統的記憶體管理方法是什麼Linux作業系統記憶體