嵌入式Linux应用程序开发测试题_第1页
嵌入式Linux应用程序开发测试题_第2页
嵌入式Linux应用程序开发测试题_第3页
嵌入式Linux应用程序开发测试题_第4页
嵌入式Linux应用程序开发测试题_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

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

文档简介

1、嵌入式Linux应用程序开发测试题(14级嵌入式方向专用)一.选择题下列哪一项不是嵌入式操作系统的特点DA、占有资源少B、低成本C、高可靠性D、交互性2、在Linux内核配置过程中,下面哪项命令釆用的是基于图形窗口模式的配置 界面 CA、 make config make menuconfigC、 make xconfig Da make oldconfig 3、在Linux内核配置过程中,下面哪项命令建立依赖关系 CA、make config make menuconfigC、make depD、make clean4、交义编译器中,下面哪项不是必需包含的DA、glibcB、gccC、bin

2、utils D、tmake5、内核的编译主要步骤不包括下面哪项DA、内核配置B、建立依存关系C、建立内核D、加载内核 6、内核编译时选项前的尖括号中可以是空,r M,其中*表示CA、选项将编译为模块B、不包含选项C、包含选项7、Bootloader的stag"阶段主要完成的工作不包括下面哪项DA、基本的%更件初始化B、为加载stage?准备RAM空间C、拷贝stage2到RAM中D、用汇编语言跳转到main入口函数8、GCC的正确编译流程为 AA、预处理编译汇编链接B、预处理编译链接汇编C、预处理链接编译汇编D、编译预处理汇编链接 9、如需GCC提供编译过程中所有有用的报警信息,则在

3、编译时应加入选项 BA、-W B、-Wall Cs -werror -error 10.下面哪些与GDB相关的说法是错误的BA、GDB能调试可执行文件B、GDB能调试源代码C、GDB对编译过程有要求D、GDB支持交义调试在GDB调试过程中,使用下面哪项命令设置断点,其中m代表行号AA、bm B、c m C、n m D、s m12、open函数原型中的O_RDWR标志表示文件打开方式为CA、只读方式打开文件B、可写方式打开文件C、读写方式打开文件D、以添加方式打开文件,在打开文件的同时,文件指针指向文件末尾 13.在Linux操作系统中,审口设备的设备名一般为CA、coml portlC、tty

4、SOD、serll 24、下面哪项对Linux操作系统下fork函数的描述是错误的 DA、fork函数执行一次返回两个值B、新进程称为子进程,而原进程称为父进 程C、父进程返回值为子进程的进程号D、子进程返回值为父进程的进程号 15.编写守护进程的笫一步为AA、创建子进程,父进程退出B、在子进程中创建新会话C、改变当前U录为根U录D、关闭文件描述符 16.在关于TCP/UDP的描述中,下面哪项是错误的CA、TCP数据传输实现了从一个应用程序到另一个应用程序的数据传递B、TCP对话通过三次握手来完成初始化C、UDP即用户数据报协议是一种面向连接的协议D、一个UDP应用可同时作为应用的客户或服务器

5、方17.常见的socket类型中不包括下面哪项CA、SOCK STREAM B、SOCK DGRAM C、SOCK DTRAN D、SOCK RAW 18、以下哪项不是autotools系列丄具之中的一种。CA、automake B、autoconf C、autoclean D、autoscan 19.下列关于网络编程的叙述中,错误的是BA.个完整的网络程序应该包含两个独立的程序,它们分别运行在客户端和服务器端。B.当使用UDP编程时,如果函数sendto()函数成功返回,表示系统发出的数据 被通讯的对方准确接收到了。C相同条件下UDP发送数据的速度要比TCP快。D端口号是26bit的地址码,

6、端口号和IP地址构成一个插口(socket)。20、下列makefile自动变量中,表示目标文件完整名称的是A、$B、 $< C、 $AD、$%二.填空题Linux中最常用的编译器是编译器。答案:gcc2、gdb对文件进行调试。答案:可执行3、工程管理器make读入的配置文件为。答案:Makefile或makefile4、工程管理器make定义了规则和模式规则。答案:隐含5、嵌入式软件开发所采用的编译过程为编译。答案:交义6、在嵌入式软件开发中,将程序实际的运行环境称为.机。答案:目标7、一个进程启动时,通常都会打开个文件。答案:38、在Linux中,实现文件上锁的函数有lock和。答案

7、:fenti9、Daemon进程即通常所说的进程,是Linux中的后台服务进程。答案: 守护10、在Linux中使用函数创建一个新进程。答案J fork11. fork函数调用后出现父进程与子进程,其中的返回值为0。答案:子 进程12、exec函数族就提供了一个在进程中启动另一个程序执行的方法。答案:13. xit()函数与_exit()函数最大的区别就在于函数在exit系统调用之前要 检查文件的打开矗况,并将文件缓冲区中的内容写回文件。答案:exit14.函数是用于使父进程阻塞,直到一个子进程结束或者该进程接到了一 个指定的信号为止。答案:wait15.在Linux中,所有的孤儿进程自动山进

8、程收养。答案:init26、Linux中的网络编程通过接口来进行。答案:socket17、SOCK_DGRAM为套接字。答案;数据报三.程序填空和阅读分析题下列程序在父子进程之间创建了一个管道,实现父进程向子进程写数据的 功能。阅读下列程序,并写出标号所示的功能。#include <>#include <sys/> #inelude <>ft include <>#include <> int main()int pipe_fd;pid_t pid;char buf_r100;char* p_wbuf;int r_num;memset

9、fbuf nO,sizeoffbuf rll; (1)将数据缓冲区淸 0if(pipefpipe_fdl<0) (2)创建管逍printfCpipe create errorn"); return -1;if(pid=forkll)=0) (3)创建子进程printfCAn");closefpipe fdflll: C 4) 关闭子进程写描述符 slee p(2);iftfr num=read(pipe_fd0bbuf_r;100)>0) (5)子进程读取管逍内容吆dnu mbers read from the pipep rintf is %sn"/

10、_num,buf_r);closefpipe fdron: (6)关闭子进程读描述符 exit0);else if(pid>0) (7)父进程运行控制语句closefpipe fdfOll; (8)关闭父进程的读描述符 if(write(pipe fdri1;*Hello».51!=-ll (9)将数据写入缓冲区 printfCparent writel success!n");if(write(pipejdl;' Pipe'5)!=-1)pnntf("parent write2 success!n");closefpipe fdr

11、ill: (10)关闭父进程写描述符 sleep(3);waitpid(pid,NULL,g);阻塞方式等待子进程结束 exitfO);2、阅读程序,写出程序的执行结果,并分析程序的执行过程。(假设父子进程均可在一个时间片内执行完,且操作系统每次均先调度子进程。)#include <sys/>#include <> int main() pid_t result;int count=5;printf"before fork,count=%dn",count);result=fork();if(result<0)pnntf"fork f

12、ail'nj;else ifresult>0) count+;printfCThis is parent!n"); elsecount";printf("This is child!n”);p rintfC'after fork coun t=%dn'count);return 0;before fork;cou nt=5This is child after fork count=4This is p are nt!after fork count=6程序的执行过程如下:程序先定义了两个变量result和countr然后输出变量co

13、unt的值,得到"before fork count=5"这一行输出。当执行到result=fork()时程序分义,产生 父子两个进程。系统首先调度子进程执行,直至子进程结束。而在子进程中result为0,故走的是条件分支的最后一个分支,输 iB: This is child.after fork count=4子进程执行完了之后调度父进程执行,直至父进程结束。而在父进程中result 为子进程号,大于0,于是走条件分支的第二个个分支,输出5 This is parent after fork count=61.编写一个C语言源程序,(1)用以在打开当前U录下的文件,如果没

14、 有则创建该文件,并使其具有读写属性,(2)编写一个makefile实现自动编 译,生成可执行文件exovoid main(void)int fid;fid = open("/;O_RDWR|O_CREAT);pnntf("open or create error n");exit(O);close(fid);objects =exec = ex all:$(objects)gcc -o $exec) S(objects) gcc-cclean:rm -r $(exec) $(objects)2、假定你在USfe/root/arm下有一个C程序,它山儿个单独的文件组成,而这 几个文件乂分别包含了其他文件,如下图所示:文件包含文件ff试编写makefile文件,最终的U标文件为exl (交义编译器为arm-linux-gcc)CC=armlinuxgcc exl:S(CC) -o exlS

温馨提示

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

评论

0/150

提交评论