操作系统 2. 进程基本定义及通讯; OS 进程宏观; CPU调度算法

本文深入探讨了进程的基本定义,包括进程控制块(PCB)及其包含的信息。介绍了进程间通信(IPC)的三种方式:内存共享、消息传递(包括直接和间接实现)和管道。接着,讨论了操作系统中的CPU调度,包括长期、中期和短期调度策略,并举例说明了各种调度算法如FCFS、SJF、SRTF、优先级调度和轮转调度的工作原理及其性能指标。
摘要由CSDN通过智能技术生成

这个文章会详细说下 进程的基本定义。进程之间的通信。操作系统中进程的宏观理念。CPU Scheduling算法。



(1) 进程以及相关概念


进程的定义

1. 运行中的程序可被称为进程(The executing program)。

2. 计算机中系统资源分配的基本单元。


PCB
PCB (ProcessControl Block, 又名Task Control Block, 中文叫进程控制块) 是一个数据结构,通常被放在kernel里面。 他用来储存关于进程的所有信息,包括:

1.Process State(进程状态):5个,贯穿一个计算机里面每个进程的生死。分别是 new, ready, running, waiting, terminated。
2.Program Counter(程序计数器, 在X86 MicroProcessor中也被称为IP):记录着接下来要执行的instruction的位置 and so on。
3.Memory Information(内存信息): 包含着process的 basic register, limit register 和 page table的信息 and so on。
4.CPU scheduling Information(CPU调度的相关信息): 里面包含关于这个进程的优先级,还有其他的调度参数。
5.CPU Register(CPU寄存器): 寄存器有各种各样的数目和种类,主要取决于computer architecture。 主要包含:累加器, index register, stack pointer等等。
6.Accounting Information: 占用了CPU多长时间, timer设定有多长等等。
7.I/O Status Information(I/O状态信息): 包含了这个process要使用的 I/O devices and list of open files。
8.Interprocess communication information: 各种各样的 flags, signals,每个进程进行交流的信息。

(2) 进程间的通信( Interprocess Communication)


1.内存共享(Shared memory):

从物理层面解决通信问题:

1.一部分内存在物理意义上被多个想互相交流的进程共享。

2.这个交流被使用者控制而不是被OS控制(Under user control)。

3.最大的问题就是多个进程同时使用的共享内存同步问题。

4.Size is fixed.

Solved by: 

互斥锁(Mutual Exclusion, mutex);


2. 信息传递(Message passing):

2.1 定义:

1.这个mechanism用来实现进程交流和动作同步。

2.提供两个操作(Receive, Send)。

3.Size is either fixed or variable.


2.2执行(Implementation): *详情见附注1

物理层面(Physical):

Network, Hardware bus, Shared memory.

逻辑层面(Logical):

1. Direct and Indirect

2. Synchronization and Asynchronization
3. Automatic and Explict buffering


3. 管道(Pipe):


3.1 定义:

通过关闭file descriptor的形式来进行进程间的处理。


3.2 Unnamed pipe(ordinary pipe):
1. 单向性(unidirectional)。
2. happen between related processes.


3.3 Named pipe:

1. 多向性(bidirectional)。
2. Not related to process requirements.


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值