首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

简要描述linux的启动过程

Linux系统的启动过程是一个多步骤的复杂流程,涉及硬件初始化、引导加载程序的执行、内核加载、系统初始化以及用户界面的启动等多个阶段。以下是Linux系统启动过程的简要描述:

Linux启动过程

  • BIOS自检和初始化:开机后BIOS首先进行POST,检测硬件状态,然后加载并初始化硬件设备。
  • 加载MBR:BIOS将控制权交给硬盘的MBR,MBR包含引导加载程序(如GRUB)。
  • Bootloader引导菜单:GRUB加载并显示引导菜单,允许用户选择启动内核或系统。
  • 加载内核:用户选择内核后,GRUB将控制权交给内核。
  • 内核初始化:内核初始化硬件设备,加载必要的驱动程序,并挂载根文件系统。
  • init进程启动:内核启动第一个用户空间进程init,init进程根据/etc/inittab文件设置系统运行级别。
  • 系统服务和进程初始化:init进程执行rc.sysinit脚本,启动系统服务和守护进程。
  • 用户登录:用户登录后,系统进入运行级别,启动图形界面(如果有)。

启动过程的优势

  • 灵活性和可配置性:通过修改GRUB配置或init脚本,用户可以调整启动过程。
  • 稳定性:Linux系统的启动过程经过精心设计,确保了系统的稳定运行。
  • 安全性:启动过程中的每一步都经过严格测试,确保了系统的安全性。

通过上述步骤,Linux系统能够高效、稳定地启动,为用户提供一个可靠的操作环境。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

linux启动过程解析

在Linux中,Boot Loader通常安装在硬盘的MBR (Master Boot Record)或EFI系统分区。...内核初始化的过程包括以下几个步骤: 加载驱动程序:内核会加载与硬件设备对应的驱动程序,并初始化这些设备。驱动程序通常存储在内核模块中,可以在运行时加载和卸载。...启动init进程:内核会在用户空间启动第一个进程——init进程。init进程是所有进程的祖先进程,它负责启动和管理所有其他进程和服务。...启动用户登录管理程序:用户登录管理程序(如getty和systemd-logind)负责管理用户登录和会话。当用户输入用户名和密码后,登录管理程序会验证用户身份并启动相应的会话。...用户登录阶段: 当图形界面启动后,用户可以在屏幕上看到登录窗口,输入用户名和密码后,登录管理程序会验证用户身份并启动相应的会话。

1.3K30

基于Linux的pc启动过程

作为一个Android开发者,了解整个系统架构是必须的,所以这篇就总结一下Android手机从按下开机键到启动这一过程发生了什么。...要了解Android手机启动过程,我们先来了解一下基于linux系统的电脑从按下电源键的那一刻起,发生了什么,这样类比可以更好的理解Android手机的启动过程。...基于Linux的pc启动过程 我们都知道,所有的程序软件包括操作系统都是运行在内存中的,然而我们的操作系统一般是存放在硬盘上的,当我们按下开机键的时候,此时内存中什么程序也没有,因此需要借助某种方式,将操作系统加载到内存中...Android手机的启动过程 Android系统虽然也是基于linux系统的,但是由于Android属于嵌入式设备,并没有像pc那样的BIOS程序。取而代之的是Bootloader——系统启动加载器。...当linux内核启动后会初始化各种软硬件环境,加载驱动程序,挂载根文件系统,并开始执行根文件系统的init程序,init程序是Android启动过程中最重要的核心程序。

2K00
  • Linux 系统启动过程

    Linux 系统启动过程 linux启动时我们会看到许多启动信息。 Linux系统的启动过程并不是大家想象中的那么复杂,其过程可以分为5个阶段: 内核的引导。 运行 init。 系统初始化。...运行级别 许多程序需要开机启动。它们在Windows叫做"服务"(service),在Linux就叫做"守护进程"(daemon)。 init进程的一大任务,就是去运行这些开机启动的程序。...但是,不同的场合需要启动不同的程序,比如用作服务器时,需要启动Apache,用作桌面就不需要。 Linux允许为不同的场合,分配不同的开机启动程序,这就叫做"运行级别"(runlevel)。...Linux系统有7个运行级别(runlevel): 运行级别0:系统停机状态,系统默认运行级别不能设为0,否则不能正常启动 运行级别1:单用户工作状态,root权限,用于系统维护,禁止远程登陆 运行级别...rc启动脚本,/etc/rc.d/rc5.d/目录中的这些启动脚本实际上都是一些连接文件,而不是真正的rc启动脚本,真正的rc启动脚本实际上都是放在/etc/rc.d/init.d/目录下。

    2.8K00

    Linux 系统启动过程

    linux启动时我们会看到许多启动信息。 Linux系统的启动过程并不是大家想象中的那么复杂,其过程可以分为5个阶段: 内核的引导。 运行 init。 系统初始化。 建立终端 。 用户登录系统。...运行级别 许多程序需要开机启动。它们在Windows叫做"服务"(service),在Linux就叫做"守护进程"(daemon)。 init进程的一大任务,就是去运行这些开机启动的程序。...但是,不同的场合需要启动不同的程序,比如用作服务器时,需要启动Apache,用作桌面就不需要。 Linux允许为不同的场合,分配不同的开机启动程序,这就叫做"运行级别"(runlevel)。...Linux 的账号验证程序是 login,login 会接收 mingetty 传来的用户名作为用户名参数。...---- Linux 关机 在linux领域内大多用在服务器上,很少遇到关机的操作。毕竟服务器上跑一个服务是永无止境的,除非特殊情况下,不得已才会关机。

    2.6K30

    Linux 系统启动过程

    IOS/UEFI阶段计算机通电,BIOS或UEFI启动。进行硬件初始化、POST(Power-On Self-Test)自检,检查设备的可用性。BIOS/UEFI查找启动设备,并加载引导加载程序。...提供引导菜单,用户可以选择不同的内核或操作系统。引导加载程序将控制权交给操作系统内核。内核启动阶段内核被加载到内存中,解压缩,并进行初始化。内核初始化系统硬件、建立内存管理、设置中断服务等。...用户空间初始化阶段初始化管理器接管控制,启动系统服务和守护进程。系统初始化阶段可能包括加载共享库、配置网络、挂载文件系统。...用户输入凭据,登录管理器验证身份,启动用户会话。用户登录阶段登录后,系统加载用户配置文件、启动用户级别的进程。图形界面或命令行界面最终,系统进入用户的桌面环境或命令行终端。

    16821

    Linux 系统启动过程

    linux启动时我们会看到许多启动信息。 Linux系统的启动过程并不是大家想象中的那么复杂,其过程可以分为5个阶段: 内核的引导。 运行 init。 系统初始化。 建立终端 。 用户登录系统。...运行级别 许多程序需要开机启动。它们在Windows叫做"服务"(service),在Linux就叫做"守护进程"(daemon)。 init进程的一大任务,就是去运行这些开机启动的程序。...但是,不同的场合需要启动不同的程序,比如用作服务器时,需要启动Apache,用作桌面就不需要。 Linux允许为不同的场合,分配不同的开机启动程序,这就叫做"运行级别"(runlevel)。...Linux 的账号验证程序是 login,login 会接收 mingetty 传来的用户名作为用户名参数。...---- Linux 关机 在linux领域内大多用在服务器上,很少遇到关机的操作。毕竟服务器上跑一个服务是永无止境的,除非特殊情况下,不得已才会关机。

    2.6K20

    Linux系统启动过程

    原文:https://www.runoob.com/linux/linux-system-boot.html Linux 系统启动过程 linux 启动时我们会看到许多启动信息。...linux 启动时我们会看到许多启动信息。 Linux 系统的启动过程并不是大家想象中的那么复杂,其过程可以分为 5 个阶段: 内核的引导。 运行 init。 系统初始化。 建立终端 。...运行级别 许多程序需要开机启动。它们在 Windows 叫做 "服务"(service),在 Linux 就叫做 "守护进程"(daemon)。...Linux 允许为不同的场合,分配不同的开机启动程序,这就叫做 "运行级别"(runlevel)。也就是说,启动时根据 "运行级别",确定要运行哪些程序。...---- Linux 关机 在 linux 领域内大多用在服务器上,很少遇到关机的操作。毕竟服务器上跑一个服务是永无止境的,除非特殊情况下,不得已才会关机。

    3.3K30

    arm linux启动过程_项目冷启动和热启动的区别

    所谓冷启动,也就是一般所说的上电复位,冷启动后片内外RAM的内容是随机的,通常是0x00或0xFF;单片机的热启动是通过外部电路给运行中的单片机的复位端一复位电平而实现的,也就是所说的按键复位或看门狗复位...常用的方法是:确定某内存单位为标志位(如0x40003FF4~0x40003FF7 RAM单元),启动时首先读该内存单元的内容,如果它等于一个特定的值(例如为0xAA55AA55),就认为是热启动,否则就是冷启动.../冷启动处理 unStartFlag=0xAA55AA55; } 然而实际调试中发现,无论是热启动还是冷启动,开机后所有内存单元的值都被复位为0,当然也实现不了热启动的要求。...通过看keil MDK自带的启动代码Startup.s,在这个启动代码中也并没有发现将整个RAM区域清零的语句。...反汇编程序,发现从启动代码执行结束到跳转到main函数过程中,编译器还执行了很多库函数,其中__scatterload_zeroinit函数将所有W/R RAM都初始化为0(默认设置下)。

    2.2K30

    Linux学习笔记之Linux启动引导过程

    尽管目前的计算机已经装备了很多工具来简化引导过程,但是这一切并没有对整个过程进行必要的简化。 让我们先从高级的视角来查看 Linux 引导过程,这样就可以看到整个过程的全貌了。...这就是 Linux 引导的整个过程。现在让我们深入挖掘一下这个过程,并深入研究一下 Linux 引导过程的一些详细信息。 系统启动 系统启动阶段依赖于引导 Linux 系统上的硬件。...然后该例程会调用内核,并开始启动内核引导的过程。 当 bzImage(用于 i386 映像)被调用时,我们从 ....在桌面 Linux 系统上,第一个启动的程序通常是 /sbin/init。但是这不是一定的。...结束语 与 Linux 本身非常类似,Linux 的引导过程也非常灵活,可以支持众多的处理器和硬件平台。最初,加载引导加载程序提供了一种简单的方法,不用任何花架子就可以引导 Linux。

    10.5K41

    Hadoop的核心组件是什么?请简要描述它们的作用。

    Hadoop的核心组件是什么?请简要描述它们的作用。 Hadoop是一个开源的分布式计算框架,用于处理大规模数据集。它的核心组件包括Hadoop分布式文件系统(HDFS)和MapReduce执行框架。...下面我将详细介绍这两个核心组件的作用。 Hadoop分布式文件系统(HDFS): HDFS是Hadoop的存储系统,用于存储大规模数据集。...每个数据块都有多个副本,以提供数据的冗余和容错能力。 HDFS通过将数据块移动到计算节点附近来实现数据本地性,从而提高数据访问的效率。...通过适当的输入数据和自定义的Mapper和Reducer类,我们可以处理各种类型的大规模数据,并进行相应的分析和计算。...使用Hadoop的分布式文件系统HDFS和计算框架MapReduce,我们可以构建出高可靠性和高可扩展性的大数据处理系统。

    11310

    Linux 系统启动过程 原

    linux启动时我们会看到许多启动信息。 Linux系统的启动过程并不是大家想象中的那么复杂,其过程可以分为5个阶段: 内核的引导。 运行 init。 系统初始化。 建立终端 。 用户登录系统。...它们在Windows叫做"服务"(service),在Linux就叫做"守护进程"(daemon)。 init进程的一大任务,就是去运行这些开机启动的程序。...但是,不同的场合需要启动不同的程序,比如用作服务器时,需要启动Apache,用作桌面就不需要。 Linux允许为不同的场合,分配不同的开机启动程序,这就叫做"运行级别"(runlevel)。...Linux的账号验证程序是login,login会接收mingetty传来的用户名作为用户名参数。...Linux 关机 在linux领域内大多用在服务器上,很少遇到关机的操作。毕竟服务器上跑一个服务是永无止境的,除非特殊情况下,不得已才会关机。

    2.9K20

    Linux 系统启动过程(一)

    linux启动时我们会看到许多启动信息。 Linux系统的启动过程并不是大家想象中的那么复杂,其过程可以分为5个阶段: 内核的引导。 运行 init。 系统初始化。 建立终端 。 用户登录系统。...linux1.png 运行init init 进程是系统所有进程的起点,你可以把它比拟成系统所有进程的老祖宗,没有这个进程,系统中任何进程都不会启动。...linux2.png 运行级别 许多程序需要开机启动。它们在Windows叫做"服务"(service),在Linux就叫做"守护进程"(daemon)。...Linux允许为不同的场合,分配不同的开机启动程序,这就叫做"运行级别"(runlevel)。也就是说,启动时根据"运行级别",确定要运行哪些程序。...linux6.png Linux 关机 在linux领域内大多用在服务器上,很少遇到关机的操作。毕竟服务器上跑一个服务是永无止境的,除非特殊情况下,不得已才会关机。

    2.4K20

    Linux不为人知的启动过程

    一、绪论 Linux系统在日常工作中已经是我们朝夕相处的亲密伴侣,每次当我们按下可爱的电源键那一刻起直到出现熟悉的登陆界面。这短短的一瞬间它都经历什么那??...二、Linux启动过程 对于一台安装了Linux系统的主机来说,当我们按下开机按钮时一共要经历这几个阶段。 其中,每个过程都执行了自己该做的初始化部分的事情,有些过程又可分为好几个子过程。...这一步主要是根据我们在BIOS中设置的系统启动顺序来搜索用于启动系统的驱动器,如硬盘、光盘、U盘、软盘和网络等。...3.完成了系统所有的启动任务后,linux会启动终端或X-Window来等待用户登录。...tty1,tty2,tty3...这表示在运行等级1,2,3,4的时候,都会执行"/sbin/mingetty",而且执行了6个,所以linux会有6个纯文本终端,mingetty就是启动终端的命令。

    1K20

    Linux启动引导程序(GRUB)加载内核的过程

    我们知道启动引导程序(Boot Loader,也就是 GRUB)会在启动过程中加载内核,之后内核才能取代 BIOS 接管启动过程。如果没有启动引导程,那么内核是不能被加载的。...本节,我们就来看看启动引导程序加载内核的过程,当然 initramfs 这个虚拟文件系统也是要靠启动引导程序调用的。...GRUB加载内核的过程GRUB 的作用有以下几个:加载操作系统的内核;拥有一个可以让用户选择的的菜单,来选择到底启动哪个系统;可以调用其他的启动引导程序,来实现多系统引导。...答案是空间不够,GRUB 的功能非常强大,MBRM 空间是不够使用的。那么 Linux 的解决办法是把 GRUB 的程序分成了三个阶段来执行。...接下来内核就可以接管启动过程,继续自检与加载硬件模块了。

    54620

    linux生成initramfs,Linux启动过程与initramfs

    Linux启动过程概述 这里先简单列一下 Linux 操作系统启动的全过程: 按下电脑的电源键后,电脑通电,BIOS启动; BIOS读取硬盘的MBR,运行启动扇区中的代码,旧系统往往需要自己写启动扇区,...而新系统基本上由专用的启动软件接管了,在 Linux 世界中,目前都是用的 Grub2。...; 内核进行初始化,内核的初始化过程结束后,就会把控制权交给/init程序,从此进入用户空间; 因为内核先是将 initramfs 文件挂在为根文件系统,所以刚开始运行的/init程序其实是 initramfs...可以看出 init 程序的运行也是一个分阶段的过程; /sbin/init程序负责系统的初始化、各种服务的运行、用户的登陆等等; 如果需要运行图形界面,则/sbin/init程序会运行 Display...initramfs概述 Initramfs/Initrd 用于创建一个系统启动初期的小型用户空间,解决复杂启动流程问题,作为真实rootfs挂载前的过渡。

    4.3K20

    Linux 系统启动过程分解

    Linux 系统启动过程 linux启动时我们会看到许多启动信息。 Linux系统的启动过程并不是大家想象中的那么复杂,其过程可以分为5个阶段: 内核的引导。 运行 init。 系统初始化。...运行级别 许多程序需要开机启动。它们在Windows叫做"服务"(service),在Linux就叫做"守护进程"(daemon)。 init进程的一大任务,就是去运行这些开机启动的程序。...但是,不同的场合需要启动不同的程序,比如用作服务器时,需要启动Apache,用作桌面就不需要。 Linux允许为不同的场合,分配不同的开机启动程序,这就叫做"运行级别"(runlevel)。...Linux 的账号验证程序是 login,login 会接收 mingetty 传来的用户名作为用户名参数。...---- Linux 关机 在linux领域内大多用在服务器上,很少遇到关机的操作。毕竟服务器上跑一个服务是永无止境的,除非特殊情况下,不得已才会关机。

    2.6K00

    Linux不为人知的启动过程

    Linux系统在日常工作中已经是我们朝夕相处的亲密伴侣,每次当我们按下可爱的电源键那一刻起直到出现熟悉的登陆界面。这短短的一瞬间它都经历什么那??...二、Linux启动过程 对于一台安装了Linux系统的主机来说,当我们按下开机按钮时一共要经历这几个阶段。 其中,每个过程都执行了自己该做的初始化部分的事情,有些过程又可分为好几个子过程。...这一步主要是根据我们在BIOS中设置的系统启动顺序来搜索用于启动系统的驱动器,如硬盘、光盘、U盘、软盘和网络等。...3.完成了系统所有的启动任务后,linux会启动终端或X-Window来等待用户登录。...tty1,tty2,tty3...这表示在运行等级1,2,3,4的时候,都会执行"/sbin/mingetty",而且执行了6个,所以linux会有6个纯文本终端,mingetty就是启动终端的命令。

    91710

    ARM Linux 启动时的自解压过程 | Linux 内核

    通常情况下,解压消耗的时间比从存储介质传输未压缩镜像的时间要短。 例如从 NAND Flash 加载内核,就是一种很典型的情况。 本文将对 ARM Linux 的自解压过程进行一个简单介绍。...arch/arm/* 下的大多数机器都会使用压缩的内核,其自解压过程是一样的。...2002 年,Russell King 就在 Booting ARM Linux 文档中定义了 Booloader 引导 Linux 内核的 ABI。...另外还需要额外的空间,是因为当内核最终启动时,它将从该地址中减去 0x4000(或 LPAE 的 0x5000),并将初始内核页表 (initial kernel page table) 存储在那里。...现在我们知道内核可以解压缩到压缩镜像下方的内存中,并且它们在解压缩过程中不会发生重叠,现在可以开始执行wont_overwrite 处的代码了。

    2.9K10
    领券