p156 - p191 操作系统进程和线程管理
进程和线程管理 操作系统中进程和线程是两个基本概念,对于写代码的我们,天天见、天天见,但见的多不代表我们就熟悉它们。今天我们就来讨论操作系统的进程和线程。 进程 进程是我们编写的代码只是一个存储在硬盘的静态文件,通过编译后就会生成二进制可执行文件,当我们运行这个可执行文件后,它会被装载到内存中,然后 CPU 会执行程序中的每一条指令,那么这个运行中的程序,就被称为「进程」(Process)。 进程的特点 * 进程是操作系统管理的基本单位 * 进程可以创建、运行、暂停、恢复、撤销等 * 进程之间可以相互独立、相互制约 进程的状态 进程有着「运行 - 暂停 - 运行」的活动规律。一般说来,一个进程并不是自始至终连续不断地运行的,它与并发执行中的其他进程的执行是相互制约的。它有时处于运行状态,有时由于某种原因而暂停运行处于等待状态,当使它暂停的原因消失后,它又进入准备运行状态。 进程的状态包括: * 运行状态(Runing):该时刻进程占用 CPU * 就绪状态(Ready):可运行,_since_其他进程处于运行状态而暂时停止运行 * 阻塞状态(Blocked):该进程正在等待某一事件发生(如等待输入/输出操作的完成)而暂时停止运行 进程的状态变迁 NULL -> 创建状态:一个新进程被创建时的第一个状态 创建状态 -> 就绪状态:当进程被创建完成并初始化后,一切就绪准备运行时,变为就绪状态 就绪态 -> 运行状态:处于就绪状态的进程被操作系统的进程调度器选中后,就分配给 CPU 正式运行该进程 运行状态 -> 结束状态:当进程已经运行完成或出错时,会被操作系统作结束状态处理 运行状态 -> 就绪状态:处于运行状态的进程在运行过程中,由于分配给它的运行时间片用完,操作系统会把该进程变为就绪态 运行状态 -> 阻塞状态:当进程请求某个事件且必须等待时,例如请求 I/O 事件 阻塞状态 -> 就绪状态:当进程要等待的事件完成时,它从阻塞状态变到就绪状态 线程 线程是进程中的一个执行流程,每个线程都共享同一个进程的资源。线程的出现是为了提高系统的并发性和响应性。 线程的特点 * 线程是轻量级的进程 * 线程之间可以共享同一个进程的资源 * 线程的切换速度比进程快得多 线程的状态 线程的状态与进程的状态类似,包括: * 运行状态 * 就绪状态 * 阻塞状态 线程的状态变迁 线程的状态变迁与进程的状态变迁类似。 进程和线程是操作系统中两个基本概念,理解它们的概念和特点对编写高效的代码非常重要。
剩余36页未读,继续阅读
- 粉丝: 1541
- 资源: 79
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 人脸检测-yolov8.zip
- 为 YOLOv3 框架实现了多主干和多 gpu 模型,从 qqwwee 分叉而来 .zip
- 一种强大的鱼类检测模型,可在任何海洋环境中实时检测水下鱼类 .zip
- 一个关于如何使用yolov5转化的openvino模型的SDK.zip
- 蓝桥杯历届单片机国赛编程题
- 使用内容提供者共享数据(利用记事本项目)
- 计算机课程设计基于SpringBoot的酒店管理系统项目带答辩ppt+数据库.zip
- IT桔子:中国智能电视市场研究报告
- [MICCAI'24]“BGF-YOLO通过多尺度注意力特征融合增强型YOLOv8用于脑肿瘤检测”的官方实现 .zip
- CB Insights:智能汽车才是未来-信息图