第2章 操作系统的发展历史

来源:互联网 发布:八爪鱼采集软件下载 编辑:程序博客网 时间:2024/05/16 19:09

2.0 促进操作系统不断升级、发展、改进的原因

  •   改善效率:因为计算机是非常昂贵的,所以不能因为某一个环节导致所有的资源在等待(等待就是一种浪费)

2.1 状态机阶段  --开关

  •  什么是状态机: ”os" 处于一种状态,根据输入和现在的状态,计算后切换到另外一个状态

2.2  单一控制员、单一控制端 -- 洗衣机或者空调的控制系统

  •    os 有多个功能、多个状态;根据输入的指令切换到某种特定的工作状态  

2.3  批处理操作系统  --- 打印机(同时打印多份文件)

  • 控制执行部分(批处理监控器)
  • 程序执行部分(库函数集合)


2.4  多道批处理操作系统 -- 有点并发执行的意思

  • 管理员的角色: 管理task(程序)、管理内存、管理cpu 调度
  • 用户把程序提交给操作系统,操作系统负责加载程序到内存中并执行
  • 因为多个程序是并发执行,所以要实现cpu 在各个程序之间的切换,并且能管理多个I/O 设备
  • 同时还要保护程序的独立性,保证程序之间相互不影响

2.5 分时操作系统

  • 多道批处理操作系统解决的问题是:单台机器算计的吞吐量大大提升,但是把task 都交给系统都执行,而对应的人也不知道自己的
的程序什么时间执行、占用了多长时间;这种用户体验肯定是有问题的,需要优化、改善

  • 此时再次引入的因素:多个用户同时连接计算机,每个用户都会提交一个程序给OS,每个用户都有一个I/O设备(显示器、键盘);
CPU 可以在所有连接用户之间进行切换(实质就是把时间合理分配到对应的用户的程序------分时)
  • 分时OS 可以跟用户实时交互,了解自己程序占用的资源、执行的进度,对用户来讲更加的友好
  •  分时OS:也让资源使用透明化,更利于硬件资源的公平使用

2.6 实时操作系统

  • 当计算机满足多道批处理(并发)、分时OS(多用户、多程序分时并发执行)后,随着计算机应用的场景的复杂和重要性(工业、航空、战争),对操作系统的完成task
的时间有了更高的要求,一个程序(task) 必须在一定的时间完成【类比现在RPC 微服务的Timeout 时间设置】;
  • 也就是对task/程序要做到:时序可预测性

2.7 现代操作系统

  • 大型、复杂的操作系统是一种趋势:很多系统现在是4000w 行代码

0 0