成 绩 评 阅 人 评阅日期 计 算 机 科 学 与 技 术 系 《 计 算 机 操 作 系 统 》 课 程 设 计 设计题目: Lin u x 下 USB 驱动设计 班 级: 学 号: 姓 名: 指导老师: 2 2 0 1 1 年 6 月 1 6 日 实验目的: 实 现 在 Linux 下 对 硬 件 设 备 Kingston U 盘 的 驱 动 ; 实验环境: Linux 系 统 : Red Hat Enterprise Linux 5 内 核 : 2.6.18-53.el5(系 统 内 核 版 本 )、 2.6.16(编 写 USB 驱 动 内 核 版 本 ) 实验原理: 1、设备驱动和文件系统的关系 图 1 显 示 了 Linux 内 核 的 体 系 结 构 , 从 图 中 可 以 看 出 应 用 程 序 是 通 过文 件 子 系 统 来 访 问 底 层 设 备 的 。 一 个 物 理 设 备 , 在 文 件 系 统 中 对 应 一 个 或多 个 逻 辑 结 点 , 设 备 文 件 的 属 性 由 三 部 分 信 息 组 成 : 文 件 的 类 型 (c/b)、 主设 备 号 、 次 设 备 号 , 其 中 设 备 类 型 和 主 设 备 号 结 合 在 一 起 唯 一 地 确 定 了 设备 文 件 的 驱 动 程 序 及 其 界 面 , 而 次 设 备 号 则 说 明 目 标 设 备 是 同 类 设 备 中 的第 几 个 。 3 2、Linux 驱动程序的基本原理 Linux 下 开 发 设 备 驱 动 程 序 的 原 理 较 之Windows 系 统 来 说 结 构 简 单 层次 清 楚 。 挂 在 Linux 上 的 每 个 设 备 都 被 描 述 为 设 备 驱 动 程 序 文 件 , 一 些 与设 备 有 关 的 设 备 参 数 文 件 被 保 存 在 /dev 目 录 下 。 用 户 自 己 提 供 或 编 写 设 备驱 动 时 , 也 需 要 在 /dev 目 录 下 有 一 个 设 备 文 件 。 设 备 驱 动 程 序 可 以 分 为 三个 主 要 组 成 部 分 : ① 自 动 配 置 和 初 始 化 子 程 序 ; ② 服 务 于I/O 请 求 的 子 程序 ; ③ 中 断 服 务 子 程 序 。 骨 架 关 系 如 图 2: 4 3、USB 骨架驱动程序 (1)USB 驱动的注册 Linux USB 驱 动 程 序 需 要 做 的 第 一 件 事 情 就 是 在 Linux USB ...