Linux驅動開發之標頭檔案尋找路徑說明及標頭檔案簡介

2021-10-23 08:41:18 字數 3177 閱讀 9688

頭檔案目錄中總共有32個.h標頭檔案。其中主目錄下有13個,asm子目錄中有4個,linux子目錄中有10個,sys子目錄中有5個。

#include

在linux-x.x.x.x/include/linux下面尋找原始檔。

#include

在linux-x.x.x.x/arch/arm/include/asm下面尋找原始檔。

#include

在linux-x.x.x.x/arch/arm/mach-s3c2410/include/mach下面尋找原始檔。

#include

#include

包含了對返回值的巨集定義,使用者程式可以用perror輸出錯誤資訊。

#include

對一些特殊型別的定義,例如dev_t, off_t, pid_t…,這些型別的原型大部分都是unsigned int型。

#include

對字元裝置結構cdev以及一系列的操作函式的定義。包含了cdev 結構及相關函式的定義。

#include

等代佇列相關標頭檔案,核心等待佇列,它包含了自旋鎖的標頭檔案。

#include

初始化標頭檔案。

#include

驅動要寫入核心,與核心相關的標頭檔案。

#include

包含了kcalloc、kzalloc記憶體分配函式的定義。

#include

包含了copy_to_user、copy_from_user等核心訪問使用者程序記憶體位址的函式定義。

#include

包含了device、class 等結構的定義。

#include

包含了ioremap、iowrite等核心訪問io記憶體等函式的定義。

#include

包含了miscdevice結構的定義及相關的操作函式。

#include

使用中斷必須的標頭檔案。

#include

使用中斷必須的標頭檔案。

#include

包含set_bit等位操作函式,實現input子系統時可用。

#include

使用訊號量必須的標頭檔案

#include

自旋鎖#include

核心等待佇列中要使用的task_normal、task_interruptible包含在這個標頭檔案。

#include

fifo環形佇列。

#include

核心定時器。

#include

中斷處理 。

#include

延時標頭檔案。

#include

與處理器相關的中斷。

#include

作業系統中斷。

#include

與處理器相關的入口。

#include

與處理器相關的io口操作。

#include

同上。#include

與處理器相關的硬體。

#include

同上。#include

輪詢檔案。

#include

作業系統相關的io口檔案。

#include

標準輸入輸出。

#include

標準庫標頭檔案主目錄include:

:a.out標頭檔案,定義了a.out執行檔案格式和一些巨集。

:常數符號標頭檔案,目前僅定義了i節點中i_mode欄位的各標誌位。

:字元型別標頭檔案,定義了一些有關字元型別判斷和轉換的巨集。

:錯誤號標頭檔案,包含系統中各種出錯號。(linus從minix中引進的)。

:檔案控制標頭檔案,用於檔案及其描述符的操作控制常數符號的定義。

:訊號標頭檔案,定義訊號符號常量,訊號結構以及訊號操作函式原型。

:標準引數標頭檔案,以巨集的形式定義變數引數列表。主要說明了乙個型別(va_list)和3個巨集(va_start, va_arg和va_end),用於vsprintf、vprintf、vfprintf函式。

:標準定義標頭檔案,定義了null, offsetof(type, member)。

:字串標頭檔案,主要定義了一些有關字串操作的嵌入函式。

:終端輸入輸出函式標頭檔案,主要定義控制非同步通訊口的終端介面。

:時間型別標頭檔案,主要定義了tm結構和一些有關時間的函式原形。

:linux標準標頭檔案,定義了各種符號常數和型別,並宣告了各種函式。如,定義了__library__,則還包括系統呼叫號和內嵌彙編_syscall0()等。

:使用者時間標頭檔案,定義了訪問和修改時間結構以及utime()原型。

(1)體系結構相關標頭檔案子目錄include/asm

這些標頭檔案主要定義了一些與cpu體系結構密切相關的資料結構、巨集函式和變數。共4個檔案。

:i/o標頭檔案,以巨集的嵌入匯程式設計序形式定義對i/o埠操作的函式。

:記憶體拷貝標頭檔案,含有memcpy()嵌入式彙編巨集函式。

:段操作標頭檔案,定義了有關段暫存器操作的嵌入式彙編函式。

:系統標頭檔案,定義了設定或修改描述符/中斷門等的嵌入式彙編巨集。

(2)linux核心專用標頭檔案子目錄include/linux

:核心配置標頭檔案,定義鍵盤語言和硬碟型別(hd_type)可選項。

:軟碟機標頭檔案,含有軟盤控制器引數的一些定義。

:檔案系統標頭檔案,定義檔案表結構(file,buffer_head,m_inode等)。

:硬碟引數標頭檔案,定義訪問硬碟暫存器埠、狀態碼和分割槽表等資訊。

:head標頭檔案,定義了段描述符的簡單結構,和幾個選擇符常量。

:核心標頭檔案,含有一些核心常用函式的原形定義。

:記憶體管理標頭檔案,含有頁面大小定義和一些頁面釋放函式原型。

: 排程程式標頭檔案,定義了任務結構task_struct、初始任務0的資料,

以及一些有關描述符引數設定和獲取的嵌入式彙編函式巨集語句。

:系統呼叫標頭檔案,含有72個系統呼叫c函式處理程式,以"sys_"開頭。

:tty標頭檔案,定義了有關tty_io,序列通訊方面的引數、常數。

(3)系統專用資料結構子目錄include/sys

: 檔案狀態標頭檔案,含有檔案或檔案系統狀態結構stat{}和常量。

:定義了程序中執行時間結構tms以及times()函式原型。

:型別標頭檔案,定義了基本的系統資料型別。

:系統名稱結構標頭檔案。

Linux驅動開發常用標頭檔案

include 是在linux 2.6.29 include linux下面尋找原始檔。include 是在linux 2.6.29 arch arm include asm下面尋找原始檔。include 是在linux 2.6.29 arch arm mach s3c2410 include ma...

Linux驅動開發常用標頭檔案

頭檔案目錄中總共有32個.h標頭檔案。其中主目錄下有13個,asm子目錄中有4個,linux子目錄中有10個,sys子目錄中有5個。這些標頭檔案各自的功能如下 1 主目錄 a.out標頭檔案,定義了a.out執行檔案格式和一些巨集。常數符號標頭檔案,目前僅定義了i節點中i mode欄位的各標誌位。字...

linux驅動標頭檔案說明

驅動程式 include 是在linux 2.6.29 include linux下面尋找原始檔。include 是在linux 2.6.29 arch arm include asm下面尋找原始檔。include 是在linux 2.6.29 arch arm mach s3c2410 inclu...