驅動開發(第乙個程式Hello World

2021-06-16 09:10:11 字數 1266 閱讀 3482

首先新建乙個目錄(比如):

mkdir helloworld

然後進入到這個目錄:

cd helloworld

第一步:

vi hello.c

#include

#include

module_license("dual bsd/gpl");

static int hello_init(void)

printk(kern_alert "hello ,world\n");

return 0;

static void hello_exit(void)

printk(kern_alert "goodbye,cruel world\n");

module_init(hello_init);

module_exit(hello_exit);

第二步:

vi makefile

obj-m := hello.o

kdir := /lib/modules/$(shell uname -r)/build

pwd := $(shell pwd)

default:

$(make) -c $(kdir) subdirs=$(pwd) modules

第三步:

基本的程式寫好後,執行時遇到的一些問題和解決方案:

[lijun@myhost helloworld]$ /lib/modules/$(shell uname -r)/build

bash: shell: command not found

bash: /lib/modules//build: 沒有那個檔案或目錄

[lijun@myhost helloworld]$ echo /lib/modules/$(uname -r)/build

/lib/modules/2.6.35-arch/build

[lijun@myhost helloworld]$ ls /lib/modules/$(uname -r)/build

ls: 無法訪問/lib/modules/2.6.35-arch/build: 沒有那個檔案或目錄

[lijun@myhost helloworld]$ pacman -ss header

core/kernel26-headers 2.6.35.8-1

header files and scripts for building modules for kernel26

core/kernel26-lts-headers 2.6.32.25-2

第乙個驅動程式

原始出處 驅動程式的開發,向來是令人感到有所畏懼的,可能很多人像我一樣,看了很久卻還是一頭霧水,不得其門而入。我們今天就通過乙個簡單的程式來使讀者學會初步的驅動程式開發。在開發windows驅動程式之前,我們需要首先安裝ddk,win98及其以前的vxd我們就不要再考慮了 windows 2000 ...

第乙個驅動程式

從今天開始就要進入核心驅動程式部分了,在這一節裡就通過第乙個驅動程式來介紹一下核心驅動模組的編寫框架。static intfirst drv open struct inode inode,struct file file static ssize t first drv write struct ...

QGIS開發第乙個程式

2.先安裝qt和qtcreator 也是要注意跟qgis類庫所用的qt類庫版本一致 說一下遇到的問題,首先就是在qt creator建立第乙個程式時,需要選擇msvrt 2015 32位,注意跟上面你的類庫位數一致。而且編譯器要是vs編譯器,不然你的libs會出現unreference的情況。還有就...