定义概述
- 从用户角度来看,操作系统是一个控制软件,用以管理应用程序,为应用程序提供服务,杀死应用程序等。
- 从内部文件角度来看,操作系统是一个资源管理器,用以管理外设,分配资源。
- 层次结构:操作系统位于硬件之上,应用程序之下,算是一个中间层。
- 如图,操作系统将以下的三个概念,抽象为上方的三个概念。
- 操作系统的特征:
- 1、并发:计算机系统中同时存在多个运行的程序需要操作系统管理和调度。(注意区分并发和并行,并行要求多个CPU同时运行,而并发只是要求多个程序可以同时运行)
- 2、共享 :表面上是同时访问资源。实际上是在一个时间点上只有一个程序可以访问某一处资源。
- 3、虚拟:硬件虚拟化,让用户觉得只有一个计算机专门为他服务。
- 4、异步:程序的执行推进的速度不可预知。但是如果运行环境完全相同,那么操作系统给可以保证程序运行的结果也会相同。
启动
计算机内存和硬盘布局
一个最简单的计算机起码应该有:cpu、disk、内存、总线。
- disk:硬盘,存放OS(即操作系统)和bootloader(一般位于硬盘的第一个扇区)。
- bootloader:把OS的操作和数据从硬盘加载到内存里面去。
- BIOS:基本I/O处理系统,功能为寻找显卡和执行BIOS。一般都处于固定的地址,开始地址为CS:0xf000,末地址为IP:fff0。(CS又称为段寄存器。IP又称为指令寄存器。)
启动流程:
插电后,BIOS首先进行自检,寻找显卡,检查外设是否存在问题。然后将bootloader从硬盘加载到内存上去。此时cpu的控制权转移到bootloader手上。随后bootloader把OS的操作和数据从硬盘加载到内存里面去,cpu的控制权转给os。
中断、异常和系统调用
- 系统调用(来源于应用程序)
- 异步/同步。(系统调用的发出请求时是同步的,返回响应时是异步的)
- 应用程序主动向操作系统发出服务请求。
- 响应:等待和持续。
- 异常(来源于不良的应用程序)
- 同步
- 操作系统被迫去处理非法指令或情况(如:内存出错)
- 响应:杀死或重新执行意想不到的应用程序指令
- 中断(来源于外设)
- 异步
- 来自不同的硬件设备的计时器和网络的中断
- 响应:持续,对用户是透明的。
异步:就是不知道什么时候会产生。同步:明确知道什么时候/情况下产生的。