
进程是操作系统中正在运行的程序的抽象,是资源分配的基本单位。进程由描述和组织两部分组成,描述存储在进程控制块(PCB)中,包括进程ID、内存指针、文件描述符表等。组织上,操作系统通过双向链表管理就绪队列,实现进程调度。内存管理方面,虚拟地址空间允许进程使用虚拟地址,通过操作系统和硬件转换为物理地址,实现进程间隔离。进程调度的目标是实现并行和并发,提高系统效率。
进程是操作系统对正在运行的程序的抽象。可以将进程视为特定时刻程序的一次执行过程。在操作系统内部,进程是资源分配的基本单位。通过进程,操作系统可以有效地管理和调度系统中的各项任务,使多个任务可以在一个处理器上交替执行,从而实现并发和并行。

进程的属性被存储在进程控制块(PCB)中。PCB 可以被视为进程的档案,其中包含了关键信息,如进程ID、内存指针、文件描述符表等。
举个例子,想象你正在玩一个多人在线游戏。你是一个进程,而你的PCB就包含了你在游戏中的ID、当前所在的地图位置以及你的游戏资源状态。
操作系统通过双向链表将多个PCB连接在一起,形成了就绪队列。就绪队列中存放了等待被调度执行的所有进程。当一个进程需要被执行时,操作系统会从就绪队列中选择一个合适的进程进行调度。
举个类比,把就绪队列想象成一个电影院的排队队伍。每个PCB就像一个电影观众,等待着进入放映厅(CPU)观看电影(执行任务)。
进程标识符(PID): 类似于每个人的身份证号码,用于唯一标识一个进程。
内存指针: 就像是你在地图上的位置标记,指示进程所占用的内存区域。
文件描述符表: 类似于你的工具箱,包含进程持有的文件和其他资源,比如硬盘上的文件。
进程调度相关属性:
调度的目标是实现分时复用,使多个进程共享处理器的时间,从而提高系统的效率。并行和并发是两种实现这一目标的不同方式:
程序获取的内存地址实际上是虚拟地址,而非物理内存地址。虚拟地址是一种抽象,通过操作系统和硬件进行虚拟地址到物理地址的转换。
进程隔离引入了虚拟地址空间的概念,程序不再直接使用真实的物理地址。虚拟地址空间解决了进程间影响的问题,但也引入了新的挑战。进程需要进行数据交互时,需要通过进程间通信来实现。通信方式多种多样,核心思想是创建一个公共空间,用于数据交换。


推荐阅读
评论 (0)
还没有评论
做第一个留言的人吧