日本免费全黄少妇一区二区三区-高清无码一区二区三区四区-欧美中文字幕日韩在线观看-国产福利诱惑在线网站-国产中文字幕一区在线-亚洲欧美精品日韩一区-久久国产精品国产精品国产-国产精久久久久久一区二区三区-欧美亚洲国产精品久久久久

SWAP的用處 Solaris7 交流 --- swap管理( 二 )



如果有多個(gè)Swap交換區(qū),Swap空間的分配會(huì)以輪流的方式操作于所有的Swap,這樣會(huì)大

大均衡I/O的負(fù)載,加快Swap交換的速度 。如果只有一個(gè)交換區(qū),所有的交換操作會(huì)使交

換區(qū)變得很忙,使系統(tǒng)大多數(shù)時(shí)間位于等待狀態(tài),效率很低,用性能監(jiān)視工具就會(huì)發(fā)現(xiàn)

,此時(shí)的CPU并不很忙,而系統(tǒng)卻慢,這說明,瓶頸在I/O上,依靠提高CPU的速度是解決

不了問題的 。

性能監(jiān)視

Swap空間的分配固然很重要,而系統(tǒng)在運(yùn)行時(shí)的性能監(jiān)控卻更加有價(jià)值,通過性能監(jiān)視

工具可以檢查系統(tǒng)的各項(xiàng)性能指標(biāo),找到系統(tǒng)性能的瓶頸 。本文只介紹一下在Solaris下

和Swap相關(guān)的一些命令和用途 。

最常用的是Vmstat命令,在大多數(shù)Unix平臺(tái)下都有此命令,此命令可以查看大多數(shù)性能

的指標(biāo) 。

另外使用swap -s 也能簡單的查看當(dāng)前swap資源的使用情況 。例如:

# swap -s

total: 65896k bytes allocated + 56840k reserved = 122736k used, 1069456k

available

能夠方便的看出swap空間的已用和未用資源的大小 。應(yīng)該使Swap保持30%的負(fù)載以下,

才能保證系統(tǒng)的良好性能 。

Solaris中Swap的特點(diǎn)

虛擬Swap空間

本來Swap空間就是為虛擬內(nèi)存服務(wù)的,現(xiàn)在Solaris的Swap空間也成為虛擬,這到底是

怎么回事呢? 讓我們看一個(gè)例子就明白了,當(dāng)在Solaris 2以前版本的Solaris(或其它

Unix,如Linux)上編程時(shí)經(jīng)常會(huì)出現(xiàn)一個(gè)問題:

假設(shè)系統(tǒng)當(dāng)前還有可用的內(nèi)存空間為30M,而只剩下10M的Swap空間了,這時(shí),如果有一

個(gè)進(jìn)程開始運(yùn)行并企圖執(zhí)行Malloc(15*1024*1024)的命令(分配15M空間),這個(gè)進(jìn)程

會(huì)因?yàn)檫@個(gè)命令而失敗 。

為什么呢?系統(tǒng)不是有30M可用的內(nèi)存空間嗎?原因在于:你的Swap空間不足,系統(tǒng)認(rèn)為

你在分配空間以后,沒有能力(空間)在發(fā)生頁面交換時(shí),將這部分?jǐn)?shù)據(jù)保存起來,因此

認(rèn)為你沒有資格分配這塊空間 。這不是太不公平了吧!也許這15M空間根本不用交換,當(dāng)

前系統(tǒng)可是還有30M內(nèi)存空間的富余啊!

還有更不公平的呢?有些大型系統(tǒng)配備了海量的內(nèi)存,1G或4G,配了這么多內(nèi)存就是為了

避免交換,提高運(yùn)行速度,可是系統(tǒng)還要為這個(gè)系統(tǒng)分配并不需要的Swap空間,占用了

大量磁盤資源 。

為了彌補(bǔ)這個(gè)缺陷,Sun為Solaris 2 以后的版本設(shè)計(jì)了虛擬Swap空間 。所謂虛擬的

Swap空間,概念其實(shí)很簡單,swap空間再也不是單指硬盤的分區(qū)或文件 。虛擬Swap空間

包含兩個(gè)部分:部分物理內(nèi)存和傳統(tǒng)上的Swap分區(qū) 。經(jīng)過適當(dāng)?shù)呐渲?,可以使系統(tǒng)需要

Swap空間時(shí),先使用內(nèi)存部分的swap空間,如果內(nèi)存部分的swap空間不夠,再使用磁盤

部分的Swap空間 。這樣,也許你硬盤上的Swap空間很少得到使用了,甚至根本不需要

Swap分區(qū) 。

Swap空間與TMPFS文件系統(tǒng)的關(guān)系

你知道嗎?虛擬Swap空間與 /tmp目錄有相當(dāng)大的關(guān)系 。Sun在實(shí)現(xiàn)/tmp目錄時(shí),充分考

慮了應(yīng)用程序運(yùn)行的效率 。許多應(yīng)用程序,特別是數(shù)據(jù)庫服務(wù)都會(huì)頻繁使用 /tmp目錄作

為臨時(shí)數(shù)據(jù)保存區(qū),而Solaris將 /tmp目錄下的文件都放在內(nèi)存中而不是硬盤里,這樣

會(huì)大大提高應(yīng)用程序的效率 。但是/tmp目錄的空間是從系統(tǒng)虛擬空間里擠出來的,是虛

擬Swap空間的一部分 。如果說,你用完了/tmp空間,也就是用完了Swap空間,所以要小

心監(jiān)視系統(tǒng)的/tmp目錄的使用情況,千萬別用光了,否則系統(tǒng)會(huì)癱瘓!下面兩點(diǎn)建議作為

參考:

1.在Mount /tmp目錄時(shí),使用(-o Size)選項(xiàng)來控制/tmp目錄的大小 。

推薦閱讀