Solaris 启动过程详解
引导
在 Sparc 平台下,Solaris 系统中有一个类似 PC BIOS 的芯片程序(EEPROM OpenBoot)负责
识别分区、文
件 系 统 和 加 载 内 核 , 在 Solaris 2.6 之 后 的 版 本 中 , 默 认 的 内 核 文 件 存 放
在/platform/`arch`/kernel/unix
位 置, `arch` 指令 是指 明系 统的 硬件 体系 ,目 前一 般是 i86pc(Intel IA32) 或 sun4u(Sun
UntraSparc)。
在 Intel 体系中,因为没有 eeprom firmware,所以系统提供了一个模拟 eeprom 的引导程序,
来负责
内核的定位和加载,这个程序是工作在实模式下的,系统必须要给他提供一个 fat12/16 格
式的 boot 分区,
在系统引导完成之后可以在 /boot/solaris 下找到他的配置文件。(Solaris IA 使用默认内
核/kernel/unix)
整个系统启动过程如下:
======================================================================
=====
init 0 openboot 模式 -> (引导内核,加载硬件驱动) 可以选择从 cdrom 引导进入维护模式
|
V
init 1 单用户模式 -> (加载/分区) 登陆进入维护模式,或按 Ctrl+D 进入多用户模式
|
V
init 2 网络工作站模式 -> (连接网络,运行网络工作站服务) 运行/etc/rc2 脚本连接网络
| |
| ->-> 启动 S69inet 服务,运行部分 inetd 网络服务
V
init 3 网络服务器模式 -> (运行各种网络服务) 运行/etc/rc3 脚本启动网络服务器
<2>启动
Solaris 的启动进程是按照 SYS V 格式控制的,启动过程分为若干个运行级别(S,1-6),当系
统内核
运行完毕,加载好所有的驱动之后,就会把控制权移交给 /sbin/init 进程(PID:1),也就是所
有进
程的父进程,然后由 init 读取/etc/inittab,依次执行/etc/rc1(2,3)启动脚本,最终到达 inittab
中指定的默认运行级别。rc 脚本会读取/etc/rc*.d 中的启动脚本,启动脚本以大写字母 S 开
头,在 rc
评论0
最新资源