什么是操作系统?
作为扩展机器
这是自上而下的观点;隐藏硬件真相,将硬件转为抽象,抽象比硬件要简单和易于使用;将硬件细节与用户隔离开,用户无需关心硬件如何工作
作为资源管理器
在相互竞争的程序间,控制和协调资源分配,充分发挥各种资源的作用;允许多个程序同时运行;实现时间及空间的资源复用
操作系统的功能
提供抽象和管理计算机资源,用户程序与OS之间的主要交互通过抽象完成
- 进程管理:系统采用调度算法合理分配任务
- 存储管理:数据存储方式和组织结构
- 文件管理
- 作业管理:人机交互、图形界面或系统任务的管理
- 设备管理:内核和外围设备的数据交互
- 中断处理、错误处理
系统调用
系统调用是用户与操作系统间的接口,从用户态切换到内核态
系统库可调用操作系统,执行硬件指令
应用程序可以调用系统库和操作系统,执行硬件指令