国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統(tǒng) > Ubuntu > 正文

自己動(dòng)手提高ubuntu系統(tǒng)的性能

2024-07-26 00:36:45
字體:
供稿:網(wǎng)友

在每一個(gè)基本的系統(tǒng)中,都包含有各種各樣的基本進(jìn)程,用于檢查系統(tǒng)服務(wù),和操作系統(tǒng)通信等等。進(jìn)程和系統(tǒng)的性能表現(xiàn)有著很大的關(guān)系,因此,一個(gè)系統(tǒng)管理者應(yīng)該清楚了解當(dāng)前系統(tǒng)中正在運(yùn)行什么東西,有什么資源可用等等,只有這樣,你才能夠調(diào)整配置,例如,禁止不需要的進(jìn)程,打開必須的監(jiān)護(hù)程序以及將你的內(nèi)核調(diào)整到最優(yōu)化,最后得到一個(gè)最適合自己使用的最好的系統(tǒng)。Ubuntu是一個(gè)為大眾設(shè)計(jì)的系統(tǒng),這也就決定了其系統(tǒng)設(shè)置的大眾化,換句話說,臃腫化。為了適應(yīng)兼容性而支持的很多東西,我們其實(shí)不一定需要。在這里,筆者試圖講解一些通過調(diào)整內(nèi)核參數(shù),shell參數(shù)以及特定應(yīng)用的設(shè)置來優(yōu)化系統(tǒng)的方法,供大家參考。需要注意的是,不同的ubuntu系統(tǒng)有著不同的啟動(dòng)腳本,并有著不同的運(yùn)行進(jìn)程,這里我只能以7.04系統(tǒng)為基礎(chǔ)來講解。其實(shí)自己學(xué)會(huì)對(duì)進(jìn)程進(jìn)行追蹤查看是非常重要的,只有這樣你才能在不同的系統(tǒng)中都游刃有余。另外,如果要更加深入調(diào)整系統(tǒng),那么自己編譯一個(gè)屬于自己的系統(tǒng)是最合適的,本文沒有牽涉這么深入的東西。如果你對(duì)自己編譯linux系統(tǒng)感興趣,可以參考這篇文章和這篇文章。

本文假設(shè)你有一點(diǎn)點(diǎn)基本使用linux的基礎(chǔ),所以很多東西只是講一個(gè)概念性的大綱,想深入了解的話,網(wǎng)絡(luò)上有很多文章。如果你是系統(tǒng)高手,基本就可以不用看本文了,你會(huì)覺得很簡單,如果你是連ps,who -r都不知道的新手,建議你還是先放google搜索一些入門文章,并親自使用linux一周以上,再回過頭來看這篇文章。本文很大程度上參考了Ubuntu Performance Guides,篇幅較長,故分兩頁發(fā)出。

剛才就幾次提到進(jìn)程,那么,我們應(yīng)該怎么理解這個(gè)詞語?廣泛得說,所有在系統(tǒng)中運(yùn)行的,用于執(zhí)行各種各樣任務(wù)的,都是一個(gè)進(jìn)程,只不過根據(jù)具體執(zhí)行任務(wù)的不同可以有所區(qū)分,例如,用于管理和維持操作系統(tǒng)運(yùn)行的屬于系統(tǒng)進(jìn)程,而用于處理用戶需求的就是用戶進(jìn)程。

進(jìn)程并不是一個(gè)獨(dú)立的概念,它是相互交互的,很多進(jìn)程都為其他進(jìn)程提供服務(wù),或者攜手共同完成某一個(gè)功能。這些服務(wù)中,有一些對(duì)于系統(tǒng)的運(yùn)作是非常關(guān)鍵的,例如X-Windows服務(wù)。絕大多數(shù)的系統(tǒng)進(jìn)程都是服務(wù)性質(zhì)的進(jìn)程,而絕大多數(shù)用戶進(jìn)程則是應(yīng)用程序類進(jìn)程。應(yīng)用程序,比如你現(xiàn)在在使用的 Firefox(或者其它,估計(jì)FF最多吧)通常是由一個(gè)或多個(gè)滿足用戶需求的進(jìn)程組成??偟膩碚f,服務(wù)的開啟和關(guān)閉是基于系統(tǒng)需求的,而應(yīng)用程序的開啟和關(guān)閉,則是基于用戶的需求的。

我們上面說的這些進(jìn)程阿,服務(wù)阿啥的,其實(shí)之間的區(qū)分并不是很明顯,舉個(gè)例子,Gnome的桌面系統(tǒng)就是由各種程序和進(jìn)程組成,而他們不僅提供其它程序需要的服務(wù),還可以支持用戶的需求。GDE完全可以被稱為是程序,進(jìn)程,應(yīng)用和服務(wù)的集合體,這不會(huì)產(chǎn)生任何沖突。

當(dāng)然,我們還是要稍微做一下區(qū)分,后面才方便繼續(xù)講解?,F(xiàn)在就統(tǒng)一一下,進(jìn)程表示任何可以產(chǎn)生運(yùn)行中的進(jìn)程標(biāo)志符的東西,程序則表示能產(chǎn)生進(jìn)程的可執(zhí)行文件。用戶能夠直接使用應(yīng)用程序,而操作系統(tǒng)才使用服務(wù)。
進(jìn)程基本操作

在你的機(jī)器上,唯一能夠消耗你資源的就是正在運(yùn)行的進(jìn)程。如果當(dāng)你發(fā)現(xiàn)自己的系統(tǒng)突然很慢,運(yùn)行不正常時(shí),通常只有兩個(gè)可能,一種是某些進(jìn)程運(yùn)行異常,另一種就是某些進(jìn)程所消耗的資源已經(jīng)大于你所擁有的資源。

當(dāng)然,想看看什么東西正在你機(jī)器上運(yùn)行其實(shí)很簡單,使用ps -aux或者top命令即可,這些東西資料很多,我就不多說了,實(shí)在不行man top或者man ps吧。當(dāng)然,對(duì)于初學(xué)者來說最方便的還是利用圖形化界面的系統(tǒng)監(jiān)視器,如圖:

screeshot(點(diǎn)擊縮放)

所有信息都盡顯眼前。注意,在系統(tǒng)監(jiān)視器中,你不僅能看到進(jìn)程運(yùn)行情況,還能看到磁盤使用,CPU使用等很多有價(jià)值的信息,這些信息是接下來的部分可能用到的。

ok,現(xiàn)在我們知道,如果系統(tǒng)異常,如何去確定是什么進(jìn)程異常了。但是接下來該怎么處理呢?無論是命令行還是圖形界面顯示,你都可以看到每一個(gè)進(jìn)程都有屬于自己的ID,也就是PID。它們都是進(jìn)程的句柄,而不是表示真實(shí)的進(jìn)程。這有什么區(qū)別?對(duì)于一個(gè)擁有多線程的進(jìn)程來講,可以讓所有的線程都擁有同一個(gè)句柄,也可以讓每一個(gè)線程都擁有一個(gè)句柄。太專業(yè)了?恩,通俗來講,這就相當(dāng)于……進(jìn)程的身份證,我們通過它來標(biāo)志進(jìn)程。這個(gè)東西在ubuntu中默認(rèn)可以有32768個(gè)不同的PID,每有一個(gè)新的進(jìn)程,就分配一個(gè)當(dāng)前未用的PID給它。

好了,讓我們找到那個(gè)讓我們系統(tǒng)變慢的該死的罪魁禍?zhǔn)?,看看它的PID,然后用kill PID命令來關(guān)閉它。等等,你確定就是這個(gè)進(jìn)程影響了你的系統(tǒng)?你確信沒有錯(cuò)殺好人?好吧,其實(shí)可以先用kill -stop PID命令來暫停一個(gè)進(jìn)程,看看沒有了它,我們的系統(tǒng)是否正常。如果發(fā)現(xiàn)了冤假錯(cuò)案,沒關(guān)系,kill -cont PID能讓進(jìn)程繼續(xù)工作。

除了直接使用kill PID之外,我們還有更進(jìn)一步的kill進(jìn)程的辦法。kill PID僅僅是發(fā)出一個(gè)TERM信號(hào),然后進(jìn)程能捕捉這個(gè)信號(hào),開始釋放資源,關(guān)閉程序,這不是一下子就完成的,因此在關(guān)閉程序之前,你可以結(jié)束打開的文件和完成正在做的任務(wù)。但是這導(dǎo)致一個(gè)問題,假如進(jìn)程正在進(jìn)行作業(yè)而且不能中斷,那么進(jìn)程可以忽略這個(gè)SIGTERM信號(hào),而且如果進(jìn)程失去響應(yīng)了怎么辦?別急,我們還可以試一試kill -1 PID命令,這個(gè)命令發(fā)送的是hang up信號(hào),含義是“中止信號(hào)”,它告訴進(jìn)程,終端已經(jīng)被kill了。但這個(gè)信號(hào)同樣只被運(yùn)行良好的進(jìn)程所攔截。假設(shè)這兩種方式都無法結(jié)束進(jìn)程,那么只能使用kill -9 PID了。這個(gè)命令發(fā)送的是真正的kill信號(hào),對(duì)于這個(gè)信號(hào),進(jìn)程是不能忽略的。這是一個(gè)“我不管您在做什么,立刻停止”的信號(hào),也就是說進(jìn)程立刻被終止,不實(shí)施清理操作。

信號(hào)是用來與守護(hù)程序和進(jìn)程通信的。任何活動(dòng)任務(wù)都是一個(gè)進(jìn)程,而守護(hù)程序是等待對(duì)某些事件做出反應(yīng)或者按照日程安排執(zhí)行任務(wù)的后臺(tái)服務(wù)。一個(gè)程序必須有建在其中的信號(hào)處理程序用于捕獲和應(yīng)答信號(hào)。在LINUX中的signal參考指南解釋了各種不同信號(hào)和這些信號(hào)的用途。常用的信號(hào)除了上面介紹的以外,還有INT,CHLD等。
進(jìn)程操作進(jìn)階

當(dāng)然,僅僅了解上面的知識(shí),對(duì)于對(duì)進(jìn)程的理解,還是不夠的。下面,我會(huì)介紹更多的關(guān)于進(jìn)程的知識(shí)。

首先,我們需要知道,并不是所有的進(jìn)程都會(huì)被動(dòng)態(tài)分配PID,至少有兩個(gè)進(jìn)程不會(huì),就是kernel和init。kernel進(jìn)程的PID是0, 一直是0,而且你無法從ps,top這些命令中看見它,當(dāng)然,也無法用kill命令來終止它。init進(jìn)程是主父進(jìn)程,什么意思呢?每一個(gè)進(jìn)程都需要一個(gè)父進(jìn)程來監(jiān)管它,父進(jìn)程的作用就是接受子進(jìn)程的返回值和狀態(tài)值。而如果任何一個(gè)進(jìn)程的父進(jìn)程被終止,init就會(huì)成為它的父進(jìn)程。init進(jìn)程的PID固定是1,從理論上講,你也可以終止它,但是千萬不要試圖這樣做,因?yàn)樗怯脕砬宄羲肋M(jìn)程的,一旦將其kill,系統(tǒng)最終將崩潰。

除了他倆,還有一些進(jìn)程是你不應(yīng)該kill的,包括Zombies,/O Bound—A和Interception。事實(shí)上,我們很少解除這幾個(gè)進(jìn)程,普通用戶也沒必要接觸它們,因此,在這里我不會(huì)詳細(xì)解釋它們的用途,有興趣的朋友可以自己google。

其它進(jìn)程,在保證系統(tǒng)本身不崩潰的情況下,一旦有異常你都可以試圖去kill,不過要知道,kill命令只作用一次,也就是說,假如,我是說假如,這個(gè)進(jìn)程在被kill后又重新自啟動(dòng),那么你不得不再運(yùn)行一次kill,這樣循環(huán)。當(dāng)然,此時(shí),你就不能一直陪它kill下去了,追蹤查看其自啟動(dòng)的根源才是正確的做法。你覺得這太麻煩了?好吧,還有一個(gè)懶辦法,就是看看這個(gè)進(jìn)程的名字,然后用kill name來阻止它。我知道很多地方都有介紹kill -9 -1這個(gè)命令,但是你需要知道,這個(gè)命令會(huì)kill你所有的進(jìn)程,包括界面進(jìn)程以及終端。而且如果你是root權(quán)限……它會(huì)連所有系統(tǒng)應(yīng)用都一起 kill,然后,你的系統(tǒng)就將崩潰。所以用這個(gè)命令,你還不如直接按下你的重新啟動(dòng)按鍵,還更加省心……
進(jìn)程的啟動(dòng)

我們能夠查看正在運(yùn)行的進(jìn)程,查看進(jìn)程的具體信息,但是,我們能不能知道它們是怎樣開始的?難道是和孫猴子一樣從石頭里面崩出來的?你也許會(huì)看它的 PPID,恭喜你,摸著點(diǎn)門道了,but……你會(huì)發(fā)現(xiàn)大多數(shù)進(jìn)程的PPID都是1,init進(jìn)程。而事實(shí)上,進(jìn)程的啟動(dòng)原因可能是很多種,啟動(dòng)腳本,設(shè)備配置腳本,網(wǎng)絡(luò)變化,甚至是任務(wù)日程等等等等。因此,我們需要探查進(jìn)程啟動(dòng)的秘密。
啟動(dòng)腳本

看看你的/etc/init.d/文件夾,你會(huì)發(fā)現(xiàn)其中包含了很多用于啟動(dòng)和停止系統(tǒng)服務(wù)的腳本,而它們,都將以鏈接形式存在于/etc/rc0.d, /etc/rc1.d以及類似目錄中。例如,在/etc/rc1.d執(zhí)行命令ls -l,你會(huì)看見如下結(jié)果:

lrwxrwxrwx 1 root root 13 2007-04-21 22:01 K01gdm -> ../init.d/gdm*
lrwxrwxrwx 1 root root 17 2007-04-21 21:59 K01usplash -> ../init.d/usplash*
lrwxrwxrwx 1 root root 17 2007-04-23 14:54 K09apache2 -> ../init.d/apache2*
lrwxrwxrwx 1 root root 17 2007-04-21 21:58 K11anacron -> ../init.d/anacron*
lrwxrwxrwx 1 root root 13 2007-04-21 21:58 K11atd -> ../init.d/atd*
lrwxrwxrwx 1 root root 14 2007-04-21 21:58 K11cron -> ../init.d/cron*
lrwxrwxrwx 1 root root 16 2007-04-21 21:59 K19cupsys -> ../init.d/cupsys*
lrwxrwxrwx 1 root root 15 2007-04-21 21:59 K19hplip -> ../init.d/hplip*
lrwxrwxrwx 1 root root 22 2007-04-21 21:58 K20acpi-support -> ../init.d/acpi-su
……………………………..

如果你的運(yùn)行級(jí)別是1,init就會(huì)進(jìn)入/etc/rc1.d并調(diào)用其中的鏈接符號(hào),也就是啟動(dòng)相應(yīng)的進(jìn)程,以此類推。如果想知道目前系統(tǒng)的運(yùn)行級(jí)別,最簡單的辦法就是用who -r命令,會(huì)顯示:

run-level 2 2007-05-04 10:09

這就表示我目前的系統(tǒng)運(yùn)行級(jí)別是2。在boot的時(shí)候,所有/etc/rc2.d目錄下對(duì)應(yīng)的init腳本的輸出都會(huì)存到/var/log/messages這個(gè)文件中,你可以根據(jù)它來判斷哪些進(jìn)程被執(zhí)行了。
啟動(dòng)設(shè)備

udev進(jìn)程用于動(dòng)態(tài)管理設(shè)備的配置,這個(gè)進(jìn)程監(jiān)視和管理即插即用設(shè)備。一旦這些設(shè)備生效,存在于/etc/udev/rules.d/文件夾下的哪些腳本就會(huì)生效,調(diào)用不同的應(yīng)用程序。
shell啟動(dòng)腳本

每當(dāng)你登入登出系統(tǒng),或者是啟動(dòng)了一個(gè)新的shell之后,都會(huì)執(zhí)行配置腳本,每一個(gè)腳本都會(huì)啟動(dòng)進(jìn)程。對(duì)于筆者使用的ubuntu而言,默認(rèn)的shell是bash,相應(yīng)的配置腳本如下:

/etc/PRofile:每次登錄shel都會(huì)執(zhí)行,全局配置文件
$HOME/.bash_profile:基于用戶自定義,每一個(gè)用戶都可以有自己的登錄腳本
/etc/bash.bashrc:交互式非登錄全局配置腳本,這個(gè)文件在.bashrc中會(huì)調(diào)用
$HOME/.bashrc:交互式非登錄用戶自定義的配置腳本,也是我們大多數(shù)時(shí)候需要修改的文件
/etc/bash.logout:不一定存在,如果存在的話,每次用戶登出時(shí)調(diào)用它
$HOME/.bash_logout:同上,只不過是用戶自定義的

我們可以注意到,上面這些腳本大致可以分為兩類,一類是用于登入登出的,一類是交互式。它們有什么區(qū)別么?簡單得說,每當(dāng)你登入你的系統(tǒng)時(shí),登入腳本和交互式腳本都會(huì)執(zhí)行。而當(dāng)你打開一個(gè)終端窗口時(shí),只有交互式腳本才會(huì)被執(zhí)行。
桌面腳本

linux喊了一萬年的要易用,要占領(lǐng)桌面系統(tǒng),簡單說來,就是希望有一個(gè)漂亮易用的圖形界面。大多數(shù)人的大多數(shù)應(yīng)用還是基于圖形界面的,因此,除了上面介紹的shell腳本,我們還應(yīng)該關(guān)注一下圖形界面腳本。

在啟動(dòng)圖形界面的時(shí)候,首先會(huì)運(yùn)行/etc/X11/xinit/xinitrc, /etc/X11/Xsession和/etc/X11/xinit/xserverrc這三個(gè)腳本。它們會(huì)設(shè)置相應(yīng)的環(huán)境變量,并在最開始啟動(dòng)時(shí)運(yùn)行應(yīng)用程序。在X-Windows啟動(dòng)完畢之后,就是Gnome的啟動(dòng),它會(huì)調(diào)用很多程序,產(chǎn)生很多進(jìn)程,也就是類似于Windwos下的開機(jī)自啟動(dòng)程序。到底是哪些進(jìn)程呢?我們可以從存放系統(tǒng)級(jí)別啟動(dòng)腳本的/etc/X11/gdm/目錄,用于用戶自定義啟動(dòng)程序的$HOME/.gnomerc文件,或者通過系統(tǒng)>首選項(xiàng)>會(huì)話菜單來查看:

screeshot(點(diǎn)擊縮放)

好,問題來了。既然有這么多的地方都能進(jìn)行開機(jī)自啟動(dòng)程序的添加,難道它們都是完全一樣的么?這樣有什么意義呢?

恩,它們當(dāng)然不是完全一樣的,而是各司其職。

如果你希望自啟動(dòng)程序是作用于使用X-Windwos的所有人,那么你要修改的地方就是/etc/X11/Xsession,或者把腳本放置到 /etc/X11/Xsession.d/目錄下。如果僅僅是希望對(duì)你自己使用X-Windwos時(shí)生效,則修改$HOME/.xsession即可。

如果你希望自啟動(dòng)程序是作用于使用Gnome的所有人,那么你要修改的地方就是 /etc/X11/gdm/PostSession/Default,它會(huì)僅僅對(duì)Gnome使用者起作用,而不是KDE使用者或者其他?;蛘甙涯_本放置到 /etc/X11/Xsession.d/目錄下。如果僅僅是希望對(duì)你自己使用Gnome時(shí)生效,則修改$HOME/.gnomerc即可。

小知識(shí):Gnome和X-Windows的區(qū)別?
X-Windows是圖形界面底層,提供的功能是在屏幕上構(gòu)造方塊(窗口),然后畫出里面的元素,但不提供交互式操作。gnome,kde這些都是基于X -Windows的不同風(fēng)格的界面,屬于桌面環(huán)境。怎么理解這個(gè)桌面環(huán)境呢?基本的意思是指“ Mac OS 和 Windows的圖形界面有,而X沒有卻應(yīng)該有的東西”。通常是一組有著共同外觀和操作感的應(yīng)用程序,和程序庫,以及創(chuàng)建新的應(yīng)用程序的方法。事實(shí)上你可以同時(shí)有兩個(gè)文件管理器,兩個(gè)面板,等等,并不沖突,因?yàn)樗鼈兌际菍儆趹?yīng)用。

桌面應(yīng)用

插入光盤,就會(huì)自動(dòng)彈出文件瀏覽器,插入數(shù)碼相機(jī),就會(huì)自動(dòng)彈出照片導(dǎo)入程序,等等。這些應(yīng)用是怎么實(shí)現(xiàn)的?如何禁止程序的自動(dòng)執(zhí)行?如何自定義在即插即用設(shè)備被認(rèn)出以后的啟動(dòng)程序?
答案就在 系統(tǒng)>首選項(xiàng)>可移動(dòng)驅(qū)動(dòng)器和介質(zhì) 里。打開它,你就明白怎么回事了,這東西實(shí)在太簡單,我就不多說了。只有一點(diǎn)補(bǔ)充的,就是如果你要使用一款新的即插即用設(shè)備,而這種設(shè)備在可移動(dòng)驅(qū)動(dòng)器和介質(zhì)選項(xiàng)中沒有,那么此時(shí)你就必須求助于udev了。至于udev的具體知識(shí),講起來又是一篇文章,所以就不講了,還是那句話,放google~~^_^。
評(píng)估資源

剛才我們一直再說資源資源,當(dāng)然,系統(tǒng)資源的使用情況直接決定了你系統(tǒng)當(dāng)前的性能。那么,我們?nèi)绾尾拍軐?duì)自己系統(tǒng)的性能做一個(gè)基礎(chǔ)評(píng)估呢?在評(píng)估之前,我們需要對(duì)資源做一個(gè)更加詳細(xì)的解釋。所謂的資源,都是指進(jìn)程所能使用的資源,包括了CPU處理能力,磁盤空間,磁盤I/O,RAM使用情況,顯存使用情況,網(wǎng)絡(luò)流量等。而這些資源的當(dāng)前使用狀態(tài),我們都是有辦法自己獲取的。
系統(tǒng)監(jiān)視器和proc

正如大多數(shù)linuxer所知道的那樣,/proc掛載了一個(gè)虛擬文件系統(tǒng),專門用于列出當(dāng)前系統(tǒng)資源情況和正在運(yùn)行的進(jìn)程。在這里,所有的東西都是動(dòng)態(tài)的,隨時(shí)可能改變的。最關(guān)鍵的是,/proc目錄下有很多以數(shù)字命名的文件夾,這些文件夾都對(duì)應(yīng)了某一個(gè)響應(yīng)PID的進(jìn)程,內(nèi)含進(jìn)程的很多信息,包括使用命令,運(yùn)行環(huán)境等。還有一些不是以數(shù)字命名的文件夾,那是設(shè)備驅(qū)動(dòng)和內(nèi)核的情況,例如,cpuinfo這個(gè)文件就提供了系統(tǒng)中cpu的相關(guān)信息。

當(dāng)然,你可能覺得從這里面獲取系統(tǒng)資源信息實(shí)在太麻煩了,你會(huì)抱怨,拜托,我僅僅是初學(xué)者,有沒有直觀的辦法?sure!剛才我們說的CPU處理能力,磁盤可使用空間,內(nèi)存情況,網(wǎng)絡(luò)情況,你統(tǒng)統(tǒng)都可以從系統(tǒng)監(jiān)視器中看到。監(jiān)視器以曲線圖的形式把情況呈現(xiàn)在你的面前,你可以根據(jù)它評(píng)估系統(tǒng)的運(yùn)行是否良好,有沒有異常的發(fā)生。

screeshot-1(點(diǎn)擊縮放)
其它

那么,監(jiān)視器就是萬能的?no,至少顯存和磁盤I/O的情況它就無法呈現(xiàn)給你。在實(shí)際使用中,可能會(huì)發(fā)生你的系統(tǒng)中有好幾個(gè)磁盤,但某個(gè)磁盤的 I/O通道堵塞會(huì)導(dǎo)致系統(tǒng)性能下降的現(xiàn)象。有什么辦法來確定是哪個(gè)通道在搞鬼呢?這里,iostat就可以幫助我們了。這是一個(gè)小的,評(píng)估I/O性能的軟件,通過sudo apt-get install sysstat來獲得它。安裝完后直接輸入iostat命令,就會(huì)顯示:

avg-cpu: %user %nice %system %iowait %steal %idle
7.18 0.08 3.58 2.34 0.00 86.83

Device: tps MB_read/s MB_wrtn/s MB_read MB_wrtn
sda 16.63 0.19 0.16 1046 877
sdb 0.01 0.00 0.00 0 0

包括基本CPU負(fù)荷以及I/O情況。我機(jī)器上磁盤數(shù)量較少,所以結(jié)果比較少。好了,光知道這些數(shù)據(jù)是沒用的,我們需要做的是根據(jù)這些數(shù)據(jù)來分析系統(tǒng)負(fù)荷。我們假設(shè)現(xiàn)在sdb設(shè)備數(shù)據(jù)量不正常,好,接下來就用mount命令來看看,是哪個(gè)文件掛載到sda下的,得出文件路徑名后,用lsof來查看這個(gè)目錄下打開了哪些文件,哪些進(jìn)程,以及相關(guān)信息。這樣,就能有的放矢得來尋找到讓你磁盤I/O情況異常的東西。

之后談?wù)勶@存的情況讀取。首先談?wù)勎覀優(yōu)槭裁匆P(guān)注顯存,顯存的容量會(huì)直接影響你的顯示情況,例如,如果你只有一塊老的,256K顯存的顯卡,那么屏幕的顯示最高也就是支持到800×600,16位色深。如今,大部分的高端顯卡都擁有至少128MB的顯存,能夠輕松在32位色深的情況下上到1280×1024的分辨率。更多的顯存同樣對(duì)游戲以及桌面的逼真度有益,因?yàn)榭梢杂娠@存的一部分來保持主畫面的顯示,其它空余下來的顯存就可以用來體現(xiàn)各種層面的仿真元素。我們可以通過lspci –v 命令來顯示所有PCI卡,包括顯卡的存儲(chǔ)關(guān)聯(lián)情況。這個(gè)命令有什么用呢?當(dāng)你遇到硬件問題,比如缺乏關(guān)鍵的硬件環(huán)境支持時(shí),可以用這個(gè)命令來診斷到底是什么設(shè)備出了問題。這個(gè)命令在我這里奏效,但我不保證在所有的機(jī)器上都能奏效。在顯示的情況中找VGA這一欄,可以看到顯示信息如下:

01:00.0 VGA compatible controller: ATI Technologies Inc RV370 [Sapphire X550 Silent] (prog-if 00 [VGA])
Flags: bus master, fast devsel, latency 0, IRQ 16
Memory at 20000000 (32-bit, prefetchable) [size=256M]
I/O ports at 2000 [size=256]
Memory at 30110000 (32-bit, non-prefetchable) [size=64K]
Expansion ROM at 30120000 [disabled] [size=128K]
Capabilities:

從這里,我們就可以看出我的顯卡是256M顯存。
風(fēng)雷的技術(shù)天地


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 四会市| 汉寿县| 襄垣县| 宽城| 邓州市| 马鞍山市| 长白| 桐乡市| 唐河县| 潼南县| 娱乐| 广宗县| 敦化市| 广宁县| 平乐县| 东山县| 霍林郭勒市| 齐齐哈尔市| 宜阳县| 松原市| 恭城| 大邑县| 玉环县| 武定县| 集安市| 衡阳市| 灵台县| 涿州市| 麦盖提县| 郴州市| 合肥市| 尚志市| 敦煌市| 邵东县| 万全县| 册亨县| 东光县| 安图县| 丰镇市| 望江县| 诏安县|