树莓派Linux启动过程简介

作者&投稿:闵池 (若有异议请与网页底部的电邮联系)
~     昨天在写关于linux设置脚本开机启动的文章时,有个疑问就是开机时怎么确认运行级别,然后遍历执行/etc/rcN.d/目录下的所有服务程序。带着疑问, 在前人的基础上 学习总结一下linux系统初始化的工作的内容,现在树莓派4B上展示出来。

1、加载内核

    当计算机打开电源后,首先是BIOS开机自检,按照BIOS中设置的启动设备(通常是硬盘)来启动。操作系统接管硬件以后,首先读入 /boot 目录下的内核文件。树莓派4B的内核是Raspbian GNU/Linux 10 (buster),基于Debian。

2、初始化进程init

    内核文件加载以后,运行第一个程序init,它的作用是初始化系统环境。init位于目录/sbin,进程号PID为1,即1号进程,其他所有进程都由init衍生,是init的子进程。

    同时还有个0号进程,idle进程,在系统初始化时由内核kernel自身从无到有创建,通过调用kernel_thread创建一个内核线程去执行init函数,0号进程创建1号进程。

3、运行级别

    具体介绍请参考笔者的文章-Linux运行级别简介  ,但是开机时是怎么确定运行级别的呢?

    init进程首先读取文件 /etc/inittab,它是运行级别的设置文件。但是各个发行版不太一样,init的配置文件也不一样,有可能使用/etc/event.d里面的配置文件,最新版的改用为/etc/init目录。

4、开机启动程序

    具体详情请参考文章-linux中/etc/init.d设置开机启动 ,确定运行级别后,执行rcN.d目录下的文件,这些链接文件是连接到init.d目录下的程序。init进程逐一加载开机启动程序,其实就是运行这个目录里的启动脚本。

    比如运行级别为5(图形化多用户)时启动的程序:

5、用户登录

    开机启动程序加载完毕以后用户登录。用户的登录方式有三种:

    命令行登录:init进程调用getty程序。

    ssh登录:init进程调用sshd程序。

    图形界面登录:init进程调用显示管理器,Gnome图形界面对应的显示管理器为gdm。

6 、login shell

    默认shell时bash,命令行界面,让用户可以直接与操作系统对话。读取环境变量,具体请参考笔者文章-Linux环境变量的设置。


我大一学的是通信,在考虑大二转计算机,有些迷茫,关于是否转专业求建议...
如果LZ在学校是偏向于应用和工程类,比如在FPGA或者DSP或者Linux等芯片和系统上实现通信算法的话,LZ应该不会把芯片类等划分到“计算机相关”中去。其实通信芯片公司也属于通信业,比如:高通,博通,马威尔以及展讯,如果可以进入这样的公司,并不见得比进华为中兴差——事实上进入这样公司的门槛远高于进入...

某用户登录Linux 系统后得到的Shell命令提示符为:[root@long ~]#...
u盘装系统 电脑开机后进不了系统 命令提示符引导系统 命令提示符 修复系统 命令提示符汇编 太保行销系统用户登录 企业信用信息公示系统 泰康人寿mss系统2.0 其他类似问题2015-12-05 关于linux。我有个疑问,我在text1 用户登录了之后用... 2 2010-01-12 Linux简答题 17 2010-01-08 linux红旗考试的...

利川市17796069833: Linux的启动流程是什么? -
勾钩恒迪: Linux的启动流程: 1、读取MBR的信息,启动Boot Manager ,Windows使用NTLDR作为Boot Manager,如果用户的系统中安装多个版本的Windows,用户就需要在NTLDR中选择要进入的系统.Linux通常使用功能强大,配置灵活的GRUB作为...

利川市17796069833: Linux操作系统的引导过程是怎样的?
勾钩恒迪: 1.简介 Linux启动过程指的是从加电到看到shell提示的这一段时间. Linux启动的过程可以大概分为几个个阶段,具体划分为几个阶段则依靠具体的系统实现.一般来说,基...

利川市17796069833: 请教各位,树莓派U盘启动如何呃?谁有u - boot哈 -
勾钩恒迪: 你需要一个树莓派, 相对应的外接设备, 一个可用的网络. 我们建议读者先阅读关于初识树莓派的文章,确保读者已经具备所有关于树莓派的基础知识(比如如何给树莓派供电和基础的配置).除了上述需要的硬件配置以外, 读者同时需要下载...

利川市17796069833: 达菲linux系统怎样安装 -
勾钩恒迪: 达菲系统安装教程包括准备硬件、下载达菲系统镜像、烧录镜像到SD卡、配置网络等步骤.一、准备硬件首先,需要准备一台树莓派(Raspberry Pi)作为达菲系统的主机,以及一张8GB以上的SD卡、一个电源适配器、一根网线、一个HDMI线...

利川市17796069833: linux启动过程步骤 -
勾钩恒迪: 这是一个非常复杂的过程,但是可以简单的概括为如下几个步骤,每一个步骤你可以构思一些巧妙的实现来加深体. 启动第一步--加载BIOS 当你打开计算机电源,计算机会首先加载BIOS信息,BIOS信息是如此的重要,以至于计算机必须在最开...

利川市17796069833: LINUX操作系统的启动过程 -
勾钩恒迪: 当用户打开PC的电源,BIOS开机自检,按BIOS中设置的启动设备(通常是硬盘)启动,接着启动设备上安装的引导程序lilo或grub开始引导Linux,Linux首先进行内核的引导,接下来执行init程序,init程序调用了rc.sysinit和rc等程序,rc.sysinit和rc...

利川市17796069833: linux的开机整个流程有哪些呢?
勾钩恒迪: · 1: 启动电源后,主机第一步先做的就是查询BIOS(全称:basic input/output system 基本输入输出系统)信息.了解整个系统的硬件状态,如CPU,内存,显卡,网卡...

利川市17796069833: 简述Linux系统的启动过程 -
勾钩恒迪: BIOS -> GRUB stage1 -> GRUB stage 2 -> GRUB load kernel & inited image(如果有)-> run Kernel -> run initrd image init script(如果 initrd 里面有) -> mount / partition -> run init script in / partition -> init system base server/config -> run inittab/...

利川市17796069833: Linux系统从开机到登陆界面的启动过程是什么样的? -
勾钩恒迪: 黑马程序员提醒您过程如下:⑴开机BIOS自检,加载硬盘.⑵读取MBR,MBR引导.⑶grub引导菜单(Boot Loader).⑷加载内核kernel.⑸启动init进程,依据inittab文件设定运行级别 ⑹init进程,执行rc.sysinit文件.⑺启动内核模块,执行不同级别的脚本程序.⑻执行/etc/rc.d/rc.local ⑼启动mingetty,进入系统登陆界面.

利川市17796069833: 如何让树莓派默认启动进入图形界面 -
勾钩恒迪: 树莓派默认是采用英文字库的,而且系统里没有预装中文字库,所以即使你在locale中改成中文,也不会显示中文,只会显示一堆方块.因此需要我们手动来安装中文字体.好在有一个中文字体是免费开源使用的.ssh中输入以下命令1 sudo apt-...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网