复习嵌入式.doc
《复习嵌入式.doc》由会员分享,可在线阅读,更多相关《复习嵌入式.doc(14页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、选择题1、不属于守护进程的是()A、创建子进程,父进程退出;B、调用setsid()创建一个新的会话,并担任该会话组组长;C、改变当前目录为根目录chdir(“/”);D、重设文件权限掩码umask(1)。2、以下哪个GUI是由中国人主持的一个自由软件项目:( )AMinuGUIBOpenGUI C MicroWindows D Qt/Embedded3、下列进程状态的转换中,不正确的是( )。 A. 就绪一运行 B运行一就绪C就绪一阻塞 D阻塞一就绪4、多个进程的实体能存在于同一内存中,在一段时间内都得到运行。这种性质称作进程的( )。 A动态性 B并发性 C. 调度性 D异步性5、通常所讲
2、的交叉编译就是在X86架构的宿主机上生成适用于ARM架构的( )格式的可执行代码。A 、elf B、exe C、 pe D、 sh6、通常用户编写的程序中所使用的地址是( )。 A. 逻辑地址 B物理地址C. 绝对地址 D内存地址7、下列对设备驱动程序功能的叙述,顺序不正确的是()。A对设备进行初始化 B把数据从内核传送到硬件和从硬件读取数据C读取应用程序传送给设备文件的数据和会送应用程序请求的数据D不需对设备驱动释放8、设备的打开、关闭、读、写等操作是由( )完成的。 A. 用户程序 B编译程序 C. 设备分配程序 D设备驱动程序9、以下哪个不是Linux进程的状态:( )A. TASK_Z
3、OMBIE B. TASK_INTERRUPTIBLE C. TASK_RUNNING D. TASK_SUSPENDED10、每个设备文件都对应有两个设备号,而标识该设备的种类,也标识了该设备所使用的驱动程序的识别号是指( )A、 主设备号 B、次设备号 C、块设备号 D、字符设备号判断改错题。注意:1、用户程序应与实际使用的物理设备无关,这种特性就称作设备独立性。正确。2、普通进程可以通过管道机制同守护进程进行通信。错误。可以用命名管道FIFO,不能用无名管道,因为无名管道通讯方式必须要在有亲缘关系的进程中实现。3、自旋锁在任何时刻可以有超过一个的保持者。错误。只有一个拥有者。4、进程的几
4、个状态之间可以相互转化。错误,(1分)只有就绪态和执行态可以。其他两个都是单向的。(1分)5、在Linux系统中,当一个进程fork()一个新的子进程时,这个子进程将父进程的进程控制块,进程内存控制信息,文件访问信息,上下文等资源全部继承,即做了一个完整的副本。错误。父进程产生子进程时,只分配一个指向父进程的指针向量,当子进程执行时才从父进程那复制一份为自己所用。6、应用层考虑网络编程模型时,TCP与UDP可以任意选用,只要在本机上(localloop)调试能通过调试就行。错误。还应考虑底层网络通信质量是否可靠。7、命名管道在完成进程间通信的任务后,系统就将资源回收,不能再被任何进程读或写了。
5、错误。当共享管道的进程执行完所有的I / O操作以后,命名管道将继续保存在文件系统中以便以后使用。8、为了提高CPU执行效率,在驱动程序编写的时候应尽可能地对I/O设备访问采用阻塞方式;在应用层程序编写的时候则对用户进程采取非阻塞的方式。错误 。刚好相反。在用户空间应该尽量采用阻塞方式,这样在用户进程得不到执行所需要的资源的时候能从运行态转到阻塞或就绪态,让出CPU从而别的进程去执行,提高了效率。而对于驱动程序而言,由于是在内核态执行,应该尽可能地不要打断对外设的访问,快速的完成,避免CPU忙地等待。 9、如果fork()系统函数调用成功,返回值只有一种,要么是0(在子进程中)要么是子进程的I
6、D号。错误。创建成功,它是唯一有两个返回值的系统调用,需要同时在父进程和子进程中给出返回值10、进程ID为1通常是init进程,在自举过程结束时由内核调用。init进程绝不会终止,它是一个系统进程,并且以超级用户特权运行。错误,它是一个普通的用户进程(与交换进程不同,它不是内核中的系统进程)。填空题(每空0.5分,共20分)2、进程的运行有两种方式,即(独立,)和(使用父进程)。4、Linux系统是一个多进程的系统,进程之间具有(并行性)、(互不干扰)的特点。linux中进程包含3个段,分别为(代码段)、(堆栈段)和(数据段)。(信号)是软件中断,它是Unix系统中最为古老的进程之间的通信机制
7、,它被经常用于在一个或多个进程之间传递(异步)信号。5信号处理的主要方法有两种,一种是(使用简单的signal函数),另一种是(使用信号集函数组)6信号操作的一般流程是(定义信号集)、(设置信号屏蔽位)、(定义信号处理函数)、(测试信号)。7消息队列的实现包括(创建和打开队列)、(添加消息)、(读取消息)和(控制消息队列)这四种操作。8通过(虚拟内存)地址空间的页与物理地址空间中的页之间的映射,(分页机制)可实现虚拟内存地址到物理内存地址之间的转换。10、linux的任务状态中,主要用于设备驱动程序开发的是 _TASK_UNINTERRUPTIBLE。12、字符型设备的读写以(字节)为单位,存
8、取时没有缓存。对字符型设备发出读写请求时,实际的硬件I/O紧接着就发生了。13、普通进程与daemon进程的最主要区别是daemon常驻内存。14、嵌入式系统程序员经常需要编写一些直接访问控制外设的代码。对于不同的嵌入式处理器体系机构,外设可能采用(内存映射方式)方式(如Motorola的大部分嵌入式处理器),也可能采用(端口映射方式)方式(如Intel的大部分嵌入式处理器)。15、进程的实体包括哪三个部分程序,、数据,进程控制块、 。简答题(每小题2分,共20分)1、简述设备驱动的开发流程。查看原理图,理解设备的工作原理;定义主设备号;在驱动程序中实现驱动的初始化,如果驱动程序采用模块的方式
9、,则实现模块的初始化;设计所要实现的文件的操作,定义file_operation结构;实现中断服务(中断并不是每个设备驱动所必须的);编译该驱动程序到内核中,或者用insmod命令加载;测试该设备。4、简述自旋锁与信号量的异同点?答案:自旋锁与信号量的相同点:它们功能上的相似性,无论是信号量,还是自旋锁,在任何时刻,最多只能有一个保持者,即在任何时刻最多只能有一个执行单元获得锁;不同点:它们在本质和实现机理上完全不一样,不属于一类。自旋锁不会引起调用者睡眠,如果自旋锁已经被别的执行单元保持,调用者就一直循环查看是否该自旋锁的保持者已经释放了锁,自旋就是在原地打转。而信号量则引起调用者睡眠,它把
10、进程从运行队列上拖出去,除非获得锁。自旋锁适合于保持时间非常短的情况,它可以在任何上下文使用;信号量适合于保持时间较长的情况,会只能在进程上下文使用。5、什么是守护进程?守护进程的特征有哪些?守护进程( daemon)是生存期长的一种进程。它们常常在系统引导装入时起动,在系统关闭时终止。因为它们没有控制终端,所以说它们是在后台运行的。守护进程特征:(1)所有守护进程都以超级用户(用户I D为0)的优先权运行。(2)没有一个守护进程具有控制终端终端名称设置为问号(?)、终端前台进程组I D设置为1。缺少控制终端可能是精灵进程调用了s e t s i d的结果。(3)除u p d a t e以外的
11、所有精灵进程都是进程组的首进程,对话期的首进程,而且是这些进程组和对话期中的唯一进程。u p d a t e是它所在进程组和对话期(中的唯一进程,但是该进程组的首进程(可能也是该对话期的首进程)已经终止。(4)所有这些守护进程的父进程都是i n i t进程6、字符设备驱动和块设备驱动的区别在对字符驱动发出读写请求时,实际的硬件I/O一般紧接着发;块设备则不然,它利用一块系统内存作为缓冲区,若用户进程对设备的请求能满足用户需求,就返回请求的数据,否则,就调用函数来进行实际的操作。7、驱动程序对外设物理地址的访问方式?统一编址:I/O内存映射,I/O端口映射。 独立编址:直接I/O端口访问。 8、
12、内核空间和用户空间通过什么进行交互?外部设备与内核空间通过什么进行交互?系统调用用来对内核空间与用户空间交互,而外设与内核空间的交互则通过驱动程序交互。9、如何使用内核定时器?基本流程为:1、 创建timer,编写function.2、 为time的expires,data,function赋值3、 调用add_time 将timer加入列表4、 定时器到期后,function被执行5、 在涉及到timer的时候适当地调用del_timer。删除timer或修改timer的expires:Struct timer_list mytimer;init_timer(&mytimner);mytim
13、er.function=mytimer_ok;mytime.expires=jiffies+HZ/100;add_timer(&mytimer);del_timer(&mytimer);各个系统调用可以根据情况放置于不同的内核模块函数中。10、什么情况下用共享内存、信号、消息队列?(1)从资源使用情况; (2)任务规模大小;(3)进程的同步或异步性质。 操作题。写出完成以下功能的命令:每小题2分,满分12分。1、新建文件夹/helloworld, 并创建名为helloworld.c的文件。mkdir helloworld2、终止进程号为3857的进程。kill 38573、查看加载的U盘的名称
14、fdisk -l5、卸载已安装的rpm文件rpm -e6、更改用户root的密码(在提示符下)。password root一、选择题 1、以下哪个不是Linux进程的状态:( )A. TASK_ZOMBIE B. TASK_INTERRUPTIBLEC. TASK_RUNNING D. TASK_SUSPENDED2、多个进程的实体能存在于同一内存中,在一段时间内都得到运行。这种性质称作进程的( )。 A动态性 B并发性 C. 调度性 D异步性3、下列进程状态的转换中,不正确的是( )。 A. 就绪一运行 B运行一就绪C就绪一阻塞 D阻塞一就绪4、每个设备文件都对应有两个设备号,而标识该设备的
15、种类,也标识了该设备所使用的驱动程序的识别号是指( )A主设备号 B、次设备号 C、块设备号 D、字符设备号5、在下面的叙述中,( )不是嵌入式图形用户接口(GUI)的主要特点。A. 运行时占用的系统资源少 B. 模块化结构,便于移植和定制C. 可靠性高 D. 美观华丽,图形算法复杂6、操作系统内核与用户程序、应用程序之间的接口是( )。 Ashell命令 B图形界面C. 系统调用 D. C语言函数7、系统软件是_的软件。A、向应用软件提供系统调用等服务 B、与具体硬件逻辑功能无关C、在应用软件基础上开发 D、并不具体提供人机界面8、设备的打开、关闭、读、写等操作是由( )完成的。 A. 用户
16、程序 B编译程序 C. 设备分配程序 D设备驱动程序9、通常,用户编写的程序中所使用的地址是( )。 A. 逻辑地址 B物理地址 C. 绝对地址 D内存地址10、设备按照信息的传递特性可分为_和块设备。A、共享设备 B、输入输出设备 C、系统设备 D、字符设备二、判断改错题。1、POSIX中两种线程同步机制,分别是互斥锁和信号量。其中,信号量用在多线程多任务同步的场合,而互斥锁是用在多线程多任务互斥的场合。正确2、编程往一个文件中写入数据,实现打开文件的语句是:fp=fopen(data.txt,r+);正确3、 exit的作用:直接使进程停止运行,清除其使用的内存空间,并清除其在内核中的数据
17、结构; 正确。4、 自旋锁在任何时刻可以有超过一个的保持者。正确。5、 自旋锁不会引起调用者的睡眠,信号量会。正确。6、 标准I/O提供了两种缓冲:全缓冲,行缓冲。正确7、 Linux应用层中可以用阻塞和非阻塞的方式打开文件。正确8、 fork创建进程若是成功,将返回子进程的ID.正确9、 守护进程比超级用户的优先权要低。正确10、 ARM9能直接访问物理地址。正确三、填空题1、驱动程序的常用接口函数有_ open、_ close、 、read 、_、write、_、ioctl。2、驱动程序对外设物理地址的访问方式。统一编址:_ (I/O内存映射),(I/O端口映射)。独立编址:_ (直接I/
18、O端口访问) 。3、普通进程与daemon进程的最主要区别是_ daemon进程常驻内存 。4、linux内核模块的编译方法有哪几种_静态内核编译 、_动态模块加载 。.5、进程的实体包括哪三个部分_程序、_数据集合、_进程控制快 。6、进程间通信的方式有_信号,信号量,消息队列,共享内存。7、fork返回值有 _返回0子进程 、_子进程ID 、_返回-1出错 等三种情况。8、Linux内核有2种加载驱动程序的方法,分别是_静态加载 、_动态加载 。9、I/O内存的访问步骤要用到的俩个重要函数是_ void * ioremap() 、_ void * iounmap() 。10、中断过程的5个
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 复习 嵌入式
限制150内