码迷,mamicode.com
首页 > 其他好文 > 详细

FreeNOS学习2——操作系统是如何启动的

时间:2019-08-25 15:55:36      阅读:122      评论:0      收藏:0      [点我收藏+]

标签:http   内核   运行   怎么   参数   https   模式   you   初始   

 

The System Boot Process Explained:https://www.webopedia.com/DidYouKnow/Hardware_Software/BootProcess.asp

 

操作系统是怎么启动的?
BootLoader是在操作系统内核运行之前运行;->初始化硬件设备、建立内存空间映射图、将系统软硬件环境带到一个合适的状态;
BootLoader是基于特定硬件平台来实现的;不同的处理器架构有不同的Bootloader;虽然BootLoader有差异性,也有共性;
BootLoaser严重依赖硬件实现的;

操作模式:1、自启动
        2、交互模式

BootLoader启动过程:(主要分为两个阶段)
一、依赖于包含CPU体系结构硬件初始化的代码;通常用汇编语言来实现;
1、基本硬件设备初始化(屏蔽所有中断、关闭处理器内存指令/数据cache等);
2、为第二阶段准备RAM空间;
3、从某个固态存储媒质中,复制Bootloader第二阶段的代码到RAM中;
4、设置堆栈;


二、C语言完成,更复杂的功能,可读性和可移植性会更好:
初始化本阶段要用到的硬件设备;
检测系统内存映射;
将内核映像和根文件系统映像从Flash读到RAM;
为内核设置启动参数;
调用内核(跳转到内核的main函数)

嵌入式Linux系统从软件角度其运行可以分成四个层次:
1、引导加载程序
2、Linux内核
3、文件系统
4、用户应用程序

FreeNOS学习2——操作系统是如何启动的

标签:http   内核   运行   怎么   参数   https   模式   you   初始   

原文地址:https://www.cnblogs.com/grooovvve/p/11407877.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!