歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux綜合 >> Linux資訊 >> 更多Linux

Solaris7重新配置系統核心

  Sun Microsystems公司於前不久發布了它的新一代的旗幟性軟件產品線:適用於SPARC和Intel兩種計算機的新的Solaris 7 軟件環境。Solaris 7產品系列包括基本的 Solaris 7操作環境和3個模塊化軟件擴展版本(Solaris Easy Access Server,Solaris Enterprise Server,Solaris ISP Server)--每個擴展版本都在基本的Solaris 7操作環境上運行。新的產品線主要具有以下特點:   1. 處理數據的能力大為增加,不僅數據量沒有什麼限制,計算的復雜性也有突破,為新一級的應用軟件敞開了大門。   2.大型機的能力,而價格只有大型機的幾分之一。   3.具有對PC機的完全互操作性,可使客戶連接和管理他們的Windows NT環境與Solaris環境一樣。   4.具有PC機簡易管理的新風格,大大簡化了安裝與管理。     不僅如此,該版本的Solaris還具有強大的軟件支持,其中包括了Sun Visual WorkShop C++ 5.0軟件和Sun Performance WorkShop Fortran 5.0軟件,並為C/C++和 Fortran的開發商開發企業級應用軟件提供了具有競爭性的優勢。Solaris 7具有全新中文版本,中文版本不僅具有多種中文輸入方式、靈活地支持中文的輸出,同時方便地接收中文郵件和進行字體轉換彌補了過去Solaris在這方面的不足。Solaris 7與 Windows無縫連接,從而使用戶可以進行簡單明了的操作和管理。在Solaris 7中,Sun公司著重考慮了健壯和安全的問題,提供了一系列的現代化的安全機制,同時修補了安全漏洞和系統BUG,使Solaris 7具有相當可靠的安全性和健壯性,將用戶的風險降到了最低的限度。   綜上所述,Solaris 7是適用於企業網的操作系統。     一、相關站點     1.Solaris軟件免費下載站點:     http://www.sunfreeware.com/     2.solaris 咨詢站     http://www.ibiblio.org/pub/packages/solaris/sparc/     3.solaris中文手冊:     http://docs.sun.com/ab2?Ab2Lang=zh&Ab2Enc=gb2312     4.UNIX depot     http://www.cise.ufl.edu/depot/     5.solaris中心      http://www.solariscentral.org/      二、重新配置系統核心     舉例: Oracle 8 for solaris 2.6 安裝的安裝需要增加Shared Memory Segments;修改/etc/system文件,在文件後加上     set shmsys:shminfo_shmmax=4294967295     set shmsys:shminfo_shmmin=1     set shmsys:shminfo_shmmni=100     set shmsys:shminfo_shmseg=15     set semsys:seminfo_semmns=200     set semsys:seminfo_semmni=70     set ulimit=3000000     比如innd用的文件數目比較多,需要設置:     set rlim_fd_max=4096     set rlim_fd_cur=1024     如何看系統默認值;     先看系統默認值,超級用戶可以用-k參數來看核心的各個參數,如果指定-w參數,則可以     adb - general-purpose debugger     可以看現在的值是什麼?     /usr/bin/adb –kw     physmem 1f8d9     maxusers/D     maxusers:     maxusers: 504     maxusers/W 200     maxusers: 0x1f8 = 0x200          (1)IO相關的設置     最經常需要改變的是文件描述符數因為SOCKET API處理INTERNET連接使用文件描述符,     set rlim_fd_max = 8192     set rlim_fd_cur = 4096     Please, before you start, make a backup copy of your initial /etc/system.     The backup should be located on your root filesystem. Thus, if some     parameters fail, you can always supply the alternative, original system     file on the boot prompt. The following shows two typically entered     parameters:     * these are the defaults of Solaris < 8     set rlim_fd_max=1024     set rlim_fd_cur=64     rlim_fd_cur     這個參數定義了一個進程可以打開文件描述符的“軟”限制,該數目由當前運行的SHELL 決定;ulimit –Sn,還可以通過setrlimit()函數來修改這個參數;不需要超級用戶權   限;     The predicate rlim_fd_cur =4096     這個參數決定了一個進程可以打開文件描述符的“硬”限制;如果想改變該限制,必須有超級用戶的權限;     對於大多數SERVER,不管使用TCP還是UDP進行通訊,最大描述符數是每個用戶進程的最重要的參數;文件描述符決定了同時可以連接的數目;     ulimit -Hn     You should consider a value of at least 2 * tcp_conn_req_max and you     should provide at least 2 * rlim_fd_cur. The predicate rlim_fd_cur 這個值的大小在當前SOALRIS版本中決定於內存的兆數目;有一些參數是由MAXUSER來決定的,     _ The maximum number of processes on the system     _ The number of quota strUCtures held in the system     _ The size of the Directory name lookup cache(DNLC)     默認值是系統內存兆數,小於2048;     如果大於1024,必須在/etc/system中指定,如果大於4096,它的值為4096;當系統出現用戶進程生成(FORK)緩慢時,系統報信息;   out of processes   默認值比較大有以下情況:     數據庫系統使用較大內存,但相對少的進程,減少MAXUSERS的值,可以節省系統內存;     PIDMAX     這個參數指定系統最大可能進程ID; 默認值為30000,范圍為266到999999;只在啟動     時候進行設置;     max_nprocs     系統最大進程數,包含系統進程和用戶進程;默認值為為10+(16*MAXUSERS)     該值范圍為266到MAXPID;     基於Intel i386體系結構的Linux操作系統中,已經提供了這樣的多進程運行的支持。     通過合理的選擇進程調度算法,可以獲得比較好的平均相應時間和較高的系統性能。但是,美中不足的是,在目前的2.2.x版本的Linux內核中,存在對最大進程數的限制。也就是說,在目前的Linux系統中,最多只能有4090個用戶進程同時存在。對於一般的桌面應用,這個數目是綽綽有余。但是,對於企業級的服務器應用來說,則是不夠的。     設想一個典型的Web服務器軟件,它們一般都采用多進程/線程的結構。每當接到一個連接請求,就產生一個子進程/線程來處理。顯然,對於一個重負載的服務器來說,同時有   成千上萬個連接是很常見的。而這時,采用kernel 2.2.x的系統就不能勝任了。因此,可以說正是因為存在這個最大進程數的限制,使得Linux不能勝任企業級服務器操作系統的工作。事實上,目前這個級別的操作系統一般都是較為成熟,並且沒有上述限制的Solaris、AIX、HP-UX等系統。     maxuprc     一個用戶可以生成的最大用戶進程數;     默認值為MAX_NPROCS-RESERVED_PROCS     STREAM     nstrpush     默認值為9,這個參數定義了允許有多少個STREAM 模塊加載在系統核心中,我猜想這個參數是指相對於一個用戶或一個進程,通常不用修改該參數;     strmsgsz     默認值為 65536, 單個系統調用可以傳給一個STREAM設備信息的數據部分的最大字節數     ;任何write(2)超過這個大小限制會被分為多個信息;   范圍為:0到262144 bytes     當出現putmsg(2)系統調用返回ERANGE時,需要修改該參數;     strctlsz     默認值為 65536, 單個系統調用可以傳給一個STREAM設備信息的控制部分的最大字節數;范圍:0-MAXINT BYTES;     General Kernel Variables     noexec_user_stack     Warning: This option might crash some of your application software, and     endanger your system's stability!     By default, the Solaris 32 bit application stack memory areas are set     with permissions to read, write and execute, as specified in the SPARC     and Intel ABI. Though many hacks prefer to modify the program counter     saved during a subroutine call, a program snippet in the stack area can     be us



write and execute, as specified in the SPARC     and Intel ABI. Though many hacks prefer to modify the program counter     saved during a subroutine call, a program snippet in the stack area can     be us



Copyright © Linux教程網 All Rights Reserved