ARM9嵌入式第七章习题346.docVIP

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第7章 嵌入式Linux设备驱动程序开发模拟试题 一.简答题 1、嵌入式Linux的设备文件的属性是由哪三部分信息组成? 答:第一部分是文件的类型,第二部分是一个主设备号,第三部分是一个次设备号。其中类型和主设备号结合在一起惟一地确定了设备文件驱动程序及其界面,而次设备号则说明目标设备是同类设备中的第几个。 2、嵌入式Linux的设备管理子系统的结构通常由哪几部分组成? 答:嵌入式Linux的设备管理子系统的结构通常包括用户进程、文件系统层、设备驱动层和硬件层。 3、简述用户进程 答:用户进程:用户进程一般位于内核之外,当它需要操作设备时,可以就像访问普通文件一样,通过调用read(),write()等文件操作系统调用来完成对设备文件的访问和控制。 4、简述嵌入式Linux的设备管理子系统结构中的文件系统层的作用 答:文件系统层:它位于用户进程层下面,属于内核空间,基本功能是执行适合于所有设备的输入输出功能,使用户透明的访问文件。通过本层的封装,设备文件在上一层看来就和普通文件没有区别,也拥有读、写和执行权限,拥有和它对应的索引节点等。在用户进程发出系统调用要求输入输出操作时,文件系统层就处理请求的权限,通过设备驱动层的接口将任务传到驱动程序。 5、简述嵌入式Linux的设备管理子系统结构中的文件系统层的作用 答:设备驱动层:设备驱动程序位于内核中,它根据文件系统层的输入输出请求来操作硬件上的设备控制器,完成设备的初始化、打开释放、以及数据在内核和设备间的传递等操作。 6、Linux 中的设备可以分为哪三类? 答:Linux 中的设备可以分为三类:字符设备,块设备和网络设备。 7、解释Linux 中的字符设备,并举出几种常见的字符设备。 答:Linux 中的字符设备没有缓冲区,数据的处理是以字节为单位按顺序进行的,它不支持随机读写。普通打印机、系统的串口以及终端显示器是比较常见的字符设备,嵌入式系统中简单的按键、触摸屏、手写板也都属于字符设备。 8、解释Linux 中的块设备,并举出几种常见的块设备。 答:Linux 中的块设备是指那些在输入/输出时数据处理以块为单位的设备,它一般都采用了缓存技术,支持数据的随机读写。典型的块设备有硬盘、cd-rom 等。对用户来说块设备和字符设备的访问接口都是一样的,都是一组基于文件的系统调用,如read,write等,它们实现上细节的区别仅在内核和驱动程序的软件接口上。 9、解释Linux 中的网络设备,并举出几种常见的网络设备。 答:Linux 中网络设备的实现方法不同于字符型设备和块型设备,它面向的上一层不是文件系统层而是网络协议层,设备节点只有在系统正确初始化网络控制器之后才能建立。内核和网络设备驱动程序间的通信,与字符设备驱动程序、块设备驱动程序与内核间的通信也是完全不一样的。网卡是属于网络设备。 10、怎样查看目标机上的设备的主次设备号? 答:进入目标机后,查看/dev 目录下的设备的主次设备号可以使用如下命令: [/mnt/yaffs]ls /dev -l 一个运行的linux 系统,当前使用的设备可以通过文件/proc/devices 查看。 11、向系统添加一个驱动程序相当于添加一个主设备号,写出字符型设备主设备号的添加和注销函数,并说明这两个函数原型在linux的何文件中说明。 答:字符型设备主设备号的添加和注销分别通过调用函数register_chrdev()和unregister_chrdev()实现,这两个函数原型在linux/fs.h文件说明。 extern int register_chrdev(unsigned int major, const char *name,struct file_operations *fops); extern int unregister_chrdev(unsigned int major, const char *name); 这两个函数运行成功是返回0,运行失败返回一个负的错误码。参数major 对应所请求的主设备号,name 对应设备的名字,fops 对应于该设备的一个结构。 12、简述数据结构file_operations的作用。 答:linux的内核内部通过file结构识别设备,通过file_operations数据结构提供文件系统的入口点函数,也就是访问设备驱动的函数。这个数据结构的每一个成员的名字都对应着一个系统调用。在用户进程利用系统调用对设备文件进行诸如read/write操作时,系统调用通过设备文件的主设备号找到相应的设备驱动程序,然后读取这个数据结构相应的函数指针,接着把控制权交给该函数,这就是Limux的设备驱动程序的工作原理。在file_operations数据结构中,指出了设备驱动程序所提供的入口点位

文档评论(0)

qhhb493 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档