Linux 系统中 USB 设备开发与管理全解析
1. 代码风险提示
在 Linux 系统开发中,部分代码会直接与计算机硬件交互,这类代码极其敏感。一些方法可能会因硬件(如芯片组)和内核版本的不同而异常终止。不过,这种异常终止通常不会导致系统崩溃,但会使模块加载异常,且残留部分无法卸载。例如执行 sudo insmod lab1_dma.ko 时可能会出现异常,通过 lsmod 和 dmesg 命令可以查看相关信息。
$ sudo insmod lab1_dma.ko
Убито
$ lsmod | head -n3
Module Size Used by
lab1_dma 1412 1
8021q 20506 0
$ dmesg | tail -n50
...
[ 1485.891268] lab1_dma: loading out-of-tree module taints kernel.
[ 1485.891505] => kbuf=ffff880035c50000, handle= 35c50000, size = 40960
[ 1485.891509] => (kbuf-handle)= ffff880000000000, 18446612132314218496,
PAGE_OFFSET=18446612132314218496, compare=0
[ 1485.891510] => string written wa
超级会员免费看
订阅专栏 解锁全文

1884

被折叠的 条评论
为什么被折叠?



