linux启动流程】的更多相关文章

linux 启动流程 POST BIOS(boot sequence) 所选择的启动设备次序的MBR中是否有引导程序, ----> MBR(bootloader) 提供内核列表 ------->加载选定的Kernel,initrd(内存模拟的磁盘设备需要缓存),initramfs(缓存)  ---->获取到根文件系统并挂载,运行init bootloadler开始以后的挂载流程 1.当系统读取bootloader,挂载内核分区的时候,不识别更高级的磁盘分区上,只能放在基本磁盘分区,而且只…
看了深入理解linux内核一书的最后对linux启动流程的介绍,下面就把我能理解的写一下吧: bios(硬件加电自检POST,寻找第一个启动设备) the boot loader(可以从硬盘启动也可以从软盘,这一步要加载内核到内存) 从硬盘启动 setup函数(检查硬件设备并为内核线程执行设定环境) setup32函数(有两个setup32函数) 第一个setup32(解压内核屏幕能看到解压完成,跳到物理地址0x00100000运行第二个setup32函数) 第二个setup32(为进程0设定执…
在BIOS阶段,计算机的行为基本上被写死了,可以做的事情并不多:一般就是通电.BIOS.主引导记录.操作系统这四步.所以我们一般认为加载内核是linux启动流程的第一步. 第一步.加载内核 操作系统接管硬件以后,首先读入 /boot 目录下的内核文件. 我们查看一下,/boot 目录下面大概是这样一些文件: $ ls /boot config-3.2.0-3-amd64 config-3.2.0-4-amd64 grub initrd.img-3.2.0-3-amd64 initrd.img-3…
在BIOS阶段,计算机的行为基本上被写死了,可以做的事情并不多:一般就是通电.BIOS.主引导记录.操作系统这四步.所以我们一般认为加载内核是linux启动流程的第一步. 第一步.加载内核 操作系统接管硬件以后,首先读入 /boot 目录下的内核文件. 我们查看一下,/boot 目录下面大概是这样一些文件: 第二步.启动初始化进程 内核文件加载以后,就开始运行第一个程序 /sbin/init,它的作用是初始化系统环境. 由于init是第一个运行的程序,它的进程编号(pid)就是1.其他所有进程都…
/*********************************************************************  * Author  : Samson  * Date    : 04/28/2014  * Test platform:  *              3.11.0-12-generic #19-Ubuntu  *              GNU bash, version 4.2.45  * ****************************…
Linux课程---8.Linux启动流程 一.总结 一句话总结: grub启动引导界面(比如装了多系统,选择系统),找到linux内核 启动init程序,加载各种驱动 1.进入grub界面选择相应的启动内核 2.读取kernel内核文件-/boot/vmlinuz-* 3.读取init的镜像文件-/boot/initrd-* 4.init去读取/etc/inittab 5.读取启动级别(id:3:initdefault) 6.读取/etc/rc.d/rc.sysinit,完成时钟设置, 主机名…
目 录 Linux启动流程    I 第1章 CentOS6启动流程    1 1.1 BIOS    1 1.2 MBR    1 1.3 GRUB    1 1.4 kernel(加载内核)    1 1.5 init进程    1 第2章 CentOS7启动流程Systemd概述    1 2.1 centos7    1 2.2 systemd    1   CentOS6启动流程 https://linux.cn/article-8807-1.html BIOS       开机自检,…
1.Linux启动流程 2.Linux运行级别 1.什么是运行级别,运行级别就是操作系统当前正在运行的功能级别 System V init运行级别 systemd目标名称 作用 0 runlevel0.target, poweroff.target 关机 1 runlevel1.target, rescue.target 单用户模式 2 runlevel2.target, multi-user.target 3 runlevel3.target, multi-user.target 多用户的文本…
Linux系统启动流程 Linux 系统的启动,从计算机开机通电自检开始,一直到登陆系统,需要经历多个过程.了解 Linux 的启动过程,有助于了解 Linux 系统的结构,也对系统的排错有很大的帮助. CentOS 6.x 系统启动过程发生了较大的变化,使用 Upstart 启动服务取代了原先的 System Vinit(英文).(中文) 启动服务.Upstart 启动服务的效率更高,启动速度更快. Linux 系统启动过程比较复杂,我们先整理一下基本的启动过程,有一个整体的印象,然后再进一步…
目录 一:Linux启动流程 init和Systemd的区别 二:Linux服务管理(service,systemctl) 一:Linux启动流程 Rhel6启动过程: Rhel7启动过程: GRUB2相较于GRUB一代的提升:更健壮.可移植.更强大.支持BIOS.EFI和OpenFirmware,支持GPT和MBR分区表.支持非Linux系统,如苹果HFS文件系统和Windows的NTFS文件系统 systemd 被设计用来改进 sysvinit 的缺点,它和ubuntu的upstart是竞争…
授课笔记:----------------------------------- linux系统启动流程:一.初始化阶段:1.grub引导界面2.识别硬件3.初始化驱动 二.加载/etc/rc.d/rc.sysinit系统初始化脚本4.进入欢迎页面5.设置时钟6.设置主机名7.挂载文件系统8.挂载光驱9.进入3级别10.启动虚拟内存11.设置磁盘阵列 三.加载/etc/rc.d/rc进程管理脚本12.设置防火墙13.检测硬件变化14.启动网络服务15.启动3级别下允许启动的进程(比如sshd)…
系统的启动其实是一项非常复杂的过程,因为内核得要检测硬件并加载适当的驱动程序,接下来则必须要调用程序来准备好系统运行的环境,以让用户能够顺利的操作整台主机系统,如果你能够理解系统启动的原理,那么将有助于你在系统出问题时能够很快速的修复系统,而且还能够顺利的配置多重操作系统的多重启动问题,为了多重启动的问题,你就不能不学 grub 这个 Linux 下优秀的启动管理程序(boot loader),而在系统运行期间,你也得要学会管理内核模块,下面进入正题开始学习吧. 关于Linux系统的启动流程一览…
探讨操作系统接管硬件以后发生的事情,也就是操作系统的启动流程. 这个部分比较有意思.因为在BIOS阶段,计算机的行为基本上被写死了,程序员可以做的事情并不多:但是,一旦进入操作系统,程序员几乎可以定制所有方面.所以,这个部分与程序员的关系更密切. 我主要关心的是Linux操作系统,它是目前服务器端的主流操作系统.下面的内容针对的是Debian发行版,因为我对其他发行版不够熟悉. 第一步.加载内核 操作系统接管硬件以后,首先读入 /boot 目录下的内核文件. 以我的电脑为例,/boot 目录下面…
接触linux系统运维已经好几年了,常常被问到linux系统启动流程问题,刚好今天有空来梳理下这个过程:一般来说,所有的操作系统的启动流程基本就是: 总的来说,linux系统启动流程可以简单总结为以下几步:1)开机BIOS自检,加载硬盘.2)读取MBR,进行MBR引导.3)grub引导菜单(Boot Loader).4)加载内核kernel.5)启动init进程,依据inittab文件设定运行级别6)init进程,执行rc.sysinit文件.7)启动内核模块,执行不同级别的脚本程序.8)执行/…
基础知识 linux系统的组成 内核(kerner) 根文件系统(rootfs) 内核提供操作系统的功能,根文件系统包含常用的一些工具,这些工具.这些工具的运行离不开glibc库文件. 程序:二进制程序文件 库:库是函数的集合,用来实现接口调用等功能.程序的运行依赖这些库文件 Linux内核的功能:文件系统管理.进程管理.网络管理.驱动程序.内存管理等 CentOS 6 CentOS 6 启动流程: 4步 POST--->MBR--->GRUB--->加载内核 POST:Power-On…
欢迎转载,转载时请保留作者信息,谢谢. 邮箱:tangzhongp@163.com 博客园地址:http://www.cnblogs.com/embedded-tzp Csdn博客地址:http://blog.csdn.net/xiayulewa    墨迹这么久,总算开始内核源代码分析了. 阶段1 阶段1大部分为汇编, 以程序启动到执行到start_kernel函数为第一阶段. 大概流程如下:       变量与文件的对应关系. THUMB: src\arch\arm\include\asm\…
启动第一步--加载BIOS 当你打开计算机电源,计算机会首先加载BIOS信息,BIOS信息是如此的重要,以至于计算机必须在最开始就找到它.这是因为BIOS中包含了CPU的相关信息.设备启动顺序信息.硬盘信息.内存信息.时钟信息.PnP特性等等.在此之后,计算机心里就有谱了,知道应该去读取哪个硬件设备了. 启动第二步--读取MBR 众所周知,硬盘上第0磁道第一个扇区被称为MBR,也就是Master Boot Record,即主引导记录,它的大小是512字节,别看地方不大,可里面却存放了预启动信息.…
Linux嵌入式相关项目走到最后很难避开要开机自启一些应用程序或者脚本等,最近也在帮助同事做这个事情,以前自己玩板子的时候都是较为随便的在/etc/rc.local中添加就可以了,但是项目的话还是走标准一些,不仅为了自己以后的维护,也为了以后同事的维护.所以分享下面的文章 推荐: 启动脚本和service.chkconfig:http://blog.csdn.net/taiyang1987912/article/details/41698817 转自:http://blog.csdn.net/l…
1.运行级别 0 关机 1 单用户模式,可以想象为Windows的安全模式,主要用与系统修复 2 不完全的命令行模式,不含NFS服务 3 完全的命令行模式,就是标准字符界面 4 系统保留 5 图像模式 6 重启动 2.运行级别 runlevel 查看运行级别 N 3    N是null 3是文本界面 这说明我开机就是文本界面 /etc/inittab    默认只有一条生效的行:id:3:initdefault:   3为开机运行的级别  5 为开机进入图像界面…
1.bios 2.grub 选择 3.内核自解压vmlinux 4.内核引导的模式与变量(引导期内存分页映射)设置 #汇编级 5.内核内存再分页(内存空间映射),宏定义与设置,初始化consol,启动init 6.启动设置的init= ,或者 /sbin/init /etc/bin /bin/init /bin/sh 启动程序的初始化; 7.初始化控制台 #操作系统级别 initab : 执行 sysinit 等等名利 docker 是共享内核的,内核必然和宿主机相同,1-5的主要工作基本都忽略…
内核级别: (POST)BIOS加电自检-->(Boot Sequence)从BIOS中读取启动顺序-->读取MBR中的bootloader-->加载内核-->读取伪根-->读取根文件中的init(/sbin/init) 用户级别:设置默认运行级别-->运行初始化脚本,完成系统初始化-->关闭对应级别下需要开启或停止的服务-->设置登录终端[-->启动图形终端]…
转自:http://www.veryarm.com/1491.html ARM Linux启动流程大致为:bootloader ---->kernel---->root filesystem.bootloader 是一上电就拿到cpu 的控制权的,而bootloader实现了硬件的初始化.bootloader俨然就成了Power on 之后”第一个吃螃蟹”的代码. 谈到这就得想到硬件机制是如何满足这个功能的了.CPU内部一般都集成小容量的SRAM (又叫stapping stone,垫脚石),…
20.1 Linux启动流程分析 Linux启动过程: 按下开机电源后计算机硬件主动读取BIOS来加载硬件信息以及硬件系统的自我测试,之后系统会主动读取第一个可启动的设备(由BIOS设置),此时就可以读入引导加载程序(boot loader)了,引导加载程序指定使用那个内核文件来启动,并实际加载内核到内存中解压缩与执行,此时内核就能够在内存中活动,并检测所有硬件信息与加载适当的驱动程序来使主机运行,等内核检测硬件与加载驱动程序完毕后,就可以登录了. 1)加载BIOS的硬件信息与进行自我测试,并依…
本章重点: 1.linux引导流程 2.linux运行级别 3.linux启动服务管理 4.GRUB配置与应用 5.启动故障分析解决 linux启动流程 1.固件(fireware):固话在硬件上的程序,主要有CMOS/BIOS 2.post加电自检, 1.检测硬件信息,如cpu,内存,等硬件信息是否工作正常. 2.安全设置 3.可引导介质列表 4.可引导介质的搜索程序 5.电源管理 6.启动细节信息 3.读取MBR(master boot record)主引导记录 MBR位于0柱头0磁头1扇区…
linux启动流程 参考:http://www.ruanyifeng.com/blog/2013/08/linux_boot_process.html 加载内核,首先读入/boot 目录下的内核文件. 启动初始化进程/sbin/init,它的作用是初始化系统环境.由于init是第一个运行的程序,它的进程编号(pid)就是1.其他所有进程都从它衍生,都是它的子进程. 确定运行级别.Linux预置七种运行级别(0-6).一般来说,0是关机,1是单用户模式(也就是维护模式),6是重启.不同级别对应不同…
我们在使用Linux操作系统的时候,我们只需按下电源键,等待,然后输入账户和密码就可以使用Linux操作系统了.那么在按下电源到输入账号和密码之前,操作系统都做了些什么?下面就来讲述在这段时间发生的动作. 下面以CentOS6系列为例来讲解Linux的启动流程. 一.Linux启动流程详解 下图就是启动流程的大致过程: 二.POST加电自检 POST(PowerOnSelfTest)首先对每一个设备进行检查.完成后会寻找存有引导记录的设备,找到后读入操作系统引导记录,然后将系统控制权交给引导记录…
参考:Linux启动流程和grub详解(作者:好笔记运维) 为什么把这位的参考放在前面,主要是这位大佬的流程图太详细了.虽说不一定要了解这么详细,但还是很佩服啊.不多说,上图(在新标签中打开图片) 下面开始简单的了解一下CentOS6的启动流程吧.  第一步.硬件启动阶段 简单说一下这一步的流程:打开电源:POST自检:BIOS逐一排查设备启动顺序:如果是硬盘启动,读取硬盘的MBR的BootLoader.(这里默认MBR分区,暂不考虑GPT分区) 这里主要有三个需要了解的地方BIOS启动顺序.M…
centos6 之前的系统启动: linux启动流程: 1)加电自检 2)读取MBR,引导加载程序grub,完成grub的三个阶段. 3)加载系统内核kernel,执行系统初始化信息. 4)启动用户空间第一个执行程序/sbin/init,并调用init的配置文件,完成初始化. 5)启动核心的外挂模块,来启动各种所需服务. 6)启动6个虚拟终端,执行/bin/login 程序,等待用户登录. 7)登录之后开始以Shell控制主机. CMOS通电-->BIOS启动-->读取MBR-->加载程…
linux 启动流程 系统启动主要顺序就是: 1. 加载内核 2. 启动初始化进程 3. 确定运行级别 4. 加载开机启动程序 5. 用户登录 启动流程的具体细节可以看看Linux 的启动流程 第4步加载启动程序其实是两步: init进程逐一加载开机启动程序,其实就是运行指定目录里的启动脚本. 在运行完指定目录里面的程序后init进程还会去执行/etc/rc.local 这个脚本. ps:"指定目录"是指在第3步中设置的运行级别对应的目录. 要完成我们的需求,我们使用第4步中的任意一种…
这里说的u-boot启动流程,值得是从上电开机执行u-boot,到u-boot,到u-boot加载操作系统的过程.这一过程可以分为两个过程,各个阶段的功能如下. 第一阶段的功能: 硬件设备初始化. 加载u-boot第二阶段代码到RAM空间. 设置好栈. 跳转到第二阶段代码入口. 第二阶段的功能: 初始化本阶段使用的硬件设备. 检查系统内存映射. 将内核从Flash读取到RAM中. 为内核设置启动参数. 调用内核. CPU有7种模式 ARM中处理器模式   说明 备注 用户(usr) 正常程序工作…