嵌入式Linux应用程序开发期末考试题库及答案

A、TCP数据传输实现了从一个应用程序到另一个应用程序的数据传递 B、TCP对话通过三次握手来完成初始化

C、UDP即用户数据报协议是一种面向连接的协议 D、一个UDP应用可同时作为应用的客户或服务器方

常见的socket类型中不包括下面哪项 C A、SOCK_STREAM B、SOCK_DGRAM C、SOCK_DTRAN D、SOCK_RAW

在关于ICMP协议的描述中,下面哪项是错误的 B A、ICMP是IP层的一个协议

B、ICMP报文的最终报宿是报宿计算机上的一个用户进程

C、当一个带有错误信息的ICMP报文到达时,由IP软件模块负责处理 D、每种ICMP报文都有不同的格式

在关于设备驱动的描述中,下面哪项是错误的 D A、操作系统通过各种驱动程序来驾驭硬件设备 B、操作系统为硬件提供统一的操作方式 C、操作系统最基本的组成部分是硬件驱动程序

D、常见的驱动程序作为内核模块动态加载,比如声卡驱动、网卡驱动、CPU、PCI总线等

在关于模块相关命令的描述中,下面哪项是错误的 D A、lsmod列出当前系统中加载的模块 B、rmmod用于将当前模块卸载 C、cpmod用于将模块复制到用户空间 D、insmod用于加载当前模块

在关于设备驱动程序的描述中,下面哪项是错误的 D

A、Linux设备驱动程序包含中断处理程序和设备服务子程序两部分 B、设备控制器需要获得系统服务时采用查询和中断两种方式 C、设备服务子程序包含了所有与设备操作相关的处理代码 D、设备服务子程序对设备控制器执行操作,不接受用户命令

Linux设备驱动程序与外界的接口不包括下面哪项。 B A、驱动程序与操作系统内核的接口 B、驱动程序与用户的接口 C、驱动程序与设备的接口 D、驱动程序与系统引导的接口

打开设备的接口函数是open ,通常情况下在open函数中要完成的工作中不包括下面哪项 D

A、递增计数器

B、检查特定设备的特殊情况 C、初始化设备 D、释放设备

在关于内存分配函数的描述中,下面哪项是错误的 B A、kmalloc函数开辟的内存基于内存地址 B、kmalloc函数申请空间无大小限制 C、kmalloc函数不会对所获取的内存空间清零 D、kmalloc函数返回物理地址

键盘模式中不包括下面哪项 C A、ASCII mode(XLATE)模式模式 B、Keycode mode(MEDIUMRAW)模式 C、Multi mode(MULTI)模式 D、Scancode mode(RAW)模式

键盘相关码表中不包括下面哪项 C A、扫描码 B、键盘码 C、扩展码 D、Keymap表

open函数的原型函数为说明 A

A、int open(const char *pathname,flags,int perms) B、ssize_t open(int fd,void *buf,size_t count) C、FILE *open(const char * path,const char * mode) D、off_t open(int fd,off_t offset,int whence)

read函数的原型函数为说明 B

A、int read(const char *pathname,flags,int perms) B、ssize_t read(int fd,void *buf,size_t count) C、FILE *read(const char * path,const char * mode) D、off_t read(int fd,off_t offset,int whence)

lseek函数的原型函数为说明 D

A、int lseek(const char *pathname,flags,int perms) B、ssize_t lseek(int fd,void *buf,size_t count) C、FILE *lseek(const char * path,const char * mode) D、off_t lseek(int fd,off_t offset,int whence)

fcntl函数的原型函数为说明 B

A、int fcntl(const char *pathname,flags,int perms) B、int fcnt1(int fd,int cmd,struct flock *lock)

C、FILE *fcntl(const char * path,const char * mode)

D、int fcntl(int numfds,fd_set *readfds,fd_set *writefds,fd_set *exeptfds,struct timeval *timeout)

select函数的原型函数为说明 B

A、int select(const char *pathname,flags,int perms) B、int select(int fd,int cmd,struct flock *lock) C、FILE *select(const char * path,const char * mode)

D、int select(int numfds,fd_set *readfds,fd_set *writefds,fd_set *exeptfds,struct timeval *timeout)

fopen的原型函数为 A

A、FILE * fopen(const char * path,const char * mode) B、int fopen(FILE * stream)

C、size_t fopen(void * ptr,size_t size,size_t nmemb,FILE * stream) D、size_t fopen(const void * ptr,size_t size,size_t nmemb,FILE * stream)

socket函数的函数原型是 A

A、int socket(int family, int type, int protocol)

B、int socket(int sockfd,struct sockaddr *my_addr, int addrlen) C、int socket(int sockfd, int backlog)

D、int socket(int sockfd, struct sockaddr *serv_addr, int addrlen)

判断题

RAM的访问速度比较快,但掉电后数据会丢失。

1

ROM掉电后数据不会丢失。

1

人们通常所说的内存即指系统中的ROM。 2

SRAM利用双稳态触发器保存信息,只要不掉电,信息不会丢失。 1

DRAM是利用MOS(金属氧化物半导体)电容存储电荷来储存信息,可不通过充电来维持信息。 2

Flash具有和ROM一样掉电不会丢失的特性,因此被称为Flash ROM。 1

ARM7处理器采用3级流水线设计。 1

ARM9处理器采用3级流水线设计。 2

ARM7处理器采用哈佛结构。 2

ARM9处理器采用哈佛结构。

1

嵌入式软件开发一般采用“宿主机-目标机”开发模式。 1

一般把进行交叉编译的主机称为目标机。 2

一般把程序实际的运行环境称为宿主机。 2

嵌入式系统的软件开发与通常软件开发的区别主要在于软件实现部分。 1

在Linux操作系统安装过程中可进行网络配置。 1

Linux操作系统不可以与MS-DOS、Windows等其它操作系统共存于同一台机器上。 2

Linux操作系统主要的系统配置文件主要存放在/var/目录。 2

在Linux操作系统下,目录结构属于分区。 2

在Linux操作系统下,文件系统是一个文件树。 1

可以采用图形化登录和虚拟控制台登录两种方式登录Linux系统。 1

shell是一个命令解释器。 1

可以在shell提示下或图形方式下创建用户帐号。 1

Shell是命令语言、命令解释程序及程序设计语言的统称。 1

Shell拥有自己内建的命令集,不能被系统中其他应用程序所调用。 2

Shell是一种Linux操作系统中的命令行解释程序。 1

rm命令可删除文件或目录,其主要差别就是是否使用递归开关 -f。 2

mv命令可以移动文件和目录,还可以为文件和目录重新命名。 1

cp命令可以复制文件和目录,但是不可以为文件和目录重新命名。 2

在Linux操作系统中,使用ipconfig查看和配置网络接口的地址和参数。 2

在Linux操作系统中,使用ifconfig配置的网络设备参数不需重启就可生效。 1

在Linux操作系统中,使用ifconfig配置的网络设备参数在系统重新启动以后将会失效。 1

在Linux操作系统中使用ping测试计算机和网络上的其他计算机是否连通。

1

Bootloader是在操作系统内核运行之前运行的一段程序。 1

由于Bootloader严重依赖于硬件实现,嵌入式系统中没有一个通用的Bootloader。 1

虽然Bootloader严重依赖于硬件实现,但是Bootloader的设计与实现有一些通用的概念。 1

Bootloader仅依赖于CPU的体系结构,不依赖于具体的嵌入式板级设备配置。 2

大多数Bootloader都包含“启动加载”和“下载”两种不同操作模式。 1

Bootloader启动流程一般可分为stage1、stage2、stage3三个阶段。 2

Linux内核中不同的目录结构里都有相应的Makefile。 1

U-Boot源码结构和Linux内核源码结构非常类似。 1

Bootloader设计与实现过程中不推荐使用C语言。 2

FTP内部命令中使用close命令中断与远程服务器的FTP会话。

1

FTP内部命令中使用exit命令退出FTP会话过程。 1

FTP内部命令中使用mkdir命令在本地主机中建一目录。 2

FTP内部命令中使用dir命令显示远程主机中的文件和目录信息。 1

FTP内部命令中使用pwd命令显示本地主机的当前路径。 2

FTP内部命令中使用lcd命令显示本地主机的当前路径。 1

用户可通过进程控制相关的系统调用来创建进程、实现进程调度、进程管理等。 1

用户进程允许访问内核数据,可以使用内核函数。 2

系统调用规定用户进程进入内核空间的具体位置。 1

用户程序可以通过系统调用获得操作系统内核提供的服务。 1

Linux系统调用编程接口主要通过C库实现。 1

一个API函数通常需要几个系统调用来共同完成函数的功能,但是还有一些API函数不需要调用相应的系统调用。( 1

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4