武汉大学计算机学院Linux2010试卷

更新时间:2024-03-28 17:53:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

武汉大学计算机学院

2009-2010学年第一学期期末考试

《Linux原理与应用 》期末考试试卷( )

请将答案写在答题纸上。写在试卷上无效。

一、选择题(单选题,每小题2分,共20分)

1.用户编写了一个文本文件a.txt,想将该文件名称改为txt.a,下列命令

______可以实现。

A. cd a.txt xt.a B. echo a.txt > txt.a C. rm a.txt txt.a D. cat a.txt > txt.a

2.Linux文件权限一共10位长度,分成四段,第三段表示的内容是______ 。 A. 文件类型 B. 文件所有者的权限

C. 文件所有者所在组的权限 D. 其他用户的权限

3.在使用mkdir命令创建新的目录时,在其父目录不存在时先创建父目录

的选项是_____。

A. -m B. -d C. -f D. -p 4.下面关于i节点描述错误的是_____ 。 A.i节点和文件是一一对应的 B.i节点能描述文件占用的块数

C.i节点描述了文件大小和指向数据块的指针

D.通过i节点实现文件的逻辑结构和物理结构的转换

5.在vi编辑器中的命令模式下,重复上一次对编辑的文本进行的操作,可

使用______命令。 A. 上箭头 B. 下箭头 C. “.” D. “*”

6.某文件的组外成员的权限为只读;所有者有全部权限;组内的权限为读与写,则该文件的权限为______ 。

A. 467 B. 674 C. 476 D. 764

7.在Redhat公司发布的Linux版本中,若要使得用户登录验证,需要修改

以下______脚本。

A. /etc/inittab B. /etc/passwd C. /etc/shadow D. /etc/group

8.下列不是Linux系统进程类型的是______ 。

A. 交互进程 B. 批处理进程 C. 守护进程 D. 就绪进程

1

9.下列关于/etc/fstab文件描述,正确的是______ 。

A. fstab文件只能描述属于linux的文件系统 B. CD_ROM和软盘必须是自动加载的

C. fstab文件中描述的文件系统不能被卸载 D. 启动时按fstab文件描述内容加载文件系统

10.在Shell脚本中,用来读取文件内各个域的内容并将其赋值给Shell

变量的命令是_____ 。

A. fold

二、填空题(每题2分,共20分)

1.安装Linux系统对硬盘分区时,必须有两种分区类型:______ 和______。 2.在Linux的两种链接文件中,只能实现对文件链接的一种方式是:______。 3.Linux主要采用了______和______两种动态内存管理技术实现了物理内

存以On demand方式动态分配。 4.对于System V类型的共享内存页面,Linux基于______算法决定哪些页

面应当被换出物理内存。

5.在Linux与中断相关的三个核心数据结构中,用做抽象的中断控制器的

数据结构是______,它包含一系列处理中断控制器特有的操作。

6. 通过将______动态链入块设备控制结构blk_dev_struct,Linux设备管

理器有效的实现了物理设备和缓冲区之间的异步读写通讯。 7.将/home/stud1/wang目录做归档压缩,压缩后生成wang.tar.gz文件,并将此文件保存到/home目录下,实现此任务的tar命令格式______。 8.对于给定的文件file,统计其中所有包含字符串”WHU”的行数的一条命

令是______。 9. 对于Shell脚本程序,若输入参数数量多于9个,则程序遍历每个参数

可通过使用______命令实现。 10.在System V进程通讯方式中,ipc_perm结构描述对一个系统IPC对象

的存取权限,而用于定位IPC对象的引用标志符key可以依据键值分成

______和______两种类型。

三、简答题(每小题5分,共20分)

1.在底半技术中把一个中断处理分为哪几部分?为什么采用这种技术? 2.论述实时信号、非实时信号、可靠信号、不可靠信号四个概念。 3.简要论述Kswapd核心线程的动态特性。

4.简述Linux文件系统通过i节点把文件的逻辑结构和物理结构转换的工

作过程。

四、操作题(写出完成下述功能的命令序列,每小题4分,共20分)

2

B. join C. tr D. read

1.假设你的用户账号是zheng,现在你登录进入linux系统,查看当前登录到系统中的用户,查看当前系统中运行的进程,然后再退出系统。 2.在当前目录/home/zheng下新建一个目录back,将当前目录改为back,在back下新建2个长度为0的文件test1、test2,然后把test2移到其父目录中并改名为file12。

3.现在需要统计当前目录/home/zheng下普通文件的数目并显示结果,如何实现?

4.假设你是系统管理员,需要增加一个新的用户账号zheng,为新用户设置初始密码,锁定用户账号uly,并删除用户账号chang。

5.若给需要将/home/zheng目录下的所有文件打包压缩成/tmp/zheng.tar.gz,你准备怎么做?当需要从压缩包中恢复时,又该如何处理?

五、下面给出了一个SHELL程序,试对其行后有#(n)形式的语句进行解释,并说明程序完成的功能。(8分) #!/bin/sh

DIRNAME=`ls /root | grep bak`

#(1) #(2) #(3) #(4) #(5) #(6)

if [ -z \ mkdir /root/bak ; cd /root/bak fi

YY=`date +%y` ; MM=`date +%m` ; DD=`date +%d` BACKETC=$YY$MM$DD_etc.tar.gz tar zcvf $BACKETC /etc echo \

#include #include int ntimes=0;

main(int argc, char *argv[]) { int pid,ppid;

int p_action( ), c_action( ); signal(SIGUSR1 , p_action);

switch(pid=fork( )) {

六、填写标记代码行的意义,给出功能描述和前6行程序输出。(6分)

#(1) #(2)

case -1: perror(\ exit(1);

case 0: signal(SIGUSR1,c_action);

ppid=getppid( );

3

}

}

}

for ( ; ; ) ;

default: {

for( ; ; ) { pause; }

sleep(1);

kill(pid,SIGUSR1);

#(3)

p_action( ) {

printf(\

}

c_action( ) {

printf(\ int ppid;

ppid = getppid();

#(4)

kill(ppid, SIGUSR1); sleep(3); }

七、设计一个shell程序,添加一个新组为class1,然后添加属于这个组的30个用户,用户名的形式为stdxx,其中xx从01到30。(6分)

4

本文来源:https://www.bwwdw.com/article/gskr.html

Top