日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當前位置:首頁 > 嵌入式 > 嵌入式軟件
[導讀]即插即用,在Linux底下?不好辦,你還是換老的非即插即用設備吧。這是我初次接觸Linux時,那些Linux高手們告訴我的??墒牵矣X得總該有辦法的。經(jīng)過不懈的努力,我發(fā)現(xiàn)了兩種方法。。。

即插即用,在Linux底下?不好辦,你還是換老的非即插即用設備吧。這是我初次接觸Linux時,那些Linux高手們告訴我的??墒?,我覺得總該有辦法的。經(jīng)過不懈的努力,我發(fā)現(xiàn)了兩種方法。一是先從DOS啟動,初始化設備后,再用loadlin加載到Linux中。但這不是我所夢寐以求的,因為每次需要大量時間來啟動。我繼續(xù)不停的尋找,終于有一天,我找到了我需要的東西,一個稱為isapnptools的應用程序。

現(xiàn)在,大多數(shù)發(fā)行套件中都有isapnptools。如果你的套件中有,安裝它即可。如果你的發(fā)行套件中沒有它,到http://www.roestock.demon.co.uk/isapnptools/ 去下載一份,解壓后把isapnp 和 pnpdump 拷貝到目錄 /sbin中即可。

下面就是實戰(zhàn)階段了。需要準備的就是把你所有要裝的即插即用設備全部裝好,以ROOT身份登陸。然后運行以下命令/sbin/pnpdump > /etc/isapnp.conf,這會把你機器上所有的即插即用設備信息寫入文件/etc/isapnp.conf中,下面是我的機器上的/etc/isapnp.conf文件的一部分:

# $Id: plugnplay.html,v 1.1.1.1 1998/12/26 04:41:14 jack Exp $

# This is free software, see the sources for details.

# This software has NO WARRANTY, use at your OWN RISK

#

# For details of this file format, see isapnp.conf(5)

#

# For latest information on isapnp and pnpdump see:

# http://www.roestock.demon.co.uk/isapnptools/

#

# Compiler flags: -DREALTIME -DNEEDSETSCHEDULER

#

# Trying port address 0203

# Board 1 has serial identifier c5 c0 7f 53 05 01 22 05 07

# Board 2 has serial identifier 5a 80 86 00 01 20 00 a8 65

# Board 3 has serial identifier e8 46 46 46 46 90 30 72 56


# (DEBUG)

(READPORT 0x0203)

(ISOLATE PRESERVE)

(IDENTIFY *)

(VERBOSITY 2)

(CONFLICT (IO FATAL)(IRQ FATAL)(DMA FATAL)(MEM FATAL)) # or WARNING


# Card 1: (serial identifier c5 c0 7f 53 05 01 22 05 07)

# Vendor Id AXE2201, Serial Number 3229569797, checksum 0xC5.

# Version 1.0, Vendor version 0.0

# ANSI string -->Ethernet PnP ISA Card /S <--

#

# Logical device id AXE2201

# Device support I/O range check register

#

# Edit the entries below to uncomment out the configuration required.

# Note that only the first value of any range is given, this may be

# changed if required

# Don't forget to uncomment the activate (ACT Y) when happy


(CONFIGURE AXE2201/3229569797 (LD 0

# Compatible device id PNP80d6

# Logical device decodes 10 bit IO address lines

# Minimum IO base address 0x0240

# Maximum IO base address 0x0380

# IO base alignment 32 bytes

# Number of IO addresses required: 32

# (IO 0 (SIZE 32) (BASE 0x0240))

# IRQ 3, 5, 9, 10, 11, 12 or 15.

# High true, edge sensitive interrupt

# (INT 0 (IRQ 3 (MODE +E)))

# (ACT Y)

))

# End tag... Checksum 0x00 (OK)

# 略去聲卡部分

#略去modem卡部分


# Returns all cards to the "Wait for Key" state

(WAITFORKEY)


我的系統(tǒng)中共有三個即插即用設備,分別是NE2000兼容網(wǎng)卡,Yamaha OPL~SA2聲卡和一個USR 56K modem。由于文件太長,我略去了聲卡和modem部分。

接下來就是為每個設備分配所需資源。有許多方法可以實現(xiàn)。第一種,也是最簡單的方法就是,如果你在同一臺機器上也裝了WIN95或WIN98,通過控制面板的系統(tǒng)的屬性頁,可以看到在WINDOWS系統(tǒng)下各即插即用設備的資源,記下用到Linux即可。如果你的機器中沒有其它的操作系統(tǒng),采用第二種方法。即手動分配資源,只要各設備資源不發(fā)生沖突就行。手動分配資源以前,最好先看一下已經(jīng)使用的中斷列表、I/O列列表,它們分別位于/proc/interrupts、/proc/ioports、/proc/dma。一旦你確定了各設備使用的資源,就可以分配了。

選擇分配給每個設備的資源非常簡單。你只要去掉你的設備所需資源前的注釋號即可。描述資源的行很容易找到,因為它們總是以INT, IO或 DMA開頭。在這些行之前是你所能使用資源的描述。你可以選一組,因為象下面這樣的一行說明它們有優(yōu)先權的區(qū)別。

# Start dependent functions: priority preferred

在去掉所需資源的注釋號后,你還必須去掉(ACT Y)行上的注釋號來告訴ISAPNP激活該設備。

下面是我的/etc/isapnp.conf經(jīng)過編輯并去掉注釋行后的樣本:

READPORT 0x0203)

(ISOLATE PRESERVE)

(IDENTIFY *)

(VERBOSITY 2)

(CONFLICT (IO FATAL)(IRQ FATAL)(DMA FATAL)(MEM FATAL)) # or WARNING


(CONFIGURE AXE2201/3229569797 (LD 0

(IO 0 (SIZE 32) (BASE 0x0240))

(INT 0 (IRQ 3 (MODE +E)))

(ACT Y)

))


(CONFIGURE YMH0020/2156265473 (LD 0

(IO 0 (SIZE 16) (BASE 0x0220))

(IO 1 (SIZE 8) (BASE 0x0530))

(IO 2 (SIZE 4) (BASE 0x0388))

(IO 3 (SIZE 2) (BASE 0x0330))

(IO 4 (SIZE 2) (BASE 0x0370))

(INT 0 (IRQ 5 (MODE +E)))

(DMA 0 (CHANNEL 0))

(DMA 1 (CHANNEL 1))

(ACT Y)

))


(CONFIGURE YMH0020/2156265473 (LD 1

(IO 0 (SIZE 1) (BASE 0x0201))

(NAME "YMH0020/2156265473[1]{OPL3-SA2 Sound Chip }")

(ACT Y)

))


(CONFIGURE USR3090/1179010630 (LD 0

(IO 0 (SIZE 8) (BASE 0x02f8))

(INT 0 (IRQ 3 (MODE +E)))

(NAME "USR3090/1179010630[0]{U.S. Robotics 56K Voice INT}")

(ACT Y)

))


(WAITFORKEY)


如果喜歡,留著其余的注釋也行。下一步就是測試你的配置是否正確。使用以下命令/sbin/isapnp /etc/isapnp.conf,屏幕會出現(xiàn)一些信息,樣本如下:

Board 1 has Identity c5 c0 7f 53 05 01 22 05 07: AXE2201

Serial No 3229569797 [checksum c5]

Board 2 has Identity 5a 80 86 00 01 20 00 a8 65: YMH0020

Serial No 2156265473 [checksum 5a]

Board 3 has Identity e8 46 46 46 46 90 30 72 56: USR3090

Serial No 1179010630 [checksum e8]

如果你的配置文件有問題或發(fā)生資源沖突,它就會告訴你。發(fā)生問題不要著急,從頭慢慢查找原因,一步一步再來。如果一切平安無事,你還必須保證你的即插即用設備在啟動時能進行認證。不幸的是許多發(fā)行套件的初始腳本執(zhí)行方式不同。如果你的發(fā)行套件中有isapnptools的話,可能你已經(jīng)有正確的初始腳本。如果沒有,仿照/etc/rc.d/init.d中的格式,自己寫一個。

最后一步是讓你的內(nèi)核支持即插即用設備。目前,內(nèi)核支持isapnp設置的即插即用設備的唯一方法是把它們編譯為模塊。所以,對每一個被認為是即插即用的設備,確信把它編譯為內(nèi)核支持的模塊。

好了,不用再為你的新的設備不能被Linux接受而煩惱了,去盡情享受Linux帶給你的樂趣吧。

本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權益,請及時聯(lián)系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀

在Zynq MPSoC開發(fā)中,實現(xiàn)PS端Linux與PL端自定義IP核的AXI互聯(lián)是構建高性能異構系統(tǒng)的關鍵環(huán)節(jié)。這種互聯(lián)方式充分發(fā)揮了ARM處理器的軟件優(yōu)勢與FPGA的硬件加速能力,為復雜應用提供了強大的計算平臺。

關鍵字: Zynq MPSoC Linux

在物聯(lián)網(wǎng)與智能設備飛速普及的當下,嵌入式系統(tǒng)的安全性與穩(wěn)定性愈發(fā)關鍵。實時操作系統(tǒng)(RTOS)憑借其高確定性、低延遲的特性,成為工業(yè)控制、醫(yī)療設備、航空電子等安全敏感領域的核心支撐。而內(nèi)存保護單元(MPU)作為硬件級安全...

關鍵字: Linux Windows

3月10日消息,2026年開年,一個名為OpenClaw的開源項目以閃電般的速度席卷了GitHub。它在短短一天內(nèi)就斬獲了9000顆星

關鍵字: OpenClaw Linux

3月6日消息,在摩根士丹利會議上,NVIDIA CEO黃仁勛分享了關于Agentic AI(代理式人工智能)轉折點的見解,并將開源軟件OpenClaw評價為“當代最重磅的軟件發(fā)布”。

關鍵字: OpenClaw Linux

Linux內(nèi)存管理是操作系統(tǒng)的核心機制之一,通過虛擬內(nèi)存與物理內(nèi)存的分離設計,實現(xiàn)了多進程內(nèi)存隔離、高效資源利用和系統(tǒng)穩(wěn)定性保障。

關鍵字: Linux 內(nèi)存

在Linux系統(tǒng)中,進程管理是內(nèi)核的核心功能之一,其核心目標是通過高效的調度機制和進程切換技術,實現(xiàn)多任務并發(fā)執(zhí)行。

關鍵字: Linux CPU

內(nèi)核是操作系統(tǒng)的核心,它作為應用程序與硬件設備之間的"中間人",負責進程調度、內(nèi)存管理、硬件通信和系統(tǒng)調用等關鍵功能。Linux和Windows作為全球使用最廣泛的兩大操作系統(tǒng),其內(nèi)核設計理念、架構和運行機制存在本質差異...

關鍵字: Linux Windows

在Linux系統(tǒng)中,當開發(fā)者使用mmap()系統(tǒng)調用將磁盤文件映射到進程的虛擬地址空間時,一個看似簡單的指針操作背后,隱藏著操作系統(tǒng)內(nèi)核與硬件協(xié)同工作的復雜機制。這種機制不僅突破了傳統(tǒng)文件IO的效率瓶頸,更重新定義了內(nèi)存...

關鍵字: Linux 文件IO 內(nèi)存映射

在Linux驅動開發(fā)領域,持續(xù)集成與持續(xù)部署(CI/CD)流水線通過自動化流程將代碼變更快速轉化為可靠部署,而KernelCI與LTP測試套件的深度集成則成為保障驅動穩(wěn)定性的關鍵技術組合。本文將從原理分析、應用場景及實現(xiàn)...

關鍵字: CICD流水線 Linux

在Linux系統(tǒng)中,動態(tài)庫(共享庫)是程序運行的重要組成部分。當程序需要調用動態(tài)庫時,系統(tǒng)必須能夠找到這些庫文件的位置。

關鍵字: 動態(tài)庫 Linux
關閉