1. 计算机基本组成:冯诺依曼体系结构
冯诺依曼结构基本组成包括五部分:
- 逻辑运算器
- 控制器
- 输入设备
- 输出设备
- 内存
2. 操作系统的启动过程:
2.1 BIOS:Basic Input Output System 基本输入输出处理系统
BIOS是我们计算机启动加载到内存上的第一个小程序,也叫固件,即随着机器的上电和掉电而运行和停止;
主要作用:
- 进行自检,检查各种各样的设备是否可以正常运行(如显卡驱动、键盘、鼠标、磁盘等);
- 将一个特殊的小程序Bootloader加载到内存中运行。
2.2 Bootloader:加载OS到内存
加载基本过程如下:
- Bootloader存放在特定的位置,如磁盘的第一个扇区,由BIOS加载到内存上,Bootloader获取到CPU的控制权;
- 然后CPU执行Bootloader的指令,开始将磁盘上的OS的指令和数据往内存上加载;
- 然后Bootloader调整CPU的执行顺序,将CPU的next指令的地址调整为操作系统的入口地址,然后操作系统像一个死循环一样不停的运行,为我们用户进行服务,帮我们管理宝贵的物理资源。
2.3 实模式和保护模式
从上面的过程不难发现,BIOS从磁盘加载Bootloader到内存,然后再由Bootloader加载我们的操作系统程序,整个过程中处于实模式状态,因为此时我们硬件更像是一块“裸奔的板子”,没有任何的硬件保护机制,包括内存的映射一般进行的是段映射,不安全,效率低。
直到我们的操作系统被加载到内存并且获得CPU的使用和管理权限,此时所有的物理资源被管理、被保护起来,比如宝贵的内存等,这种状况我们称为保护模式。
3. 题外话:装有固态盘的机器为何启动很快?
我们知道,常用的硬盘分为机械硬盘和固态硬盘,固态硬盘的读写速度往往远快于机械硬盘,这也就是为什么我们有固态硬盘的计算机启动比有机械硬盘的计算机快的原因。操作系统是一个常驻内存的软件,但是也是需要从硬盘加载到内存上的,如果操作系统相关数据和指令的查找和读取慢了,那么开机时间自然也就很长了。