单进程死锁示例

当无 IO Buffer 时有可能出现单进程死锁

  1. 进程1 向 IO 请求数据,并告诉IO设备 返回的数据 应该送到 进程1 的哪个地址

在这里插入图片描述

  1. IO设备去IO数据了,进程1就会阻塞等待,这时如果 进程1 被挂起,IO设备并不知道 进程1 被挂起了,IO设备还是会返回数据到 刚才进程1规定的地址

在这里插入图片描述

因为数据没有被 进程1 接收到,所以数据就丢失了

  1. 之后 进程1 被换回,这种情况下 IO设备认为自己返回了数据,就不会再返回数据;进程1 没有接受到数据,他就会一直阻塞,这就造成了 单进程死锁

在这里插入图片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章