SCO UNIX 系統核心參數的意義
磁盤和緩沖 NDISK 是連到系統上的磁盤驅動器數目。它在引導時設置。
NBUF 在引導時所分配的1K系統緩沖區的數目。這些緩沖區在一個數據高速緩存中。這個數據高速緩存是一個含有磁盤文件信息的內存陣列。高速緩存的命中率隨緩沖區的增加而提高。高速緩存的命中減少了對磁盤的訪問,并因此提高了系統的整體性能。這個參數值一般在100到600范圍內。每個緩沖區包含1076個字節。hash隊列的數目(NHBUF)應該隨系統緩沖區的增加,這樣才能獲得最優性能。
NPBUF 指定要分配多少個物理I/O緩沖區。每個讀寫活動都需要一個I/O緩沖區。每個入口緩沖區。第入口包含52個字節。這個參數的缺省值是20。
NHBUF 指定為1K緩沖區分配多少hash隊列。這是為了搜索給定設備號和塊號的緩沖區的,這樣就不必在整修緩沖區隊列中進行線性搜索了。這個值必須是2的冪。每個入口包含12個字節。NHBUF的值必須這樣選,NBUF的值除以NHBUF的值約等于4。(在文件/usr/adm/messages中查看NBUF的值,它在引導時確定并顯示。)
CTBUFSIZE 是以Kbye為單位的磁帶(QIC-11,QIC-24)緩沖區的大小。它的值應為32到256。它是在初始化時分配的靜態緩沖區的大小。下面是與相應環境對應的合理的值:
32K 勉強的最小值:對數據流是不夠的。
64K 允許數據流(有益于內存小的系統)或使用小磁帶(性能并不關鍵)的最小值。 96K 比缺省低一級的配置,如果缺省值使用的內存太多,就減于此。
128K 缺省值:好的性能折衷配置值。
192K 比缺省高一級的配置,如果缺省值所提供的性能太差,就增為這個值。
256K 最大值。
MAXBUF 允許高速緩沖中可有的緩沖區的最大數目。這是核心中所說明的緩沖區頭的數目。如果所需的緩沖區數小于這個數值,那么在引導時就會依據內存的大小來自動進行配置。如果NBUF不為0,那么就會準確地配置NBUF個緩沖區,而MAXBUF就沒有必要大于NBUF。如果NBUF為0,核心就會動最多配置MAXBUF個緩沖區。
OMAABLEBUF 每次傳輸大于16MB的DMA請求所需的傳輸緩沖區的數目。它一定是一個4到128的值。缺省值為16。
NAUTOUP 為文件系統的自動更新指定以秒為單位的緩沖區壽命。當一個系統緩沖區中的內容已經在內存中駐留了由NAUTOUP參數所指定的這么長時間時,它就會被寫入硬盤。如果指定一個較小的值,那么系統的可靠性就會因為較頻繁地把緩沖區中內容寫入磁盤而提高,但系統性能會降低。指定一個較大的值則會提高系統性能,但要以降低系統安全性為代價。這個控制著bdflush守護進程的活動。
BDFLUSHR 為對把文件系統緩沖區中的內容寫到磁盤上的需要進行檢查指定以秒為單位的頻率。范圍是1至300。缺省值為30秒。這個參數控制著bdflush守護進程的活動。
PUTBUFSZ 指定環形緩沖區putbuf的大小,putbufk 包含由操作系統寫到控制臺上的最后幾個PUTBUFSZ字符。putbuf的內容可使用crash(ADM)看到。
PIOMAP 決定由核心可編程I/O(PIO)分解例程使用的映射入口陣弄的大小。這個例程可允許設備驅動程序通過把大的數據塊分解為小的數據單位而在中斷級上完成對大型數據塊的可編程I/O操作。用戶不應該修改這個參數。
DO387CR3 當安裝了一個80387浮點協處理器時,用以控制對控制寄存器3(CR3)高位字節的設置。
NUMTRW 是在核心數據空間分配的“傳輸庫接口(TLI)”這個數據讀/寫結構的數目。用戶不應該修改這個參數。
PRFMAX 是核心簡要表(/dev/prf,在profile(ADM)中有說明)能夠正確處理的文本符號的最大數目.
NCLIST 指定要分配多少個顯示緩沖區.每個緩沖區最多包含64個字節.這些緩沖區動態地連接于終端線或其它低速設備的輸入 /輸出隊列表.每個終端所需的平均緩沖區數目是5到10個.每個入口(緩沖區空間加上頭)包含72個字節.滿了以后,與終端有頭的輸入/輸出字符就會丟失,雖然顯示還在繼續.
NEMAP 指定I/O傳輸映射的最大數目.
NUMXT 確定一個子設備能夠配置支持的位映射顯示設備(例如BLIT或AT&T5620終端)的數目.
NUMSXT 確定一個子設備能夠配置的SHELL層的數目,其缺省值為6.
NKDVTTY 確定由控制臺鍵盤驅動程序支持的虛終端(TTYS)的數目,用戶不應該修改這個參數.
NCPYRIGHT 定義用以打印控制臺初始化信息的核心數據結構的大小.用戶 不應該修改這個參數.
KDBSYMSIZE 是符號表的大小.值一定要在10000至100000之間.缺省值為 60000.
NINODE 指定要分配多少I節點表的入口,每個表入口都代表一個活動文件的內存I節點.例如,一個活動文件可能是一個當前目錄,一個打開的文件或是一個安裝點.當修改了這個變量,文件控制結構就被修改了.所用的入口數目依賴于被打開文件的數目.入口數一般在100到400之間.缺省值為300.
NINODE 的值直接與NFILE的值有頭.(NINODE等于或大于NFILE)
NINODE一定要小于或等于NSSINODE.NINODE若大于NS5INODE,就會使得系統無法工作.當I節點表溢出時,在系統控制臺上會顯示如下警告信息: WARNING:i-node table overflow
NFILE 指定要分配多少個打開文件表入口.每個入口表示一個打開的口包含12個字節.NFILE入口直接與NINODE有頭.同樣的方式控制其結構操作.當文件表溢出時,在系統控制臺上會顯示如警告信息: NOTICE:file table overflow請注意:這個參數不影響每進程打開文件的數目(請看NFILES參數)
NOFILES 指定每個進程所打開文件的最大數目.缺省值為60.除非某個的應用程序包要求修改NOFILES,其它情況下不要發跡這個60的缺省設置./bin/sh使用了三個文件入口:標準輸入.標準輸出和標準錯誤(0,1,2通常分別為stdin,stdout.stderr保留).這就只給每個進程留了NOFILES減3個其它可打開文件的入口.如果某個進程需要比這個數目多于三個的可打開文件,那么標準文件就必須被關閉.這種做法是不提倡的,一定要小心地使用.如果所配置的NOFILE值大于最大值(100)或小于最小值(60),那個所配置的值就置為缺省值(60),同時把一條信息送到控制臺上。
NPROC 指定要分配多少個里程表的入口.每個里程表入口都代表一個的進程,替換程序總在第一個入口中,而/etc/init總在第2個入口中,入中的數目領事于終端線的數目和每個用戶產生的進程的數目,每個用戶進程的平均數在2至5之間(再請看MAXUP,缺省值為25).如果表被填滿,fork(S)系統調用就會返回一個錯誤EAGAIN.NPROC的值可在50至400之間.缺省值為100。
