No.31
今日概要
- 操作系统
- 进程
- 并行与并发
- 同步与异步
- 阻塞与非阻塞
内容回顾
网络编程
- C/S 和 B/S 架构
- osi五层协议
- 应用层
- socket / socketserver
- 传输层(端口/服务相关)
- TCP / UDP协议
- TCP协议:面向连接的、可靠的、全双工的、流式传输协议。
- UDP协议:面向数据报、不可靠、无连接的协议。
- 设备:四层路由器、四层交换机
- 网络层(IP相关)
- 数据链路层(mac相关)
- 物理层
- 输入和输出(I/O操作)
- 阻塞和非阻塞
- socket模块
- socketserver模块
- hamc模块
内容详细
1.操作系统发展史
-
手工操作 + 穿孔卡片
-
批处理 + 磁带存储
-
多道操作系统
- 数据隔离
- 时空复用
- 当一个任务遇到IO操作的时候,主动把CPU让出来给其它的任务使用。
-
分时操作系统
教授 |
24h |
没有IO |
博士 |
10min |
没有IO |
硕士 |
5min |
没有IO |
- 短作业优先算法
- 先来先服务算法
- 时间分片
- 每一个程序分配一个时间片
- CPU按时间片的轮转给不同任务使用
- 切换会占用时间
- 降低了CPU利用率,提高了用户体验
-
分时操作系统 + 多道操作系统 + 实时操作系统
- 多个程序一起在计算机中执行时
- 一个程序如果遇到IO操作,切出去让出CPU
- 一个程序没有遇到IO操作,但是时间片到了,切出去让出CPU
-
网络操作系统
-
分布式操作系统
2.进程
运行中的程序就是进程
- 程序和进程的区别
- 程序只是一个文件
- 进程是这个文件被CPU运行起来了
- 进程是计算机中最小的资源分配单位
- 进程在操作系统中的唯一标识符是pid
操作系统调度进程的算发
进程的三状态图
就绪 运行 阻塞


3.并行与并发
并行
- 两个程序,两个CPU,每个程序分别占用一个CPU各自独立执行
并发
- 两个程序,一个CPU,每个程序交替占用一个CPU执行
- 看起来是同时执行,实际上是串行。
4.同步与异步
同步
- 正在烧水
- 停下烧水动作 吹头发
- 吹完头发 继续烧水
异步
5.阻塞与非阻塞
阻塞
- CPU不工作
- 同步阻塞
- 调用函数时,函数内部有IO操作。
- socket 阻塞的tcp协议
- 异步阻塞
- func扔到其它任务中执行
- 本身任务和func任务各自执行各自的,本身有IO操作。
非阻塞
- CPU工作
- 同步非阻塞
- 调用函数时,函数内部无IO操作。
- socket 非阻塞的tcp协议
- 异步非阻塞
- func扔到其它任务中执行
- 本身任务和func任务各自执行各自的,本身没有IO操作。
No.31进程
原文:https://www.cnblogs.com/elliottwave/p/12656030.html