成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Linux操作系統(tǒng)內(nèi)核啟動(dòng)參數(shù)詳細(xì)解析

運(yùn)維 系統(tǒng)運(yùn)維
Linux內(nèi)核在啟動(dòng)的時(shí)候,能接收某些命令行選項(xiàng)或啟動(dòng)時(shí)參數(shù)。當(dāng)內(nèi)核不能識(shí)別某些硬件進(jìn)而不能設(shè)置硬件參數(shù)或者為了避免內(nèi)核更改某些參數(shù)的值,可以通過這種方式手動(dòng)將這些參數(shù)傳遞給內(nèi)核。

Linux內(nèi)核在啟動(dòng)的時(shí)候,能接收某些命令行選項(xiàng)或啟動(dòng)時(shí)參數(shù)。當(dāng)內(nèi)核不能識(shí)別某些硬件進(jìn)而不能設(shè)置硬件參數(shù)或者為了避免內(nèi)核更改某些參數(shù)的值,可以通過這種方式手動(dòng)將這些參數(shù)傳遞給內(nèi)核。

如果不使用啟動(dòng)管理器,比如直接從BIOS或者把內(nèi)核文件用“cp zImage /dev/fd0”等方法直接從設(shè)備啟動(dòng),就不能給內(nèi)核傳遞參數(shù)或選項(xiàng)--這也許是我們使用引導(dǎo)管理器比如LILO的好處之一吧。

Linux的內(nèi)核參數(shù)是以空格分開的一個(gè)字符串列表,通常具有如下形式: name[=value_1][,value_2]...[,value_10]
“name”是關(guān)鍵字,內(nèi)核用它來識(shí)別應(yīng)該把“關(guān)鍵字”后面的值傳遞給誰,也就是如何處理這個(gè)值,是傳遞給處理例程還是作為環(huán)境變量或者拋給“init”。值的個(gè)數(shù)限制為10,你可以通過再次使用該關(guān)鍵字使用超過10個(gè)的參數(shù)。

首先,內(nèi)核檢查關(guān)鍵字是不是 `root='',`nfsroot='', `nfsaddrs='', `ro'', `rw'',`debug''或`init'',然后內(nèi)核在bootsetups數(shù)組里搜索于該關(guān)鍵字相關(guān)聯(lián)的已注冊的處理函數(shù),如果找到相關(guān)的已注冊的處理函數(shù),則調(diào)用這些函數(shù)并把關(guān)鍵字后面的值作為參數(shù)傳遞給這些函數(shù)。比如你在啟動(dòng)時(shí)設(shè)置參數(shù)name=a,b,c,d,內(nèi)核搜索bootsetups數(shù)組,如果發(fā)“name”已注冊,則調(diào)用“name”的設(shè)置函數(shù)如name_setup(),并把a(bǔ),b,c,d傳遞給name_setup()執(zhí)行。 所有型如“name=value”參數(shù),如果沒有被上面所述的設(shè)置函數(shù)接收,將被解釋為系統(tǒng)啟動(dòng)后的環(huán)境變量,比如“TERM=vt100”就會(huì)被作為一個(gè)啟動(dòng)時(shí)參數(shù)。 所有沒有被內(nèi)核設(shè)置函數(shù)接收也沒又被設(shè)置成環(huán)境變量的參數(shù)都將留給init進(jìn)程處理,比如“single”。

常用的設(shè)備無關(guān)啟動(dòng)時(shí)參數(shù)。

1、init=...
設(shè)置內(nèi)核執(zhí)行的初始化進(jìn)程名,如果該項(xiàng)沒有設(shè)置,內(nèi)核會(huì)按順序嘗試/etc/init,
/bin/init,/sbin/init, /bin/sh,如果所有的都沒找到,內(nèi)核會(huì)拋出 kernel panic:的錯(cuò)誤。
2、nfsaddrs=...
設(shè)置從網(wǎng)絡(luò)啟動(dòng)時(shí)NFS的啟動(dòng)地址,已字符串的形式給出。
3、nfsroot=...
設(shè)置網(wǎng)絡(luò)啟動(dòng)時(shí)的NFS根名字,如果該字符串不是以 "/"、","、"."開始,默認(rèn)指向“/tftp-boot”。
以上2、3在無盤站中很有用處。
4、no387
該選項(xiàng)僅當(dāng)定義了CONFIG_BUGi386時(shí)才能用,某些i387協(xié)處理器芯片使用32位的保護(hù)模式時(shí)會(huì)有BUG,比如一些浮點(diǎn)運(yùn)算,使用這個(gè)參數(shù)可以讓內(nèi)核忽略387協(xié)處理器。
5、no-hlt
該選項(xiàng)僅當(dāng)定義了CONFIG_BUGi386時(shí)才能用,一些早期的i486DX-100芯片在處理“hlt”指令時(shí)會(huì)有問題,執(zhí)行該指令后不能可靠的返回操作系統(tǒng),使用該選項(xiàng),可以讓Linux系統(tǒng)在CPU空閑的時(shí)候不要掛起CPU。
6、root=...
該參數(shù)告訴內(nèi)核啟動(dòng)時(shí)使用哪個(gè)設(shè)備作為根文件系統(tǒng)。比如可以指定根文件為hda8:root=/dev/hda8。
7、ro和rw
ro參數(shù)告訴內(nèi)核以只讀方式加載根文件系統(tǒng),以便進(jìn)行文件系統(tǒng)完整性檢查,比如運(yùn)行fsck;rw參數(shù)告訴內(nèi)核以讀寫方式加載根文件系統(tǒng),這是默認(rèn)值。
8、reserve=...
保留端口號。格式:reserve=iobase,extent[,iobase,extent]...,用來保護(hù)一定區(qū)域的I/O端口不被設(shè)備驅(qū)動(dòng)程序自動(dòng)探測。在某些機(jī)器上,自動(dòng)探測會(huì)失敗,或者設(shè)備探測錯(cuò)誤或者不想讓內(nèi)核初始化設(shè)備時(shí)會(huì)用到該參數(shù);比如: reserve=0x300,32device=0x300,除device=0x300外所有設(shè)備驅(qū)動(dòng)不探測 0x300-0x31f范圍的I/O端口。
9、mem=...
限制內(nèi)核使用的內(nèi)存數(shù)量。早期BIOS設(shè)計(jì)為只能識(shí)別64M以下的內(nèi)存,如果你的內(nèi)存數(shù)量大于64M,你可以指明,如果你指明的數(shù)量超過了實(shí)際安裝的內(nèi)存數(shù)量,系統(tǒng)崩潰是遲早的事情。如:mem=0x1000000意味著有16M內(nèi)存,如果是mem=0x6000000,就是96M內(nèi)存了。 注意:很多機(jī)型把部分內(nèi)存作為BIOS的映射,所以你在指定內(nèi)存大小的時(shí)候一定要預(yù)留空間。你也可以在 pentium或者更新的CPU上使用mem=nopentium關(guān)閉4M的頁表,這要在內(nèi)核配置時(shí)申明。
10、panic=N
默認(rèn)情況,內(nèi)核崩潰--kernel panic 后會(huì)宕機(jī)而不會(huì)重啟,你可以設(shè)置宕機(jī)多少秒之后重啟機(jī)器;也可以在/proc/sys/kernel/panic文件里設(shè)置。
11、reboot=[warm|cold][,[bios|hard]]
該選項(xiàng)僅當(dāng)定義了CONFIG_BUGi386時(shí)才能用。2.0.22的內(nèi)核重啟默認(rèn)為cool reboot,warm reboot 更快,使用"reboot=bios"可以繼承bios的設(shè)置。
12、nosmp 和 maxcpus=N
僅當(dāng)定義了 __SMP__,該選項(xiàng)才可用??梢杂脕斫枚郈PU或者指明最多支持的CPU個(gè)數(shù)。

內(nèi)核開發(fā)和調(diào)試的啟動(dòng)時(shí)參數(shù)

這些參數(shù)主要用在內(nèi)核的開發(fā)和調(diào)試上,如果你不進(jìn)行類似的工作,你可以簡單的跳過本小節(jié)。
1、debug
Linux的日志級別比較多(詳細(xì)信息可以參看Linux/kernel.h),一般地,日志的守護(hù)進(jìn)程klogd只把比DEBUG級別高的日志寫進(jìn)磁盤;如果使用該選項(xiàng),klogd也把內(nèi)核的DEBUG信息寫進(jìn)日志。
2、profile=N
在做內(nèi)核開發(fā)的時(shí)候,如果想清楚的知道內(nèi)核在什么地方耗用了多少CPU的時(shí)鐘周期,可以使用核心的分析函數(shù)設(shè)置變量prof_shift為非0值,有兩種方式可以實(shí)現(xiàn):一種是在編譯時(shí)指定,另一種就是通過“profile=”來指定; 他給出了一個(gè)相當(dāng)于最小單位--即時(shí)鐘周期;系統(tǒng)在執(zhí)行內(nèi)核代碼的時(shí)候,profile[address >;>; prof_shift]的值就會(huì)累加,你也可以從/proc/profile得到關(guān)于它的一些信息。
3、swap=N1,N2,N3,N4,N5,N6,N7,N8
設(shè)置內(nèi)核交換算法的八個(gè)參數(shù):max_page_age, page_advance, page_decline,page_initial_age,age_cluster_fract, age_cluster_min, pageout_weight,bufferout_weight。
4、buff=N1,N2,N3,N4,N5,N6
設(shè)置內(nèi)核緩沖內(nèi)存管理的六個(gè)參數(shù):max_buff_age, buff_advance, buff_decline,buff_initial_age, bufferout_weight, buffermem_grace。

使用 RAMDISK的參數(shù) (僅當(dāng)內(nèi)核配置并編譯了CONFIG_BLK_DEV_RAM)。

一般的來說,使用ramdisk并不是一件好事,系統(tǒng)自己會(huì)更加有效的使用可用的內(nèi)存;但是,在啟動(dòng)或者制作啟
動(dòng)盤時(shí),使用ramdisk可以很方便的裝載軟盤等設(shè)備上的映象(尤其是安裝程序、啟動(dòng)過程中),因?yàn)樵谡媸褂梦锢泶疟P之前,必須要加載一些必要的模塊,比如文件系統(tǒng)模塊,scsi驅(qū)動(dòng)等(可以參見我的initrd-x.x.x.img文件分析-制作安裝程序不支持的根文件系統(tǒng))。

早期的ramdisk(比如1.3.48的核心)是靜態(tài)分配的,必須以ramdisk=N來指定ramdisk的大小;現(xiàn)在ramdisk可以動(dòng)態(tài)增加。一共有四個(gè)參數(shù),兩個(gè)布爾型,兩個(gè)整形。
1、load_ramdisk=N
如果N=1,就加載ramdisk;如果N=0,就不加載ramdisk;默認(rèn)值為0。
2、prompt_ramdisk=N
N=1,提示插入軟盤;N=0,不提示插入軟盤;默認(rèn)為1。
3、ramdisk_size=N或者ramdisk=N
設(shè)定ramdisk的最大值為N KB,默認(rèn)為4096KB。
4、ramdisk_start=N
設(shè)置ramdisk的開始塊號為N,當(dāng)ramdisk有內(nèi)核的映象文件是需要這個(gè)參數(shù)。
5、noinitrd
(僅當(dāng)內(nèi)核配置了選項(xiàng)
CONFIG_BLK_DEV_RAM和CONFIG_BLK_DEV_INITRD)現(xiàn)在的內(nèi)核都可以支持initrd了,引導(dǎo)進(jìn)程首先裝載內(nèi)核和一個(gè)初始化的ramdisk,然后內(nèi)核將initrd轉(zhuǎn)換成普通的ramdisk,也就是讀寫模式的根文件系統(tǒng)設(shè)備。然后Linuxrc執(zhí)行,然后裝載真正的根文件系統(tǒng),之后ramdisk被卸載,最后執(zhí)行啟動(dòng)序列,比如/sbin/init。 選項(xiàng)noinitrd告訴內(nèi)核不執(zhí)行上面的步驟,即使內(nèi)核編譯了initrd,而是把initrd的數(shù)據(jù)寫到 /dev/initrd,只是這是一個(gè)一次性的設(shè)備。

【編輯推薦】

  1. Linux版Chrome將采用GTK+工具包開發(fā)
  2. 求助,linux系統(tǒng)安裝
  3. 嵌入式設(shè)備上的 Linux 系統(tǒng)開發(fā)
責(zé)任編輯:張燕妮 來源: ChinaUnix博客
相關(guān)推薦

2010-01-22 10:54:45

Linux操作系統(tǒng)PS命令

2012-05-04 09:24:02

Linuxps命令

2011-01-14 16:23:46

Linux內(nèi)核

2010-04-08 16:05:49

Unix操作系統(tǒng)

2009-12-17 18:19:12

Linux操作系統(tǒng)

2011-01-04 18:15:21

2011-03-31 13:40:34

2021-02-09 08:23:02

Linux操作系統(tǒng)

2009-12-15 18:27:51

Linux操作系統(tǒng)

2009-09-01 09:14:42

2009-10-26 09:35:20

Linux操作系統(tǒng)無線網(wǎng)絡(luò)命令

2009-12-02 16:39:20

Linux操作系統(tǒng)

2009-12-25 17:05:50

Linux操作系統(tǒng)

2012-09-24 09:59:24

Linux操作系統(tǒng)

2009-06-19 20:32:00

Linux

2009-12-09 17:25:19

Linux操作系統(tǒng)

2009-10-28 15:45:22

linux虛擬化技術(shù)

2020-12-28 08:51:06

操作系統(tǒng)微內(nèi)核Dubbo

2011-01-14 16:01:27

2011-01-14 16:51:44

Linux內(nèi)核
點(diǎn)贊
收藏

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

主站蜘蛛池模板: 日韩手机在线视频 | 欧美影院 | 国产片一区二区三区 | 国产激情福利 | 成人小视频在线免费观看 | 国产欧美一区二区三区久久 | 欧美久久综合 | 国产精品久久久久久久久久久免费看 | 欧美天堂 | 国产成人99久久亚洲综合精品 | 久久国产精品99久久久久久丝袜 | 国产精品一二三区 | 97在线观视频免费观看 | 日韩精品一区二区三区在线 | 8x国产精品视频一区二区 | 久久精品99国产精品 | 亚洲国产视频一区 | 久久久资源 | 亚洲视频免费在线播放 | 97精品超碰一区二区三区 | 亚洲综合色丁香婷婷六月图片 | 欧美综合一区二区三区 | 美女一区 | 婷婷色综合| 91精品国产综合久久久久久丝袜 | 日韩精品一区二区三区在线播放 | 99在线观看| 在线成人 | 久久综合狠狠综合久久综合88 | 精品久久一区 | 亚洲国产成人精品女人久久久 | 成人二区 | 欧美黄色片 | 精品国产精品国产偷麻豆 | 亚洲精品一区国语对白 | 亚洲成人免费在线 | 欧美日韩一区二区三区在线观看 | 精品国产精品一区二区夜夜嗨 | 色天天综合 | 中文字幕视频在线观看 | 2023亚洲天堂 |