操作系统简介
操作系统是计算机硬件的守护者,综合管理的计算机的所有硬件和软件资源,为使用者提供必要的编程接口和用户界面。如果没有操作系统,计算机就是一堆废铁不能为我所用。操作系统是整个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内核分析和操作系统设计 -创作你自己的操作系统 卢军编著
网友评论