计算机操作系统 -- 进程管理
2023-12-28 11:17:49 0 举报
操作系统--精髓与设计原理
作者其他创作
大纲/内容
RUN
WAIT
Resident System Program
Ready
New
I/O table
单线程的进程模型
Processor
Ready Queue
Suspend
③
PCB(Program A)
ThreadControlBlock
Memory
Event Wait
Timeout
Occurs
TCB
Time out
Running
Exit
EventOccurs
CPU模式切换
User Stack/Kernal Stack
ProcessIdentification
Processor StateInformation
Process Control Information
UserStack
Private UserAddress Space
Shared Address Space
Dispatch
reload state from PCB
单阻塞队列
Thread
PCB(Program B)
多道批处理系统
多线程的进程模型
Process
Main Memory
Event n Queue
J0
ProcessControlBlock
PCB
User Mode
Request
二状态进程模型
Admlt
简单批处理系统
Monitor
Run-timeSystem
KernelSpace
I/O
User AddressSpace
Kernel Memory
Process Memory
Parent Process Memory
Other Process Memory
Release
Activate
exec()
进程创建
Pause
. . .
②
系统调用
Program A
Program Counter
Process 1
Process 1
Process 2
Process 3
阻塞队列模型模型中包含两个队列: 就绪队列和阻塞队列。进入系统的每个进程都放置在就绪队列中,当操作系统选择另一个进程运行时,将从就绪队列中进行选择。对于无优先级方案,这可以是一个简单的先进先出队列。而后一种方案意味着当一个事件发生时,操作系统必须扫描整个阻塞队列,搜索哪些等待该事件的进程。在大型操作系统中,拥有多队列更为有效。改进方案若按照优先级方案分派进程,这维护多个就绪队列,每个优先级一个队列,将会带来很大的便利。在这样的方案当中,CPU依然大部分时间都在等待IO,是否能在加入足够多的进程,提高CPU的使用率?交换技术(Swapping)将内存中font color=\"#e74f4c\
①
reload state from PCB
进程状态
五状态进程模型
Program B
J2
27
12004
28
12005
29
100
30
101
31
102
32
103
33
104
34
105
35
5006
36
5007
37
5008
38
5009
39
5010
40
5011
41
42
43
44
45
46
47
12006
48
12007
49
12008
50
12009
51
12010
52
12011
Time
1
5000
2
5001
3
5002
4
5003
5
5004
6
5005
7
8
9
10
11
12
13
8000
14
8001
15
8002
16
8003
17
18
19
20
21
22
23
12000
24
12001
25
12002
26
12003
进程的创建1.为进程分配一个唯一标识号ID: 主进程表增加一个新的表项2.为进程分配空间: span style=\"font-weight: normal;\
MainMemory
System Call
Process n
Event 1 Wait
Blocked/Suspend
Kernel Mode
Null->New: 新创建进程首先处于新状态New->Ready: OS接纳新状态进程为就绪状态Ready->Running: OS只能从就绪进程中选一个进程执行font color=\"#5b79e8\
01005000800012000
Event Occurs
ROM BIOS Device Drivers
Event n Wait
J1
J3
进程阻塞队列模型
串行处理
Blocked Queue
上下文切换
Not Running
save state into PCB
Kernel
单挂起状态模型
Enter
用户线程
Disk
save state into PCB
操作系统概述
Event 2 Queue
双挂起状态模型
Blocked
User Space
Available Memory
Other Process Memory
I/O request
Device
File
Event 1 Queue
Parent Process Memory
User Mode
Process Image
进程的映像
Combined
Bash Process Memory
操作系统的演化
Admit
CPU Mode
进程的描述font color=\"#5b79e8\
fork()
Bash Process Memory
Echo Process Memory
Bash Child Process Memory
Process Control Block
七状态进程模型
MS-DOS Device Drivers
进程的描述
ComputerResources
File table
exit()
进程结束
Reload
内核线程
User Space
多阻塞队列
Event 1Occurs
Event 2Occurs
Child Process Memory
Event nOccurs
进程的结束1. 等待子进程结束:span style=\"font-weight: normal;\
Memory table
进程的替换1.读取可执行文件: 读取创建进程的内存映象所需的信息2.用新进程的数据覆盖当前进程的内存: span style=\"font-weight: normal;\
Ready/Suspend
Virtual Memory
Dispatcher
Process A
Process B
Process C
进程替换
进程
RUN A
RUN B
线程 · span style=\"font-weight:normal;\
七状态进程模型font color=\"#5b79e8\
用户态与内核态
Event 2 Wait
Application Program
0 条评论
下一页