网站大量收购闲置独家精品文档,联系QQ:2885784924

vxworks_IO系统_哈尔滨工业大学.ppt

  1. 1、本文档共68页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
vxworks_IO系统_哈尔滨工业大学

嵌入式操作系统 ? ttyDrv、tyLib、I/O系统和实际驱动程序(xxDrv) 之间的关系: 嵌入式操作系统 4.3 串口加载流程 ? 串口驱动是在VxWorks系统启动时被加载的。以我 们制作的pcPentium映像为例,它的相关文件的层次 如下: usrConfig.c ttyDrv Generic code sysSerialc. Implementation specific code i8250Serial.c Device specific code 嵌入式操作系统 ? 硬件驱动i8250Sio.c相关的加载是在sysSerail.c完 成的,在sysSerail.c中实现函数的调用情况如下: – sysSerialHwInit—由sysHwInit调用,执行设备初始化 – sysSerialHwInit2—由sysHwInit2调用,设置中断函数 入口地址 – sysSerialChanGet—由usrRoot调用,根据设备通道号 得到指向通道描述的指针 嵌入式操作系统 ? 串口驱动在VxWorks的全貌如下: usrConfig.c usrInit() usrRoot() ioLib.c Open() Ioctl() ttyOpen() ttyIoctl() ttyDrv.c ttyDrv() ttyDevCreate() xxDevInit() xxIoctl() xxCallbackInstall() xxTxStartup() xxDrv.c Callback xxIntTx() xxIntRx() Write() Read() sysHwInit() sysClkConnect() sysHwInit2() sysLib.c sysSerialHwInit() sysSerialHwInit2() sysSerialChanGet() sysSerial.c tyWrite() tyRead() tyIoctl() tyDevInit() tyITx() tyIRx() tyLib.c 嵌入式操作系统 VxWorks和Linux的区别 ? 文件描述符: – 在Linux中,文件描述符和进程是相对应的 – 在VxWorks中,除了标准输入、输出和错误输出外, 其他的文件描述符是一个全局 ? 设备驱动优先级: – 在Linux中,设备驱动程序运行在系统模式,并且没有 优先级 – 而在VxWorks中,设备驱动有优先级,因为它是运行 在调用它的任务的上下文中,任务的优先级就是被调 用的设备驱动的优先级 嵌入式操作系统 驱动程序 索引号 0 1 2 3 creat remove open close read write ioctl --- --- --- --- --- --- --- --- --- --- --- --- --- --- xxOpen NULL xxOpen xxClose xxRead xxWrite xxIoctlt --- --- --- --- --- --- --- 嵌入式操作系统 设备列表 ? 系统中有一个设备列表,每个设备对应于设备列 表中的一项,每一项包括设备名称和设备驱动号, 同时包括一个设备描述的结构 – 设备结构体(xxDEV)第一个变量是DEV_HDR 类型的变量 嵌入式操作系统 ? 设备描述符结构 设备连接的列表节点 DL_NODE 与驱动程序无 关的部分 设备名称 驱动号 驱动程序表索引 与驱动程序相 关的部分 设备的特殊 结构 嵌入式操作系统 ? 设备描述符组成一个链表形成设备列表 “/pipe/abc” 2 管道驱动 程序数据 “/pipe/xyz” 2 管道驱动 程序数据 “/tyCo/0” 1 串口驱动 程序数据 嵌入式操作系统 ? VxWorks提供iosShow库支持各个表的显示 显示驱动程序描述表 显示设备列表 显示文件描述符表 嵌入式操作系统 3.4 I/O系统启动流程 ? 在系统的启动过程中,VxWorks按如下步骤初 始化I/O系统和加载设备: – 调用iosInit初始化I/O系统 – 调用xxDrv初始化设备驱动程序 – 调用xxDevCreate创建设备(可能有若干个) ? 上述调用在bootConfig.c (对于bootrom)或 usrConfig.c(对于VxWorks映像)的usrR

文档评论(0)

yaocen + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档