成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

深入講解剖析Linux設(shè)備驅(qū)動(dòng)

運(yùn)維 系統(tǒng)運(yùn)維
在Fedoar Linux設(shè)備驅(qū)動(dòng)官方站點(diǎn)的ftp中下載和你自己內(nèi)核版本相同的源代碼和devel包比如我通過(guò)uname -r命令看到我的內(nèi)核版本是2.6.22.1-41.fc7于是就下載。

這里將介紹Linux設(shè)備驅(qū)動(dòng)問(wèn)題的解決方法,新手 Fedora 7 下編譯 Linux設(shè)備驅(qū)動(dòng) 3ed scull模塊 收藏 Linux的基礎(chǔ)操作,旨在讓讀者對(duì)Linux有個(gè)初步的認(rèn)識(shí)。內(nèi)容涉及文件管理、磁盤(pán)管理、用戶與組群管理、man幫助、軟件包管理、文件壓縮和打印機(jī)管理。

Linux設(shè)備驅(qū)動(dòng) Device Driver(ldd) 是本內(nèi)核開(kāi)發(fā)入門(mén)書(shū)籍.其中scull是第一個(gè)例子模塊.所以學(xué)習(xí)scull是很重要的.由于內(nèi)核開(kāi)發(fā)變動(dòng)較快.所以ldd書(shū)中的一些例子已經(jīng)不能在現(xiàn)有開(kāi)發(fā)環(huán)境中編譯了.本文說(shuō)明如何在fedora7平臺(tái)修改scull程序,使他能夠順利編譯.
Fedora Linux設(shè)備驅(qū)動(dòng) 安裝時(shí)沒(méi)有內(nèi)核開(kāi)發(fā)的部分.所以我們先要安裝內(nèi)核開(kāi)發(fā)相關(guān)包.

1在Fedoar Linux設(shè)備驅(qū)動(dòng)官方站點(diǎn)的ftp中下載和你自己內(nèi)核版本相同的源代碼和devel包比如我通過(guò)uname -r命令看到我的內(nèi)核版本是2.6.22.1-41.fc7于是就下載kernel-devel-2.6.22.1-41.fc7  kernel-2.6.21-1.3194.fc7.src.rpm 然后安裝這兩個(gè)包.kernel-devel可以直接安裝.如果要裝src的話還要rpmbuild一下.把補(bǔ)丁打進(jìn)去.具體方法網(wǎng)上有很多關(guān)于內(nèi)核編譯的文章.

2.下載ldd第三版的源代碼
http://examples.oreilly.com/linuxdrive3/examples.tar.gz 接著把它解壓縮 tar zxvf examples.tar.gz進(jìn)入scull目錄我們可以看到有main.c文件打開(kāi)他.刪除include中的linux/config.h 由于在2.6.19版本以后config.h文件被取消了.所以以后有config.h的地方都會(huì)報(bào)錯(cuò)
接下來(lái)再make,還是有錯(cuò).發(fā)現(xiàn)是if (! capable (CAP_SYS_ADMIN))這里.CAP_SYS_ADMIN找不到.在網(wǎng)上查一下,發(fā)現(xiàn)這個(gè)宏是定義在linux/capability.h中的于是加#include 再編譯還是不通過(guò).原因還是有宏沒(méi)有定義.不過(guò)這次是在access.c中.根據(jù)未定義的宏查找.發(fā)現(xiàn)他們?cè)趇nux/capability.h和sched.h.兩個(gè)文件中在access.c中加入#include

#include 改正了這些以后make回車(chē)下面是輸出
make -C /lib/modules/2.6.22.1-41.fc7/build M=/home/hide1713/Desktop/kernel/examples/scull LDDINC=/home/hide1713/Desktop/kernel/examples/scull/../include modules
make[1]: Entering directory `/usr/src/kernels/2.6.22.1-41.fc7-i686'
CC [M]  /home/hide1713/Desktop/kernel/examples/scull/access.o
LD [M]  /home/hide1713/Desktop/kernel/examples/scull/scull.o
Building modules, stage 2.
MODPOST 1 modules
CC      /home/hide1713/Desktop/kernel/examples/scull/scull.mod.o
LD [M]  /home/hide1713/Desktop/kernel/examples/scull/scull.ko
make[1]: Leaving directory `/usr/src/kernels/2.6.22.1-41.fc7-i686'

Linux設(shè)備驅(qū)動(dòng)這樣就是編譯好了.我們用chmod +x scull_load scull_unload 把這倆個(gè)腳本變?yōu)榭蓤?zhí)行./scull_load/sbin/lsmod 怎么樣.順利裝入內(nèi)核了吧.上面的內(nèi)容是我憑記憶寫(xiě)的.如果和實(shí)際情況有出入請(qǐng)還是按照上面的方法.先差是哪個(gè)定義引起的.再把對(duì)應(yīng)的頭文件加入就行了 。以上是對(duì)Linux設(shè)備驅(qū)動(dòng)介紹。

【編輯推薦】

  1. Linux設(shè)備驅(qū)動(dòng)程序--與硬件通信
  2. 闡述Linux設(shè)備文件管理硬件設(shè)備
  3. Linux設(shè)備管理指令setleds
  4. 簡(jiǎn)介qemu通過(guò)nfs啟動(dòng)Linux的方法
  5. 對(duì)于Linux chmod命令的闡述
責(zé)任編輯:佚名 來(lái)源: CSDN
相關(guān)推薦

2011-01-11 16:11:03

2010-08-11 10:41:22

AdobeFlex

2009-12-22 11:21:11

2020-11-20 07:55:55

Linux內(nèi)核映射

2009-06-03 08:53:20

微軟Windows 7操作系統(tǒng)

2017-02-10 15:32:47

2009-11-24 09:39:55

SUSE Linux

2025-06-27 01:44:00

2009-12-22 14:08:38

2009-12-16 13:42:56

Mandriva Li

2020-12-03 08:59:06

Linux設(shè)備驅(qū)動(dòng)

2017-11-16 14:46:58

Linuxplatform總線驅(qū)動(dòng)設(shè)備

2009-10-23 17:35:16

linux進(jìn)程管理

2022-05-10 08:49:46

設(shè)備驅(qū)動(dòng)Linux

2009-09-27 17:13:36

Hibernate V

2011-06-03 13:48:18

JavaScript重構(gòu)

2010-06-03 13:08:51

2009-07-06 10:44:45

JSP charset

2009-09-14 15:12:40

LINQ to XML

2010-05-25 12:59:00

Subversion
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: h片在线观看免费 | 在线观看免费福利 | 亚洲第一成人影院 | 午夜影院在线免费观看视频 | 精品国产乱码久久久久久中文 | 操久久| 国产精品不卡 | www.日韩系列 | 国产一区二区三区久久久久久久久 | 国产伦一区二区三区视频 | 久久国产精品一区二区 | 欧美一区二区三区在线观看 | 国产精品成人在线播放 | 国产专区视频 | 成人免费网站www网站高清 | 91在线成人 | 自拍 亚洲 欧美 老师 丝袜 | 草草影院ccyy| 亚洲一区二区三区免费在线观看 | 国产97在线视频 | 91精品国产自产在线老师啪 | 五月天婷婷综合 | 久久激情网| 一区在线视频 | 亚洲精品国产区 | 成人国产精品久久久 | 亚洲嫩草 | 日韩在线观看网站 | 久久精品日产第一区二区三区 | 亚洲高清在线视频 | 超碰在线观看97 | 蜜臀网| 国产精品亚洲一区二区三区在线 | 国产乱码精品1区2区3区 | 久久久久国产精品一区二区 | 精品免费国产 | 国产女人与拘做受视频 | 91免费看片| 免费在线播放黄色 | 天堂久久一区 | 午夜精品久久久久久久久久久久 |