#复习笔记基于哔哩哔哩的 操作系统的期末急救--------北大鸭鸭博主的视频
我们将考试内容分为十九考点来讲
考点五:进程的概念及特征
1.进程的概念
用例子帮助大家理解一下
想象你在一家餐厅吃饭,每个顾客都像是一个进程。每个顾客(进程)都有自己的桌子(地址空间)、菜单(程序代码)、点的菜(使用中的资源)和服务员(CPU时间)。顾客在自己的桌子上等待服务员服务,这就像进程等待CPU时间来执行。顾客吃完饭离开,就像进程完成后结束。
简单来说,进程是操作系统进行任务调度和资源分配的基本单位,它代表了程序在执行时的状态和资源的集合。
2.进程的组成
!注意! PCB是进程存在的唯一标识(很重要),有PCB就有进程,有进程也有PCB
3.进程的特征
分为动态性,并发析,独立性,异步性,结构性,
考点五的习题练习
答案是c, c太静态了
考点六:进程的状态与切换
1.进程的状态分为下面几点(超级重点)
创建(Created):
这个阶段发生在进程开始执行之前。操作系统为进程分配必要的资源,如内存空间,并设置进程控制块(PCB),其中包含进程的相关信息和状态。
就绪(Ready):
进程已经准备好执行,但尚未获得CPU时间。它等待操作系统调度器分配CPU资源。在多任务操作系统中,可能有许多进程处于就绪状态,等待执行。
运行(Running):
进程当前正在执行。它占用CPU,执行指令。在单核CPU系统中,一次只有一个进程可以处于运行状态;而在多核系统中,可以有多个进程同时运行。
阻塞(Blocked):
进程因为等待某些外部事件或资源而暂停执行。例如,它可能在等待用户输入、磁盘I/O操作完成或网络响应。在阻塞状态下,进程不会消耗CPU资源,直到它等待的事件发生。
终止(Terminated):
进程已经完成它的任务,或者由于错误、异常或操作系统的指令而结束。终止的进程将释放它所占用的资源,如内存和打开的文件,并从操作系统的进程表中移除。
这些状态之间的转换是由操作系统的调度器和进程执行过程中发生的事件所控制的。例如,一个进程可能从就绪状态变为运行状态,然后因为需要等待I/O操作而变为阻塞状态,最后在任务完成后变为终止状态。了解这些状态有助于理解操作系统如何管理和调度进程。
2.进程的切换
注意考试重点图形 ! ! !
进程的转换可以分为下面几种情况
考点六的习题练习
答案是d
考点七:进程通信
考点八:线程的概念
1.线程的定义
2.线程和进程的区别
这六个区别要看
定义:
进程:进程是操作系统进行资源分配和调度的一个独立单位,是程序的一次执行实例,拥有独立的内存空间。
线程:线程是进程中的一个实体,是CPU调度和执行的单位,比进程更小的能独立运行的基本单位,线程自身不拥有系统资源,只拥有一点在运行中必不可少的资源(如执行栈),但线程可以与同属一个进程的其他线程共享进程所拥有的全部资源。
调度:
进程:进程作为资源分配的基本单位,每个进程都有一个完整的执行环境,操作系统在进程间进行切换时,需要保存当前进程的状态并加载新进程的状态,这涉及到更多的上下文切换开销。
线程:线程作为调度执行的基本单位,由于共享同一进程的资源,线程间的上下文切换开销较小。
并发性:
进程:并发是指多个进程在宏观上同时执行,但在微观上是交替执行的。
线程:线程可以在同一个进程中并发执行,共享进程的资源,提高了资源的利用效率。
拥有资源:
进程:每个进程拥有自己的独立资源,如独立的内存空间、文件描述符等。
线程:线程不拥有自己的资源,但可以共享同一进程内的资源。
系统开销:
进程:创建和销毁进程的开销相对较大,因为涉及到系统资源的分配与回收。
线程:创建和销毁线程的开销相对较小,因为线程共享进程的资源。
通信:
进程:进程间通信(IPC)需要特定的机制,如管道、消息队列、共享内存或套接字等。
线程:线程间通信更为简单,因为它们共享同一地址空间,可以直接读写进程的内存。
地址空间:
进程:每个进程有独立的地址空间。
线程:同一进程内的线程共享相同的地址空间。
其他资源:
进程:进程拥有独立的全局变量、静态变量等资源。
线程:线程可以访问进程中的全局变量和静态变量,但每个线程有自己的栈和寄存器。
考点八的习题练习
答案是c