驅動開發之三 簡單的什麼也不做的驅動程式筐架

2021-04-07 13:24:46 字數 1320 閱讀 9283

//說明,編譯是需要相對路徑中有inc目錄,而且有ntifs.inc;且擴充套件了函式。

//#include "ntifs.h"

//#include "stdio.h"

//常量定義;

#define device_type_sy**on 0x8266 //ddk指出0-7fffh是被系統保留了

#define nt_device_name l"//device//minsys" //核心裝置名

#define dos_device_name l"//dosdevices//minsys" //符號連線裝置名

//全域性變數定義;

pdriver_object gowendriverobject; //本驅動程式物件

pdevice_object gctrldeviceobject; //用控制裝置物件域

#pragma code_seg("page")

void//unload例程;

unload(pdriver_object driverobject) 

#endif

return;

}ntstatus 

deviceirpcreate( in pdevice_object deviceobject, in pirp irp )

ntstatus 

deviceirpclose( in pdevice_object deviceobject, in pirp irp )

ntstatus 

deviceirpcontrol( in pdevice_object deviceobject, in pirp irp )

#pragma code_seg("init")

ntstatus//驅動程式入口;

driverentry(in pdriver_object driverobject,in punicode_string registrypath)

//填寫驅動程式dispatch例程

driverobject->majorfunction[irp_mj_create] =deviceirpcreate;

driverobject->majorfunction[irp_mj_close] =deviceirpclose;

driverobject->majorfunction[irp_mj_device_control] =deviceirpcontrol;

//填寫處理unload例程

driverobject->driverunload =unload;

#if (dbg)

#endif

return status;

}

驅動開發之三 常用API簡介

1.driver object的結構體如下 typedef struct driver object cshort type cshort size pdevice object deviceobject ulong flags pvoid driverstart ulong driversize ...

驅動開發3 簡單的led驅動

一 字元裝置驅動框架 字元裝置驅動的編寫主要就是驅動對應的open close read。其實就是file operations結構體的成員變數的實現。二 驅動模組的載入與解除安裝 1 linux驅動程式有兩種存在形式 編譯到kernel裡面,也就是zimage 編譯為模組,ko。tip 1 編譯驅...

裝置驅動之三 幾個關鍵函式的實現

關閉 read write 使用者空間和核心空間之間進行資料拷貝的函式 讀裝置模板 ssize t read struct filp,char user buf,size t count,loff t f fpos ssize t write struct file filp,const char ...

iOS開發之三 常用控制元件 UILabel的使用

uilabel 一般用來顯示文字內容。常用的屬性如下 property nonatomic,copy nsstring text 文字的內容,預設為 nil property nonatomic,retain uifont font 文字的字型,預設為nil system font 17 plain...

iOS動畫開發之三 UIView的轉場切換

前兩篇部落格中,我們分別介紹了uiview動畫的兩種使用方式,分別為,帶block的方式 傳統的屬性配置的方式 通過uiview動畫的類方法,我們可以十分方便的使view 某些屬性改變的同時擁有動畫效果。這篇部落格主要討論view切換的動畫操作。兩個方法 void transitionwithvie...