一些新 ISA 设备板遵循特殊的设计规范并且需要一个特别的初始化顺序, 对增加接口板 的简单安装和配置的扩展. 这些板的设计规范称为即插即用, 由一个麻烦的规则集组成, 来建立和配置无跳线的 ISA 设备. PnP 设备实现可重分配的 I/O 区; PC 的 BIOS 负责 重新分配 -- 回想 PCI

简短来说, PnP 的目标是获得同样的灵活性, 在 PCI 设备中有的, 而不必关闭底层的电 路接口(ISA 总线). 为此, 这个规范定义了一套设备独立的配置寄存器和一个地理式寻址 接口板的方法, 尽管物理总线没有每块板子相连(地理上)--每个 ISA 信号线连接到每个 可用的槽位.

地理式寻址通过分配一个小的整数, 称为卡选择号(CSN), 给计算机中的每个 PnP 外设. 每个 PnP 设备特有一个唯一的系列标识符, 64-位宽, 这硬连线到外设板. CSN 分配使用 唯一的序列号来标识 PnP 设备. 但是 CSN 可被分配只在启动时, 它要求 BISO 是知道 PnP 的. 由于这个理由, 老式计算机要求用户来获得并插入一个特别的配置磁盘, 即便这 个设备是 PnP 的.

遵循 PnP 的接口板在硬件级别上是复杂的. 它们比 PCI 板更加精细并且需要复杂的软件. 安装这些设备有困难是常有的, 并且即便安装顺利, 你仍然面对性能限制和 ISA 总线的 受限的 I/O 空间. 最好在任何可能时安装 PCI 设备, 并且享受新技术.

如果你对 PnP 配置软件感兴趣, 你可浏览 drivers/net/3c509.c, 它的探测函数处理 PnP 设备. 2.6 内核有许多工作在 PnP 设备支持领域, 因此许多灵活的接口和之前的内 核发行相比被清理了.

[44]
中断共享的问题是一个电子工程的问题: 如果一个设备驱动信号线非激活 -- 通过给一 个低阻电平 -- 中断无法被共享. 如果, 另一方面, 设备使用一个上拉电阻来去激活逻辑 电平, 共享是可能的. 现在这是正常的. 但是, 仍然有潜在的丢失中断事件的危险, 因为 ISA 中断是沿触发的而不是电平触发的. 沿触发中断易于在硬件中实现, 但是没有使它们 可安全共享.

Linux 内核即插即用规范的更多相关文章

  1. Linux内核编程规范与代码风格

    source: https://www.kernel.org/doc/html/latest/process/coding-style.html translated by trav, travmym ...

  2. [转] LINUX内核代码编程规范

    这是一个简短的文档,描述了linux内核的首选代码风格.代码风格是因人而异的,而且我 不愿意把我的观点强加给任何人,不过这里所讲述的是我必须要维护的代码所遵守的风格, 并且我也希望绝大多数其他代码也能 ...

  3. Linux内核文档:如何写符合 kernel-doc 规范的注释

    简介 Linux内核使用 Sphinx 实现把 Documentation 目录下的 reStructuredText 文件转换为非常漂亮的文档.文档既可以通过 make htmldocs 转换成 H ...

  4. Linux内核启动分析

    张超<Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 我的代码可见https://www.shiyanlo ...

  5. Linux 内核引导选项简介

    Linux 内核引导选项简介 作者:金步国 连接地址:http://www.jinbuguo.com/kernel/boot_parameters.html 参考参数:https://www.cnbl ...

  6. Linux内核配置选项

    http://blog.csdn.net/wdsfup/article/details/52302142 http://www.manew.com/blog-166674-12962.html Gen ...

  7. Linux 内核USB 驱动

    通用串行总线(USB)是一个在主机和许多外设之间的连接. 最初它被创建来替代许多慢速和不同的总线- 并口, 串口, 和键盘连接--有一个单个的所有设备都可以连接的总线类型.[45] USB 已经成长超 ...

  8. Linux 内核引导参数简介

    概述 内核引导参数大体上可以分为两类:一类与设备无关.另一类与设备有关.与设备有关的引导参数多如牛毛,需要你自己阅读内核中的相应驱动程序源码以获取其能够接受的引导参数.比如,如果你想知道可以向 AHA ...

  9. Linux 内核版本命名

    Linux 内核版本命名在不同的时期有其不同的规范,我们熟悉的也许是 2.x 版本奇数表示开发版.偶数表示稳定版,但到 2.6.x 以及 3.x 甚至将来的 4.x ,内核版本命名都不遵守这样的约定. ...

随机推荐

  1. Oracle SQL——如何用一个表的数据更新另一个表中的数据

    背景 一次处理数据的过程中,需要将表A(源表)的数据更新到表B(目标表)中 前提 两张表一定要有关联字段 使用关联字段联查两张表时,两张表关系必须满足条件:目标表和源表的表间关系一定是多对一或者一对一 ...

  2. 集合--Set&&HashSet和TreeSet

    特点:元素无序,不可重复 1.添加元素 set.add("tanlei"); set.addAll(Arrays.asList(44,"磊","磊&q ...

  3. (六)IO流之过滤流

    过滤字节流FilterInputStream和FilterOutputStream BufferedInputStream和BufferedOutputStream    需要使用已存在的节点流来构造 ...

  4. Mac终端打开AndroidStudio已创建模拟器

    目的 偶尔我们只是想运行模拟器,并不想打开AndroidStudio,这时我们可以从终端找到emulator,通过emulator来启动指定名称的模拟器 步骤 1.找到emulator所在位置 fin ...

  5. [转]The Curse of Dimensionality(维数灾难)

    原文章地址:维度灾难 - 柳枫的文章 - 知乎 https://zhuanlan.zhihu.com/p/27488363 对于大多数数据,在一维空间或者说是低维空间都是很难完全分割的,但是在高纬空间 ...

  6. TIJ——Chapter Six:Access Control

    package:the library unit The levels of access control from "most access" to "least ac ...

  7. 《C程序设计语言》笔记(一)

    一:导言 1:printf中的格式化字符串: %ld                    按照long整型打印 %6d                   按照十进制整数打印,至少6个字符宽,不够的 ...

  8. jQuery 手风琴效果

    //点击标题弹出对应的div 再次点击则隐藏 //jQuery只能获取行内的样式 没法获取头部的样式 $(".parentWrap .menuGroup span.groupTitle&qu ...

  9. 通过反射 拿到方法 Day25

    package com.sxt.method1; /* * 通过反射 拿到方法 */ import java.lang.reflect.Method; import java.lang.reflect ...

  10. Java练习 SDUT-1230_平方和与立方和

    平方和与立方和 Time Limit: 1000 ms Memory Limit: 65536 KiB Problem Description 给定一段连续的整数,求出他们中所有偶数的平方和以及所有奇 ...