操作系统实验复习题

一、选择题

1.下列不是Linux操作系统特点的是( ) A.开放性 B.良好的用户界面 C.良好的可移植性 D.单用户 2.在Linux系统中最高目录是( )

A.我的计算机 B.C:\\ C./ D. home 3.可以代替任意单个字符的通配符是( )。 A.? B.# C.@ D.* 4.可以代替任意字符的通配符是( )。 A.? B.# C.@ D.* 4.telnet 命令的功能是( )

A.远程执行命令 B.传输信息 C.远程登录 D.查看网络状态 5.常见的Linux发布版本很多,下列不是Linux发布版本的是( ) A.Red Hat Linux B.红旗Linux C.Fedora Core D.X-Window 6.怎样更改一个文件的权限设置?()

A.attrib B.chmod C.change D.file

7.Linux操作系统中下面哪条命令可以把f1.txt复制为f2.txt? ( ) A. cp f1.txt f2.txt B. cat f1.txt f2.txt C. mv f1.txt f2.txt D. copy f1.txt f2.txt 8.设char dat[10],从键盘输入字符串的输入语句是:( ) A. scanf(“%d”,dat); B. scanf(“%s”,dat); C. scanf(“%d”,&dat); D. scanf(“%c”,dat); 9. 让父进程等待子进程结束的函数是( )

A.exit(0); B.sleep(1) C.wait(0); D._exit(0); 10. 对标准输出设备(显示器)加锁的函数是( )

A. lockf(1,1,0);; B. lockf(1,0,0); C. lockf(1,0,1);; D.lockf(1,1,1); 11. 对标准输出设备(显示器)解锁的函数是( )

A. lockf(1,1,0);; B. lockf(1,0,0); C. lockf(1,0,1);; D.lockf(1,1,1); 12. linux系统中,预置当接收到软中断信号16跳转到func函数的命令是( )

A. signal(16,func) B. signal(func,16) C. kill(pid,17) D. kill(17,func)

13. linux系统中,消息队列通信中发送消息的系统调用格式是( )

A. msgsnd(msgqid,msfp,size,flag) B. msgqid=msgget(key,flag)

C.msgrcv(msgqid,msfp,size,type,flag) D. msgctl(msgqid,IPC_RMID,0); 14. linux系统c语言编程中,让进程暂停6秒钟的命令是( )

A.wait(60) B.wait(0) C.sleep(6) D.sleep(60)

15. linux系统中,让后台运行的PID为1223的进程暂停的命令是( )

A. kill –CONT 1223 B. kill –STOP 1223 C. kill –KILL 1223 D. kill –EXIT 1223 二、填空

1) linux系统中删除当前目录下的非空子目录/dir1的命令:__rm –r

/dir1____

2) Windows系统中远程登录Linux系统的命令:__telnet ____

3) linux系统中,显示当前目录所有文件的许可权、拥有者、文件大小、修改

时间等信息的命令:_ls -l_____

4) linux系统中,在当前目录下创建名为dir1的目录的命令: __mkdir

dir1____

5) linux系统中,改变目录位置至当前目录的上层目录的命令:cd _.._____ 6) linux系统中,查看当前目录下文件file.c内容的命令:_cat file.c_____ 7) linux系统中,查看系统中的使用者的命令:__who____ 8) linux系统中,查看系统目前进程的命令:__ps____

9) linux系统中,终止后台运行的PID为2345的进程的命令:_kill –kill

2345______

10) linux系统中,以树状图显示执行的进程的命令:_pstree_____ 11) linux系统中,监视虚拟内存的命令:__vmstat____

12) linux系统中,显示消息队列使用情况的命令:__ipcs__-q__(delete ipcrm

–q ID)

13) linux系统中,查看ls指令的帮助信息的命令:___man ls____

14) linux系统中,把源文件test.c编译为名为test的可执行文件的命令:

____gcc –o test test.c___ 15) linux系统中,让当前目录下的可执行文件test后台执行的命令:___./test

&______

16) linux系统中,创建进程的系统调用格式:__ fork()________ 17) linux系统中,创建管道的系统调用格式:___int pipe(int fd[2])_______ 18) linux系统中,把dat中存储的信息写入管道fd的系统调用格式:

__write(fd[1],buf,size)_____

19) linux系统中,从管道fd中,读取20个字符信息存储到dat中的系统调用

格式:___read(fd[0],buf,20)____

20) linux系统中,创建消息队列的系统调用格式:__msgget(key,flag)____ 21) linux系统中,向指定的消息队列发送一个消息的系统调用格式:

__msgsnd(msgqid,msgp,size,flag)____

22) linux系统中,从指定的消息队列接收一个消息的系统调用格式:

msgrcv(msgqid,msgp,size,type,flag)______

23) linux系统中,让PID为2223的进程暂停的命令:__kill –stop 2223____ 24) linux系统中,让PID为2223的进程恢复执行的命令:__kill - cont_2223___ 25) linux系统中,在子进程中调用当前目录下一个已编译好的可执行程序

hello的系统调用:____execl(“./hello”,”hello”,NULL)________ 26) linux系统中,c语言编程中,命令sleep(1)的含义:_休眠一秒(挂起)

_____

27) 进程在执行过程中的三种基本状态__就绪____、_执行_____、__阻塞____ 28) 系统中一个进程由__PCB____、_ 程序段_____和_ 相关的数据段_____三部

分组成。

29) C语言源程序文件的扩展名为___.c___。

30) 基于无名管道的通信一般都是先创建__无名管道____,后创建_子进程

_____。

31) 父进程调用pid=fork()创建子进程后,子进程返回的pid为___0______,

父进程返回的pid为__子进程的ID ____。

2

32) 给进程编号为pid的子进程发送类型为16的软中断信号的函数是

____signal (16,SIGHUP)_____

33) 预置当接收到类型为16的软终端信号时,跳转到函数stop的语句是

____signal(16,stop)___。

34) 设置忽略键盘中断信号的语句是__signal (SIGINT,SIG_IGN)_________。 35) 在程序中调用Linux系统命令“ls”的函数是______。

36) 在程序中调用显示消息队列使用情况的命令”ipcs –q”的函数是______。 37) 创建文件a的硬链接文件b函数是__ln a b_____。

38) 创建文件a的符号链接文件c函数是___ln -s a c_____。

39) linux系统中,创建创建一个新的共享内存区的系统调用格式:

_shmget(key,size,shmflag)_____

40) linux系统中,把一个共享内存区从指定进程的虚地址空间断开的系统调用

格式:_shmdt(char *addr)____ 三、简答分析题

1.分析linux系统中利用fork系统调用创建子进程的几个要点。 2. 简述进程间基于无名管道进行通信的特点。 3.Lnix系统中,运行如下程序(假设创建子进程后,子进程先获得处理器运行),可产生多个进程,画出家族树(用A(父进程)、B、C……表示进程名) #include main() { int p; p=fork(); if(p>0) fork();

else fork(); fork(); sleep(15); } 4.Lnix系统中,运行如下程序(假设创建子进程后,子进程先获得处理器运行),可产生多个进程,画出家族树(用A(父进程)、B、C……表示 #include main() { int pid; pid=fork(); if(pid==0) fork(); else { fork(); } sleep(20); } 5.分析以下程序的执行结果。 #include

3

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