一.为何要有操作系统
程序员无法把所有的硬件操作细节都了解到,管理这些硬件并且加以优化使用是非常繁琐的工作,这个繁琐的工作就是操作系统来干的,有了他,程序员就从这些繁琐的工作中解脱了出来,只需要考虑自己的应用软件的编写就可以了,应用软件直接使用操作系统提供的功能来间接使用硬件。
二.操作系统的位置
操作系统位于计算机硬件与应用软件之间,本质也是一个软件。
三.操作系统的功能
1.隐藏了丑陋的硬件调用接口,为应用程序员提供调用硬件资源的更好,更简单,更清晰的模型(系统调用接口)。
2.将应用程序对硬件资源的竞态请求变得有序化。
四.操作系统的发展
第一代计算机(1940-1955):真空管和穿孔卡片
特点:没有操作系统的概念,所有的程序设计都是由纯粹的机器语言编写的
优点:程序员在申请时间段内独享整个资源,即时的调试自己的程序,发现bug可以即时处理
缺点:没有合理的时间利用
第二代计算机(1955-1965):晶体管和批处理系统
特点:有了操作系统的概念,最早的操作系统是人力与计算机结合的系统,需要人参与
优点:批处理,节省时间
缺点:1.需要人参与控制,搬磁带 2.计算机过程仍然是顺序计算-》串行 3.影响开发效率,无法及时调试
第三代计算机(1965-1980):集成电路芯片和多道程序设计
第三代计算机的操作系统广泛应用了第二代计算机的操作系统没有的关键技术:多道技术(详见第三节)。
第三代计算机广泛采用了必须的保护硬件之后,分时系统才开始流行
第四代计算机(1980-至今):个人计算机
五.多道技术
多道技术中的多道指的是多个程序,多道技术的实现是为了解决多个程序竞争或者说共享同一个资源(比如cpu)的有序调度问题,解决方式即多路复用,多路复用分为时间上的复用和空间上的复用。
①空间上的复用:将内存分为几个部分,每个部分放入一个程序,这样同一时间内存中就有多到程序。
②时间上的复用:当一个程序爱等待l/O时,另一个程序可以使用CPU,如果内存中可以存放足够多的作业,则CPU的利用率将达到更高。