第1课 - 进阶操作系统

什么是操作系统

     操作系统(英语: operating system缩写OS)是管理 计算机 硬件软件资源的 计算机程序,同时也是计算机系统的内核与基石。操作系统需要处理如管理与配置 内存、决定系统资源供需的优先次序、控制输入与输出设备、操作 网络与管理 文件系统等基本事务。操作系统也提供一个让用户与系统交互的操作界面。
    操作系统的类型非常多样,不同机器安装的操作系统可从简单到复杂,可从 移动电话嵌入式系统超级电脑大型操作系统。许多操作系统制造者对它涵盖范畴的定义也不尽一致,例如有些操作系统集成了 图形用户界面,而有些仅使用 命令行界面,而将图形用户界面视为一种非必要的应用程序。 以上两段摘自维基百科
    常见的操作系统有:Windows,UNIX,Linux,Mac OS,Android,iOS等
    

现代计算机系统架构

    

BIOS

    BIOS是 Base Input & Output System(基本输入输出系统)的简写
    BIOS是现代计算机主板上的一个固件(现在已经流行更好的EFI及升级版的UEFI)
        BIOS是计算机上电后 第一个运行的程序
        BIOS首先检查硬件状态,检查通过后会立即进行 硬件初始化
        BIOS会在内存中建立 中断向量表(提供硬件访问的方法)
        BIOS最后将控制权交由 主引导程序执行
        一般进入BIOS的方式都会高亮显示其按键,且往往只需要一个按键(例如: ESC、F2、F12、Del等)
    
    CMOS是主板上的另一个硬件,用于存储BIOS的设置,并且记录硬件级别的日期和时间,CMOS的存储需要电力,主板上专门为它配置了一个纽扣电池 

系统启动流程(X86架构)

      

BIOS运行机制

    BIOS存储于ROM中,地址映射为 0xF0000-0xFFFFF(实地址)
    早期的x86处理器Intel-8086只有20根地址总线,所以 只支持20比特的寻址,共1MB,即0xFFFFF
        ROM占据顶部64KB( 0xF0000-0xFFFFF);
        DRAM占据底部640K空间( 0x00000-0x9FFFF);
        剩下的320KB用于外围设备存储空间( 0xA0000-0xEFFFF);
            其中最重要的就是字符界面的显示器( 0xB8000-0xBFFFF),共32KB,它能显示80列*25行=2000个字符;由于每个字符包括其ASCII码和颜色等属性,每个字符占用2个字节,所以最多只能显示8.192屏(8屏+768个字符)的数据
    BIOS的 入口地址为:0xFFFF0这是硬件的特殊设计导致的
    然后 加载0x00000处的BIOS中断向量表,然后执行硬件初始化
    根据用户设置扫描可用存储介质并查找主引导区,然后 执行int 19中断将主引导程序加载进内存0x7C00
    主引导程序在内存中的入口地址是 0x7c00,判断其后采用 0X55AA结尾就将控制权交由该程序执行(jmp 0x7c00),否则执行错误处理中断报告启动错误

主引导区(MBR:Master Boot Record)

    位于存储介质的最开始处,大小为512字节(1个扇区)
    前512字节的最后2个有效字节为0X55aa
    0X55aa之前的数据被视为主引导记录

猜你喜欢

转载自www.cnblogs.com/Dua677/p/9045925.html
今日推荐