1.确定用户登录模式
在“/etc/inittab”中列出了如下所示的登录模式,主要有单人维护模式、多用户无网络模式、文字界面多用户模式、x-windows多用户模式等。其中的单人维护模式(runlevel为1)是类似于windows中的“安全模式”,在这种情况下,系统不加载复杂的模式从而使系统能够正常启动。在这些模式中最为常见的是3或5,其中本系统中默认的为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。执行脚本/etc/rc.d/rc.sysinit
在确定了登录模式之后,就要开始将linux的主机信息读入linux系统,其内容就是文件“/etc/rc.d/rc.sysinit”中的。查看此文件可以看出,在这里确定了默认路径、主机名称、“/etc/sysconfig/network”中所记录的网络信息等。
#system initialization.
si::sysinit:/etc/rc.d/rc.sysinit
init阶段(3)
3.启动内核的外挂模块及各运行级的脚本
在此,主要是读取模块加载配置文件(/etc/modules.conf),以确认需要加载哪些模块。嵌入式系统学习企鹅意义气呜呜吧久零久易,接下来会根据不同的运行级(runlevel),通过带参数(运行级)运行“/etc/rc.d/rc”脚本,加载不同的模块,启动系统服务。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. 进入用户登录界面
系统还需要配置一些异常关机的处理部分。最后通过“/sbin/mingetty”打开几个虚拟终端(tty1~tty6),用于用户登录。如果运行级为5(图形界面启动),则运行xdm程序,给用户提供xdm图形界面的登录方式。如果在本地打开一个虚拟终端,当这个终端超时没有人登录或者太久没有人击键时,该终端会退出执行,脚本中的“respawn”即告诉init进程重新打开该终端,否则在经过一段时间之后,我们会发现这个终端消失了,无法利用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
程序流程图如下:
接地电阻柜的作用及分类
国产存储控制芯片该如何实现高速发展
R5300 G4服务器无法正常进入操作系统且日志显示硬盘异常分析
Victor发布支持 I2C编程的Cool Power ZVS降压稳压器
DCS-Control拓扑在新一代电源设计中能做到哪些权衡?
关于嵌入式Linux启动
了解LabVIEW FPGA和软件设计射频仪器的优势所在[图]
碳化硅功率模块及电控的设计、测试与系统评估
欧洲晶圆代工注定失败?欧洲为什么缺乏先进制程的晶圆厂呢?
研祥终端智慧医疗产品解决方案
传统存储市场战火激烈
法国版的iPhone 12系列标配有线耳机,这是为何?
华为5G订单数量被爱立信反超
三星GalaxyA51渲染图曝光 国行售价预计在2000-3000元左右
智能软件2018:谷歌/亚马逊/FB/百度/腾讯依旧新品不断?
人脸识别技术的新型应用领域
LED智能投影2000流明以上市场份额达到2.8%
常见EDA软件的不同格式PCB设计文件
TCL华星在CES 2024展示20多项显示创新
精密低功耗:生物电位信号链中的导联脱落检测