init階段(1) 1.確定用戶登錄模式 在“/etc/inittab”中列出了如下所示的登錄模式,,主要有單人維護模式,、多用戶無網(wǎng)絡(luò)模式、文字界面多用戶模式,、X-Windows多用戶模式等,。其中的單人維護模式(runlevel為1)是類似于Windows中的“安全模式”,在這種情況下,,系統(tǒng)不加載復雜的模式從而使系統(tǒng)能夠正常啟動,。在這些模式中最為常見的是3或5,其中本系統(tǒng)中默認的為5,,也就是X-Windows多用戶模式,。 #Default runlevel. Therunlevels usedby RHS are: # 0 - halt (Do NOT set initdefault tothis) # 1 - Single user mode # 2 - Multiuser, without NFS (The same as 3,if you do not have networking) # 3 - Full multiuser mode (文本界面啟動模式) # 4 - unused # 5 - X11 (圖形界面啟動模式) # 6 - reboot (Do NOT set initdefault tothis) # id:5:initdefault: init階段(2) 2。執(zhí)行腳本/etc/rc.d/rc.sysinit 在確定了登錄模式之后,,就要開始將Linux的主機信息讀入Linux系統(tǒng),,其內(nèi)容就是文件“/etc/rc.d/rc.sysinit”中的。查看此文件可以看出,,在這里確定了默認路徑,、主機名稱、“/etc/sysconfig/network”中所記錄的網(wǎng)絡(luò)信息等,。 #System initialization. si::sysinit:/etc/rc.d/rc.sysinit init階段(3) 3.啟動內(nèi)核的外掛模塊及各運行級的腳本 在此,,主要是讀取模塊加載配置文件(/etc/modules.conf),以確認需要加載哪些模塊,。嵌入式系統(tǒng)學習企鵝意義氣嗚嗚吧久零久易,,接下來會根據(jù)不同的運行級(runlevel),通過帶參數(shù)(運行級)運行“/etc/rc.d/rc”腳本,,加載不同的模塊,,啟動系統(tǒng)服務(wù)。init進程會等待(wait)“/etc/rc.d/rc”腳本的返回,。 l0:0:wait:/etc/rc.d/rc 0 l1:1:wait:/etc/rc.d/rc 1 l2:2:wait:/etc/rc.d/rc 2 l3:3:wait:/etc/rc.d/rc 3 l4:4:wait:/etc/rc.d/rc 4 l5:5:wait:/etc/rc.d/rc 5 l6:6:wait:/etc/rc.d/rc 6 init階段(4) 4. 進入用戶登錄界面 系統(tǒng)還需要配置一些異常關(guān)機的處理部分,。最后通過“/sbin/mingetty”打開幾個虛擬終端(tty1~tty6),用于用戶登錄。如果運行級為5(圖形界面啟動),,則運行xdm程序,,給用戶提供xdm圖形界面的登錄方式。如果在本地打開一個虛擬終端,,當這個終端超時沒有人登錄或者太久沒有人擊鍵時,,該終端會退出執(zhí)行,腳本中的“respawn”即告訴init進程重新打開該終端,,否則在經(jīng)過一段時間之后,,我們會發(fā)現(xiàn)這個終端消失了,無法利用ALT+Fn切換,。 init階段(5) #Trap CTRL-ALT-DELETE ca::ctrlaltdel:/sbin/shutdown-t3 -r now #When our UPS tells us power has failed, assume we have a few minutes pf::powerfail:/sbin/shutdown-f -h +2 "Power Failure; System Shutting Down" #If power was restored before the shutdown kicked in, cancel it. pr:12345:powerokwait:/sbin/shutdown-c "Power Restored; Shutdown Cancelled" #Run gettysin standard runlevels 1:2345:respawn:/sbin/mingettytty1 2:2345:respawn:/sbin/mingettytty2 3:2345:respawn:/sbin/mingettytty3 4:2345:respawn:/sbin/mingettytty4 5:2345:respawn:/sbin/mingettytty5 6:2345:respawn:/sbin/mingettytty6 #Run xdmin runlevel5 x:5:respawn:/etc/X11/prefdm-nodaemon 程序流程圖如下:file:///C:\Users\郭曉娟\AppData\Local\Temp\ksohtml\wpsEC3C.tmp.jpg
4 }9 f" b, c% b |, P1 A& d, p |