W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
在第 3 章, 我們建立了一個完整的設備驅(qū)動, 用戶可用來寫入和讀取. 但是一個真正的設備常常提供比同步讀和寫更多的功能. 現(xiàn)在我們已裝備有調(diào)試工具如果發(fā)生錯誤, 并且一個牢固的并發(fā)的理解來幫助避免事情進入錯誤-- 我們可安全地前進并且創(chuàng)建一個更高級的驅(qū)動.
本章檢查幾個你需要理解的概念來編寫全特性的字符設備驅(qū)動. 我們從實現(xiàn) ioctl 系統(tǒng)調(diào)用開始, 它是用作設備控制的普通接口. 接著我們進入各種和用戶空間同步的方法; 在本章結尾, 你有一個充分的認識對于如何使進程睡眠(并且喚醒它們), 實現(xiàn)非阻塞的 I/O, 并且通知用戶空間當你的設備可用來讀或?qū)? 我們以查看如何在驅(qū)動中實現(xiàn)幾個不同的設備存取策略來結束.
這里討論的概念通過 scull 驅(qū)動的幾個修改版本來演示. 再一次, 所有的都使用內(nèi)存中的虛擬設備來實現(xiàn), 因此你可自己試驗這些代碼而不必使用任何特別的硬件. 到此為止, 你可能在想親手使用真正的硬件, 但是那將必須等到第 9 章.
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: