线程与进程

同一个核在同一时间只能运行一个进程
父进程与子进程不共享地址空间

进程的创建可能有4种原因:
1、系统初始化
2、正在运行的程序执行了创建进程的系统调用
3、用户请求创建一个新进程
4、一个批处理作业的初始化

进程的三种状态
1、运行态(该时刻进程实际占用CPU)
2、就绪态(可运行,但因为其他进程正在运行而暂时停止)
3、阻塞态(除非某种外部时间发生,否则进程不能运行)
后端面试-操作系统进程与线程总结
每次进行跳转时都需要保存当前的寄存器信息,保证多次调用后还能找回来。

多进程模型具有不同的地址空间,多线程模型具有相同的地址空间。
同时线程更轻量级,更易创建撤销
多线程提升了并行性
进程是资源分配的最小单位,线程是程序执行的最小单位。
线程有各自独立的栈和计数器(PC)

信息量,互斥量,管程等方法避免多线程死锁
生产者-消费者模型->缓冲区

对进程进行调度的方法

批处理系统中的调度
1、先来先服务
2、最短作业优先
3、最短剩余时间优先

交互式系统中的调度
1、轮转调度
关键概念:时间片
时间片太短,则转移进程的成本过高
时间片太长,则成为先来先服务,没法起到优化等待时间的效果
2、优先级调度
动态计算优先级,优先级高的先运行
3、多级队列
每级队列内部有自己的时间片轮转算法
4、最短进程优先算法

相关文章:

  • 2021-12-22
  • 2021-12-29
  • 2022-12-23
  • 2021-07-17
  • 2021-10-13
  • 2021-09-28
猜你喜欢
  • 2022-12-23
  • 2021-12-26
  • 2021-04-30
  • 2021-05-25
  • 2021-07-29
  • 2021-06-27
  • 2021-07-11
相关资源
相似解决方案