美文网首页
30dayos操作系统启动及系统加载

30dayos操作系统启动及系统加载

作者: campolake | 来源:发表于2016-05-18 13:22 被阅读0次

操作系统简介

操作系统是计算机硬件的守护者,综合管理的计算机的所有硬件和软件资源,为使用者提供必要的编程接口和用户界面。如果没有操作系统,计算机就是一堆废铁不能为我所用。操作系统是整个IT产业链的最重要的基础设施之一,透彻的领悟、理解和使用操作系统对一个计算机行业的从业者尤其是码农的重要技能之一。
操作系统的主要功能包括内存管理、进程管理、网络通信、文件系统、用户界面、驱动、安全机制等。

系统的启动和加载

这一章我们主要介绍计算机的启动过程和系统的加载。
系统的启动是指按下电源键后到成功将内核从硬盘加载到内存中,并切换到32位安全模式开始执行内核的整个过程。
当按下计算机的power键的时候,80X86结构的CPU将进入实模式(实模式只支持16位,也就是说BIOS还是在16位基础上运行),并且从地址0XFFFF0开始执行。这个地址通常是ROM-BIOS的地址,我们按下开机键后显示器上显示的第一个闪屏就是BIOS程序的执行的显示信息。BIOS通常会执行某些检测,并且从内存物理地址的0处初始化中断向量。然后BIOS将启动设备的第一个扇区读取到内存的0X7c00处,这个扇区通常是512字节,并且扇区的数据以0x55,0xaa
结尾。由于引导扇区的大小为512字节,远远小于一个操作系统的占用空间的大小,所以我们通常把这512字节作为一个引导程序,引导程序加载操作系统加载程序,然后由加载程序将操作系统内核加载到内存中。

BIOS的历史(引用自)

各种CPU都设计成一加电就从某一个特殊位置开始执行指令,这个特殊位置的程序通常有硬件开发厂商(例如主板厂商)开发并固化到EPROM等不挥发的存储设备中,(感觉应该是这部分程序固化在EPROM中,计算机加电后这部分程序首先加载到内存中,然后计算机从内存的特殊位置开始执行,这个地方有点糊涂,内存是内存,BIOS是BIOS,为什么说EPROM是内存的一部分,他们的寻址没有什么区别呢??)

实模式和安全模式

CPU的中断机制

参考资料

Linux内核完全注释V3.0 赵炯编著
Linux内核源代码情景分析 毛德操 胡希明 著
30天自制操作系统 川合秀实著 周自恒 李黎明 曾祥红 张文旭译
Linux0.01内核分析和操作系统设计 -创作你自己的操作系统 卢军编著

相关文章

  • 30dayos操作系统启动及系统加载

    操作系统简介 操作系统是计算机硬件的守护者,综合管理的计算机的所有硬件和软件资源,为使用者提供必要的编程接口和用户...

  • 03 计算器运行过程和网络

    1 操作系统的启动流程 启动bios程序——>找到操作系统启动介质——>把系统加载到内存——>CPU运行 2 应用...

  • APP启动优化

    系统启动 1、打开电源 引导芯片代码加载引导程序BootLoader到RAM中执行2、BootLoader把操作系...

  • android系统架构和工作原理

    系统启动、应用启动、四大组件启动、界面加载、时间分发 google官方android系统架构图 系统启动过程 Bo...

  • 第七周《简述linux操作系统启动流程》

    一、简述linux操作系统启动流程 启动第一步--加载BIOS 当你打开计算机电源,计算机会首先加载BIOS信息,...

  • Mac在PATH中永久添加路径

    Mac系统的环境变量,加载顺序为: /etc/profile和/etc/paths是系统级别的,系统启动就会加载,...

  • MAC系统查看和修改环境变量

    一、环境变量的位置和加载顺序 Mac系统的环境变量,加载顺序为: /etc/profile(系统级,系统启动就会加...

  • appwidget加载流程及其与app的通信

    结构和加载流程 一、系统开机启动时AppWidget的加载过程 第一步:Android系统启动,SystemSer...

  • Mac下添加环境变量

    在Mac操作系统下,有6个位置涉及到环境变量: 其中a和b是系统级别的,系统启动就会加载,其余是用户级别的。c,d...

  • Mac设置环境变量

    1、MAC 系统的环境变量,加载顺序: /etc/profile /etc/paths 是属于系统级别的,系统启动...

网友评论

      本文标题:30dayos操作系统启动及系统加载

      本文链接:https://www.haomeiwen.com/subject/hcrwrttx.html