@@ -173,15 +173,15 @@ QQ 和浏览器是两个进程,浏览器进程里面有很多线程,例如 H
173
173
174
174
Ⅱ 调度
175
175
176
- 线程是独立调度的基本单位,在同一进程中,线程的切换不会引起进程切换,从一个进程内的线程切换到另一个进程中的线程时 ,会引起进程切换。
176
+ 线程是独立调度的基本单位,在同一进程中,线程的切换不会引起进程切换,从一个进程中的线程切换到另一个进程中的线程时 ,会引起进程切换。
177
177
178
178
Ⅲ 系统开销
179
179
180
180
由于创建或撤销进程时,系统都要为之分配或回收资源,如内存空间、I/O 设备等,所付出的开销远大于创建或撤销线程时的开销。类似地,在进行进程切换时,涉及当前执行进程 CPU 环境的保存及新调度进程 CPU 环境的设置,而线程切换时只需保存和设置少量寄存器内容,开销很小。
181
181
182
182
Ⅳ 通信方面
183
183
184
- 线程间可以通过直接读/写同一进程中的数据段来进行通信 ,但是进程通信需要借助 IPC。
184
+ 线程间可以通过直接读写同一进程中的数据进行通信 ,但是进程通信需要借助 IPC。
185
185
186
186
## 进程状态的切换
187
187
@@ -243,7 +243,7 @@ QQ 和浏览器是两个进程,浏览器进程里面有很多线程,例如 H
243
243
244
244
** 2.3 多级反馈队列**
245
245
246
- 如果一个进程需要执行 100 个时间片,如果采用时间片轮转调度算法,那么需要交换 100 次。
246
+ 一个进程需要执行 100 个时间片,如果采用时间片轮转调度算法,那么需要交换 100 次。
247
247
248
248
多级队列是为这种需要连续执行多个时间片的进程考虑,它设置了多个队列,每个队列时间片大小都不同,例如 1,2,4,8,..。进程在第一个队列没执行完,就会被移到下一个队列。这种方式下,之前的进程只需要交换 7 次。
249
249
@@ -338,9 +338,9 @@ void consumer() {
338
338
down (&full);
339
339
down(&mutex);
340
340
int item = remove_item();
341
+ consume_item(item);
341
342
up(&mutex);
342
343
up(&empty);
343
- consume_item(item);
344
344
}
345
345
}
346
346
```
@@ -837,7 +837,7 @@ FIFO 常用于客户-服务器应用程序中,FIFO 用作汇聚点,在客户
837
837
838
838
为了更好的管理内存,操作系统将内存抽象成地址空间。每个程序拥有自己的地址空间,这个地址空间被分割成多个块,每一块称为一页。这些页被映射到物理内存,但不需要映射到连续的物理内存,也不需要所有页都必须在物理内存中。当程序引用到不在物理内存中的页时,由硬件执行必要的映射,将缺失的部分装入物理内存并重新执行失败的指令。
839
839
840
- 从上面的描述中可以看出,虚拟内存允许程序不用将地址空间中的每一页都映射到物理内存,也就是说一个程序不需要全部调入内存就可以运行,这使得有限的内存运行大程序称为可能 。例如有一台计算机可以产生 16 位地址,那么一个程序的地址空间范围是 0\~ 64K。该计算机只有 32KB 的物理内存,虚拟内存技术允许该计算机运行一个 64K 大小的程序。
840
+ 从上面的描述中可以看出,虚拟内存允许程序不用将地址空间中的每一页都映射到物理内存,也就是说一个程序不需要全部调入内存就可以运行,这使得有限的内存运行大程序成为可能 。例如有一台计算机可以产生 16 位地址,那么一个程序的地址空间范围是 0\~ 64K。该计算机只有 32KB 的物理内存,虚拟内存技术允许该计算机运行一个 64K 大小的程序。
841
841
842
842
<div align =" center " > <img src =" ../pics//7b281b1e-0595-402b-ae35-8c91084c33c1.png " /> </div ><br >
843
843
@@ -989,7 +989,7 @@ FIFO 算法可能会把经常使用的页面置换出去,为了避免这一问
989
989
990
990
优先调度与当前磁头所在磁道距离最近的磁道。
991
991
992
- 虽然平均寻道时间比较低,但是不够公平。如果新到达的磁道请求总是比一个在等待的磁道请求近,那么在等待的磁道请求会一直等待下去,也就是出现饥饿现象。具体来说,两边的磁道请求更容易出现饥饿现象 。
992
+ 虽然平均寻道时间比较低,但是不够公平。如果新到达的磁道请求总是比一个在等待的磁道请求近,那么在等待的磁道请求会一直等待下去,也就是出现饥饿现象。具体来说,两端的磁道请求更容易出现饥饿现象 。
993
993
994
994
<div align =" center " > <img src =" ../pics//4e2485e4-34bd-4967-9f02-0c093b797aaa.png " /> </div ><br >
995
995
0 commit comments