freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

第10章設(shè)備管理-展示頁

2025-02-15 13:58本頁面
  

【正文】 設(shè)備出現(xiàn)的錯誤。3. 讀取應(yīng)用程序傳送給設(shè)備文件的數(shù)據(jù)并回送應(yīng)用程序請求的數(shù)據(jù)。 2. 對設(shè)備進行管理。 驅(qū)動程序的基本功能為:1. 對設(shè)備初始化和釋放。 例如, /dev/hda、 /dev/hdb、 /dev/hdc表示第一、二、三塊硬盤;而 dev/hda/dev/hda /dev/hda3則表示第一硬盤的第一、二、三分區(qū)。 例如,普通硬盤如 IDE接口的為 “hd”,軟盤為 “fd”。 Linux設(shè)備命名習(xí)慣 : Linux習(xí)慣上將設(shè)備文件放在目錄 /dev或其子目錄之下。 主設(shè)備號( major number)相同的設(shè)備使用相同的驅(qū)動程序,而次設(shè)備號 (minor number) 用來區(qū)分具體設(shè)備的實例。 我們這里主要討論字符設(shè)備,有興趣的讀者可參考其它書籍中有關(guān)塊設(shè)備的內(nèi)容。 塊設(shè)備有硬盤、光盤驅(qū)動器等。 塊設(shè)備以塊為單位進行處理,塊的大小通常為 32KB等。字符設(shè)備通常只允許按順序訪問,一般不使用緩存技術(shù)。 應(yīng)用程序發(fā)出系統(tǒng)調(diào)用指令以后,會從用戶態(tài)轉(zhuǎn)換到內(nèi)核態(tài),通過內(nèi)核將 open()這樣的系統(tǒng)調(diào)用轉(zhuǎn)換成對物理設(shè)備的操作。 如圖 101所示 ,應(yīng)用程序通過 Linux的系統(tǒng)調(diào)用與內(nèi)核通信。 為此, Linux中的設(shè)備管理應(yīng)用了設(shè)備文件這個概念來統(tǒng)一設(shè)備的訪問接口。 內(nèi)核常常使用設(shè)備類型、主設(shè)備號和次設(shè)備號來標識一個具體的設(shè)備。 設(shè)備管理的目標是對所有的外接設(shè)備進行良好的讀、寫、控制等操作。 設(shè)備管理結(jié)構(gòu) 概述 設(shè)備管理即輸入輸出子系統(tǒng),可分為上下兩部分:一部分是上層的,與設(shè)備無關(guān)的,這部分根據(jù)輸入輸出請求,通過特定的設(shè)備驅(qū)動程序接口,來與設(shè)備進行通信?!? 驅(qū)動程序運作過程。 當應(yīng)用程序需要設(shè)備時,可以訪問該設(shè)備對應(yīng)的文件節(jié)點,利用 VFS調(diào)用該設(shè)備的相關(guān)處理函數(shù)。 本章也涉及到 Linux下設(shè)備管理的原則和方法。第 10章 設(shè)備管理 Linux和其他操作系統(tǒng)一樣,支持眾多的、各式各樣的外接設(shè)備。 但是,面對層出不窮的新硬件產(chǎn)品,必須有人不斷編寫新的驅(qū)動程序,以便讓這些設(shè)備能夠在 Linux 下正常工作,從這個意義上講,講述驅(qū)動程序的編寫就是一件非常有意義的工作。 舉例來說, Linux下的驅(qū)動程序僅僅是為相應(yīng)的設(shè)備編寫幾個基本函數(shù),并向 VFS注冊就可以安裝成功了。本章主要介紹了設(shè)備管理方面的有關(guān)知識:◆ 系統(tǒng)管理設(shè)備的方式。◆ 驅(qū)動程序的具體實例。 另一部分是下層的,與設(shè)備有關(guān)的,常稱為設(shè)備驅(qū)動程序,它直接與相應(yīng)設(shè)備打交道,并且向上層提供一組訪問接口。 首先要解決的問題就是怎樣將任意的一個設(shè)備的所有操作進行歸納,設(shè)計出統(tǒng)一的接口。 但用戶希望能用同樣的應(yīng)用程序和命令來訪問設(shè)備和普通文件。 簡單的說,系統(tǒng)試圖使它對所有各類設(shè)備的輸入、輸出看起來就好像對普通文件的輸入、輸出一樣。 圖 101 Linux內(nèi)核體系結(jié)構(gòu) 由于 Linux中將設(shè)備當作文件來處理,所以對設(shè)備進行操作的系統(tǒng)調(diào)用和對文件操作的類似,主要包括 open()、 read()、 write()、ioctl()、 close()等。 字符設(shè)備與塊設(shè)備 字符設(shè)備以字節(jié)為單位進行數(shù)據(jù)處理。如鼠標,聲卡等。 大多數(shù)塊設(shè)備允許隨機訪問,而且常常采用緩存技術(shù)??梢圆榭次募?/proc/devices獲得。 主設(shè)備號和次設(shè)備號 設(shè)備管理中,除了設(shè)備類型(字符設(shè)備或塊設(shè)備)以外,內(nèi)核還需要一對稱做主、次設(shè)備號的參數(shù),才能唯一表示設(shè)備。 例如,第一 IDE接口上的所有磁盤及其分區(qū)共用同一主設(shè)備號 3,而次設(shè)備號則為 0, 1, 2, 3 …。 設(shè)備文件命名(通常由兩部分組成)規(guī)則為:第一部分通常較短,可能只有 2或 3個字母組成,用來表示設(shè)備大類。第二部分通常為數(shù)字或字母用來區(qū)別設(shè)備實例。 驅(qū)動程序 驅(qū)動程序基本功能 在 Linux操作系統(tǒng)中驅(qū)動程序是操作系統(tǒng)內(nèi)核與硬件設(shè)備之間的橋梁,它屏蔽了硬件的細節(jié) (如總線協(xié)議、 DMA操作等 ),在應(yīng)用程序看來硬件設(shè)備只是一個特殊的文件。如對音頻設(shè)備而言包括向內(nèi)核注冊設(shè)備,設(shè)置音頻的輸入輸出參數(shù) (如采樣頻率、采樣寬度等 )、分配音頻設(shè)備使用的內(nèi)核內(nèi)存等工作。包括實時參數(shù)設(shè)置以及提供對設(shè)備的操作接口。這需要在用戶空間、內(nèi)核空間、總線及外
點擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1