linux驅動開發之demo

2021-06-06 21:28:57 字數 1493 閱讀 7058

//linux版本

#uname -r

2.6.18-1.2798.fc6

//編譯 進入模組**所在目錄

$make -c /usr/src/kernels/2.6.18-1.2798.fc6 m=$(pwd) modules

//載入

#insmod test.ko

//檢視主裝置號(自動分配為no=253)

dmesg

//建立裝置

mknod /dev/test c no 0

//修改許可權

chmod 666 /dev/test

//寫入字元

echo -n abcdef >/dev/test

//檢查內容(該程式還有些問題,讀不停止....ctrl+c)

cat /dev/test

//解除安裝模組

rmmod test

rm -rf /dev/test

源**:

test.c

#include

#include

#include

#include

#include

#include

#include

unsigned int fs_major = 0;

static char *data;

static ssize_t test_read(struct file *file, char *buf, size_t count, loff_t *fpos);

static ssize_t test_write(struct file *file, const char *buffer, size_t count, loff_t *f_pos);

static int test_open(struct inode *inode, struct file *file);

static int test_release(struct inode *inode, struct file *file);

int test_init(void);

void test_exit(void);

static struct file_operations chr_fops=;

static ssize_t test_read(struct file *file, char *buf, size_t count, loff_t *f_pos)

static int test_release(struct inode *inode, struct file *file)

int test_init(void)

if(fs_major==0)

return 0;

}void test_exit(void)

module_init(test_init);

module_exit(test_exit);

makefile:

obj-m:=test.o

Linux驅動開發之DRM驅動

qq群 852283276 b站 主頁 drm 驅動程式開發 開篇 drm 驅動程式開發 vkms 最簡單的drm應用程式 single buffer drm 驅動是如何建立 fb device 的 linux中的drm 介紹 linux graphic dri 顯示子系統 介紹1 xilinx d...

linux裝置驅動之PCIE驅動開發

pcie pci express 是intel提出的新一代的匯流排介面,目前普及的pcie 3.0的傳輸速率為8gt s,下一代pcie 4.0將翻番為16gt s,因為傳輸速率快廣泛應用於資料中心 雲計算 人工智慧 機器學習 視覺計算 顯示卡 儲存和網路等領域。pcie插槽是可以向下相容的,比如p...

Linux驅動開發之字元裝置驅動例項

1 驅動標頭檔案mem dev.h ifndef memdev h define memdev h ifndef memdev major define memdev major 238 預設的mem的主裝置號 endif ifndef memdev nr devs define memdev nr...