- 1、本文档共36页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
07,补充UCOSIO管理new概论
* * * * * * * * * 工作过程 xxx_initialize xxx_open xxx_close xxx_read xxx_write xxx_control initialize open close read write control Major=fnDM_DriverInstall(xxx_initialize,xxx_open,xxx_close,xxx_read,xxx_write,xxx_control) (5) I/O系统返回记录在驱动程序地址表中的索引,即主设备号(major=2) (1)驱动程序安装函数为六个基本I/O函数指定地址。 (2)I/O系统在驱动程序地址表中定位下一个空闲的记录。 (3)I/O系统在驱动程序地址表中填入驱动程序的六个函数地址。 (4) I/O系统立即调用新驱动程序的xxx_initialize()函数,初始化驱动程序,完成设备的注册。 驱动程序地址表 0 1 2 3 4 驱动程序注册 工作过程 设备注册 name1 major minor1 name2 major minor2 xxx_initialize xxx_open xxx_close xxx_read xxx_write xxx_control initialize open close read write control 驱动程序地址表 0 1 2 3 4 Status=fnDM_NameRegister(“name”,major,minor1); Status=fnDM_NameRegister(“name”,major,minor2); I/O系统注册设备到设备名表中,注册的内容包括设备名、major和 minor 设备名表 工作过程 打开设备 工作过程 关闭设备 系统调用close( )关闭一个不再使用的设备,关闭一个设备时,I/O系统的内部运作过程和写一个设备大致相同,不同的是I/O系统根据设备名表中的主设备号在驱动程序地址表中定位并调用驱动程序的xxx_close( )函数,然后释放文件表中的记录,返回。在此之后对该文件描述符的任何引用都将返回错误。但是随后的open( )系统调用将仍然返回该文件描述符。 工作过程 写设备 读设备 控制设备操作与写设备操作流程类似 * * * * * * * * * * * * * * * * * * * * * * * * * * * 电子科技大学嵌入式软件工程中心 第八章 I/O管理 主要内容 I/O管理概述 一种I/O系统实现方法 体系结构 实现考虑 在通用操作系统中,I/O管理采用层次结构的思想(如四个层次的结构:中断处理程序,设备驱动程序,与设备无关的操作系统软件,用户层软件): 较低层的软件要使较高层的软件独立于硬件的特性, 较高层软件则要向用户提供一个友好、清晰、规范的接口。 I/O管理概述 I/O管理概述 在I/O管理的层次结构中,主要通过设备独立的I/O系统和设备驱动程序来共同完成I/O操作。 设备驱动程序通过一组例程来提供比较低级的I/O功能,比如把字节序列输入或输出到面向字符的设备中。 高级协议(如面向字符设备的通信协议)则由与设备无关的I/O系统来实现。 在一些实时内核的I/O系统中,用户I/O请求在到达设备驱动程序之前,通常都只进行非常少量的处理。 实时内核的I/O系统的作用就像一个转换表,把用户对I/O的请求转换到相应的驱动程序例程。 驱动程序就能够获得最原始的用户I/O请求,并对设备进行操作。 I/O管理概述 I/O管理概述 为满足标准设备处理的需要,I/O系统通常也提供一些高级的例程库,便于实现设备的标准通信协议。 I/O系统既便于实现能够满足大多数设备要求的、标准的驱动程序; 在需要时,方便地实现非标准的设备驱动程序,以满足实时性或是其他的特殊需要。 一种I/O系统实现方法 在不同CPU和I/O设备之间的可移植性就成为嵌入式操作系统设计时需要重点考虑的内容 可移植性有助于增强操作系统和应用的重用,以保护应用投资 如何有助于提高编写驱动程序的便利性,通常也是应用开发人员非常关注的特性 降低驱动程序的开发难度,则能有效提高系统的开发效率 体系结构 API 设备管理 中断驱动程序 串口驱动程序 键盘驱动程序 串口卡A 硬件抽象 串口卡B 硬件抽象 串口1 串口2 串口4 串口2 串口3 串口1 …… …… …… 驱动逻辑层 硬件抽象层 设备 设备管理层 API层 为了有效组织和管理各种不同的设备,可以采用分层的思想,把I/O系统从上到下分为四层,分别为API、设备管理、驱动逻辑和硬件抽象。 体系结构 硬件抽象层 是硬件功能模块的集合,是对硬设备功能的第一层抽象,实现基本的IO操作。 所关心的
文档评论(0)