嵌入式系统与设计习题集_第1页
嵌入式系统与设计习题集_第2页
嵌入式系统与设计习题集_第3页
嵌入式系统与设计习题集_第4页
嵌入式系统与设计习题集_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 DC、高可靠性D、交互性CC、通用性D、计算机系统DB、以嵌入式CPU为基础、以简单操作系统为核心D、Internet选择题1下列哪一项不是嵌入式操作系统的特点A、占有资源少B、低成本2下列哪一项不是嵌入式系统的基本要素A、嵌入性B、专用性3现阶段嵌入式系统发展的主要标志为A、以单芯片为核心的可编程控制器C、嵌入式操作系统4下面哪项不是嵌入式系统的特点DA、面向特定应用B、软件一般都固化在存储器芯片或单片机本身中,而不存储于磁盘中C、代码尤其要求高质量、高可靠性D、具备二次开发能力5下面哪项不是ARM处理器的特点DA、支持Thumb(16位)/ARM(32位)双指令集B、兼容8位/16位器件

2、C、指令长度固定6下面哪项不是ARM处理器的特点BA、大多数数据操作都在寄存器中完成C、寻址方式灵活简单,执行效率高7下面哪项不属于ARM处理器模式AA、管理模式(root)C、快速中断模式(fiq)8下面哪项为错误的说法AD、大量使用RAM,指令执行速度更快B、采用CISC指令集D、体积小、低功耗、低成本、高性能B、用户模式(usr)D、外部中断模式(irq)A、冯诺依曼结构共用数据存储空间和程序存储空间,不共享存储器总线B、哈佛结构有分离的数据和程序空间及分离的访问总线C、哈佛结构在指令执行时,取址和取数可以进行并行操作D、哈佛结构指令执行时效率更高9采用下列哪项更有利于开发微型嵌入式应用

3、系统BA、脚本程序语言B、C语言或汇编语言C、C+或SQL语言D、HTML或XML语言10下面哪项为一般嵌入式系统开发中不具备的环节BA、系统总体开发B、数据库设计C、嵌入式硬件开发D、嵌入式软件开发11在嵌入式系统开发过程中下面哪项为错误的说法BA、对于有些硬件和软件都可以实现的功能,需要在成本和性能上做出抉择B、对实时性要求非常高的产品可以选择嵌入式Linux开发环境C、嵌入式系统的软件开发与通常软件开发的区别主要在于软件实现部分D、嵌入式系统的软件开发可分为交叉编译和交叉调试两部分12对于Linux操作系统,下面哪项说法是错误的DA、是一种开源的操作系统B、提供了强大的应用程序开发环境C

4、、可以免费使用D、不支持Sparc硬件平台13修改文件a.txt的权限,使每个用户都可以读取和写入这个文件,相应命令为AA、chmod666a.txtB、chmod777a.txtC、chmod755a.txtD、chmod555a.txt14某文件的组外成员的权限为只读;所有者有全部权限;组内的权限为读与写,则该文件的权限为DA、467B、674C、476D、76415系统中有用户userl和user2,同属于users组。在userl用户目录下有一文件filel,它拥有644的权限,如果user2用户想修改user1用户目录下的file1文件,应文件拥有权限为BA、74416某文件的权限是

5、-rwxr-r-A、文件的权限值是755C、其他用户对文件只有读权限B、664C、646则下面描述正确的是CB、文件的所有者对文件只有读权限D、同组用户对文件只有写权限BD、74617某文件的原有权限是-rwxrr,执行chmodo+x后文件权限为-rwxr-xr-A、-rwxr-xr-xB、-rwxr-r-x18clear命令的作用是AA、清除终端窗口B、关闭终端窗口19显示当前目录中的全部文件,相应命令为A、lsB、ls-aC、C、打开终端窗口C、ls-l20在Linux操作系统默认情况下,ls命令显示的可执行文件颜色为灰色D、黄色rootroot599cec10A、绿色B、蓝色C、21用

6、命令显示出文件ff的描述为-rwxr-xr1知文件ff的类型为AA、普通文件B、硬链接C、目录D、符号链接D、-rw-r-r-D、调整窗口大小17:12ff由此可22用命令列出下面的文件列表,请问那一个文件是符号链接文件DA、-rw2hel-susers56Sep0911:05helloB、-rw2hel-susers56Sep0911:05goodbeyC、drwx1helusers1024Sep1008:10zhangD、lrwx1helusers2024Sep1208:12cheng23删除文件命令为DA、mkdirB、rmdirC、mvD、rm26对于tar.gz结尾的文件,采用下面哪

7、个命令进行解压缩操作AA、tarxvzfB、tarjxvfC、tarczvfD、tarjcvf24对于tar.bz2结尾的文件,采用下面哪个命令进行解压缩操作BA、makeconfigB、makemenuconfigC、makexconfigD、makeoldconfig28在Linux内核配置过程中,下面哪项命令建立依赖关系CA、makeconfigB、makemenuconfigC、makedep29内核的编译主要步骤不包括下面哪项DA、内核配置B、建立依存关系C、建立内核30采用哪项运行级别为图形用户登录Linux操作系统DD、makecleanD、加载内核A、0B、1C、3D、5A、t

8、arxvzfB、tarjxvfC、tarczvfD、tarjcvf25在vi编辑器中执行存盘退出的命令为DA、:qB、:sqC、:q!D、:wq26vi编辑器中不包括下面哪种模式AA、编辑模式B、命令行模式C、插入模式D、底行模式27在Linux内核配置过程中,下面哪项命令采用的是基于图形窗口模式的配置界面C31下面关于Linux系统服务的说法哪项是错误的CA、独立运行的系统服务的启动脚本都放在目录/etc/rc.d/init.d/中B、不同运行级别的脚本文件目录为/etc/rc.d/rcN.d,其中N对应不用的运行级别C、不同运行级别的脚本文件中每个对应的服务都以“C”或“S”开头,其中的C

9、代表关闭,s代表启动D、使用命令“service+系统服务+操作”实现对相应服务操作32使用下面哪项命令查看系统的默认运行级别AA、RunlevelC、chkconfig-list33下面哪种语言GCC编译器不支持CA、CB、Java34GCC的正确编译流程为AA、预处理-编译-汇编-链接C、预处理-链接-编译-汇编35下面哪项关于GCC编译过程的说法是B、servicexinetdstatusD、chkconfigxinetdstatusC、ASPD、C+B、预处理-编译-链接-汇编D、编译-预处理-汇编-链接DA、编译阶段GCC要检查代码规范性、是否有语法错误等,确定代码的实际要做的工作B

10、、汇编阶段是把编译阶段生成的.s文件转成目标文件C、预处理阶段,GCC编译器将代码中包含的头文件编译进来D、GCC在编译时默认使用静态库36如需GCC提供编译过程中所有有用的报警信息,则在编译时应加入选项BA、-wB、-WallC、-werrorD、-error37下面哪些与GDB相关的说法是错误的BA、GDB能调试可执行文件B、GDB能调试源代码C、GDB对编译过程有要求D、GDB支持交叉调试38open函数的原型函数为说明AA、intopen(constchar*pathname,flags,intperms)B、ssize_topen(intfd,void*buf,size_tcount

11、)C、FILE*open(constchar*path,constchar*mode)D、off_topen(intfd,off_toffset,intwhence)read函数的原型函数为说明BA、intread(constchar*pathname,flags,intperms)B、ssize_tread(intfd,void*buf,size_tcount)C、FILE*read(constchar*path,constchar*mode)D、off_tread(intfd,off_toffset,intwhence)lseek函数的原型函数为说明DA、intlseek(constcha

12、r*pathname,flags,intperms)B、ssize_tlseek(intfd,void*buf,size_tcount)C、FILE*lseek(constchar*path,constchar*mode)D、off_tlseek(intfd,off_toffset,intwhence)41一个进程启动时打开3个文件中不包括DA、标准输入B、标准输出C、标准出错处理D、系统日志服务42一般情况下,STDIN_FILENO对应的文件描述符为BA、-1B、0C、1D、243一般情况下,STDERR_FILENO对应的文件描述符为DA、-1B、0C、1D、244不带缓存的文件I/O操

13、作函数不包括AA、fopenB、readC、writeD、openopen函数原型中的0_RDWR标志表示文件打开方式为CA、只读方式打开文件B、可写方式打开文件C、读写方式打开文件D、以添加方式打开文件,在打开文件的同时,文件指针指向文件末尾open函数调用错误时,函数返回值为AA、-1B、0C、1D、247在Linux操作系统中,串口设备的设备名一般为CA、com1B、port1C、ttyS0D、serl148当流缓冲涉及一个终端时,标准I/O典型地使用下面哪项缓冲方式BA、全缓冲B、行缓冲C、无缓冲D、帧缓冲49使用fopen函数时,必需包含的头文件文件为AA、stdio.hB、stdl

14、ib.hC、errno.hD、fcntl.h50下面哪项是对进程概念的错误描述DA、进程是一个独立的可调度的活动B、进程是一个抽象实体,当它执行某个任务时,将要分配和释放各种资源C、进程是可以并行执行的计算部分D、进程是保存在磁盘上的指令的有序集合51下面哪项对进程的描述是错误的AA、进程是一个静态态的概念B、进程包括动态创建、调度和消亡的整个过程。C、进程是程序执行和资源管理的最小单位D、当用户在系统中键入命令执行一个程序的时候,它将启动一个进程52下面哪项对进程控制块的描述是错误的A、进程控制块包含进程的描述信息C、进程控制块包含进程的资源信息53下面哪项对进程标识的描述是错误的BA、PI

15、D惟一地标识一个进程C、PID是非零的正整数54进程的三种状态为CA、准备态、执行态和退出态C、运行态、就绪态和等待态DB、进程控制块包含进程的控制信息D、进程控制块是进程的一个静态描述B、PPID惟一地标识一个进程D、PPID是非零的正整数B、精确态、模糊态和随机态D、手工态、自动态和自由55下面哪项不是Linux操作系统下常见的进程调度命令CA、bgB、killC、openD、ps56下面哪项对Linux操作系统下fork函数的描述是错误的DA、fork函数执行一次返回两个值B、新进程称为子进程,而原进程称为父进程C、父进程返回值为子进程的进程号D、子进程返回值为父进程的进程号57下面哪项

16、对Linux操作系统下exit()和_exit()函数的描述是错误的CA、_exit()函数的作用是直接使进程停止运行,清除其使用的内存空间,并清除其在内核中的各种数据结构B、exit()函数在调用exit退出系统之前要检查文件的打开情况C、exit()函数直接将进程关闭,此时缓冲区中的数据将会丢失D、想保证数据的完整性,就一定要使用exit()函数。58下面哪项对Linux操作系统下wait和waitpid函数的描述是错误的DA、wait函数用于使父进程(即调用wait的进程)阻塞,直到一个子进程结束或者该进程接到了一个指定的信号为止B、wait函数调用时,如果该父进程没有子进程或者他的子进

17、程已经结束,则wait就会立即返回。C、waitpid函数用于使父进程(即调用wait的进程)阻塞并可提供一个非阻塞版本的wait功能D、waitpid函数不支持作业控制59编写守护进程的第一步为AA、创建子进程,父进程退出B、在子进程中创建新会话C、改变当前目录为根目录D、关闭文件描述符60下面哪项对Linux操作系统下setsid函数的描述是错误的DA、用于创建一个新的会话,并担任该会话组的组长B、让进程摆脱原会话的控制C、让进程摆脱原进程组的控制D、让进程摆脱init进程的控制61在关于设备驱动的描述中,下面哪项是错误的DA、操作系统通过各种驱动程序来驾驭硬件设备B、操作系统为硬件提供统

18、一的操作方式C、操作系统最基本的组成部分是硬件驱动程序D、常见的驱动程序作为内核模块动态加载,比如声卡驱动、网卡驱动、CPU、PCI总线等62在关于模块相关命令的描述中,下面哪项是错误的DA、lsmod列出当前系统中加载的模块B、rmmod用于将当前模块卸载C、cpmod用于将模块复制到用户空间D、insmod用于加载当前模块63在关于设备驱动程序的描述中,下面哪项是错误的DA、Linux设备驱动程序包含中断处理程序和设备服务子程序两部分B、设备控制器需要获得系统服务时采用查询和中断两种方式C、设备服务子程序包含了所有与设备操作相关的处理代码D、设备服务子程序对设备控制器执行操作,不接受用户命

19、令64打开设备的接口函数是open,通常情况下在open函数中要完成的工作中不包括下面哪项DA、递增计数器B、检查特定设备的特殊情况C、初始化设备D、释放设备2.判断题(V)Flash具有和ROM样掉电不会丢失的特性,因此被称为FlashROM。(V)ARM7处理器采用3级流水线设计。(X)ARM9处理器采用3级流水线设计。(X)ARM7处理器采用哈佛结构。(V)ARM9处理器采用哈佛结构。(V)嵌入式软件开发一般采用“宿主机一目标机”开发模式。(X)一般把进行交叉编译的主机称为目标机。(X)一般把程序实际的运行环境称为宿主机。(V)嵌入式系统的软件开发与通常软件开发的区别主要在于软件实现部分

20、。(V)在Linux操作系统安装过程中可进行网络配置。(X)Linux操作系统不可以与MS-DOS、Windows等其它操作系统共存于同一台机器上。(X)Linux操作系统主要的系统配置文件主要存放在/var/目录。(V)在Linux操作系统下,文件系统是一个文件树。(V)可以采用图形化登录和虚拟控制台登录两种方式登录Linux系统。(X)rm命令可删除文件或目录,其主要差别就是是否使用递归开关-f。(V)mv命令可以移动文件和目录,还可以为文件和目录重新命名。(X)cp命令可以复制文件和目录,但是不可以为文件和目录重新命名。(X)在Linux操作系统中,使用ipconfig查看和配置网络接口

21、的地址和参数。(M)在Linux操作系统中,使用ifconfig配置的网络设备参数不需重启就可生效。(V)在Linux操作系统中,使用ifconfig配置的网络设备参数在系统重新启动以后将会失效。(V)在Linux操作系统中使用ping测试计算机和网络上的其他计算机是否连通。(V)Bootloader是在操作系统内核运行之前运行的一段程序。(V)由于Bootloader严重依赖于硬件实现,嵌入式系统中没有一个通用的Bootloader。(V)虽然Bootloader严重依赖于硬件实现,但是Bootloader的设计与实现有一些通用的概念。(X)Bootloader仅依赖于CPU的体系结构,不依

22、赖于具体的嵌入式板级设备配置。(V)大多数Bootloader都包含“启动加载”和“下载”两种不同操作模式。(V)用户可通过进程控制相关的系统调用来创建进程、实现进程调度、进程管理等。(X)用户进程允许访问内核数据,可以使用内核函数。(V)系统调用规定用户进程进入内核空间的具体位置。(V)用户程序可以通过系统调用获得操作系统内核提供的服务。(V)Linux系统调用编程接口主要通过C库实现。(V)Linux用户编程接口(API)遵循POSIX标准。(V)标准I/O提供流缓冲的目的是尽可能减少使用read和write调用的数量。(V)并行通信传输速度快,适用于短距离通信,但要求传输速度较高的应用场

23、合。(X)用户常见的数据通信的基本方式可分为网络通信与串行通信两种。(V)串行通信通信线路简单,成本低,适用于远距离通信,但传输速度慢的应用场合。(X)对文件的操作使用文件描述符进行,对设备的操作使用设备描述符进行。(X)Linux中的文件主要分为4种:普通文件、目录文件、链接文件和可执行文件。(V)当一个进程终止时,它所有已打开的文件都由内核自动关闭。(V)文件是Linux操作系统中最常见最基础的操作对象。(V)进程是系统的基本调度单位。(V)进程是一个程序的一次执行的过程。(X)进程通过文件描述符来描述。(X)在Linux操作系统中,进程的执行模式划分为用户模式和root模式。(V)Lin

24、ux操作系统中创建一个新进程的唯一方法是使用fork函数。(V)当程序执行到exit或_exit时,进程会无条件地停止剩下的所有操作,清除包括PCB在内的各种数据结构,并终止本进程的运行。(V)wait函数是waitpid函数的一个特例,在Linux操作系统内部实现wait函数时直接调用的就是waitpid函数。(V)守护进程,即通常所说的Daemon进程,是Linux操作系统中的后台服务进程。(V)守护进程的生存期较长。(X)守护进程常常在终端打开时启动,在终端关闭时终止。(V)Linux系统有很多守护进程,大多数服务都通过守护进程实现。(V)每一个从终端开始运行的进程都会依附于这个终端,这

25、个终端就称为这些进程的控制终端,当控制终端被关闭时,相应的进程都会自动关闭。(V)守护进程不因为用户或终端或其他的变化而受影响。(V)会话组是一个或多个进程组的集合。(V)一个会话通常开始于用户登录,终止于用户退出,在此期间该用户运行的所有进程都属于这个会话期。(V)在Linux系统中,每当系统发现一个孤儿进程,就会自动由init进程收养它。(V)有时将内核模块也称做驱动程序,因此,加载驱动时就是加载内核模块。(V)mknod用于创建相关模块。(V)设备文件(即设备节点)可通过mknod命令来创建,其中指定了主设备号和次设备号。(V)设备驱动程序是内核的一部分,如果驱动程序出错,则可能导致系统

26、崩溃。(V)设备驱动程序必须为内核或者其子系统提供一个标准接口。(V)设备驱动程序使用一些标准的内核服务(X)设备驱动开发时模块在调用insmod命令时被加载,此时的入口点是main函数。3.填空题嵌入式的英文为_EMBEDDED_。Linux操作系统下的程序开发一般均遵守GPL协议。Linux内核版本号格式是x.y.zz-www,数字x代表版本类型,数字y为_偶数_时是稳定版本。Linux内核版本号格式是x.y.zz-www,数字x代表版本类型,数字y为_奇数_时是开发版本。Linux操作系统的文件系统是一个文件树。Linux中把DOS中采用的FAT文件系统(包括FAT12,FAT16和FA

27、T32)称为_VFAT_文件系统。硬盘可分为主分区、扩展分区、_逻辑分区_。&Linux系统中具有超级权限的用户称为_ROOT_用户。Linux下与设备相关的文件一般都在/_DEV_目录下。Linux对目录和设备都当作文件来进行处理。将分区与目录相对应的过程叫做_挂载_。块设备文件是指数据的读写以_块_为单位的设备。Linux中文件属性第一个字符“d”表示目录文件。Linux下软驱、光驱、硬盘的挂载点一般位于/_MNT_目录下。服务的日志信息一般位于/_VAR_目录下。Linux中添加用户账号的命令为_USERADD_。Linux中显示当前系统中由该用户运行的进程列表的命令为_PS。Linux

28、中改变工作目录的命令为_CD_。Linux中建立符号链接的命令为_LN_。Linux中对目录进行打包的命令为_TAR。Linux中显示网络连接、路由表和网络接口信息命令为_NETSTAT_。Linux中最常用的编译器是_GCC_编译器。vi有3种模式,分别为命令行模式、插入模式及_底行_模式。编辑器按功能可以分为_行_编辑器和全屏幕编辑器两大类。gdb对_可执行_文件进行调试。工程管理器make读入的配置文件为_MAKEFILE_。工程管理器make定义了隐式规则和模式规则。ARM处理器支持_THUMB_(16位)/ARM(32位)双指令集。ARM处理器支持16位/_8_位器件。大端格式中,数

29、据的高字节存储在_低_地址中。小端格式中,数据的高字节存储在_高_地址中。ARM7处理器采用_3_级流水线设计。嵌入式软件开发所采用的编译过程为_交叉_编译。在嵌入式软件开发中,将程序实际的运行环境称为_目标_机。_JTAG_标准所采用的主要技术为边界扫描技术。arm-linux-gcc交叉编译工具主要包括binutils、_GCC_、glibc等软件。API即_用户编程接口_。API遵循UNIX中的应用编程界面标准_POSIX。操作系统提供给用户程序调用的一组“特殊”接口称为_系统调用_。进行系统调用时,程序运行空间需要从用户空间进入_内核_空间,处理完后再返回到用户空间。系统调用编程接口主

30、要通过C库(_LIBC)实现。一个进程启动时,通常都会打开_3_个文件。不带缓存的文件I/O操作,主要用到的5个函数为open、close、read、write和_LSEEK_。fopen函数返回一个_指针_。_并行_通信是指利用多条数据传输线将一个资料的各位同时传送。Linux中最常见最基础的操作对象是_文件_。当用户在系统中键入命令执行一个程序的时候,它将启动一个_进程_。系统调度的单位_进程_。_进程控制块_包含了进程的描述信息、控制信息以及资源信息,它是进程的一个静态描述。进程执行态说明该进程正在执行,即进程正在占用_CPU_。Linux系统是一个_多_进程的系统。Daemon进程即通

31、常所说的守护进程,是Linux中的后台服务进程。在Linux中使用_FORK函数创建一个新进程。fork函数调用后出现父进程与子进程,其中_子进程的返回值为0。_EXEC_函数族就提供了一个在进程中启动另一个程序执行的方法。exit()函数与_exit()函数最大的区别就在于_EXIT()_函数在exit系统调用之前要检查文件的打开情况,并将文件缓冲区中的内容写回文件。_WAIT函数是用于使父进程阻塞,直到一个子进程结束或者该进程接到了一个指定的信号为止。在Linux中,所有的孤儿进程自动由_INIT_进程收养。_SETSID_函数用于创建一个新的会话,并担任该会话组的组长。系统日志文件位于/

32、_VAR/LOG_目录下。压缩的内核映像通常名为_ZIMAGE_。未压缩的内核映像通常名为_VMLINUX_。操作系统内核运行之前运行的一段程序称为_BOOTLOADER_。4.程序分析下面的程序实现对字符串倒序输出。请选出应填写在空白处的选项intdisplay1(char*string)printf(Theoriginalstringis%sn,string);intdisplay2(char*string1)char*string2;intsize,i;size=strlen(string1);string2=(char*)malloc(size+1);for(i=0;isize;i+)

33、【1】string2size-i-1=stringUil;string2size+1=;printf(Thestringafterwardis%sn,string2);intmain()charstring=test;display1(string);display2(string);A、string2size-i1=string1iB、string2size-i=string1iC、string2size-i+1=string1iD、string2size-i=string1i+1下面的程序打开一个文件,并设置该文件权限为0666。请选出应填写在空白处的选项。intmain(void)int

34、fd;if(fd=open(/tmp/hello.c,O_CREAT|O_TRUNC|O_WRONLY,0666)0B、open(fd)0D、close(fd)v03下面的程序打开一个文件,写入字符串“Hello!Imwritingtothis使用eseek函数将文件指针移到文件开始处,并读出10个字节并将其打印出来。请选出应填写在空白处的选项。intmain(void)inti,fd,size,len;char*buf=Hello!Imwritingtothisfile!;charbuf_r10;len=strlen(buf);if(fd=open(/tmp/hello.c,O_CREAT|

35、O_TRUNC|O_RDWR,0666)0)perror(open:);exit(1);elseprintf(openfile:hello.c%dn,fd);if(size=write(fd,buf,len)0)perror(write:);exit(1);elseprintf(Write:%sn,buf);lseek(【3】fd,0,SEEK_SET_);if(size=read(fd,buf_r,10)v0)perror(read:);exit(1);elseprintf(readformfile:%sn,buf_r);if(close(fd)0)perror(close:);exit(1

36、);elseprintf(C);exit(0);A、fd,0,SEEK_CURB、fd,0,SEEK_ENDC、fd,0,SEEK_SET4下面的程序获得当前进程的PID。请选出应填写在空白处的选项。intmain()printf(ThePIDofthisprocessis%dn,getpid();A、getpid()B、getppid()C、open(fd,pid)D、fopen(stream,pid)5下面的程序判断fork函数返回值的情况。请选出应填写在空白处的选项。intmain(void)pid_tresult;result=fork();if(result=-1)perror(fo

37、rk);exit;elseif(result二二0)printf(Inchildprocess!nMyPIDis%dn,getpid();elseprintf(Infatherprocess!nMyPIDis%dn,getpid();A、result=fork()B、result=fork(-1)C、result=fork(0)D、result=fork(1)6.hello.c和hello.h位于同一目录下,源代码如下所示。/*hello.c*/intmain()printf(Helloeveryone!n);/*hello.h*/#include要求编写Makefile文件实现对这两个文件的

38、编译,Makefile文件如下所示。请选出应填写在空白处的选项。/*Makefile*/hello:hello.chello.hBA、gcchello.c&hello.h-ohelloB、gcchello.chello.h-ohelloC、makehello.c&hello.h-ohelloD、makehello.chello.h-ohello7下面的程序首先新建一子进程,然后让其子进程暂停5s。接下来对原有的父进程使用阻塞函数,并使用参数使该父进程不会阻塞。若有子进程退出,则阻塞函数返回子进程号;若没有子进程退出,则阻塞函数返回0,并且父进程每隔一秒循环判断一次。请选出应填写在空白处的选项。

39、intmain()pid_tpc,pr;pc=fork():if(pc0)printf(Errorn);elseif(pc=0)/*子进程*/sleep(5):/*子进程暂停5s*/exit(0):/*子进程正常退出*/else/*父进程*/do/*循环测试子进程是否退出*/pr=waitpid(pc.NULL.WNOHANG);/*调用waitpid,且父进程不阻塞*/if(pr=O)/*若子进程还未退出,则父进程暂停1s*/printf(Thechildprocesshasnotexitedn);sleep(1);while(pr=0);/*若发现子进程退出,打印出相应情况*/if(pr=

40、pc)printf(Getchild%dn,pr);elseprintf(someerroroccured.n);A、pc=fork()B、pc=open(pr)C、pc=prA、pc=wait(pc,NULL,WNOHANG)C、pr=wait(pc,NULL,WNOHANG)D、pr=pcB、pc=waitpid(pc,NULL,WNOHANG)D、pr=waitpid(pc,NULL,WNOHANG)8下面的程序建立一个守护进程,该守护进程每隔10s在/tmp/dameon.log中写入一个字符串。请选出应填写在空白处的选项。#defineMAXFILE65535intmain()pid_tpc;inti,fd,len;char*buf=ThisisaDameonn;len=strlen(buf);pc=fork()/*第

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论