睡眠和喚醒

休眠(被阻塞)的進程處於一個特殊的不可執行狀態。這點很是重要,不然,沒有這種特殊狀態的話,調度程序就可能選出一個本不肯意被執行的進程,更糟糕的是,休眠就必須以輪詢的方式實現了。進程休眠有各類緣由,但確定都是爲了等待一些事件。事件多是一段時間、從文件I/O讀更多數據,或者是某個硬件事件。一個進程還有可能在嘗試得到一個已經佔用的內核信號量時被迫進入休眠。休眠的一個常見緣由就是文件I/O -- 如進程對
相關文章
相關標籤/搜索