日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

linux内核与设备驱动,第二章 Linux内核与设备驱动程序

發布時間:2025/3/19 linux 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux内核与设备驱动,第二章 Linux内核与设备驱动程序 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

2.1 Linux操作系統

Linux操作系統由系統的啟動、進程調度、虛擬內存管理器、文件系統、設備驅動程序等多個組成

2.2Linux內核

設備驅動程序中使用的函數也用在內核上,并且影響著內核,因此離開內核就無法制作設備驅動程序。

2.2.1 Linux的歷史

省略

2.2.2linux內核的功能

內核是有效管理系統資源的資源管理者

處理器管理???? 通過管理處理器,使得處理器滿足操作系統的處理要求,使其有效分擔和執行各個進程中必要的處理器功能

進程管理??????? 進程是程序執行的最小單位,內核通過進程調度器負責進程的創建、撤銷,并管理進程和外部環境的交互

內存管理??????? 系統的內存是最核心的部分,。內存管理是決定系統性能的重要要素,提供虛擬地址空間的方式,使各個進程在獨立的空間上執行任務。虛擬內存以管理為基礎,結合存儲器可提供大于實際物理內存的內存空間

文件系統管理?? Linux內核利用虛擬文件系統(VFS),支持當前的大部分文件系統類型

設備的控制????? 應用程序必須通過硬件才能與用戶交互,處PCU和內存外,應用程序必須得到硬件的支持才能夠完成各種操作。設備驅動程序負責與硬件相關的各種操作,而設備驅動程序則是內核必須實現的功能之一

網絡管理

2.2.3Linux內核的特點

特點歸納如下:

單一的(Monolithic)內核

非搶占型和搶占型(2.6內核)

虛擬內存系統

支持無MMU? ? 2.6內核支持沒有MMU(存儲器管理單元)的系統

虛擬文件系統(VFS)???????? linux中可以使用ext2甚至日志文件系統jfs的多種文件系統,也可以處理在windows中運行的NTFS文件系統和DOS文件系統

利用模塊擴展內核

內核線程

支持多線程

支持多處理器

強大的網絡功能

GPL許可

2.2.4 內核源代碼結構

省略

2.3設備驅動程序

2.3.1 向內核請求資源處理的方法

應用程序向內核發出資源處理請求的方法大致分為兩大類。第一是系統調用方式,第二是利用文件輸出輸入方式使用設備驅動程序的方法

1.系統調用方式

所謂系統調用方式,指制定系統控制所需的調用規則后,利用軟件中斷服務功能,使內核執行應用程序發出的處理請求

2.文件形態的設備驅動程序

以文件輸入輸出函數控制硬件。向表示硬件的設備文件指定應用程序的輸入輸出,從而調用內核內部鏈接設備文件的設備驅動程序服務程序,處理完請求再把控制流交還給應用程序

2.3.2模塊和設備文件

1.模塊

模塊——在內核被啟動后運行的狀態下即動態加載或清除設備驅動程序

只有模塊方式才能支持連接在PCI、USB、PCMCIA上的設備PNP功能。只有帶MMU的CPU才能支持模塊方式,并且內核的版本要一致。

2.設備文件

普通文件的目的在于保存數據,而設備文件的目的在于提供系統或硬件的信息。此類設備文件上保存的信息包括3種類型,分別為設備類型信息和主設備號和次設備號。

應用程序以open()函數打開設備文件,內核在相應的設備文件上得到主設備號,并尋找相應設備號所處理的設備驅動程序。也有不存在設備文件的設備驅動程序,包括網絡設備驅動程序。

2.3.3? 設備驅動程序的類型

設備驅動程序處理各個硬件的方式與硬件的類型有關。

Linux中使用的設備驅動程序大體上包括字符結構、塊結構和網絡結構:

字符?? 控制長短不一致字符序列的設備驅動程序,應用程序直接呼叫的、沒有緩存的設備驅動程序

塊????? 通過一定大小的緩存處理數據的設備,由內核內部的文件系統進行管理,沒有內部緩存的設備驅動程序

網絡?? 與網絡層連接的設備驅動程序

1.字符設備驅動程序

應用程序中使用open()、close()、read()、write()等文件處理函數,并且以普通文件方式處理設備文件,從而控制硬件。常見的文件結構為流(stream),與字符設備驅動程序連接的設備文件也是流。即利用文件節點指定設備文件的特定處理位置,并且可以讀取設備的處理位置

2.塊設備驅動程序

除了特殊情況(分區),應用程序中不直接使用塊設備驅動程序。塊設備驅動程序是支持文件系統的結構,以文件系統實現與應用策劃給你寫的連接

3.網絡涉筆驅動程序

總結

以上是生活随笔為你收集整理的linux内核与设备驱动,第二章 Linux内核与设备驱动程序的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。