第乙個核心測試程式

2021-07-11 12:49:45 字數 1838 閱讀 9020

1.在vmware安裝上centos

網路設定,參考注意在centos 右上角的網路圖示選擇對應的網路裝置。

2.安裝gcc環境

yum install gcc-c++

3.安裝核心檔案

yum install kernel-devel

4.編寫hello.c檔案

例子參考:

#include #include #include //必選

//模組許可宣告

module_license("gpl");

//模組載入函式

static int hello_init(void)

//模組解除安裝函式

static void hello_exit(void)

//模組註冊

module_init(hello_init);

module_exit(hello_exit);

//可選

module_author("edsionte wu");

module_description("this is a ****** example!\n");

module_alias("a ******st example");

5.編寫makefile

obj-m += hello.o

#generate the path

current_path:=$(shell pwd)

#the current kernel version number

linux_kernel:=$(shell uname -r)

#the absolute path

#linux_kernel_path:=/usr/src/linux-headers-$(linux_kernel)

#這裡的核心路徑注意根據實際情況修改,確保核心路徑指向正確,以下是centos的路徑

#linux_kernel_path:=/usr/src/kernels/2.6.32-573.22.1.el6.i686

linux_kernel_path:=/usr/src/kernels/2.6.18-194.el5-i686

#complie object

all:

make -c $(linux_kernel_path) m=$(current_path) modules

#clean

clean:

make -c $(linux_kernel_path) m=$(current_path) clean

#注意make前面必須有tab字元,否則編譯會出現make: nothing to be done for `all'.

6.編譯

輸入make命令

7.測試

執行insmod hello.ko

檢視lsmod

檢視訊息tail /var/log/messages

解除安裝rmmod hello

另一種檢視訊息命令dmesg



第乙個測試程式

下面列出乙個簡單的opengl程式 例4 1 opengl簡單例程 c include include include glos.h void main void 這個程式執行結果是在螢幕視窗內畫乙個紅色的方塊。下面具體分析整個程式結構 首先,在程式最開始處是opengl標頭檔案 前乙個是gl庫的標...

第乙個程式測試 三

第乙個程式就low一下點亮一下led為了測試開發環境準確無誤。先看一下原理圖 我們看到開發板有3個燈,nled 1 為低電平的時候亮。對應的分別為gpf4 gpf5 gpf6 gpio的控制方法在晶元的手冊的i o port這章。設定這兩個暫存器就可以了 port configuration reg...

01 第乙個核心模組程式

從核心中最簡單的驅動程式入手,描述linux驅動開發,主要文章目錄如下 持續更新中 01 第乙個核心模組程式 02 註冊字元裝置驅動 03 open close 函式的應用 04 read write 函式的應用 05 ioctl 的應用 06 ioctl led燈硬體分析 07 ioctl 控制l...