操作系统:进程与线程

1. 进程和线程的区别

  • 进程是资源分配的最小单位,线程是系统调度的最小单位
  • 一个进程中包含一个或多个线程,线程是进程中代码执行的不同路线
  • 进程间相互独立,但一个进程的多个线程共享这个程序的执行空间和一些进程级的资源
  • 调度和切换:线程间的上下文切换比进程间的上下文切换快得多

2. 进程有哪几种状态

5种,与线程很像

  • 创建状态(new):进程正在被创建,还未进入就绪状态;
  • 就绪状态(ready):进程已进入准备运行状态,即进程获得了除CPU以外的所有资源,只要获得CPU时间片就可以进入运行状态;
  • 运行状态(running):进程正在处理器上运行(单核CPU任意时刻只能有一个进程处于运行状态);
  • 阻塞状态(waiting):也叫等待状态,进程正在等待某一事件而停止运行,如等待某资源被释放或某IO操作被完成,即使CPU空闲也不能运行;
  • 结束状态(terminate):进程正在从系统中小时,可能是正常运行结束也可能是其他原因中断退出运行。
    2

3. 进程间的通信方式(7种)

  • 管道/匿名管道:用于有亲缘关系 的父子进程、兄弟进程间的通信;
  • 有名管道:解决只有亲缘关系才能通信的问题,严格遵循先进先出,以磁盘文件的方式存在,实现本机任意两个进程间的通信
  • 信号:是一种复杂的通信方式,用于通知接收进程某个事件已经发生
  • 消息队列:克服信号承载信息量少、管道只能承载无格式字节流以及缓冲区大小受限等缺点;
  • 信号量:是一种计数器,用于解决多线程访问共享变量时与同步相关的问题以及避免竞争;
  • 共享内存:使多个进程访问同一块内存,不同进程可以及时看到对方进程对共享内存中数据的更新。这种方式需要借助同步操作,如互斥锁和信号量。可以说是最有用的进程间通信方式;
  • 套接字:主要用于客户端与服务器之间通过网络进行通信(待详细理解)。

4. 线程间的同步方式

  • 互斥量:只有持有互斥量的线程才可以访问共享资源。如Java中的Synchronized关键字和各种Lock都是这种机制;
  • 信号量:它允许同一时刻有多个线程访问共享资源 ,但需要控制同一时刻访问共享资源的线程数;
  • 事件:利用通知操作的方式 保持多线程同步,可以方便的实现多线程优先级比较。

5. 作业的调度算法

批处理系统中,以作业为单位从外存调入内存

  • 先来先服务的调度算法(FCFS):最简单的调度算法,该算法既可用于作业调度,也可用于进程调度;
  • 短作业优先的调度算法(SJF):作业越短优先级越高,作业长短是以作业所要求的运行时间来衡量的。SJF算法可以分别用于作业调度和进程调度;
  • 优先级调度算法(PSA):基于作业的紧迫程度,由外部赋予作业相应的优先级。PSA可作为作业调度算法,也可作为进程调度算法;
  • 高响应比优先调度算法(HRRN):既照顾了作业等待时间,又照顾了作业运行时间

5. 进程的调度算法

  • 先到先服务的调度算法(FCFS):从就绪队列中选择一个最先进入队列的进程为之分配资源,使它立即执行并一直执行到完成或发生某事件而被阻塞放弃占用CPU时再重新调度;
  • 短作业优先的调度算法(SJF):从就绪队列中选择一个估计执行时间最短的进程为之分配资源,使它立即执行并一直执行到完成或发生某事件被阻塞放弃占用CPU时再重新调度;
  • 优先级调度:为每个进程分配优先级,首先执行优先级最高的进程,相同优先级的进程以FCFS方式执行。优先级可通过内存要求、时间要求或其他资源要求来确定。
  • 轮转调度算法(RR):是最古老、最简单、最公平、使用最广泛的一种调度算法。每个进程被分配一个时间片,即该进程允许被运行的时间;
  • 多队列调度算法:设置多个就绪队列,将不同类型或性质的进程固定分配在不同的就绪队列;
  • 多级队列反馈调度算法:不必事先知道各进程所需的执行时间,既能照顾到优先级高的进程也能快速完成短作业的进程;
  • 基于公平原则的调度算法:如果系统中有n个相同类型的进程,则保证每个进程都获得相同的处理机时间1/n。

6. 多时间片轮转调度算法的原理

根据先来先服务的原则,将需要执行的所有进程按到达时间大小排成一个升序的序列,每次都给一个进程分配相同大小的时间片。
在这个时间片内,如果一个进程执行结束了,则将这个进程从进程队列中删除;如果没有执行结束,则把该进程停止然后改为等待状态,放到进程队列的尾部。
直到所有进程都已执行完毕。

参考链接:https://blog.csdn.net/qq_39382769/article/details/80486034

步履不停
原文地址:https://www.cnblogs.com/yuanyunjing/p/15193497.html