操作系统发展史

穿孔卡片

一个计算机机房,一次只能被一个卡片使用

缺点:CPU利用率最低

联机批处理系统

支持多用户去使用一个计算机机房

脱机批处理系统

高速磁盘:

​ 提高文件的读取速度

优点:

​ 提高CPU的利用率

多道技术(基于单核情况下研究)

单道

多个使用CPU时是串行

多道技术

空间上的复用(重点)

一个CPU可以提供个多个用户去使用

时间上的复用(重点)

切换 + 保存状态

IO操作

input()

print()

time.sleep(5)

1.若CPU遇到IO操作,会立即将当前执行程序CPU使用权断开

​ 优点:

​ CPU的利用率高

2.若一个程序使用CPU的时间过长,会立即将当前程序CPU使用权断开

​ 缺点:

​ 程序的执行率降低

并发与并行

并发

指的是看起来像同时运行,多个程序不停 切换 + 保存状态。

并行

真实意义上的同时运行,在多核(多个CPU)的情况下,同时执行多个程序。

进程

程序与进程

程序:一堆代码

进程:一堆代码运行的过程

进程调度

当代操作系统调度:

​ 时间片轮转法 + 分级反馈对列

先来先服务调度

a,b程序,若a程序先来,先占用CPU

缺点:

​ 程序a先使用,程序b必须等待程序a使用CPU结束后才能使用

短作业优先调度

a,b程序,谁的用时短,先优先调度使用CPU

缺点:

​ 若程序a使用时间最长,有N个程序使用时间短,

​ 必须等待所有用时短的程序结束后才能使用。

时间片轮转法

CPU执行的时间1秒中,加载N个程序,要将1秒等分成多N个时间片。

分级反馈队列

​ 将执行优先分为多层级别

​ - 1级:优先度最高

​ - 2级:优先级第二,以此类推

​ - 3级

​ ......

进程的三个状态

就绪态

所有进程创建时都会进入的就绪态,准备调度。

运行态:

调度后的进程,进入运行态。

阻塞态

凡是遇到IO操作的进程,都会进入阻塞态,

若IO结束,必须重新进入就绪态。

同步与异步

指的是提交任务的方式

同步

若有两个任务需要提交,在提交第一个任务时,

必须等待该任务执行结束后,才能继续提交并执行第二个任务。

异步

若有两个任务需要提交,在提交第一个任务时,

不需要原地等待,立即可以提交并执行第二个任务。

阻塞与非阻塞

阻塞

阻塞态。遇到IO操作一定会阻塞

非阻塞

就绪态

运行态

面试题:同步和异步,阻塞和非阻塞是同一个概念吗?

:强调: 不是同一个概念,不能混为一谈!

进程号回收的两种条件

1.join,可以回收子进程与主进程

2.主进程正常结束,子进程与主进程也会被回收

僵尸进程与孤儿进程

僵尸进程

指的是子进程已经结束,但PID号还存在,未销毁。

缺点:

​ 占用PID号,占用操作系统资源

孤儿进程

指的是子进程还在执行,父进程意外结束

操作系统优化机制:

​ 提供一个福利院,帮你回收没有父亲的子进程。

守护进程

指的是主进程结束后,该主进程产生的所有子进程跟着结束,并回收。

最新文章

  1. 使用dubbo分布式服务框架发布服务及消费服务
  2. eclipse中导入jar文件的源码
  3. 实用图像处理入门 - 2 - Windows平台下编译openCV
  4. DNS加速
  5. 2013 南京理工大学邀请赛B题
  6. zip压缩解压缩 项目icsharpcode-SharpZipLib-e012155
  7. adb shell dumpsys package 查看versionCode
  8. python with用法
  9. 【webGL入门2】点线面的绘制
  10. 利用XShell上传、下载文件(使用sz与rz命令),超实用!
  11. Oracle DB Day03(SQL)
  12. tomcat管理监控工具:probe(可代替Tomcat Manager)
  13. 基于C/S 结构的IM即时通讯软件--下篇
  14. 深入理解JS防抖与节流
  15. 第三周Linux学习报告
  16. Java实验-课程设计报告一:个人银行账户管理系统SavingAccountManageSystem-具体文档+源码
  17. JFrame添加组件
  18. linux 免输入密码脚本
  19. C#四则运算器(多态方法实现)
  20. Remote Desktop Connection Manager远程管理工具

热门文章

  1. 云服务器使用: 购买域名,域名绑定IP
  2. 图像处理pillow模块
  3. Linux下rpm及yum安装jdk
  4. Java集合详解2:一文读懂Queue和LinkedList
  5. [HeadFrist-HTMLCSS学习笔记]第五章认识媒体:给网页添加图像
  6. JavaScript 一些实用技巧
  7. Topshelf 搭建 Windows 服务
  8. Logstash测试的时候,报Error occurred during initialization of VM,Could not reserve enough space for object heap
  9. 串口调试工具与com口编程
  10. NER(BiLSTM+CRF,Keras)