Skip to content

Commit

Permalink
修改
Browse files Browse the repository at this point in the history
  • Loading branch information
arkingc committed Aug 22, 2018
1 parent 2536e74 commit fdbabe2
Show file tree
Hide file tree
Showing 3 changed files with 7 additions and 6 deletions.
Binary file modified pic/docker-1-2.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
6 changes: 3 additions & 3 deletions 操作系统/操作系统.md
Original file line number Diff line number Diff line change
Expand Up @@ -159,7 +159,7 @@
I/O程序:

* 指令序列4:为实际I/O作准备
* I/O命令:如果不使用中断,执行命令时,程序必须等待I/O设备执行请求的函数
* I/O命令:如果不使用中断,执行命令时,程序必须等待I/O设备执行请求的函数(或周期性地检测I/O设备的状态或轮询I/O设备)。程序可能通过简单地重复执行一个测试操作的方式进行等待,以确定I/O操作是否完成
* 指令序列5:操作完成,包括设置成功或失败标签

中断:短I/O等待
Expand Down Expand Up @@ -651,7 +651,7 @@ void semSignal(semaphore s)

1. 可以初始化为0或1
2. semWaitB操作检查信号的值,如果为0,该操作会阻塞进程。如果值为1,将其改为0后进程继续执行
3. semSignalB操作检查是否有任何进程在信号上阻塞。有则通过semWaitB操作,受阻进程会被唤醒,如果没有,那么设置值为1
3. semSignalB操作检查是否有任何进程在信号上阻塞。有则通过semSignalB操作,受阻进程会被唤醒,如果没有,那么设置值为1

二元信号量的原语定义:

Expand Down Expand Up @@ -685,7 +685,7 @@ void semSignalB(binary_semaphore s)
> * 强信号量:队列设计为FIFO,被阻塞最久的进程最先从队列中释放(保证不会饥饿)
> * 弱信号量:没有规定进程从队列中移出顺序
**使用信号量的互斥**
**使用信号量的互斥**(这里是一般信号量,不是二元信号量)
```c++
const int n = /*进程数*/
Expand Down
7 changes: 4 additions & 3 deletions 数据结构与算法/堆.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,9 +12,10 @@
* 最小堆:父节点小于任意子节点(因此堆顶为最小值)

对于第i个节点(i从0开始计数):
- 父节点:(i-1)/2
- 左子节点:2i+1
- 右子节点:2i+2

* 父节点:`(i-1)/2`
* 左子节点:`2i+1`
* 右子节点:`2i+2`

若包含`sz`个节点,则第一个非叶子节点的序号为`(sz - 2) / 2`

Expand Down

0 comments on commit fdbabe2

Please sign in to comment.