自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

提高Linux操作系統(tǒng)性能

運維 系統(tǒng)運維
本文從磁盤,文件及文件系統(tǒng),內(nèi)存和編譯等方面詳細的講述了如何對Linux系統(tǒng)性能進行調(diào)諧。不管是Linux服務器還是客戶機或者用戶單機,按照本文提供的調(diào)諧方法,均可不同程度地改善Linux系統(tǒng)的性能。

     Linux是高性能、穩(wěn)定可靠而且又相當靈活的操作系統(tǒng),近幾年來,世界上許多大軟件公司紛紛推出各種linux服務器及l(fā)inux下的應用軟件。 目前,Linux已可以與各種傳統(tǒng)的商業(yè)操作系統(tǒng)分庭抗禮,在服務器市場,占據(jù)了相當大的份額。Linux的服務器系統(tǒng)多種多樣,可用作web服務器,郵件服務器,ftp服務器,文件服務器以及數(shù)據(jù)庫服務器等等。針對不同的系統(tǒng)以及具體的應用環(huán)境,可以對Linux的性能進行相應的調(diào)諧。下面分別從磁盤調(diào)諧,文件系統(tǒng),內(nèi)存管理以及編譯優(yōu)化等方面來提高Linux系統(tǒng)的性能。

一、優(yōu)化的分區(qū)
    在安裝Linux系統(tǒng)之初,就應該考慮怎樣使linux系統(tǒng)得到最好的性能。在Linux系統(tǒng)中,我們可以自由地組織磁盤分區(qū)。一個優(yōu)化的分區(qū)策略,可以很好地改進Linux系統(tǒng)的性能,減少磁盤碎片,提高磁盤I/O能力。 
    根據(jù)磁盤的特點,我們知道越是靠磁盤外部的柱面,旋轉(zhuǎn)越快,而且每次旋轉(zhuǎn)時,磁盤讀寫頭可以覆蓋較多的區(qū)域,也就意味著靠外部的柱面可以得到較好的性能。所以在分區(qū)時,我們應該考慮將訪問頻率高的,對系統(tǒng)性能影響相對較大的分區(qū)置于磁盤的靠外部分。同時,為了減少磁盤碎片,應將內(nèi)容經(jīng)常改變的目錄放在單獨的分區(qū)。從方便備份數(shù)據(jù)的角度考慮,因為很多備份工具對整個分區(qū)進行備份的效率要高,所以我們應將Linux系統(tǒng)的幾個主要的目錄作為單獨的文件系統(tǒng),為它們各自分配一個區(qū)。磁盤還有一部分未分區(qū)的空間,為什么不在安裝系統(tǒng)時,將整個磁盤分區(qū)呢?現(xiàn)在的硬盤空間比較大,而在安裝系統(tǒng)時,也許你所安裝的文件加上以后增長所需要的空間用不到整個磁盤存儲空間。保留一部分未分區(qū)空間,當以后有新的需要時,就可以用fdisk重新將之分區(qū)。在分區(qū)時,需要注意的是,根據(jù)系統(tǒng)將來運行的需要或過去的經(jīng)驗來估計各個分區(qū)的大小,以免將來空間不夠。
    如果你的系統(tǒng)有多塊硬盤,可以考慮使用多個交換分區(qū)。每個磁盤上劃分一個交換分區(qū)。通過在/etc/fstab文件中設置pri 選項,可使多個交換分區(qū)具有同樣的優(yōu)先級。Linux系統(tǒng)即可并行地使用它們。這樣即可提高交換分區(qū)的性能。
當然,如果你的系統(tǒng)內(nèi)存足夠大,而你的系統(tǒng)又遠遠用不了那么多的內(nèi)存,那也就用不到什么虛存了。分區(qū)時你就可以考慮去掉交換分區(qū)。不過作為一個Linux服務器,即使你的內(nèi)存足夠大,還是應該設置交換分區(qū)。

二、使用hdparm改善Linux系統(tǒng)性能
    如果你的Linux系統(tǒng)運行于IDE硬盤,可以使用hdparm工具來提高磁盤I/O的性能。不過使用hdparm要小心,因為可能破壞硬盤上的數(shù)據(jù)。所以在使用hdparm之前,仔細閱讀你的硬盤手冊。根據(jù)你具體的硬盤規(guī)格來使用相應的hdparm開關參數(shù)。對一塊UltraATA/66 EIDE 硬盤,其控制芯片支持多 PIO 模式和DMA,我們使用以下命令來調(diào)諧磁盤性能:

選項說明:
① c3 :就是把硬盤的16位格式轉(zhuǎn)換為32位模式(32-bit mode w/sync)??刂茢?shù)據(jù)如何從pci總線傳遞到控制器。
② m16 :改變硬盤的多路扇區(qū)的讀功能,-m16可以使得硬盤在一次i/o中斷中讀入16個扇區(qū)的數(shù)據(jù)(據(jù)具體硬盤而定)。
③ d1:打開DMA模式。
④ x66 :在支持UDMA-capable的硬盤中,這個參數(shù)可以支持雙DMA通道的數(shù)據(jù)傳輸模式。
⑤ u1 :Linux在處理磁盤中斷時,可以unmask其他的中斷或者響應其他中斷相關的任務。

查看以上的更改情況可以使用命令: # /sbin/hdparm /dev/hda
測試磁盤I/O性能可以使用命令: # /sbin/hdparm -tT /dev/hda
如果磁盤的性能有改進的話,可以使用以下命令來保存設置: # /sbin/hdparm -k1 /dev/hda

#p#

三、Linux下使用軟RAID
    RAID(磁盤冗余陣列)是通過將數(shù)據(jù)分布在多個磁盤上來增強磁盤性能和可靠性的技術(shù)。如果你的系統(tǒng)沒有硬件RAID控制器的話,在Linux下可以通過軟件來實現(xiàn)RAID。RAID的有很多的級別,不同的級別對硬件有不同的要求,相應也會得到不同的性能和可靠性。RAID0為數(shù)據(jù)分割,數(shù)據(jù)塊被交替寫到磁盤,可以得到最好的讀寫性能,但是不提供數(shù)據(jù)冗余。RAID1為磁盤鏡像,寫到磁盤1中的一切也寫到磁盤2中,從任何一個磁盤都可以讀取。RAID3除了數(shù)據(jù)分割之外,還指定一個磁盤驅(qū)動器來存儲奇偶信息。
    在LINUX下通過軟件來實現(xiàn)RAID,需要LINUX的內(nèi)核支持,可以通過編譯新內(nèi)核來添加對RAID的支持。然后還需編譯并安裝 raidtools 軟件包。raidtools 是可以初始化、啟動、停止及控制RAID陣列的用戶級工具。下面是我們用兩塊IDE硬盤在LINUX內(nèi)核2.4上實現(xiàn)RAID0的方法。

1、創(chuàng)建分區(qū)

    使用RAID0至少需要兩個分區(qū),它們位于不同的磁盤。最好做RAID0的兩個分區(qū)有相同的大小。創(chuàng)建分區(qū)時,將分區(qū)類型指定為 "FD"。以使 Linux 內(nèi)核能將它們識別為 RAID 分區(qū),這樣,這些分區(qū)就可在每次引導時自動被檢測并啟動。如果您沒有以這種方式標記 RAID 分區(qū),則在每次引導之后,必須首先輸入 "raidstart --all" 才能掛載 RAID 陣列。我們做成RAID0的兩個分區(qū)為hda5和hdc5。

2、 編輯/etc/raidtab文件
    創(chuàng)建/etc/raidtab文件以描述RAID陣列的配置信息。Linux 內(nèi)核使用這些信息在引導時自動檢測并啟動 RAID 陣列,因此必須對創(chuàng)建的每個 RAID 陣列進行這種配置。將分區(qū)hda5和hdc5組成md0 RAID0陣列的配置文件如下:

raiddev /dev/md0
raid-level 0
nr-raid-disks 2
persistent-superblock 1
chunk-size 32
device /dev/hda5
raid-disk 0
device /dev/hdc5
raid-disk 1

3、raidtab文件
    在raidtab文件中,"raiddev" 條目指明要創(chuàng)建的 RAID 陣列;"nr-raid-disks" 指定陣列中的磁盤數(shù)目;"persistent-superblock" 設置為 1,告訴 raid 工具何時創(chuàng)建該卷;"chunk-size" 以K字節(jié)指定 RAID0 使用的塊大??;最后,要指定的是組成該陣列的設備即分區(qū)。
    mkraid 和創(chuàng)建文件系統(tǒng) 使用命令"# mkraid /dev/md0" 命令初始化/dev/md0分區(qū),同時將啟動md0 RAID0陣列。接下來,即可在md0上創(chuàng)建你想要得文件系統(tǒng)。我們在Linux服務器上使用的是Reiserfs日志文件系統(tǒng),創(chuàng)建的命令為"# mkreiserfs /dev/md0"。
這樣,就可以像其它文件系統(tǒng)那樣來加載新創(chuàng)建的基于RAID0的文件系統(tǒng)了。

#p#


四、使用elvtune調(diào)諧磁盤I/O
    在Linux內(nèi)核2.4以后的版本中,可以通過磁盤I/O的調(diào)度操作,來控制磁盤I/O的響應時間和吞吐量。通過調(diào)整I/O請求在隊列中的最大等待時間,可以在響應時間和吞吐量之間調(diào)諧。如果要求較少的響應時間,那么吞吐量將降低,反之,較長的響應時間則可以得到較大的吞吐量??梢允褂霉ぞ?/sbin/elvtune"來改變最大的響應時間值。使用方法如下:

查看當前的設置 :# /sbin/elvtune /dev/hda1
修改當前的配置 :# /sbin/elvtune -r 2000 -w 4000 /dev/hda1
(其中-r參數(shù)針對讀操作,-w參數(shù)針對寫操作。 )
    另外,可以通過命令"iostat -d -x /dev/hda1"得到的平均信息(包括平均請求大小和平均隊列長度)來監(jiān)視以上I/O配置的效果,并調(diào)整配置,以得到最佳的性能。一般來講,對于讀寫頻繁,但操作的數(shù)據(jù)量較少的Linux服務器,且對實時性要求較高,那么可以將參數(shù)調(diào)小。反之如果對于讀寫不頻繁,但要求具有較大的吞吐量的Linux服務器,可以將參數(shù)調(diào)大,以獲得較大的吞吐量。

五、文件及文件系統(tǒng)調(diào)諧塊
1、塊大小
     創(chuàng)建文件系統(tǒng)時,可以指定塊的大小。如果將來在你的文件系統(tǒng)中是一些比較大的文件的話,使用較大的塊大小將得到較好的性能。將ext2文件系統(tǒng)的塊大小調(diào)整為4096byte而不是缺省的1024byte,可以減少文件碎片,加快fsck掃描的速度和文件刪除以及讀操作的速度。另外,在ext2的文件系統(tǒng)中,為根目錄保留了5%的空間,對一個大的文件系統(tǒng),除非用作日志文件,5%的比例有些過多??梢允褂妹?# mke2fs -b 4096 -m 1 /dev/hda6"將它改為1%并以塊大小4096byte創(chuàng)建文件系統(tǒng)。
使用多大的塊大小,需要根據(jù)你的系統(tǒng)綜合考慮,如果系統(tǒng)用作郵件或者新聞服務器,使用較大的塊大小,雖然性能有所提高,但會造成磁盤空間較大的浪費。比如文件系統(tǒng)中的文件平均大小為2145byte,如果使用4096byte的塊大小,平均每一個文件就會浪費1951byte空間。如果使用1024byte的塊大小,平均每一個文件會浪費927byte空間。在性能和磁盤的代價上如何平衡,要看具體應用的需要。

2、不使用atime屬性
     當文件被創(chuàng)建,修改和訪問時,Linux系統(tǒng)會記錄這些時間信息。記錄文件最近一次被讀取的時間信息,當系統(tǒng)的讀文件操作頻繁時,將是一筆不少的開銷。所以,為了提高系統(tǒng)的性能,我們可以在讀取文件時不修改文件的atime屬性??梢酝ㄟ^在加載文件系統(tǒng)時使用notime選項來做到這一點。當以noatime選項加載(mount)文件系統(tǒng)時,對文件的讀取不會更新文件屬性中的atime信息。設置noatime的重要性是消除了文件系統(tǒng)對文件的寫操作,文件只是簡單地被系統(tǒng)讀取。由于寫操作相對讀來說要更消耗系統(tǒng)資源,所以這樣設置可以明顯提高服務器的性能。注意wtime信息仍然有效,任何時候文件被寫,該信息仍被更新。

比如在你的系統(tǒng)中,要為/home文件系統(tǒng)設置notime選項,可以修改/etc/fstab文件相應的行如下:

LABEL=/home /home ext2 noatime 1 2

要使該設置立即生效,可運行命令"#mount -oremount /home"。這樣以后系統(tǒng)讀取/home下的文 件時將不會再修改atime屬性。

3、調(diào)整緩沖區(qū)刷新參數(shù)

     Linux內(nèi)核中,包含了一些對于系統(tǒng)運行態(tài)的可設置參數(shù)。緩沖刷新的參數(shù)可以通過調(diào)整 /proc/sys/vm/bdflush文件來完成,這個文件的格式是這樣的:

# cat /proc/sys/vm/bdflush
30 64 64 256 500 3000 60 0 0

     每一欄是一個參數(shù),其中最重要的是前面幾個參數(shù)。第一個數(shù)字是在"dirty"緩沖區(qū)達到多少的時候強制喚醒bdflush進程刷新硬盤,第二個數(shù)字是每次讓bdflush進程刷新多少個dirty塊。所謂dirty塊是必須寫到磁盤中的緩存塊。接下來的參數(shù)是每次允許bd flush將多少個內(nèi)存塊排入空閑的緩沖塊列表。 以上值為RedHat Linux 7.1中的缺省值。如何修改它們呢?對不同的系統(tǒng)有以下兩種方法
(1)# echo "100 128 128 512 5000 3000 60 0 0">;/proc/sys/vm/bdflush 并將這條命令加到/etc/rc.d/rc.local文件中去。
(2)在/etc/sysctl.conf 文件中加入如下行: vm.bdflush = 100 128 128 512 5000 3000 60 0 0

以上的設置加大了緩沖區(qū)大小,降低了bdflush被啟動的頻度,同時也增加了萬一系統(tǒng)崩潰丟失數(shù)據(jù)的危險性。VFS的緩沖刷新是Linux文件系統(tǒng)高效的重要原因之一,如果性能對你真的很重要,應該考慮調(diào)整這個參數(shù)。

#p#


4、調(diào)整文件句柄數(shù)和i-節(jié)點數(shù)

    在一個大型的網(wǎng)站服務器其中,可能Linux默認的同時可打開最大文件數(shù)不能滿足系統(tǒng)需要,我們可以通過調(diào)整文件句柄數(shù)和i-節(jié)點數(shù)來增加系統(tǒng)的缺省的限制。不同的Linux內(nèi)核版本有不同的調(diào)整方法。

在Linux內(nèi)核2.2.x中可以用如下命令修改:
# echo '8192' >; /proc/sys/fs/file-max
# echo '32768' >; /proc/sys/fs/inode-max

并將以上命令加到/etc/rc.c/rc.local文件中,以使系統(tǒng)每次重新啟動時配置以上值。

在Linux內(nèi)核2.4.x中需要修改源代碼,然后重新編譯內(nèi)核才生效。編輯Linux內(nèi)核源代碼中的 include/linux/fs.h文件,將 NR_FILE 由8192改為 65536,將NR_RESERVED_FILES 由10 改為 128。編輯fs/inode.c 文件將 MAX_INODE 由16384改為262144。

一般情況下,最大打開文件數(shù)比較合理的設置為每4M物理內(nèi)存256,比如256M內(nèi)存可以設為16384,而最大的使用的i節(jié)點的數(shù)目應該是最大打開文件數(shù)目的3倍到4倍。

5、使用內(nèi)存文件系統(tǒng)

    在Linux中可以將一部分內(nèi)存當作分區(qū)來使用,我們稱之為RamDisk。對于一些經(jīng)常被訪問的文件,而它們又不會被更改,可以將它們通過RamDisk放在內(nèi)存中,即可明顯地提高系統(tǒng)的性能。當然你的內(nèi)存可要足夠大了。RamDisk有兩種,一種可以格式化,加載,在Linux內(nèi)核2.0/2.2就已經(jīng)支持,其不足之處是大小固定。另一種是內(nèi)核2.4才支持的,通過Ramfs或者tmpfs來實現(xiàn),它們不能被格式化,但是用起來靈活,其大小隨所需要的空間而增加或減少。這里主要介紹一下Ramfs和Tmpfs。
Ramfs顧名思義是內(nèi)存文件系統(tǒng),它工作于虛擬文件系統(tǒng)(VFS)層。不能格式化,可以創(chuàng)建多個,在創(chuàng)建時可以指定其最大能使用的內(nèi)存大小。如果你的Linux已經(jīng)將Ramfs編譯進內(nèi)核,你就可以很容易地使用Ramfs了。創(chuàng)建一個目錄,加載Ramfs到該目錄即可。
# mkdir -p /RAM1
# mount -t ramfs none /RAM1

缺省情況下,Ramfs被限制最多可使用內(nèi)存大小的一半??梢酝ㄟ^maxsize(以kbyte為單位)選項來改變。
# mkdir -p /RAM1
# mount -t ramfs none /RAM1 -o maxsize=10000

以上即創(chuàng)建了一個限定了最大使用內(nèi)存大小為10M的ramdisk。

    Tmpfs是一個虛擬內(nèi)存文件系統(tǒng),它不同于傳統(tǒng)的用塊設備形式來實現(xiàn)的ramdisk,也不同于針對物理內(nèi)存的Ramfs。Tmpfs可以使用物理內(nèi)存,也可以使用交換分區(qū)。在Linux內(nèi)核中,虛擬內(nèi)存資源由物理內(nèi)存(RAM)和交換分區(qū)組成,這些資源是由內(nèi)核中的虛擬內(nèi)存子系統(tǒng)來負責分配和管理。Tmpfs就是和虛擬內(nèi)存子系統(tǒng)來"打交道"的,它向虛擬內(nèi)存子系統(tǒng)請求頁來存儲文件,它同Linux的其它請求頁的部分一樣,不知道分配給自己的頁是在內(nèi)存中還是在交換分區(qū)中。Tmpfs同Ramfs一樣,其大小也不是固定的,而是隨著所需要的空間而動態(tài)的增減。使用tmpfs,首先你編譯內(nèi)核時得選擇"虛擬內(nèi)存文件系統(tǒng)支持(Virtual memory filesystem support)" ,然后就可以加載tmpfs文件系統(tǒng)了。
# mkdir -p /mnt/tmpfs
# mount tmpfs /mnt/tmpfs -t tmpfs

> 為了防止tmpfs使用過多的內(nèi)存資源而造成系統(tǒng)的性能下降或死機,可以在加載時指定tmpfs文件系統(tǒng)大小的最大限制。

# mount tmpfs /mnt/tmpfs -t tmpfs -o size=32m


> 以上創(chuàng)建的tmpfs文件系統(tǒng)就規(guī)定了其最大的大小為32M。不管是使用ramfs還是tmpfs,必須明白的是,一旦系統(tǒng)重啟,它們中的內(nèi)容將會丟失。所以那些東西可以放在內(nèi)存文件系統(tǒng)中得根據(jù)系統(tǒng)的具體情況而定。

6、使用日志文件系統(tǒng)

    如果Linux系統(tǒng)由于意外情況而沒有正常關機,則可能引起文件系統(tǒng)中某些文件的元數(shù)據(jù)(meta-data即和文件有關的信息,例如:權(quán)限、所有者以及創(chuàng)建和訪問時間)遭到破壞。文件系統(tǒng)需要維護文件的元數(shù)據(jù)來保證文件的可組織和可存取,如果元數(shù)據(jù)處于不合理或不一致的狀態(tài),那么就不能訪問和存取文件。當系統(tǒng)重新啟動時,fsck將掃描/etc/fstab文件中所列出的所有文件系統(tǒng),確保它們的元數(shù)據(jù)處于可用的狀態(tài)。如果發(fā)現(xiàn)元數(shù)據(jù)不一致,fsck將掃描和檢測元數(shù)據(jù),并糾正錯誤。如果文件系統(tǒng)很大,這個過程將需要很長的時間。為解決這個問題,可以使用日志文件系統(tǒng)。日志文件系統(tǒng)用獨立的日志文件跟蹤磁盤內(nèi)容的變化,在寫入文件內(nèi)容的同時寫入文件的元數(shù)據(jù)。每次修改文件的元數(shù)據(jù)時,都要先向稱為"日志"的數(shù)據(jù)結(jié)構(gòu)登記相應的條目。這樣,日志文件系統(tǒng)就維護了最近更改的元數(shù)據(jù)的記錄。當加載日志文件系統(tǒng)時,如果發(fā)現(xiàn)了錯誤,不會掃描整個文件系統(tǒng)的元數(shù)據(jù),而是根據(jù)日志檢查最近被更改的元數(shù)據(jù)。所以相對于傳統(tǒng)的文件系統(tǒng)(如ext2),日志文件系統(tǒng)大大地加快了掃描和檢測的時間。

    Linux下可用的日志文件系統(tǒng)很多,如XFS,JFS,Reiserfs,ext3等等。日志文件系統(tǒng)主要被設計為服務器環(huán)境提供出色性能和高可用性。當然,Linux工作站和家用機器也可從具有高性能的可靠日志文件系統(tǒng)中獲益。安裝日志文件系統(tǒng),一般需要下載相應的壓縮包、為內(nèi)核打補丁、重新配置和重新編譯內(nèi)核。 詳細的安裝過程可訪問相應文件系統(tǒng)的官方網(wǎng)站。

#p#

六、其它方面的調(diào)諧
1、調(diào)諧buffermem

文件buffermen和內(nèi)核虛擬內(nèi)存子系統(tǒng)密切相關。文件/proc/sys/vm/buffermem控制多大內(nèi)存被用于緩沖區(qū)(百分數(shù)表示)。內(nèi)核2.4的缺省值為:: "2 10 60"。可以按如下方法修改:

# echo "70 10 60" >;/proc/sys/vm/buffermem

并將之加到腳本文件/etc/rc.d/rc.local 中?;蛘咴?etc/sysctl.conf文件中加入 :vm.buffermem = 70 10 60

第一個參數(shù)70意味著至少分配70%的內(nèi)存用作緩沖區(qū)。后兩個參數(shù)保持系統(tǒng)的默認值。第一個參數(shù)設置為多大合適,依賴于系統(tǒng)的內(nèi)存大小和系統(tǒng)高負載時內(nèi)存的使用情況(可用free監(jiān)視)。

2、進程限制

   Linux對于每個用戶,系統(tǒng)限制其最大進程數(shù)。為提高性能,可以設置超級用戶root的最大進程數(shù)為無限。編輯.bashrc文件(vi /root/.bashrc)增加行"ulimit -u unlimited"即可消除超級用戶的進程限制。
核心和系統(tǒng)對用戶進程其它的一些限制也可以通過ulimit命令來查看和更改。"ulimit -a" 用來顯示當前的各種用戶進程限制。一些更改用戶限制的例子如下:

ulimit -n 4096 將每個進程可以打開的文件數(shù)目加大到4096,缺省為1024

ulimit -m 4096 限制每個進程使用的內(nèi)存數(shù)。

3、優(yōu)化gcc編譯

將優(yōu)化標志放在/etc/profile文件中。在pentium III級的處理器上使用以下優(yōu)化標志將得到最優(yōu)的應用程序:

CFLAGS=-O9 -funroll-loops -ffast-math -malign-double -mcpu=pentiumpro
-march=pentiumpro -fomit-frame-pointer -fno-exceptions

再將如下行加到/etc/profile 更靠后的位置:

export PATH PS1 HOSTNAME HISTSIZE HISTFILESIZE USER LOGNAME MAIL INPUTRC CFLAGS
LANG LESSCHARSET


使用以上的優(yōu)化,gcc或者egcs編譯的程序?qū)⒌玫阶罴训男阅堋?

4、編譯內(nèi)核優(yōu)化

   編輯/usr/src/linux/Makefile文件,可以根據(jù)具體的cpu優(yōu)化內(nèi)核編譯。以下的參數(shù)設置將得到優(yōu)化的內(nèi)核性能。

① vi +18 /usr/src/linux/Makefile ,將HOSTCC =gcc改為 HOSTCC =egcs.
② vi +25 /usr/src/linux/Makefile
將CC =$(CROSS_COMPILE)gcc D__KERNEL__ -I$(HPATH)
改為 CC =$(CROSS_COMPILE)egcs D__KERNEL__ -I$(HPATH).
③ vi +90 /usr/src/linux/Makefile
將CFLAGS = -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer
改為CFLAGS = -Wall -Wstrict-prototypes -O9 -funroll-loops -ffast-math -malign-double
-mcpu=pentiumpro -march=pentiumpro -fomit-frame-pointer -fno-exceptions
④ vi +19 /usr/src/linux/Makefile
將HOSTCFLAGS =-Wall -Wstrict-prototypes -O2 -fomit-frame-pointer
改為HOSTCFLAGS =-Wall -Wstrict-prototypes -O9 -funroll-loops -ffast-math
-malign-double -mcpu=pentiumpro -march=pentiumpro -fomit-frame-pointer
-fno-exceptions

可以根據(jù)以上修改后的makefile文件重新編譯內(nèi)核將得到較優(yōu)的性能。

七、結(jié)束語
    Linux是一個靈活而又開放的系統(tǒng)。用戶可以針對具體的應用環(huán)境,從系統(tǒng)的外圍到系統(tǒng)的 內(nèi)核進行調(diào)諧。系統(tǒng)的外圍的調(diào)諧包括系統(tǒng)硬件的配置到系統(tǒng)安裝和系統(tǒng)服務的優(yōu)化等。系統(tǒng)內(nèi)核的調(diào)諧包括參數(shù)的修改和改進系統(tǒng)的源代碼。我們在針對用作db2數(shù)據(jù)庫服務器的Linux系統(tǒng)的調(diào)諧中,針對db2數(shù)據(jù)庫的特點,按照本文的各個調(diào)諧方面,另外還包括網(wǎng)絡的調(diào)諧,對系統(tǒng)性能進行了綜合調(diào)諧。在對調(diào)諧后的系統(tǒng)的綜合測試來看,系統(tǒng)的性能有很大的改進。

【編輯推薦】

  1. Linux 性能測試工具Lmbench詳解
  2. Linux 性能檢測工具Uptime簡單介紹
  3. Linux 性能測試工具Lmbench工具詳細說明
  4. 五種Windows內(nèi)存效能提高手冊
  5. Linux網(wǎng)絡性能優(yōu)化方法簡析
  6. 五大Linux簡單命令解決系統(tǒng)性能問題
  7. Linux ext4文件系統(tǒng):性能和兼容性
  8. 用Munin監(jiān)控Linux服務器性能
責任編輯:zhaolei
相關推薦

2010-04-23 15:06:41

Aix操作系統(tǒng)

2010-04-09 13:26:44

2013-03-18 15:35:30

2010-03-03 10:38:59

2010-03-03 13:21:40

Android操作系統(tǒng)

2023-06-12 00:22:50

操作系統(tǒng)應用程序內(nèi)核鎖

2010-06-24 16:22:26

Linux chatt

2023-09-27 15:41:32

Linux系統(tǒng)

2010-03-04 17:50:42

Android操作系統(tǒng)

2009-09-29 10:39:04

Linuxlinux系統(tǒng)性能檢測

2011-09-19 14:30:47

Vista緩存

2022-07-26 10:28:00

Linux監(jiān)控命令

2009-12-09 17:25:19

Linux操作系統(tǒng)

2013-03-20 17:18:07

Linux系統(tǒng)性能調(diào)優(yōu)

2015-12-17 14:32:46

NmonLinux性能

2017-08-11 19:13:01

LinuxNmon系統(tǒng)監(jiān)控工具

2013-03-12 17:33:17

Linux系統(tǒng)性能調(diào)優(yōu)

2011-04-13 09:19:05

Oracle數(shù)據(jù)庫系統(tǒng)性能

2023-10-28 09:05:38

2018-07-05 16:22:47

點贊
收藏

51CTO技術(shù)棧公眾號