《操作系统 - 清华大学》8 -1:进程管理:进程的定义
进程管理在操作系统中占据着核心地位,是保障系统稳定、高效运行的关键所在。
内容概述
主要内容。
- 从进程的基础概念切入,详细介绍什么是进程,包括它的定义、组成结构、特点,以及进程的控制结构。
- 探究进程在整个生命周期里状态是如何变化的。
- 介绍与进程紧密相关的线程概念,深入了解二者的区别与联系。
- 研究进程间如何进行通信,实现数据交换和活动交互。
- 探讨如何确保进程同步与互斥,让程序执行得更加准确。
- 解决进程管理中的难题——死锁问题。这些内容,构建起了进程管理的核心知识体系。
进程的描述
这部分重点聚焦于进程的定义、组成特点以及控制结构,属于进程的静态表述层面。而后续要讲的进程状态变化,则属于动态表述部分。
- 进程在生活中的体现:进程的概念相对抽象,我们先从生活中的实例来理解它。大家在使用计算机时,其实进程的“影子”随处可见。比如说,看任务管理器中运行程序列表。从某种角度看,这些运行的程序,就可以视为进程的直观体现,它代表了程序在执行过程中的一种描述。
- 总结:借助计算机使用场景中运行程序的实例,将抽象的进程概念具象化。
- 进程对系统资源的占用:再看动态监控图,我们能看到CPU利用率一会儿高一会儿低,内存占用情况也在不断变动。这背后的“推动者”就是进程,进程在运行时,会动态地占用CPU资源,时而占用多,时而占用少。同时,在运行过程中,它还会占用一定的内存空间,甚至通过网络进行数据交互。这表明进程不仅是程序的执行过程,还会消耗CPU、内存、网络,甚至像文件系统这类I/O资源。
- 总结:通过展示系统资源使用情况的动态变化,揭示进程运行与系统资源占用之间的关系,进一步丰富对进程概念的理解。
- 进程概念的产生背景:那为什么要有进程这个概念呢?回顾一下操作系统的发展历程,答案就清晰了。早期,操作系统只能支持运行一个程序。但随着计算机技术突飞猛进,CPU性能越来越强,内存容量越来越大,我们可以在内存中装入更多可运行的程序。这时,再单纯用“程序”这个概念来描述操作系统中运行的各个程序,就不太合适了。比如说,同一个程序可能会被多次运行,那么这些在内存中的多个程序实例该如何表示呢?于是,进程的概念应运而生,它能够更精准地描述程序在整个执行过程中的状态和行为。
- 总结:讲述进程概念产生的历史背景,解释从“程序”到“进程”概念演变的原因,帮助理解进程概念的本质和重要性。
- 进程的定义及形成过程:下面,我们来明确一下进程的定义:进程是一个具有一定独立功能的程序,在一个数据集合上的一次动态执行过程。
我们结合这张程序执行流程图(展示程序从编写到执行的流程示意图)来理解。首先,我们编写一个具有特定功能的小程序,经过编译后,它就变成了包含代码段、数据段以及其他数据结构的可执行程序,这个可执行程序以文件形式存储在文件系统中,处于静态未运行状态。只有当操作系统将这个可执行程序调入内存,让CPU按照顺序执行程序中的一条条指令,对相应的数据进行处理,完成特定功能时,这个动态执行的过程才形成了进程。可以说,进程是由静态程序在操作系统的“激活”下,于内存中“动起来”的动态过程,它和静态程序有着明显的区别,但又紧密相连,因为进程执行的功能归根结底是由程序代码决定的。- 总结:详细阐述进程的定义和形成过程,从程序编写、编译到在操作系统中执行的各个环节进行剖析,帮助准确把握进程的定义,区分进程与程序的差异与联系。