第二节 操作系统发展历程

操作系统发展历程

第一个阶段:手工操作

  • 其实在这个阶段并没有诞生操作系统,程序的装入、运算、结果的输出都是由人工干预进行的
  • 过程如下:
输入
输出
纸带机
处理机
纸带机
  • 优点:用户独占资源,不需要因其他程序抢占资源而等待
  • 缺点:CPU不能充分利用,性能低下

第二阶段:批处理阶段

  • 在这个阶段引入了磁带机,提高了CPU的利用率
  • 过程如下:
读入
输入
输出
写出
纸带机
磁带机
处理机
磁带机
纸带机
  • 在这个阶段又可分为两个阶段,即单道批处理和多道批处理

  • 单道批处理

    • 顺序性:读入内存的程序的先后顺序和存入磁带机的先后顺序一致(先装入,先处理)
    • 自动性:可以自动的从磁带机中读取程序
    • 单道性:每次只能处理一道程序
    • 优点:提高了CPU的利用率
    • 缺点:每一个程序只能运行结束或者出现异常才可执行下一个程序,如果一个程序请求某个I/O设备,那么CPU就必须等待他请求到I/O设备后继续工作,这一时间段CPU都处于运行等待状态,系统的吞吐量小
  • 多道批处理 (操作系统并发性的体现)

    • 多道:每次可以向内存中装入多道程序,CPU轮流处理每道程序
    • 宏观上并行:用户的每一个程序都在运行
    • 微观上串行:某一时刻只有一道程序在处理机上运行,而处理机是轮流的运行多道程序,轮流时间很快
    • 优点:CPU利用率提高,系统吞吐量增大
    • 缺点:用户响应的时间长,不提供人机交互能力

第三阶段:分时操作系统

  • 采用时间片轮转来实现多用户终端的并发执行

  • 并且提供人机交互功能

  • 主要特征:

    • 同时性:多个用户连接一台终端,而各个用户可以同时使用这台计算机
    • 交互性:用户能够与计算机进行交互,类似于联机命令接口
    • 独立性:各个用户之间都是独立的,自己使用计算机时,并不知道别人也在使用
    • 及时性:用户的请求可以及时的得到满足(只需要时间片小一些就可以)
  • 优点:解决了人机交互问题

  • 缺点:在一些需要实时性较强的场合,不能很好的适应

第四阶段:实时操作系统

  • 有一些需要在规定时间内完成的任务不能进行排队,所以就诞生了实时操作系统

  • 可以分为硬实时系统和软实时系统

    • 硬实时系统:必须保证他在规定时间内发生,不能有任何差池(如:飞行器的飞行控制)
    • 软实时系统:可以偶尔发生差池,不致引起任何永久性的损害(如:12306订票系统)
  • 特点:及时性,可靠性

第五阶段:网络操作系统和分布式计算机系统

  • 网络操作系统:

    • 概念:将计算机网络中的各台计算机有机的结合起来,提供一种统一、经济而有效的使用各台计算机的方法,实现各台计算机之间数据的相互传送
    • 特点:网络中各种资源的共享及各台计算机之间的通信
  • 分布式计算机系统:

    • 要求:

      • 系统中任意两台计算机通过通信方式交换信息
      • 系统中的每台计算机都具有同等的地位,即没有主机也没有从机
      • 每台计算机上的资源为所有用户共享
      • 系统中的任意一台计算机都可以构成一个子系统,并且还能重构
      • 任何工作都可以分布在几台计算机上,由它们并行工作、协同完成
    • 特征:分布性、并行性

    • 与网络操作系统的本质不同:分布式操作系统中的若干计算机相互协同完成同一任务

第六阶段:个人计算机操作系统

  • 目前最广泛的操作系统,用于处理各种任务,典型的操作系统有:Windows、Linux、Macintosh等。
  • 除此之外,还有嵌入式操作系统、服务器操作系统、智能手机操作系统

总结

发展历程:
在这里插入图片描述
各个阶段操作系统的比较

阶段优点缺点
手工阶段不存在资源被占用而需要的等待CPU未充分使用,浪费CPU性能
批处理阶段CPU利用率提高,引入多道程序后,系统吞吐量增加,是后期操作系统的雏形没有人机交互功能
分时操作系统提供了人机交互功能,主要是针对连接同一台主机的多个终端的同时访问对于实时性要求高的任务,不能满足需求
实时操作系统主要是实时性和可靠性主要用于专业任务,一般不可通用化

题目

1.分时操作系统的一个最重要的性能是响应时间,对操作系统的()因素进行改进有利于改善系统的响应时间。

A. 加大时间片
B. 采用静态页式管理
C. 优先级+非抢占式调度算法
D. 代码可重入

分析:C.采用优先级+非抢占式调度算法,既可以让重要的作业通过高优先级尽快获得响应,也可以保证次要的进程不会发生饥饿现象1,可以有效的改善系统的响应时间。加大时间片会加大响应时间;静态页式管理2和代码可重入3与系统响应时间无关。

2.有两个程序,程序A依次使用CPU计10s,设备甲计5s,CPU计5s,设备乙计10s,CPU计10s;程序B依次使用设备甲计10s,CPU计10s,设备乙计5s,CPU计5s,设备乙计10s.在单道程序环境下先执行A,再执行B,CPU的占用率是多少?在多道程序环境下,CPU利用率是多少?

单道程序下:
10 + 5 + 10 + 10 + 5 10 + 5 + 5 + 10 + 10 + 10 + 10 + 5 + 5 + 10 = 40 80 = 50 % \frac{10+5+10+10+5}{10+5+5+10+10+10+10+5+5+10} =\frac{40}{80}=50\% 10+5+5+10+10+10+10+5+5+1010+5+10+10+5=8040=50%
多道程序下:

Tue 04 :05 :10 :15 :20 :25 :30 :35 :40 :45 CPU 设备甲 CPU 设备乙 CPU 设备甲 CPU 设备乙 CPU 设备乙 程序A 程序B 甘特图求解

多道程序下CPU使用时间为 40 s 40s 40s,两个程序总用时为 45 s 45s 45s,因此利用率为 40 45 = 88.9 % \frac{40}{45}=88.9\% 4540=88.9%

参考文献

[1] 王道论坛,2021年操作系统考研复习指导[M]. 北京:电子工业出版社,2020.1


  1. 饥饿现象:进程迟迟得不到处理机的现象 ↩︎

  2. 静态页式管理:要求进程或作业在执行前全部被装入内存,作业或进程的大小仍受内存可用页面数的限制 ↩︎

  3. 代码可重入:也叫做纯代码,是一种允许多个进程同时访问的代码,代码中不涉及变量的代码,例如(printf(“Hello world!”)) ↩︎

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值