`
piperzero
  • 浏览: 3475372 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

LINUX系统笔记2---系统的引导

 
阅读更多
2.1 引导
这是Linux系列文章第二篇,我们看一下linux系统是怎么引导的,相对与windows的解读,Linux还是有些不一样的地方。
2.2 init进程
这是系统的最先启动进程,在硬件引导完成将控制权交给系统内核的时候,这个进程产生。并且他的PID号总是1。
当由BIOS确定从那个硬件设备引导后,读取MBR,确定第二引导程序,这个引导程序主要作用是加载内核,执行一系列的引导过程,当检测完硬件之后,内核产生init进程,init进程创建其他守护进程的方式是调用SHELL脚本,而这些启动脚本大多数是以RC文件,比如RC0.D等,这下明白这些文件是干什么用的了把,rc是run command的简写。是操作系统发展的遗留痕迹。
2.3 引导过程
大体上分为6个阶段:
加载初始化内核;
检测硬件;
创建内核进程;
操作员干预(假如);
执行系统启动脚本;
多用户模式运行;
内核是一个二进制的镜像,位置在/boot/vmlinuz,或者/vmlinuz下,linux系统是单内核结构,所以整个内核都在内存中。内核首先要做的往往是检测硬件的情况,驱动程序由内核加载。
在内核初始化后,会有几个自发的进程被创建,他们并不是由fork来创建的,我们在ps命令中看到的一些进程名字被中括号包起来,并且PID号都比较小的,往往都是内核创建的,其实是内核的组成部分,装扮一下更像进程罢了。
列举几个:
kjournald
kswapd
kreclaimd

ksoftirqd


可以看到PID号都很小,在执行启动脚本之后,生成getty进程,好让用户登录进来。
引导涉及GRUP程序,这是目前很流行的引导加载程序,在多系统的时候尤为重要,不涉及了,有兴趣的可以自己查查资料。
这里面提及一下单用户模式,在linux启动的时,可以人工干预,变为单用户登录,目前我所应用的就是忘了root密码,选择这个登录去修改密码。
2.4 启动脚本
说到启动脚本,必须提及init进程,这里面涉及一个运行级的概念
0级:完全关闭系统;
1级:单用户模式;
2-5级:多用户模式;
6级:重新引导;
0级和6级,系统是不能停留在这两个级别中的,当计算机启动的时候,从0运行级,逐步提升运行等级,目前大多数Linux发行版默认是5级,这个是有init进程完成这个运行级的提示过程。
在/etc/init.d文件夹下,存放着很多守护进程的启动脚本,我们也经常从这里启动进程。不过init进程在将系统带入一个新的运行级别的时候,是通过rc0.d,rc1.d....等目录去寻找当前运行级的启动脚本。当然目录下的是符号链接,指向的还是/etc/init.d文件夹下的脚本。

未完待续。。。






分享到:
评论

相关推荐

    2019Linux系统教程资料笔记.zip

    rhel8安装教程,详细介绍从VMware安装直到引导Redhat8完成安装并使用Redhat8,如:文件操作、用户组、文件权限、环境配置、服务以及基于LAMP架构部署商城系统。

    GRUB 学习笔记 引导LINUX和XP

    这是在电脑上安装双系统的引导软件,如果想正确引导LINUX和XP,这个是必要了解的

    炫龙炎魔t2ti型号笔记本电脑装苹果系统用到的引导文件

    炫龙炎魔t2ti型号笔记本电脑装苹果系统用到的引导文件,经过实际试用可以装上,12.3.1版本,声音 网络都正常推荐使用,我电脑装了win+linux+mac3系统,mac是用的oc引导,装完将oc和boot文件夹放到电脑硬盘的esp分区...

    Linux命令笔记

    8:查看当前Linux系统的发行版本 语法: lsb_release -a 9:lsof列出进程打开或使用的文件信息 语法: lsof [选项] 10:date 第六部分:服务管理 1:服务简介与分类 2:RPM包安装服务的管理 2.1:独立服务的管理 2.2:...

    LAMP兄弟连李明老师Linux讲义笔记PPT下载

    课件02_第2讲.Linux系统安装.pdf [LAMP兄弟连李明老师讲Linux].课件03_第3讲.Linux常用命令课件.pdf [LAMP兄弟连李明老师讲Linux].课件04_第4讲.文本编辑器Vim.pdf [LAMP兄弟连李明老师讲Linux].课件05_第5讲....

    运维笔记整理.zip

    linux运维笔记整理,里面有最基础的linux的介绍,用户管理,权限管理,高级文件系统管理,shell基础,启动引导与修复,服务管理,系统管理,日志管理等

    Linux学习笔记(强悍总结值得一看)

    Linux学习笔记(强悍总结值得一看) 内容非常全面,值得收藏 内容简介: 1、常用命令 2、磁盘管理 3、用户管理 4、文件权限 5、目录结构 6、软件安装 7、时间管理 8、启动引导 9、运行级别 10、进程管理 11、资源...

    嵌入式系统Linux内核开发实战指南(ARM平台)(2/2)

     另外,作者根据自己反复阅读linux2.6内核源代码和linux内核参考书的笔记与心得,用很大篇幅深入剖析了linux内核的组成结构以及各组件的实现原理,在阐述理论的同时对内核源代码进行详细注释,这样既加深了对linux...

    Linux学习笔记.txt

    部分内容如下: 一、基本网络配置 1.基本配置文件 /etc/hosts:是将IP地址和主机名联系起来的简单文本文件。... <br>/etc/sysconfig/network:网络配置信息,系统启动时会引导这个文件。

    linux-new-installation-configuration:新装系统的步骤和配置

    从U盘引导安装到笔记本,参考先准备好U盘,文中要求至少8G,我一般替换16G-USB-2.0做引导盘,安装的时候速度快,不会太过卡顿。因为我是直接刷单机的系统,所以直接单击清除磁盘就好了。准备刷双系统的请仔细查看...

    嵌入式系统Linux内核开发实战指南(ARM平台)(1/2)

     另外,作者根据自己反复阅读linux2.6内核源代码和linux内核参考书的笔记与心得,用很大篇幅深入剖析了linux内核的组成结构以及各组件的实现原理,在阐述理论的同时对内核源代码进行详细注释,这样既加深了对linux...

    基于ATMEL AT91RM9200的嵌入式Linux移植笔记

    基于ATMEL AT91RM9200的嵌入式Linux 建立开发环境。 引导装载程序。 内核裁减与编译。 建立文件系统。 应用程序开发。

    如何从FireWire设备中有效引导Linux

    假设您想在双引导系统中使用Linux,但计算机硬盘驱动器中没有任何可用空间。一个解决方案就是使用“活动的”Linux 发行版,如 Knoppix,它可以直接从 CD 运行。自然,还有其他选择。例如,可以买其他内置驱动器并在...

    作为coreboot或LinuxBoot ROM有效负载运行的最小Linux,可为笔记本电脑和服务器提供安全,灵活的启动环境。-Linux开发

    其目标之一是:在引导路径上使用免费软件将信任的根移到硬件(或至少在ROM引导块中)进行测量并证明固件的状态进行测量并验证所有文件系统注:这是一项正在进行的工作,并且尚未为非技术用户准备。 如果您有贡献,请...

    根文件系统笔记1.docx

    当LINUX进行内核引导完成后(主要用到arch\i386\boot目录下的bootsect.s、setup.s、和compressed目录下的head.s)内核引导最后调用的是init()函数,即引导的第一个进程是INIT进程,这个就是根据配置文件“/etc/...

    GRUB学习笔记(linux硬盘安装)

    系统引导器是计算机启动后引导的第一个程序。怎么样来安装多系统,怎么引导,看看吧。。

    谷歌师兄的leetcode刷题笔记-btrfs:btrfs

    谷歌师兄的leetcode刷题笔记准备迁移 备份 mythtv 数据库: 我的 zfs->btrfs 迁移的注意事项 启动到 Linux Mint 17.1 Cinnamon live CD/USB 我正在使用以下安装座,您的可能有所不同: /dev/sda -> 大硬盘 /dev/sdb ...

    Linux新手优先懂明白的几个命令和系统优化

    Linux新手优先懂明白的几个命令和系统优化 1、SSD优化 2、Ubuntu 更改默认启动项 3、安装360 4、笔记本双显卡优化 5、修复Ubuntu及其它Linux引导 6、其它

Global site tag (gtag.js) - Google Analytics