北航linux課件——Linux 設備管理



單擊此處編輯母版標題樣式,*,單擊此處編輯母版文本樣式,第二級,第三級,第四級,第五級,Linux 設備管理,模塊的安裝和卸載,設備管理,模塊的安裝和卸載,模塊:可以作為獨立程序來編譯的函數(shù)和數(shù)據(jù)結構的集合它可以動態(tài)的增加內核的功能裝載:,靜態(tài)裝載:在內核啟動時,動態(tài)裝載:在內核運行時,注:當前裝載的模塊可以在/proc/modeles讀出模塊一旦被裝入系統(tǒng),就在內核地址空間中管態(tài)下執(zhí)行模塊中的每個新函數(shù)都必須在模塊裝入內核中時進行注冊模塊卸載時,函數(shù)必須注銷模塊的裝載,insmode過程:,1、新模塊加入到內核空間,2、查找導出的內核符號對模塊中的外部符號引用進行解析,并確保該模塊所引用的其它模塊均已裝入系統(tǒng)3、為新模塊分配內存空間,4、裝載新模塊,并導出該模塊定義的符號5、調用新模塊中的初始化函數(shù),模塊的安裝和卸載,模塊的卸載,rmmod過程:,注銷相應的函數(shù)和內核符號,取消虛擬地址映像,釋放模塊使用空間,說明:如有其它模塊引用它,則不能卸載模塊的安裝和卸載,設備管理,系統(tǒng)中的所有硬件設備看起來都和一般的文件一樣,它們可以使用處理文件的標準系統(tǒng)調用來打開、,關閉和讀寫系統(tǒng)中的每一個設備都由一個設備文件來代表,設備文件名由主設備號和從設備號組成。
例如,主IDE硬盤的設備文件是/dev/hda一個設備驅動程序控制的所有設備有一個相同的主設備號,通過不同的從設備號來區(qū)分設備和它們的控制器例如,主IDE硬盤的每一個分區(qū)都有一個不同的從設備號,這樣主IDE硬盤的第二個分區(qū)的設備文件是/dev/hda2Linux系統(tǒng)使用主設備號和系統(tǒng)中的一些表來將系統(tǒng)調用中使用的設備文件映射到設備驅動程序中Linux 系統(tǒng)支持三種類型的硬件設備,字符設備:字符設備是直接讀取的,不必使用緩沖區(qū)塊設備:塊設備每次只能讀取一定大小的塊的倍數(shù),通常一塊是512或者1024字節(jié)塊設備通過緩沖區(qū)讀寫,并且可以隨機地讀寫塊設備可以通過它們的設備文件存取,但通常是通過文件系統(tǒng)存取只有塊設備支持掛接的文件系統(tǒng)網絡設備:網絡設備是通過BSD套接字接口存取的設備管理,L i n u x系統(tǒng)支持多種設備,這些設備的驅動程序之間有一些共同的特點:,內核代碼:設備驅動程序是系統(tǒng)內核的一部分,所以如果驅動程序出現(xiàn)錯誤的話,將可能嚴重地破壞整個系統(tǒng)內核接口:設備驅動程序必須為系統(tǒng)內核或者它們的子系統(tǒng)提供一個標準的接口內核機制和服務:設備驅動程序利用一些標準的內核服務,例如內存分配等可裝入:大多數(shù)的L i n u x設備驅動程序都可以在需要時裝入內核,在不需要時卸載。
可設置:L i n u x系統(tǒng)設備驅動程序可以集成為系統(tǒng)內核的一部分,至于哪一部分需要集成到內核中,可以在系統(tǒng)編譯時設置動態(tài)性:當系統(tǒng)啟動并且各個設備驅動程序初始化以后,驅動程序將維護其控制的設備如果設備驅動程序控制的設備并不存在,也并不妨礙系統(tǒng)的運行設備管理,設備管理,Linux內核和設備驅動程序之間使用標準的交互接口設備驅動程序在其初始化時就在系統(tǒng)內核中進行登記Linux系統(tǒng)使用設備驅動程序的登記表作為內核和驅動程序接口的一部分這些表中包括指向處理程序的指針和其他信息主設備號,chrdevs數(shù)組,blkdevs數(shù)組,VFS inode,數(shù)組元素均為device_struct結構,設備管理,字符設備,name:指向登記的設備驅動程序名,fops:指向一個包括各種文件操作過程的地址的數(shù)組此數(shù)組中包括的地址指向設備驅動程序中處理文件的操作,例如,打開、讀寫和關閉子過程塊設備,內核對塊設備的操作要使用緩沖區(qū)因此,每一個塊設備驅動程序必須既向緩沖區(qū)提供接口,也提供一般的文件操作接口每一個塊設備都在blk_dev數(shù)組中有一個blk_dev_struct結構的記錄數(shù)據(jù)結構blk_dev_struct 包括:,request_queue:指向請求數(shù)據(jù)結構鏈表的指針,每一個請求數(shù)據(jù)結構都代表一個來自緩沖區(qū)的請求,queue:請求過程的地址,data:輔助信息,幫助找到特定設備的請求隊列,設備管理,設備管,理,理,每當緩,沖,沖區(qū)希,望,望和一,個,個在系,統(tǒng),統(tǒng)中注,冊,冊的塊,設,設備交,換,換數(shù)據(jù),,,,它都,會,會在blk_dev_struct中添,加,加一個,請,請求數(shù),據(jù),據(jù)結構,。
每一,個,個請求,都,都有一,個,個指針,指,指向一,個,個或者,多,多個buffer_head數(shù)據(jù),結,結構,,每,每一個buffer_head,結,結構都,是,是一個,讀,讀寫數(shù),據(jù),據(jù)塊的,請,請求每,每一個,請,請求結,構,構都在,一,一個靜,態(tài),態(tài)鏈表all_requests,中,中如,果,果請求,添,添加到,了,了一個,空,空的請,求,求鏈表,中,中,則,調,調用設,備,備驅動,程,程序的,請,請求函,數(shù),數(shù)來開,始,始處理,請,請求隊,列,列否,則,則,設,備,備驅動,程,程序只,是,是簡單,地,地處理,請,請求隊,列,列中的,每,每一個,請,請求一旦設,備,備驅動,程,程序完,成,成了一,個,個請求,,,,它將,把,把buffer_head,結,結構,從,從request結,構,構中移,走,走,并,把,把buffer_head,結,結構標,記,記為已,更,更新,,同,同時將,它,它解鎖,這樣,就,就可以,喚,喚醒等,待,待鎖定,操,操作完,成,成的進,程,程設備管,理,理,9,、靜夜,四,四無鄰,,,,荒居,舊,舊業(yè)貧,12月-2212月-22,Thursday,December29,2022,10,、雨中,黃,黃葉樹,,,,燈下,白,白頭人,。
04:35:4304:35:4304:35,12/29/2022 4:35:43AM,11,、以我獨,沈,沈久,愧,君,君相見頻,12月-2204:35:4304:35,Dec-2229-Dec-22,12,、故人,江,江海別,,,,幾度,隔,隔山川,04:35:4304:35:4304:35,Thursday,December29,2022,13,、乍,見,見翻,疑,疑夢,,,,相,悲,悲各,問,問年,12,月,月-2212,月,月-2204:35:4404:35:44,December29,2022,14,、他鄉(xiāng),生,生白發(fā),,,,舊國,見,見青山,29,十,十二月20224:35:44 上,午,午04:35:4412月-22,15,、比不了,得,得就不比,,,,得不到,的,的就不要,十二月224:35,上,上午12月-2204:35,December29,2022,16,、行動出,成,成果,工,作,作出財富,2022/12/29 4:35:4404:35:44,29 December2022,17,、做,前,前,,能,能夠,環(huán),環(huán)視,四,四周,;,;做,時,時,,你,你只,能,能或,者,者最,好,好沿,著,著以,腳,腳為,起,起點,的,的射,線,線向,前,前。
4:35:44,上,上午4:35,上,上,午,午04:35:4412,月,月-22,9,、沒,有,有失,敗,敗,,只,只有,暫,暫時,停,停止,成,成功,!,!12,月,月-2212,月,月-22,Thursday,December29,2022,10,、很,多,多事,情,情努,力,力了,未,未必,有,有結,果,果,,但,但是,不,不努,力,力卻,什,什么,改,改變,也,也沒,有,有04:35:4404:35:4404:35,12/29/20224:35:44AM,11,、成功,就,就是日,復,復一日,那,那一點,點,點小小,努,努力的,積,積累12月-2204:35:4404:35,Dec-2229-Dec-22,12,、世間,成,成事,,不,不求其,絕,絕對圓,滿,滿,留,一,一份不,足,足,可,得,得無限,完,完美04:35:4404:35:4404:35,Thursday,December29,2022,13,、不,知,知香,積,積寺,,,,數(shù),里,里入,云,云峰,12,月,月-2212,月,月-2204:35:4404:35:44,December29,2022,14,、,意,意,志,志,堅,堅,強,強,的,的,人,人,能,能,把,把,世,世,界,界,放,放,在,在,手,手,中,中,像,像,泥,泥,塊,塊,一,一,樣,樣,任,任,意,意,揉,揉,捏,捏,。
29,十,十,二,二,月,月20224:35:44 上,午,午04:35:4412月-22,15,、,楚,楚,塞,塞,三,三,湘,湘,接,接,,,,,荊,荊,門,門,九,九,派,派,通,通,十,二,二,月,月224:35,上,上,午,午12,月,月-2204:35,December29,2022,16,、少年十,五,五二十時,,,,步行奪,得,得胡馬騎,2022/12/29 4:35:4404:35:44,29 December2022,17,、空,山,山新,雨,雨后,,,,天,氣,氣晚,來,來秋,4:35:44,上,上午4:35,上,上,午,午04:35:4412,月,月-22,9,、楊柳,散,散和風,,,,青山,澹,澹吾慮,12月-2212月-22,Thursday,December29,2022,10,、閱讀,一,一切好,書,書如同,和,和過去,最,最杰出,的,的人談,話,話04:35:4404:35:4404:35,12/29/2022 4:35:44AM,11,、越是,沒,沒有本,領,領的就,越,越加自,命,命不凡,12月-2204:35:4404:35,Dec-2229-Dec-22,12,、越是,無,無能的,人,人,越,喜,喜歡挑,剔,剔別人,的,的錯兒,。
04:35:4404:35:4404:35,Thursday,December29,2022,13,、知,人,人者,智,智,,自,自知,者,者明,勝,人,人者,有,有力,,,,自,勝,勝者,強,強12,月,月-2212,月,月-2204:35:4404:35:44,December29,2022,14,、意,志,志堅,強,強的,人,人能,把,把世,界,界放,在,在手,中,中像,泥,泥塊,一,一樣,任,任意,揉,揉捏,29,十,十,二,二月20224:35:44,上,上午04:35:4412,月,月-22,15,、最具,挑,挑戰(zhàn)性,的,的挑戰(zhàn),莫,莫過于,提,提升自,我,我十二月224:35 上,午,午12月-2204:35,December29,2022,16,、業(yè)余生,活,活要有意,義,義,不要,越,越軌2022/12/29 4:35:4404:35:44,29 December2022,17,、,一,一,個,個,人,人,即,即,使,使,已,已,登,登,上,上,頂,頂,峰,峰,,,,,也,也,仍,仍,要,要,自,自,強,強,不,不,息,息,4:35:44,上,上,午,午4:35,上,上,午,午04:35:4412,月,月-22,MOMODA POWERPOINT,Lorem ipsum dolor sit amet,consectetur adipiscing elit.Fusce id urna blandit,eleifend nulla ac,fringilla purus.Nulla iaculis tempor felis ut cursus.,感,謝,謝,您,您,的,的,下,下,載,載,觀,觀,看,看,專,家,家,告,告,訴,訴,。