目录
操作系统简介
操作系统位于应用软件和硬件设备之间,为方便用户操作计算机而提供的一个运行在硬件之上的软件
操作系统的两个核心作用
- 隐藏了硬件系统复杂的操作,提供了简单直观的API接口
- 将对硬件资源的竞争变成有序可控
操作系统与应用程序的区别
操作系统与应用程序都是软件,而操作系统可以看做一款特殊的软件
1.操作系统可以直接与硬件交互
2.操作系统是受保护的,用户不能直接修改
3.操作系统更加长寿,一旦完成基本不会修改。例如系统内核
操作系统发展史
1.第一代计算机(1940~1955):真空管和穿孔卡片
工作过程中没有操作系统的概念,所有的程序设计都是直接操控硬件
- 优点:程序员在申请的时间段内独享整个资源,可以及时的调试自己的程序
- 缺点:同一时刻只有一个程序被CPU调用执行,是串行的,浪费计算机资源
2.第二代计算机(1955~1965):晶体管和批处理系统
把一堆人的输入攒成一大波输入,然后顺序计算,将一堆人的输出攒成一大波输出。工作过程中有了操作系统的概念,人员直接有了明确的分工。
- 优点:批量处理,节省了计算机的时间
- 缺点:a. 需要人为参与
- 计算机任务仍然是串行执行
- 程序员调试效率低,无法及时调试程序
3.第三代计算机(1965~1980):继承电路芯片和多道程序设计
计算机使用了SPOOLING联机技术和多道技术实现了多终端多用户
多道技术中的多道指的是多个程序,解决多个程序竞争或者说共享同一个资源的有序调度问题,解决方式分为时间复用和空间复用
空间复用
将内存分为几部分,每个部分放入一个程序,这样同一时间内存中就有了多道程序
问题:多个进程之间内存区域需要相互隔离,这种隔离是物理层面的隔离,其目的是为了保证程序的安全性和稳定性
时间复用
指的是操作系统会在多个进程之间做切换执行。
- 当一个程序遇到IO操作时会自动执行
- 当一个任务执行时间超过阈值值会强制切换
注意:在切换前必须保存程序当前的状态,一遍后续恢复执行。频繁的切换其实也需要消耗资源。当所有任务都没有IO操作时,切换执行效率反而降低,但是为了保证并发执行,必须牺牲效率。
总结:多道技术就是切换加保存,让计算机可以同时并发的处理多个任务
4.第四代计算机(1980~至今):个人计算机
第四代也就是我们常见的操作系统:大规模集成电路+多用户多终端系统
体积和成本大大的降低,同时大多具备GUI界面,即使是普通人不具备专业及技能也能流畅使用