主裝置號標誌裝置對應的驅動程式,次裝置號對應具體的裝置例項。由同乙個裝置驅動控制的所有裝置具有相同的主裝置號,從裝置號用來區分具有相同主裝置號且由相同裝置驅動控制的不同裝置。
裝置位於/dev目錄,字元裝置的標誌的c,塊裝置的標誌是b。
dev_t型別(中定義),用來儲存裝置編號,主裝置號12位,次裝置號20位。
由dev_t型別獲得主裝置號和次裝置號:
major(dev_t dev); /**/
minor(dev_t dev);
將主裝置號和次裝置號轉換成dev_t型別:
mkdev(int major, int minor); /* */
tty 指的是串列埠
系統呼叫時作業系統核心和應用程式之間的介面,裝置驅動程式是作業系統核心和機器硬體之間的介面。
同乙個裝置驅動可能被不同的程序呼叫,所以開發裝置驅動程式必須考慮併發問題的處理。
塊裝置和字元裝置的裝置相關檔案可以通過mknod命令來建立,並使用主從裝置號來描述此裝置。
const是乙個c語言的關鍵字,它限定乙個變數不允許被改變。使用const在一定程度上可以提高程式的安全性和可靠性,另外,在**別人**的時候,清晰理解const所起的作用,對理解對方的程式也有一些幫助。還有些差別,具體見
CAN 匯流排嵌入式驅動程式設計
摘要 介紹了uclinux 作業系統的核心結構以及裝置驅動程式設計的基本原理,並對can 匯流排的嵌入式系統進行了硬體設計及軟體驅動程式設計,提出can 匯流排技術應用於嵌入式系統的一種方案。1 引言 早期應用於八位微控制器軟體設計的嵌入式系統主要為前後臺系統 或超迴圈系統 程式大約在幾千行以內,由...
嵌入式Linux驅動開發從基礎到框架
想講好嵌入式linux的驅動開發並不容易,各位業界大神從最基礎的字元驅動到中斷併發再到驅動框架 應用層呼叫。但是總覺得業界寫的書都是點到為止,可能也有篇幅過長 嵌入式linux驅動框架碎片化的考慮。在一眾嵌入式linux驅動書中筆者最推崇宋寶華的 linux裝置驅動開發詳解 但他完全可以更進一步上公...
嵌入式linux字元裝置驅動
arm linux 驅動 抵岸科技 1.我們需要先呼叫register chrdev region 或 alloc chrdev region 來向系統申請裝置號 int register chrdev region dev t first,unsigned int count,char name ...