操作系统可以被认为是工作在硬件和应用软件之间软件
正如所处位置 操作系统为一般软件屏蔽了硬件 实际上也为软件提供了服务
一、从对硬件拓展上看
操作系统将处理器、磁盘等硬件接口进一步抽象
正是这种抽象为软件工作省去了繁琐细节
譬如众所周知打印机驱动 如果没有事先写好驱动和能调用驱动操作系统
使用打印机就需要跟俊打印机硬件接口设计操作步骤
撇开基本打印动作想想打印时字体、字号设置就够头疼
(玩过单片机以液晶屏莋类比可能更有体会)
所以操作系统第一类任务就是抽象硬件 (对硬件接口进一步抽象),为软件提供良好抽像(如文件)
二、从资源分配角度看
对硬件进行抽象后,操作系统还要担任分配硬件资源任务
也即在竞争程序之间有序地分配资源时操作系统另一个任务
资源分配分为兩种不同方式实现:
时间复用: 也可以称为多路复用即将cpu算力轮流分配给多个程序
空间复用: 分配磁盘空间,记录使用者