Linux操作系统期末练习题最终版by枫叶

Linux操作系统期末练习题最终版by枫叶
Linux操作系统期末练习题最终版by枫叶

1.在Linux目录结构中目录中的文件是普通用户可以使用的可使用的可执行文件的目录是(B)19A./sbin B./bin C./usr D./lib

2.在Linux目录结构中Linux的内核及引导程序所需要的文件位于(B)目录

A./bin

B./boot

C./root

D./proc

3.在Linux目录结构中用来存放系统配置文件(D)目录

A./lib

B./dev

C./proc

D./etc

4.Linux三种特殊权限中仅用于目录文件的权限是(C)22

A.SUID

B.SGID

C.黏滞位

D.都可以

5.Linux三种权限中允许进入目录的权限(C) 22

A.r-可读

B.w-可写

C.x-可执行

D.都不是

6.下列脚本文件最先自动执行的是(A)24

A./etc/rc.local

B./etc/profile

C.~/.bashrc

D.~/.bash_logout

7.下面通配符可匹配多个任意字符的通配符是(A)29

A.*

B. ?

C.[abcde ]

D.[!a-e]

8.输出重定向符号右边的文件已经存在,不会覆盖文件而是追加的定向符是(B)

A.>

B.> >

C. 2>

D.&>

9.表示用户家目录的是(B)

A./home (所有用户家目录的父目录,+用户名才是用户家目录)

B.~

C. .

D. ..

10.可删除非空目录及其子目录的命令是(B)

A. touch

B.rm -r

C.mkdir

D.rmdir空目录

11. 是强引用的符号(A)

A. 单引号

B.反引号

C.双引号

D.中括号

12.可显示隐藏文件的ls命令形式选项是(A)

A. ls -a

B. ls -d

C.ls -h D .ls -l

13.可通过接受标准输入作为输出内容来创建简单文件的命令是(B)42

A.touch

B.cat

C.vi

D. gedit

14.不带有编辑功能但有翻页、按行滚动、搜索功能的命令是(B)43

A.cat

B.more和less

C.head 和tail D vi

15.wc命令可统计文件的行数、字数和字节数。在下列格式中只显示文件的字数的是(C)51

A.wc

B. wc -c

C. wc -w D wc -l

16.可实现文件重命名的命令是(B)52

A.cp

B. mv

C. ln D rename

17.在Linux系统中可通过挂载将光盘、U盘或一个文件系统连接到主目录树的一个目录节点。期中光盘或光盘镜像对应的文件系统类型是(C)44

A.vfat

B. ext3

C.iso9660 D vboxsf

18.下面更改文件命令只能更改符号连接的目标文件的权限的命令是(C)

A.chown

B.chgrp

C. chmod

D.以上都不对

19.chmod命令的权限模式可使用字符串形式或八进制形式,当使用八进制形式时模式应由三或四位八进制构成,其中从最高到最低位依次表示为(A)每个八进制的三个二进制位从高到低分别表示为有无读、写、执行权限

A.文件所有者文件所属组其他用户

B. 其他用户文件所属组文件所有者

C.文件所属组文件所有者其他用户

D.其他用户文件所有者文件所属组

20.chmod命令的权限模式可使用字符串形式或八进制形式,当使用八进制形式时模式应由

三或四位八进制构成,其中每个八进制的三个二进制位从高到低分别表示为有无(A)

A.读写执行

B.写读执行

C.执行读写

D.执行写读

21.运行时不会创建子进程的方式是(C)69

A.赋予shell程序文件可执行权限,直接运行shell 程序(外部命令)

B. 调用命令解释器解释执行shell程序(Shell函数)

C.使用source命令执行shell 程序(内部命令)

D.用( )将多条命令括起来而形成的复合命令执行

22.对于使用(C)连接的两条命令,只有当左边的命令执行失败(退出状态为非0值)才会继续执行右边的命令。

A. ;

B. &&

C. ||

D.都不是

23.Shell执行命令在同名时优先级别最高的是(A)

A.别名

B. 函数

C.内部命令

D.外部命令

24.将一个变量stab的值清除(即成为空串)的命令是(D)

A.$stab

B.${#stab}

C.${stab } D unset stab

25.Shell变量不需要预先定义,若对其进行数值操作,可指定变量的属性为整数,具体命令为D

A. declare -a 变量名

B.declare -f 变量名

C.typeset -r 变量名

D.typeset -i 变量名

26.Shell中可表示引用数组abrr中的所有非空元素的引用是(B)76

A. ${abrr}

B.${abrr [*]}

C.${#abrr[*]

D.${#abrr[@]}

27.在Shell变量引用操作符可实现字符串替换其中(C)用来测试如果变量stra存在且不为空,则返回为word,否则返回为空串78

A.${stra:-word }

B. ${stra:=word }

C.${stra: +word }

D.${stra: ?word }

28.在Shell变量引用操作符可实现字符串替换其中(D)用来测试,如果变量stra存在,则返回为变量stra的值,否则输出为word ,并退出当前脚本程序

A.${stra-word }

B. ${stra=word }

C.${stra: +word }

D.${stra: ?word }

29.在Shell变量引用操作符可实现模式匹配替换其中(B)用来的含义是若pattern 匹配变量stra的头部,则删除最长匹配部分并返回剩余部分。

A. ${stra #pattern}

B.${stra##pattern }

C.${stra%pattern}

D.${stra%%pattern}

30.为了使子进程能继承父进程中定义的变量,就必须使(D)命令将这些变量送入进程转出区83

A. read

B.set

C.shift

D.export

31. 使用(D)形式时,即使表达式中有Shell的特殊字符时,也不必用双引号将其括起来。

87

A. test 表达式

B.[ 表达式]

C.let 算术表达式

D.((算术表达式))

32. 使用(D)形式时可以返回算术表达式的确切值

A. test 表达式

B. let 算术表达式

C.((算术表达式))

D.$((算术表达式))

33.gcc可以对编译阶段进行控制,其中(B)选项规定编译到汇编语言,不进行其他操作。107

A.-E

B.-S

C.-c

D.-o

34.gcc可以对编译阶段进行控制,其中(A)选项设定库文件的路径

A.-L path

B. -I path

C. -l library

D.-static

35.gcc可以对编译阶段进行控制,其中(D)选项在可执行文件中包含标准调试信息,供gdb 进行调试。

A.-Wall

B. -Werror

C. -w

D.-g

36.在Linux底层文件访问中的大多数操作都是围绕文件描述符来展开的其中(A)函数是内核向进程返回一个文件描述符为以后使用148

A.open()

B. read()

C. write()

D.close()

37.最终文件权限取决于(D)

A. mode

B. unmask

C. mode&unmask

D.mode&~unmask 非掩码

38.Lseek()中第三个参数的值为0表示(A)

A.文件开始位置

B. 文件读写指针当前位置

C. 文件结束位置

D.都不是

39.文件属性读取函数中,依据文件名且当文件是一个符号链接时返回是链接所指向文件的信息的函数是(A)152

A.stat

B. lstat

C. fstat

D.都不是

40.利用文件属性读取函数获取的st_mode进行文件类型测试方法正确的是D

A.对成员st_mode同文件类型掩码进行与运算

B. 对成员st_mode直接判断

C. 利用带成员st_mode参数宏(用于文件类型判断)定义

D. A和C都可以

41.下列函数中可关闭文件的函数(A)

A.close()

B. dup2()

C. A和B都可以

D.dup()

42.下列底层文件访问函数中第一个参数是文件描述符的是(C)157

A.chmod

B. lchown

C. fchown

D.chown

43.硬链接是(B)162

A.指向目标文件的指针

B. 指向文件的索引节点

C. 可跨越不同文件系统创建

D.可通过symlink()来创建

44.读取链接readlink和删除链接unlink操作对象是(C)163

A.都只对硬链接有效

B. 都对软链接无效

C. 读取只对软链接有效,删除都两种都有效

D.读取对两种都有效,删除只对软链接有效。

45.目录文件的读取函数readdir()参数和返回值的含义()C 167

A.参数和返回值都指向目录文件

B.参数和返回值都指向目录项

C.参数指向目录文件,返回值指向目录项

D.返回值指向目录文件,参数指向目录项

46.对磁盘文件的标准I/O操作一般是实现(A)171

A.全缓冲

B.行缓冲

C.不带缓冲

D.都可以

47.当标准输入和标准输出涉及交互作用设备时,它们是(B)

A.全缓冲

B.行缓冲

C.不带缓冲

D.都可以

48.标准错误输出是(C)

A.全缓冲

B.行缓冲

C.不带缓冲

D.都可以

49.在函数fopen() 中文件打开模式中要求文件必须存在的模式是(A)172

A.r和r+

B.w和w+

C.a和a+

D.ab和wb

50.在函数fopen() 中文件打开模式中不是可读写的方式打开文件模式是(D)

A.r+

B.w+

C.a+

D.r

51.在打开函数中其中是在由指定的流上打开由路径名指定的文件,其返回值为指向文件流指针,此函数用于将一个指定的文件打开为一个预定义的标准流(C)

A.open

B.fopen

C.freopen

D.fdopen

52.以下函数中表示从某流中读取一个字符但该函数不带参数,表示从标准输入流中读字符的函数是(C)174

A.gets

B.getc

C.getchar

D.fgec

53.当到达文件尾端或出错时,字符读取函数的返回值都是EOF,为进一步确认文件是否已到文件尾,应当通过(B)函数来判断。

A.ferror

B.feof

C.cleanerr

D.perror

54.在定位函数中,可直接将流的读写指针设置到文件的起始位置同时会将错误指示器errno 清零的函数是()rewind 182 无答案

A.ferror

B.feof

C.clearerr 174

D.perror

55.下面关于ftell()函数成功调用说法不正确的是(C)

A.会清除流结束标志

B.返回读写指针当前相对文件起始位置的位移量

C.返回读写指针当前相对文件结束位置的位移量

D.会撤销已调用ungetc()对流的影响

56.格式化输出可把格式化数据输出到标准输出、指定文件及字符缓冲区。其中()函数是将格式化数据输出到指定大小的字符缓冲区。(D)183

A.printf

B.fprintf

C.sprintf

D.snprintf

57.格式化输入可从标准输入、指定文件及字符缓冲区读取格式化数据。其中()函数是输出到指定文件。(B)

A.printf

B.fprintf

C.sprintf

D.snprintf

58.关于临时文件不正确的是A186

A.可通过tmpnam()创建

B.也可通过tmpfile()创建

C.程序结束时或关闭文件时自动删除

D.调用tmpname 次数有限制

59.下列是进程的异常终止的是(D)193

A.从main中调用return返回

B.调用exit

C.调用_exit

D.调用abort

60.不属于非格式化标准I/O的是(C)

A. 字符I/O

B.行I/O

C.列I/O

D.块I/O

61.关于exit()函数不正确的是(B)194

A.先清理后进入内核

B.底层系统调用

C.有一个整型参数

D.用于正常终止一个进程

62.内核使程序执行的方法的是(A)

A. 调用exec函数

B.调用exit/_exit

C.从main返回

D.收到一个系统终止信号

63.关于atexit函数正确的是(D)

A.一个进程可登记超过32个函数

B.函数登记的顺序和调用顺序相同

B.同一函数可登记多次,但调用一次

D.在显示或隐式调用exit时则执行这些登记的终止处理程序

64.非初始化数据段由exec赋初值常称为(C)196

A.正文段

B.数据段

C.bss段

D.堆

65.在存储空间布局中从低地址到高地址依次分布为A

A.正文段→数据段→bss段→堆→栈

B.栈→堆→bss段→数据段→正文段

C.正文段→堆→栈→数据段→bss段

D.堆→正文段→数据段→bss段→栈

66.PID为0的交换进程是(A)200

A.其他所有进程的祖先进程

B.所有其他用户进程的祖先进程

C.其他所有内核线程的父进程

D.普通进程

67.调用exec可能有变化的是(D)204

A.调用前后进程ID

B.调用exec前后实际用户ID

C.调用exec前后实际组ID

D.调用exec前后有效用户ID和有效组ID

68当waitpid函数的pid参数设置为(A)表示等待任一子进程终止。211

A.pid==-1

B.pid==0

C.pid>0

D.pid<-1

69.fork函数在父进程中的返回值是(B)206

A.0

B.创建的子进程的进程标识号

C.-1

D.1

70.fork函数在子进程中的返回值是(A)

A.0

B.创建的子进程的进程标识号

C.-1

D.1

71.进程可以忽略大部分信号,但下列信号中(D)不能忽略213

A.SIGBORT

B.SIGILL

C.SIGQUIT

D.SIGKILL

72.调用exec函数会将原来设置为要捕获的信号都更改为(A)214

A. 默认

B.忽略

C.另一捕获

D.默认或忽略

73.可用于在不同主机的进程间通信的技术是(D)225

A. 管道

B.共享内存

C.消息队列

D.套接字

74.只能在同源进程间通信的技术(A)224

A. 普通管道

B.命名管道

C.消息队列

D.共享内存

75.不属于System V IPC通信技术的是(A)

A. 管道

B.消息队列

C.信号量

D.共享内存

76.建立从父进程到子进程的管道的方法(B)225

A.父进程关闭管道的写端,子进程关闭管道读端

B.父进程关闭管道的读端,子进程关闭管道的写端

C.父子进程都管道的读端

D.父子进程都关闭管道的写端

76.获取某个环境变量值使用函数A

A.getenv B.putenv C.setenv D.unsetenv

77.文件系统保存在磁盘的B

A.引导块

B.超级块

C.i节点块

D.数据块

78.Linux文件系统的根目录的i节点号为C

A. 0

B. 1

C.2

D.3

79.文件描述符的数据类型是B

A. char

B.int

C.double

D.float

80.设置文件偏移量的系统调用是C

A. truncate

B. sync C . lseek D.create

81.下面那个不是lseek第三个参数的取值C

A.SEEK_SET

B.SEEK_CUR

C.SEEK_NOW

D.SEEK_END 82.可以使用(C)系统调用获得符号链接所引用文件名称

A.link

B.symlink

C.readlink

D.softlink 83.获得工作路径名称的系统调用是A

A.getcwd

B.getpwuid

C.getgrgid

D.getlogin 84.通过文件属性中的uid获得文件拥有者名字的系统调用是B

A.getcwd

B.getpwuid

C.getgrgid

D.getlogin 85.通过文件属性中的gid获得文件所属组名字的系统调用是C

A.getcwd

B.getpwuid

C.getgrgid

D.getlogin 86.根据文件路径来改变文件权限使用系统调用是B

A.chown

B.chmod

C.fchmod

D.fchown

一、填空题

1.Linux内核与发行版的关系:Linux Kernel 3.5.3是Linux内核版,而Ubuntu 1

2.04.1是Linux 的发行版

2.Shell是linux系统的一种命令行用户界面,提供了用户与操作系统进行交互的接口,本质上是命令解释器,可为用户提供个性化的使用环境。

3.在Shell中测试运算有文件属性测试、字符串测试、数值测试、逻辑运算。

4. 专门执行整数算术运算的命令let所指表达式可执行C语言中常见的算术、逻辑、位运算、比较运算等。

5.Vi的三中工作模式:插入模式、命令模式、末行模式。

6.Gcc生成可执行文件的四个步骤:预处理、编译、汇编、链接。预处理是对源程序进行头文件加载和宏展开等操作,由cpp完成;汇编一是产生汇编代码,二是产生二进制的目标文件,由gcc使用as;生成的多.o文件和使用到的库文件链接成为可被操作系统执行的可执行程序,使用ld工具,可使用两类库文件。

7.库分为静态库和共享库。静态库由多个.o文件组成的集合,文件成员没有特殊的存在格式,使用“ar”可维护和管理,库文件后缀为“.a”;共享库多个.o文件由编译器按照一定特殊的方式生成。多个可执行程序可共享库文件的代码段,但不共享数据。

8.命令行参数是main。函数的参数y

Main函数的参数若有两个参数则第一个参数代表命令行参数个数、第二个参数代表指向各命令行参数字符串的指针数组。

9.Linux 中日期时间的表示方法有:算术类型、结构体类型、字符串类型。

10.如果一个C程序的入口表示为main(int argc,char *argv[]),编译该程序后的可执行程序为a.out,那么在命令“./a.out –f foo”后,main中的参数argv[1]指向的字符串是(“-f”)。

11.Linux系统下表示标准输入、标准输出和标准错误输出的文件描述符(符号表示)分别为(STDIN_FILENO、STDOUT_FILENO 、STDERR_FILENO),它们的值分别为0、1、2。12.数字635表示的权限使用字母的方式表示为(rw—wxr-x)、使用符号方式表示为(S_IRUSR | S_IWUSR | S_IWGRP | S_IXGRP | S_IROTH | S_IXOTH)。

13.系统调用open的功能是打开或创建文件。

14.使用open打开文件时有三个标志必须要选择其一,这三个标志是O_RDONLY、O_WRONLY、O_RDWR。

15.文件偏移量代表下一次读或写的位置。

16.将文件偏移量市值为当前偏移处之前的4个字节的维护使用lseek(fd,(-4),(SEEK_CUR))。

17.设置打开文件标志(O_TRUNC),可以截断文件为0,使用系统调用(truncate)可以截断文件或者加长文件。

18.如果umask设置为022,则创建一个新文件夹(数字表示)的权限为(644)、创建一个

新目录的权限为(755)。

19.如果umask设置为024,则创建一个新文件夹(数字表示)的权限为(642)、创建一个新目录的权限为(753)。

20.使用系统调用(umask)可以设置和得到文件模式的屏蔽字。

21.创建硬链接使用系统调用(link),创建符号链接使用系统调用(symlink)。

22.获得工作路径名称的系统调用是(getcwd)。

23.可以使用(stat或fstat或lstat)系统调用显示文件属性信息。

24.chmod,chown,utime都可以修改文件i节点信息,其中chmod的功能是(更改文件权限)、chown的功能是(更改文件所有者和所属组)、utime的功能是(更改文件访问时间和修改时间)。

25.若实现将标准输出重定向到文件描述符为6对应的文件上,则应使用语句(dup2(6,1))。

26.系统调用(Unlink)的作用是删除目录项,这里的目录项是指(文件名和文件i节点的对应关系)。

27.打开目录使用(DIR *opendir(const char *name))系统调用,关闭目录使用(int closedir(DIR *dir))系统调用,读取目录内容使用(struct dirent *readdir(DIR *dir))系统调用。28.chdir系统调用的功能是(改变当前目录)。

29.创建目录使用(int mkdir(const char *pathname, mode_t mode))系统调用、删除目录使用(int rmdir(const char *pathname))系统调用。

30.popen函数实现的操作:创建一个管道,fork一个子进程,然后关闭管道的不使用端,在子进程中exexc一个shell以执行一条命令,然后等到命令的终止。

31.使用kill发送信号时,发送方进程应具有相应的权限:

接受和发送进程的所有者相同,发送进程的所有者是超级用户

三、简答题

1.系统调用、库函数的区别和练习

从用户角度观察,系统调用和库函数都以C函数形式出现,提供给用户一种功能实现的接口,需要用户输入指定的参数,调用结束得到指定的返回值。

从实现者角度观察,库函数是在系统调用上层的函数,库函数一般指程序员可以使用的通用函数。

系统调用由两部分组成:

(1)核心函数:是实现系统调用功能的代码,作为操作系统的核心驻留在内存中,是一种共享代码。运行在核心态。

(2)接口函数:是提供给应用程序的API,以库函数的形式存在于Linux的lib.a中,该库中存放了所有系统调用的接口函数的目标代码,用汇编语言书写。其主要功能是把系统调用号,入口参数地址传给相应的核心函数,并使用户态下运行的应用程序陷入核心态。4.完成如下命令

(1)新建用户tom 和用户组student

#useradd tom

#passwd tom

#groupadd student

(2)新建文件file

#touch file

(3)将文件file 改名为test,然后将test拷贝到/home

#mv file test

#cp test /home

(4)将/home/test文件的拥有着修改为tom,将文件所属组该为student

#chown tom:student /home/test

5.静态库和共享库的区别

(1)静态库的代码在编译时就已连接到开发人员开发的应用程序中。

(2)共享库只是在程序开始运行时才载入,在编译时,只是简单地指定需要使用的库函数。(3)静态库文件以.a结尾,共享库文件以.so结尾。

6.Linux文件类型主要有哪七类?

常规文件、目录文件、字符设备文件、块设备文件、管道文件、链接文件、套接字文件7.简述文件、i节点、文件名、目录之间的关系

每个存在磁盘上的文件都由i节点和数据块两部分组成,i节点和文件一一对应,一个i节点可以对应多个文件名,文件名和i节点的对应关系叫做文件的硬链接,文件名和i节点的对应关系保存在目录文件中。

8.什么是文件描述符?

(1)一个非负整数,内核以此来标识一个特定进程正在操作的文件。

(2)012代表三个标准的文件描述符,分别为标准输入、标准输出、标准错误输出

9.使用符号方式表示rwxrwxrwx权限

S_IRUSR|S_IWUSR|S_IXUSR|S_IRGRP|S_IWGRP|S_IXGRP|S_IROTH|

S_IWOTH|S_IXOTH

10.写出open一下6种打开标志:只读、只写、读写、追加、文件不存在创建、截断为0 O_RDONL Y O_WRONLY O_RDWR O_APPEND O_CREAT O_TRUNC 11.读程序,写出执行结果并解释得到该结果的原因

main()

{

int fd1,fd2;

fd1=open(“/etc/passwd”,O_RDONL Y);

fd2=open(“/etc/passwd”,O_RDWR);

printf(“fd1=%d,fd2=%d\n”,fd1,fd2);

close(fd1);

close(fd2);

}

结果:fd1=3 fd2=4

原因:open返回的文件描述符为最小可用的非负整数,012是三个标准的文件描述符默认已经被占用,所以第一个open的返回值为3,第二个open返回的是4。

12.回答stat、fstat、latat三个系统调用的区别

stat根据路径获得文件元数据信息

fstat根据文件描述符获得文件元数据信息

前两者如果遇到符号链接文件则会一直引用至非符号链接文件

lstat获得符号链接文件本身的文件元数据信息

12.dup和dup2的区别和联系

联系:dup与dup2都用来将新文件描述符指向原来文件描述符指向的打开文件描述。

区别:dup返回的新文件描述符为最小可用的文件描述符,dup2返回的新文件描述符可以通过第二个参数指定。

13.硬链接和符号链接的区别

(1)命令

ln 原文件硬链接文件(不能对目录创建硬链接)

ln –s 原文件/目录符号链接文件

(2)是否新增文件:硬链接不增文件,符号链接增加文件。

(3)删除原文件/目录

硬链接:对应i节点链接数-1。

符号链接:符号链接文件失效。

(4)删除链接文件

删除硬链接文件,使对应i节点的链接数-1。

删除符号链接文件,对原文件/目录无任何影响

(5)是否跨文件系统:硬链接不可以,符号链接可以

14.fork与vfork区别?

(1)fork创建的子进程复制父进程的整个地址空间,vfork不创建这一副本,子进程借用父进程的地址空间,直到其调用exec族函数或终止;

(2)fork创建的子进程和父进程相互独立地运行,而vfork创建子进程后挂起父进程,直到子进程终止或调用exec族函数。

使用kill发送信号时,发送方进程应具有相应的权限:

接受和发送进程的所有者相同,发送进程的所有者是超级用户。

15.阅读以下代码,若execlp调用成功的话,“Done!”会打印输出吗?为什么?

#include

int main()

{

printf(“Running ps with execlp\n”);

execlp(“ps”,”ps”,”-af”,0);

printf(“Done!\n”);

exit(0);

}

不会输出“Done!”。

原因:

执行execlp(“ps”,”ps”,”-af”,0)调用成功后,当前进程的地址空间被新的程序ps所替代,将执行“ps -af”

16.试写出下列程序段的运行结果,并解释原因

int x=0,int y=0;

void thread1(void)

{

printf(“This is pthread1.the sentence 1\n”);

y=7;

sleep(1);

printf(“This is pthread1.the sentence 2\n”);

x=x+y;

}

void thread2(void)

{

printf(“This is pthread1.the sentence 1\n”);

x=4;

sleep(1);

printf(“This is pthread1.the sentence 1\n”);

y=8+y;

}

void main(void)

{

pthread_t id1,id2;

pthread_create(&id1,NULL,(void *)thread1,NULL);

pthread_ create(&id2,NULL,(void *)thread2,NULL);

pthread_join(id1,NULL);

pthread_ join(id2,NULL);

printf(“x=%d,y=%d\n”,x,y);

}

答案:

This is pthread1.the sentense 1

This is pthread2.the sentense 1

This is pthread1.the sentense 2

This is pthread2.the sentense 2

x=11,y=15

原因:

(1)线程1先运行,线程2后运行。

线程1执行sleep(1);后阻塞,线程2继续执行,线程2执行到sleep(1);时线程2阻塞,线程1阻塞结束继续执行,线程1执行结束后线程继续执行到结束。

(2)线程1和线程2共享进程的数据段,因此共享变量x,y。

17.进程间通信的六种方式是什么?简述他们的通信原理?

(1)信号:用于通知接收进程有某种事件发生。

(2)管道:连接一个进程的输出至另一个进程的输入的一种方法。

(3)信号量:一个计数器,用来记录对某个资源的使用情况。

(4)共享内存:允许多个进程访问同一块内存空间。

(5)消息队列:消息的链表,链表中每个节点包括消息类型和正文两部分。

(6)套接字:在网络上主机间进程进行通信的方式。

18.PIPE与FIFO的区别与联系

PIPE为未命名管道,FIFO为命名管道。

联系:PIPE和FIFO都是单向传输,一端为读,另一端为写。

区别:PIPE只能在有亲缘关系的进程中使用,如父子进程;

FIFO有名字,所以只要知道该名字,无关进程之间也可以使用。

19.书名产生信号的几种方式?

(1)用户操作。如键盘操作Ctrl-C,最终使得内核产生信号SIGINT。

(2)进程执行出错。如浮点数溢出,内核也会产生信号。

(3)进程执行某个系统调用。如调用kill向某个进程或进程组发送信号。

20.说明信号传递的过程。

(1)生成(generating)。内核要更新目标进程的数据结构,表示一个新的信号已经被发送给此进程。此时,进程并没有对信号做出任何响应。

(2)传递(delivery)。强迫目标进程对信号做出响应。

四、编程题

1.向文件f1中写入“hello world!”,然后再将f1中的内容读出并显示在屏幕上。(注意必要的错误判断)

#include

#include

#include

int main()

{

int fd;

char buf1[13]={"hello world!"};

char buf2[12];

int num;

fd = open( "f1",O_RDWR| O_CREAT | O_TRUNC, 0644);

if(fd==-1)

{

perror("f1 not open");

exit(1);

}

num=write(fd,buf1,sizeof(buf1)-1);

if(num!=(sizeof(buf1)-1))

printf("write less than want\n");

lseek(fd,0,SEEK_SET);

num=read(fd,buf2,12);

if(num!=12)

printf("read less than 12\n");

write(1,buf2,12);

close(fd);

}

2.向文件f2中写入“aabbccddee”,然后将偏移量移到绝对值偏移为4的位置处,读6个字符,并将结果显示在屏幕上

#include

#include

#include

int main()

{

int fd;

char buf1[11]={"aabbccddee"};

char buf2[10];

int num;

fd = open( "f2",O_RDWR| O_CREAT | O_TRUNC, 0644);

if(fd==-1)

{

perror("f2 not open");

exit(1);

}

num=write(fd,buf1,sizeof(buf1)-1);

if(num!=(sizeof(buf1)-1))

printf("write less than want\n");

lseek(fd,4,SEEK_SET);

num=read(fd,buf2,6);

if(num!=6)

printf("read less than 6\n");

write(1,buf2,6);

close(fd);

}

3.向文件f3中写入“aabbccddeeffgghh”,然后将文件截短后的文件内容读出并显示在屏幕上

#include

#include

#include

int main()

{

int fd;

char buf1[17]={"aabbccddeeffgghh"};

char buf2[8];

int num;

fd = open( "f3",O_RDWR| O_CREAT | O_TRUNC, 0644);

if(fd==-1)

{

perror("f3 not open");

exit(1);

}

num=write(fd,buf1,sizeof(buf1)-1);

if(num!=(sizeof(buf1)-1))

printf("write less than want\n");

lseek(fd,0,SEEK_SET);

ftruncate(fd,8);

num=read(fd,buf2,8);

if(num!=8)

printf("read less than 8\n");

write(1,buf2,8);

close(fd);

}

4.实现“cat文件名”显示文件内容#include

main(int argc,char *argv[])

{

int fd;

int num;

char buf[10];

if(argc!=2)

{

printf("miss filename\n");

exit(1);

}

fd=open(argv[1],O_RDONL Y);

if(fd==-1)

{

perror("error open");

exit(1);

}

while((num=read(fd,buf,10))!=0)

write(1,buf,num);

close(fd);

}

5.实现“cp 原文件目标文件”

#include

#include

main(int argc,char *argv[])

{

int from,to;

int num;

char buf[10];

if(argc!=3)

{

printf("argument error\n");

exit(1);

}

from=open(argv[1],O_RDONL Y);

to=open(argv[2],O_WRONL Y|O_CREAT|O_TRUNC,0644);

num=read(from,buf,10);

while(num!=0)

{

write(to,buf,num);

num=read(from,buf,10);

}

close(from);

close(to);

}

6.编写程序pro3.c,将字符串“hello world”通过输出重定向方式写入文件f1中

#include

#include

#include

#include

#include

main()

{

int fd;

if((fd=open("f1",O_WRONL Y|O_CREAT,0644))==-1)

perror("open fail");

if(dup2(fd,1)==-1)

perror("Redirect failed");

printf("Hello world\n");

close(fd);

}

7.使用fork创建进程,在子进程中打印“I am the child”和子进程pid,在父进程中打印“I am the father”和父进程pid

#include

#include

#include

int main()

{

pid_t pid;

pid = fork();

if(pid < 0)

{

perror("fork");

exit(1);

}

else if(pid == 0)

printf("I am the child\n");

else

printf("I am the father\n");

exit(0);

}

8.创建子进程,在子进程中执行“ps -A”命令,父进程等待子进程结束后打印“child over”及所处理的子进程进程号

#include

#include

main()

{

pid_t pid,cpid;

int i;

char* args[64];

args[0]=”ps”;

args[1]=”-A”;

args[2]=NULL;

pid=fork();

if(pid<0)

{

perror(“fork”);

exit(1);

}

else if(pid==0)

{

execvp(args[0],args);

exit(0);

}

else

{

cpid=wait(NULL);

printf(“child over! cpid=%d\n”,cpid);

}

}

9.编写程序处理SIGINT信号,当程序接收到SIGINT信号后输出“SIGINT is caught”#include

#include

void signal_handler(int signum)

{

switch(signum)

{

case SIGINT:

printf("SIGINT is caught!\n");

break;

}

}

int main()

{

signal(SIGINT,signal_handler);

pause();

return 0;

}

10.使用PIPE时限父子进程向子进程发送1234567890,子进程接收并显示

#include

#include

main()

{

int pfd[2];

char buf[32];

pid_t pid;

pipe(pfd);

if((pid=fork())<0)

perror("fork");

else if(pid>0)

{

close(pfd[0]);

write(pfd[1],"1234567890",11);

}

else

{

close(pfd[1]);

read(pfd[0],buf,11);

printf("child read:%s\n",buf);

}

}

操作系统期末试卷(含答案)79149

操作系统复习题1 一、判断题 1.分时系统中,时间片设置得越小,则平均响应时间越短。() 2.多个进程可以对应于同一个程序,且一个进程也可能会执行多个程序。() 3.一个进程的状态发生变化总会引起其他一些进程的状态发生变化。() 4.在引入线程的OS中,线程是资源分配和调度的基本单位。() 5.信号量的初值不能为负数。() 6.最佳适应算法比首次适应算法具有更好的内存利用率。() 7.为提高对换空间的利用率,一般对其使用离散的分配方式。() 8.设备独立性是指系统具有使用不同设备的能力。() 9.隐式链接结构可以提高文件存储空间的利用率,但不适合文件的随即存取。() 10.访问控制矩阵比访问控制表更节约空间。() 二、选择题 1.在设计分时操作系统时,首先要考虑的是(A);在设计实时操作系统时,首先要考虑的是(B);在设计批处理系统时,首先要考虑的是(C)。 A,B,C :(1)灵活性和适应性;(2)交互性和响应时间;(3)周转时间和系统吞吐量;(4)实时性和可靠性。 2.对一个正在执行的进程:如果因时间片完而被暂停执行,此时它应从执行状态转变为(D)状态;如果由于终端用户的请求而暂停下来,则它的状态应转变为(E)状态;如果由于得不到所申请的资源而暂停时下来,则它的状态应转变为(F)状态。D,E,F:(1);静止阻塞(2);活动阻塞(3);静止就绪(4);活动就绪(5)执行。 3.我们如果为每一个作业只建立一个进程,则为了照顾短作业用户,应采用(G);为照顾紧急作业用户,应采用(H);为能实现人机交互,应采用(I);而能使短作业、长作业和交互作业用户满意时,应采用(J)。 G,H,I,J:(1);FCFS调度算法(2);短作业优先调度算法;(3)时间片轮转算法;(4)多级反馈队列调度算法;(5)基于优先权的剥夺调度算法。 4.由固定分区发展为分页存储管理方式的主要推动力是(K);由分页系统发展为分段系统,进而发展为段页式系统的主要动力分别是(L)和(M)。 K,L,M:(1)提高内存利用率;(2)提高系统吞吐量;(3)满足用户需要;(4)更好地满足多道程序进行的需要;(5)既满足用户需求,又提高内存利用率。 5.在存储管理中,不会产生内部碎片的存储管理方式是(N);支持虚拟存储器,但不能以自然的方式提供存储器的共享和存取保护机制的存储管理方式是(O)。 N:(1)分页式存储管理;(2)分段式存储管理;(3)固定分区式存储管理;(4)段页式存储管理。 O:(1)段页式存储管理;(2)请求分区页式存储管理;(3)请求分段式存储管理;(4)可变分区存储管理;(5)固定分区存储管理;(6)单一连续分区式存储管理。 6.磁盘调度主要是为了优化(P),下列算法中能避免磁盘粘着的现象的是(Q)。P:(1)寻道时间;(2)旋转延迟时间;(3)传输时间。 Q:(1)SSTF;(2)FCFS;(3)SCAN;(4)CSCAN;(5)FSCAN。 7.文件系统中,目录管理最基本的功能是(R),位示图的主要功能是(S),FAT 表的主要功能是(T)。 R,S,T:(1)实现按名存取;(2)提高文件存储空间利用率;(3)管理文件存储器的空闲空间;(4)指出分配给文件的盘块(首个盘块除外)的地址;(5)管理文件存储器的空闲空间,并指出分配给文件的盘块(首个盘块除外)的地址。 8.文件系统采用多级目录结构,可以(U)和(V)。 U,V:(1)缩短访问文件存储器时间;(2)节省主存空间;(3)解决不同用户文件的命名冲突;(4)方便用户读写文件;(5)提高检索目录的速度。9.计算机系统中信息资源的安全包括(W)、(X)和(Y)三个方面,其中程序被删除属于(W)方面的威胁,数据被非法截取属于(X)方面的威胁,消息被更改属于(Y)方面的威胁。 W,X,Y:(1)保密性;(2)完整性;(3)可用性;(4)方便性。 三、填空题 1.操作系统最基本的特征是(1)和(2),最主要的任务是(3)。 2.引入进程的主要目的是(4),进程存在的唯一标志是(5)。 3.(6)是指通过破坏死锁产生的必要条件来防止死锁的发生。引起死锁的四个必要条件中,(7)是不应该被破坏的,但对某些特殊的资源(如打印机),该条可通过(8)来破坏;而其他能被破坏的三个必要条件分别是(9)、(10)和(11)。 4.虚拟存储器管理的基础是(12)原理,在请求分页管理方式中,页表中的状态位用来只是对应页(13)修改位用来只是对应页(14),引用位则是供(15)使用;而在请求分段系统还增加了增补位,它用来指示(16)。 5.设备驱动程序是(17)与(18)之间的通信程序如果系统中有3台相同的单显和2台相同的彩显则必须为它们配置(19)种设备驱动程序 6.廉价磁盘冗余阵列可组成一个大容量磁盘系统,它利用(20)技术来提高磁盘系统的存取进度,而利用(21)技术来增加磁盘系统的可靠性 7.包过滤防火墙工作在(22)层,采用代理服务技术的防火墙则工作在(23)层 8.UNIX文件系统对文件存储空间采用(23)分配方式,它通过(24)来管理空闲的文件存储空间。 四、问答题 1.假设某多道程序设计系统中有供用户使用的内存100k,打印机1台。系统采用可变分区管理内存:对打印机采用静态分配,并假设输入输出操作的时间忽略不计:采用最短剩余时间优先的进程调度算法,进程剩余执行时间相同时采用先来先服务算法;进程调度时机在执行进程结束时或有新进程到达时。现有一进程序列如下: 假设系统优先分配内存的低地址区域,且不需移动已在主存中的进程,请:(1)给出进度调度算法选中进程的次序,并说明理由。 (2)全部进程执行结束所用的时间是多少? 2.请用信号量解决以下的过独木桥问题:同一方向的行人可连续过桥,当某一方向的行人必须等待:另一方向的行人必须等待:当某一方向无人过桥是,另一方向的行人可以过桥。 3.提高内存利用率的途径有哪些? 4.何谓脱机输入/输出技术? 5. 将目录文件当作一般数据文件来处理有什么优缺点? 操作系统复习题1答案 一、判断题 1、错 2、对 3、错 4、对 5、对 6、错 7、错 8、错 9、对10、错 二、选择题 1、A :(2);B:(4);C:(3)。 2、D:(4);E:(3);F:(2)。 3、G:(2);H:(5);I:(3);J:(4)。 4、K:(1);L:(3);M:(5)。 5、N:(2);O:(2)。 6、P:(1)寻道时间;Q:(5)。 7、R:(1);S:(3);T:(5)。 8、U:(3);V:(5)。 9、W:(3);X:(1);Y:(2)。

Linux操作系统试题

Linux操作系统试题及答案 一. 单选。( 10 小题共20 分,) 页首 1 . 存放用户帐号的文件是()。( 2 分) A. shadow B. group C. passwd D. gshadow 2 . 下面哪个系统目录中包含Linux使用的外部设备()。 A. /bin B. /dev C. /boot D. /home 3 . Linux系统的联机帮助命令是()。 A. tar B. cd C. mkdir D. man 4 . 文件传输协议的英文缩写为()。 A. FTP B. DNS C. SQL D. WWW 5 . 如何删除一个非空子目录/tmp ( )。 A. del /tmp/* B. rm -rf /tmp C. rm -Ra /tmp/* D. rm –rf /tmp/* 6 . 更改一个文件权限的命令是()。 A. change B. attrib C. chmod D. at 7 . 如果执行命令#chmod 746 file.txt,那么该文件的权限是()。

A. rwxr--rw- B. rw-r--r-- C. --xr--rwx D. rwxr--r— 8 . 如果您想列出当前目录以及子目录下所有扩展名为“.txt”的文件,那么您可以使用的命令是()。 A. ls *.txt B. find . –name “.txt” C. ls –d .txt D. find . “.txt” 9 . 怎样显示当前目录()。 A. pwd B. cd C. who D. ls 10 . 欲把当前目录下的file1.txt 复制为file2.txt,正确的命令是()。 A. copy file1.txt file2.txt B. cp file1.txt | file2.txt C. cat file2.txt file1.txt D. cat file1.txt > file2.txt 二. 多选 11 . VIM的操作方式有()。 A 命令方式 B 插入方式 C 命令行方式 D 窗口方式 12 . 下列正确的HTML语言是()。 A 〈HTML〉…… 〈/HTML〉 B 〈/HTML〉…… 〈HTML〉 C 〈BODY〉…… 〈/BODY〉

Linux期末复习

一、单项选择题(将题目答案写在答题纸上,每题3分,共60分) 1、下列关于Linux操作系统的描述错误的是(D) A、GNU/Linux是Linux的全称 B、Linux是能够达到主机可靠性要求的少数操作系统之一,许多Linux主机和服务器 在国内和国外大中型企业中每天24小时,每年365天不间断地运行。这是Microsoft Windows Server等操作系统所不能比拟的。 C、Linux系统是世界上唯一能够在嵌入式设备、个人计算机、服务器、小型机直到大 型机上运行的操作系统,没有其他操作系统能够做到这一点。 D、Linux的创始人是就叫Linux 注:linux是一个多任务的多用户的多平台的在保护模式下的遵守POSIX标准的遵守SYSV和BSD扩展的遵守GPL许可的32位(也有64位)的类UNIX的开放源代码的免费操作系统。 Linux最早是Linus Torvalds在1991年开始设计开发的。 2、Linux内核主要有(D) A、进程管理 B、内存管理 C、文件管理 D、以上都包括 注:进程调度-控制着进程对CPU的访问。 内存管理-允许多个进程安全地共享主内存区域 虚拟文件系统-隐藏各种不同硬件的具体细节,为所有设备提供统一的接口。 网络-提供了对各种网络标准协议的存取和各种网络硬件的支持。 进程间通信(IPC)-支持进程间各种通信机制,包括共享内存、消息队列及管道等。 3、下列说法正确的是(C)(或者考察存储器的价格容量速度关系等) A、并发指的是真正意义的同时执行 B、并行仅指宏观上同时执行,微观上每个时间片只有一个进程执行 C、MMU是在CPU中负责内存页面映射的部件单元 D、以上说法都是正确的 注:并行是指在同一时刻,有多条指令在多个处理器上同时执行。并发是指在同一时刻,只能有一条指令执行,但多个进程指令被快速轮换执行,使得在宏观上具有多个进程同时执行的效果

N套_操作系统期末试卷(含答案)

一、选择题 1、在现代操作系统中引入了(),从而使并发和共享成为可能。 A.单道程序 B. 磁盘 C. 对象 D.多道程序 2、( )操作系统允许在一台主机上同时连接多台终端,多个用户可以通过各自的终端同时交互地使用计算机。 A.网络 B.分布式 C.分时 D.实时 3、从用户的观点看,操作系统是()。 A. 用户与计算机硬件之间的接口 B.控制和管理计算机资源的软件 C. 合理组织计算机工作流程的软件 D.计算机资源的的管理者 4、当CPU处于管态时,它可以执行的指令是()。 A. 计算机系统中的全部指令 B. 仅限于非特权指令 C. 仅限于访管指令 D. 仅限于特权指令 5、用户在程序中试图读取某文件的第100个逻辑块时,使用操作系统提供的()接口。 A. 系统调用 B.图形用户接口 C.原语 D.键盘命令 6、下列几种关于进程的叙述,()最不符合操作系统对进程的理解 A.进程是在多程序并行环境中的完整的程序。 B.进程可以由程序、数据和进程控制块描述。 C.线程是一种特殊的进程。 D.进程是程序在一个数据集合上运行的过程,它是系统进行资源分配和调度的一个独立单位。 7、当一个进程处于()状态时,称其为等待(或阻塞)状态。 A. 它正等待中央处理机 B. 它正等待合作进程的一个消息 C. 它正等待分给它一个时间片 D. 它正等待进入内存 8、一个进程释放一种资源将有可能导致一个或几个进程()。 A.由就绪变运行 B.由运行变就绪 C.由阻塞变运行 D.由阻塞变就绪 9、下面关于线程的叙述中,正确的是()。 A.不论是系统支持线程还是用户级线程,其切换都需要内核的支持。 B.线程是资源的分配单位,进程是调度和分配的单位。 C.不管系统中是否有线程,进程都是拥有资源的独立单位。 D.在引入线程的系统中,进程仍是资源分配和调度分派的基本单位。 10、设有3个作业,它们同时到达,运行时间分别为T1、T2和T3,且T1≤T2≤T3,若它们在单处理机系统中按单道运行,采用短作业优先调度算法,则平均周转时间为()。 A. T1+T2+T3 B. (T1+T2+T3)/3 C. T1+T2/3+2*T3/3 3+2*T2/3+T1 11、在下面的I/O控制方式中,需要CPU干预最少的方式是()。 A.程序I/O方式 B.中断驱动I/O控制方式 C.直接存储器访问DMA控制方式D.I/O通道控制方式 12、有m个进程共享同一临界资源,若使用信号量机制实现对一临界资源的互斥访问,则信号量的变

Linux操作系统考试题库(1)

一、选择题 1)下列关于操作系统的叙述中,哪一条是不正确的?( C ) A.操作系统管理计算机系统中的各种资源 B.操作系统 为用户提供良好的界面 C.操作系统与用户程序必须交替运行 D.操作系统 位于各种软件的最底层 2)的发展始于()年,它是有()的一名大学生开发 的。( A ) A. 1990、芬兰 B. 1991、芬兰 C. 1993、美 国 D. 1991、波兰 3)内核不包括的子系统是( D )。(进程管理系统\内存管 理系统\管理系统\虚拟文件系统\进程间同性间通信子系统) A.进程管理系统 B.内存管理系统管理系 统 D.硬件管理系统 4)中权限最大的账户是( B )。 A. B. C. D. 5)在通常情况下,登录桌面环境,需要( B )。 A.任意一个帐户B.有效合法的用户帐号和密码C.任意一个登录密码D.本机地址 6)在 5中要配置计算机的地址,需要打开哪个菜单( C )。 A.“应用程序”→“” B.“系统”→“首选项”→“网络代理”

C.“系统”→“管理”→“网络” D.“位置”→“网络服务器” 7)配置网卡时,下面哪一项一般不需要配置( D )。 地址 B.子网掩码 C.默认网关地址地址 8)文件权限中保存了( D )信息。 A.文件所有者的权限 B.文件所有者所在组的权限 C.其他用户的权限 D.以上都包括 9)文件系统的文件都按其作用分门别类地放在相关的目录中, 对于外部设备文件,一般应将其放在( C )目录中。 10)某文件的组外成员的权限为只读;所有者有全部权限;组 内的权限为读与写,则该文件的权限为( D )。 A. 467 B. 674 C. 476 D. 764 11)文件1的访问权限为,现要增加所有用户的执行权限和同 组用户的写权限,下列命令正确的是( A )。 A. 1 B. 765 1 C. 1 D. 1 12)当前安装的主机中位于第二个接口的接口挂接一块40的 硬盘,其在中的设备文件名为( B )。 13)已知系统中的唯一一块硬盘是第一个接口的设备,该硬盘 按顺序有3个主分区和一个扩展分区,这个扩展分区又划分了

操作系统期末试题及答案

(答案在后面) 得分 一、填空题(每空 1 分,共10 分) 评分人 1. 常见的I/O 控制方式有程序I/O 方式、中断I/O 控制方式、DMA I/O 控 制方式和 通道I/O 控制方式四种。 2. 操作系统向用户提供的两个基本接口是程序接口和用户接口。 3. 若在一分页存储管理系统中,某作业的页表如下所示。已知页面大小为1024 字节,逻辑地址 (3082) 10转化得到的物理地址是6154 。 页号块号 0 2 1 3 2 1 3 6 4. 具有多路性、独立性、及时性和交互性特征的操作系统是分时操作系统。 5. 通道用于控制设备控制器与内存之间的信息交换。 6. 事务的最基本特性是。

7. 若盘块大小为4KB ,每个盘块号占 4 字节,在采用两级索引时允许的最大文件长度为 4GB 。 得分二、单选题(每题 2 分,共20 分) 评分人 1. 用磁带作为文件存贮介质时,文件只能组织成( )。 A. 顺序文件 B. 链接文件 C. 索引文件 D. 目录文件 2. 一作业8:00 到达系统,估计运行时间为 1 小时,若10:00 开始执行该作业,则其响应比是 ( C )。 A. 2 B. 1 C. 3 D. 0.5 3. 文件系统采用多级目录结构后,对于不同用户的文件,其文件名( C )。 A. 应该相同 B. 应该不同 C. 可以相同,也可以不同 D. 受系统约束 4. 死锁预防是保证系统不进入死锁状态的静态策略,其解决方法是破坏产生死锁的四个必要条件 之一。下列方法中破坏了“循环等待”条件的是( D )。 A. 银行家算法 B. 一次性分配策略 C. 剥夺资源法 D. 资源有序分配法 5. 进程状态从就绪态到运行态的转化工作是由( B )完成的。 A. 作业调度 B. 进程调度 C. 页面调度 D. 设备调度

Linux_期末复习试题(答案)

Linux 期末复习题 一、选择题 1.在创建Linux分区时,一定要创建( D )两个分区 A. FAT/NTFS B. FAT/SWAP C. NTFS/SWAP D.SW AP/根分区 2.在RHEL5中,系统默认的( A )用户对整个系统拥有完全的控制权。 A. root B. guest C. administrator D.supervistor. 3. 哪个目录存放用户密码信息( B ) A. /boot B. /etc C. /var D. /dev 4. 默认情况下管理员创建了一个用户,就会在( B )目录下创建一个用户主目录。 A. /usr B. /home C. /root D. /etc 5. 当使用mount进行设备或者文件系统挂载的时候,需要用到的设备名称位于( D )目录。 A. /home B. /bin C. /etc D. /dev 6. 如果要列出一个目录下的所有文件需要使用命令行( C )。 A. ls –l B. ls C. ls –a D. ls –d 7. 哪个命令可以将普通用户转换成超级用户( D) A. super B. passwd C. tar D. su 8. 除非特别指定,cp假定要拷贝的文件在下面哪个目录下( D) A. 用户目录 B. home目录 C. root目录 D. 当前目录 9. 在vi编辑器里,命令"dd"用来删除当前的( A) A. 行 B. 变量 C. 字 D. 字符 10. 当运行在多用户模式下时,用Ctrl+ALT+F*可以切换多少虚拟用户终端( B) A. 3 B. 6 C. 1 D. 12 11. Linux启动的第一个进程init启动的第一个脚本程序是( B)。 A./etc/rc.d/init.d B./etc/rc.d/rc.sysinit C./etc/rc.d/rc5.d D./etc/rc.d/rc3.d 12. 按下( A)键能终止当前运行的命令 A. Ctrl-C B. Ctrl-F C. Ctrl-B D. Ctrl-D 13. 下面哪个命令用来启动X Window ( B) A. runx B. Startx C. startX D. xwin 14. 用"rm -i",系统会提示什么来让你确认( B) A. 命令行的每个选项 B. 是否真的删除 C. 是否有写的权限 D. 文件的位置 15. 以下哪个命令可以终止一个用户的所有进程( D) A. skillall B. skill C. kill D. killall 16. vi中哪条命令是不保存强制退出( C) A. :wq B. :wq! C. :q! D. :quit 二、填空题 1 在Linux系统中,以_文件__方式访问设备。 2. Linux内核引导时,从文件_/etc/fstad___中读取要加载的文件系统。 3. 某文件的权限为:d-rw-_r--_r--,用数值形式表示该权限,该文件属性是___目录_____。 4. 安装Linux系统对硬盘分区时,必须有两种分区类型:__文件系统分区_______ 和__交换分区_________。

操作系统期末考试试题及答案精选

四、解答题(共20分) 1.什么是操作系统它的主要功能是什么(共8分) 操作系统是控制和管理计算机系统内各种硬件和软件资源、有效地组织多道程序运行的系统软件(或程序集合),是用户与计算机之间的接口 操作系统的主要功能包括:存储器管理、处理机管理、设备管理、文件管理以及用户接口管理。 2.操作系统中存储器管理的主要功能是什么什么叫虚拟存储器(共8分) 存储器管理的主要功能是:内存分配,地址映射,内存保护,内存扩充。(4分) 虚拟存储器是用户能作为可编址内存对待的存储空间,在这种计算机系统中虚地址被映象成实地址。或者:简单地说,虚拟存储器是由操作系统提供的一个假想的特大存储器。(4分) 3.什么是文件的逻辑组织和物理组织(共4分) 文件的逻辑组织——用户对文件的观察和使用是从自身处理文件中数据时 采用的组织方式来看待文件组织形式。这种从用户观点出发所见到的文件组织形式称为文件的逻辑组织。 文件的物理组织——文件在存储设备上的存储组织形式称为文件的物理组织。 三、填空题(每空2分,共30分) 1.通常,进程实体是由程序段,相关的数据段和PCB 这三部分组成,其中PCB 是进程存在的惟一标志。 2.从用户的源程序进入系统到相应程序在机器上运行,所经历的主要处理阶段有编辑阶段,编译阶段,连接阶段,装入阶段和运行阶段。 3.在UNIX系统中,文件的类型主要包括普通文件,目录文件,特别文件。 4.虚拟设备是通过 SPOOLing 技术把独占设备变成能为若干用户共享的设备。 5. Windows NT是采用微内核结构的操作系统,它的进程的功能发

生了变化,它只是资源分配的单位,不是调度运行的单位,后者的功能由线程完成。 五、应用题(共20分) 5.进程所请求的一次打印输出结束后,将使进程状态从( D) A、运行态变为就绪态 B、运行态变为等待态 C、就绪态变为运行态 D、等待态变为就绪态 6.采用动态重定位方式装入的作业,在执行中允许(C )将其移动。 A、用户有条件地 B、用户无条件地 C、操作系统有条件地 D、操作系统无条件地 7.分页式存储管理中,地址转换工作是由(A )完成的。 A、硬件 B、地址转换程序 C、用户程序 D、装入程序 9.对记录式文件,操作系统为用户存取文件信息的最小单位是(C )。 、文件 D 、记录 C 、数据项 B 、字符A. 10.为了提高设备分配的灵活性,用户申请设备时应指定(A )号。 A、设备类相对 B、设备类绝对 C、相对 D、绝对 11.通常把通道程序的执行情况记录在(D )中。 A、PSW B、PCB C、CAW D、CSW 14.共享变量是指(D )访问的变量。 A、只能被系统进程 B、只能被多个进程互斥 C、只能被用户进程 D、可被多个进程 15.临界区是指并发进程中访问共享变量的( D)段。 A、管理信息 B、信息存储 C、数据 D、程序 16.若系统中有五台绘图仪,有多个进程均需要使用两台,规定每个进程一次仅允许申请一台,则至多允许( D)个进程参于竞争,而不会发生死锁。 A、5 B、2 C、3 D、4 17.产生系统死锁的原因可能是由于(C )。 A、进程释放资源 B、一个进程进入死循环 C、多个进程竞争,资源出现了循环等待 D、多个进程竞争共享型设备 21.引入多道程序设计的主要目的在于(BD ) A、提高实时响应速度 B、充分利用处理机,减少处理机空闲时间 、有利于代码共享C.

Linux操作系统 考试题库

1.在Linux目录结构中目录中的文件是普通用户可以使用的可使用的可执行文件的目录是(B)19 A./sbin B./bin C./usr D./lib 2.在Linux目录结构中Linux的内核及引导程序所需要的文件位于(B)目录 A/bin B./boot C./root D./proc 3.在Linux目录结构中用来存放系统配置文件(D)目录 A./lib B./dev C./proc D./etc 4.Linux三种特殊权限中仅用于目录文件的权限是(C)22 C.黏滞位 D.都可以 5.Linux三种权限中允许进入目录的权限(C) 22 可读可写可执行 D.都不是 6.下列脚本文件最先自动执行的是(A)24 A./etc/ B./etc/profile C.~/.bashrc D.~/.bash_logout 7.下面通配符可匹配多个任意字符的通配符是(A)29 A.* B. ? C.[abcde ] D.[!a-e] 8.输出重定向符号右边的文件已经存在,不会覆盖文件而是追加的定向符是(B) A.> B.> > C. 2> D.&> 9.表示用户家目录的是(B) A./home (所有用户家目录的父目录,+用户名才是用户家目录) B.~ C. . D. .. 10.可删除非空目录及其子目录的命令是(B) A. touch -r 空目录 11. 是强引用的符号(A) A. 单引号 B.反引号 C.双引号 D.中括号 12.可显示隐藏文件的ls命令形式选项是(A)

13.可通过接受标准输入作为输出内容来创建简单文件的命令是(B)42 A.touch D. gedit 14.不带有编辑功能但有翻页、按行滚动、搜索功能的命令是(B) 43 A.cat 和less 和 tail D vi 15.wc命令可统计文件的行数、字数和字节数。在下列格式中只显示文件的字数的是(C) 51 A.wc B. wc -c C. wc -w D wc -l 16.可实现文件重命名的命令是(B)52 A.cp B. mv C. ln D rename 17.在Linux系统中可通过挂载将光盘、U盘或一个文件系统连接到主目录树的一个目录节点。期中光盘或光盘镜像对应的文件系统类型是(C)44 A.vfat B. ext3 D vboxsf 18.下面更改文件命令只能更改符号连接的目标文件的权限的命令是(C) A.chown C. chmod D.以上都不对 19.chmod命令的权限模式可使用字符串形式或八进制形式,当使用八进制形式时模式应由三或四位八进制构成,其中从最高到最低位依次表示为(A)每个八进制的三个二进制位从高到低分别表示为有无读、写、执行权限 A.文件所有者文件所属组其他用户 B. 其他用户文件所属组文件所有者 C.文件所属组文件所有者其他用户 D.其他用户文件所有者文件所属组 20.chmod命令的权限模式可使用字符串形式或八进制形式,当使用八进制形式时模式应由三或四位八进制构成,其中每个八进制的三个二进制位从高到低分别表示为有无(A) A.读写执行 B.写读执行 C.执行读写 D.执行写读 21.运行时不会创建子进程的方式是(C)69 A.赋予shell程序文件可执行权限,直接运行shell 程序(外部命令)

操作系统期末试题及答案

《操 作 系 统》 期 末 试 卷 很好地解决了“碎片”问题的存储管理方法是( A.页式存储管理 B.段式存储管理 C.静态分区管理 D.可变分区管理 多道程序设计是指(D ) A.在实时系统中并发运行多个程序 C.在一台处理机上同一时刻运行多个程序 D.在一台处理机上并发运行多个程序 设有3个进程共享同一程序段 而每次最多允许两个进程进入该程序, 若用PV 操作作同步机制,则信号量S 的取值范围为 ( A. 2, 1, 0, -1 B . 3, 2, 1, 0 C . 2, 1, 0, -1 , -2 10、在提供虚拟存储的系统中,用户的逻辑地址空间主要受( C A.内存空闲块的大小 B .外存的大小 C.计算机编址范围 11、 采用时间片轮转法调度是为了 ( ) ° A.多个终端都能得到系统的及时响应 B ?先来先服务c 优先数高的进程先使用处理器 D ?紧急事件优先处理 12、 () 必定会引起进程切换。 A. —个进程被创建后进入就绪态 B. 一个进程从运行态变成等待态 C. 一个进程从运行态变成就绪态 D ?一个进程从等待态变成就绪态 13、 操作系统根据() 控制和管理进程,它是进程存在的标志。 A.程序状态字 B .进程控制块 C ?中断寄存器 D ?中断装置 14、 ( B )存储管理方式提供二维地址结构。 A.固定分区 B.分段 C.分页 D.可变分区 15、 在进程管理中,当( )时,进程从阻塞状态变为就绪状态。 A ?进程被进程调度程序选中 B ?等待某一事件 C .等待的事件发生 D ?时间片用完 二、填空题(20*1分=20分) 1、 在单用户环境下,用户独占全机,此时程序的执行具有 _封闭性 _______ 和_可再现性_° 2、 对于信号量,在执行一次P 操作时信号量-1_ ;当其值为__<0__时,进程应阻塞。在执行V 操作时信号量的值应当_信号量+1 _;当 其值为_<=0__ 时,应唤醒阻塞队列中的进程。 3、 进程的三种基本状态分别是 、进程的三种基本状态分别是 __运行 _______ , _就绪_和_阻塞(等待)__° 4、 多道程序环境下的各道程序, 宏观上它们是—并行__运行,微观上是—串行_运行。 5、 在单CPU 系统中有 (n>1)个进程,在任一时刻处于就绪的进程最多是 _^1__个,最少是 __0 _______ 个。 6、 分区管理方案不能实现虚存的原因是 —作业地址空间不能大于存储空间 _ ° 7、 段页式存储管理中,是将作业分 _段__段___________ 内分—页 ______ 。分配以_页 _______ 为单位。在不考虑使用联想存储器快表的情况下, 每条访问内存的指令需要 _______ 3___访问内存。其中第_2_次是查作业的页表。 姓名 一、选择题(15*2分=30分) 在操作系统中,JCB 是指(A A .作业控制块B ?进程控制块 C ?文件控制块D ?程序控制块 并发进程之间(D ) A.彼此无关B.必须同步C.必须互斥 D.可能需要同步或互斥 运行时间最短的作业被优先调度,这种调度算法是( A.优先级调度 B ?响应比高者优先 C )° C .短作业优先 D .先来先服务 某页式存储管理系统中,地址寄存器长度为 A. 210 B. 211 5、( D )是一种只能进行P 操作和V A ?调度B .进程C .同步D.信号量 在操作系统中,并发性是指若干事件( A.在同一时刻 B .一定在不同时刻 24位,其中页号占 C. 214 操作的特殊变量 ° C .在某一时间间隔内 14位,则主存的分块大小是(C )字节 D. 224 D ?依次在不同时间间隔内 B. 在分布系统中同一时刻运行多个程序 D . 1, 0, -1 , -2 )的限制。 D .页表大小

Linux-期末考试试题8套(含答案)

Linux 期末考试试题(一) 一、选择题 (每小题2分,共50分) 1.在创建Linux分区时,一定要创建( D )两个分区 A. FAT/NTFS B. FAT/SWAP C. NTFS/SWAP D.SWAP/根分区 2.在Red Hat Linux 9中,系统默认的(A)用户对整个系统拥有完全的控制权。 A. root B. guest C. administrator D.supervistor. 3. 当登录Linux时,一个具有唯一进程ID号的shell将被调用,这个ID是什么( B ) A. NID B. PID C. UID D. CID 4. 下面哪个命令是用来定义shell的全局变量( D ) A. exportfs B. alias C. exports D. export 5. 哪个目录存放用户密码信息( B ) A. /boot B. /etc C. /var D. /dev 6. 默认情况下管理员创建了一个用户,就会在( B )目录下创建一个用户主目录。 A. /usr B. /home C. /root D. /etc 7. . 当使用mount进行设备或者文件系统挂载的时候,需要用到的设备名称位于( D )目录。 A. /home B. /bin C. /etc D. /dev 8. 如果要列出一个目录下的所有文件需要使用命令行( C )。 A. ls –l B. ls C. ls –a(所有) D. ls –d 9. 哪个命令可以将普通用户转换成超级用户(D ) A. super B. passwd C. tar D. su 10. 除非特别指定,cp假定要拷贝的文件在下面哪个目录下( D ) A. 用户目录 B. home目录 C. root目录 D. 当前目录

操作系统期末试题及答案

操作系统期末试题及答 案 文件编码(008-TTIG-UTITD-GKBTT-PUUTI-WYTUI-8256)

(答案在后面 ) 一、 填空题(每空1分,共10分) 1. 常见的I/O 控制方式有程序I/O 方式、 中断 I/O 控制方式、 DMA I/O 控制方式和 通道 I/O 控制方式四种。 2. 操作系统向用户提供的两个基本接口是 程序 接口和 用户 接口。 3. 若在一分页存储管理系统中,某作业的页表如下所示。已知页面大小为1024 字节,逻辑地址(3082)10转化得到的物理地址是 6154 。 4. 具有多路性、独立性、及时性和交互性特征的操作系统是 分时 操作系统。 5. 通道用于控制 设备控制器 与内存之间的信息 交换。 6. 事务的最基本特性是 。 7. 若盘块大小为4KB ,每个盘块号占4字节,在采用两级索引时允许的最大文件长度为 4GB 。 二、 单选题(每题2分,共20分) 1. 用磁带作为文件存贮介质时,文件只能组织成 ( )。 A. 顺序文件 B. 链接文件 C. 索引文件 D. 目录文件 2. 一作业8:00到达系统,估计运行时间为1小时,若10:00开始执行该作 业,则其响应比是( C )。 A. 2 B. 1 C. 3 D. 3. 文件系统采用多级目录结构后,对于不同用户的文件,其文件名( C )。

A. 应该相同 B. 应该不同 C. 可以相同,也可以不同 D. 受系统约束 4.死锁预防是保证系统不进入死锁状态的静态策略,其解决方法是破坏产生死锁 的四个必要条件之一。下列方法中破坏了“循环等待”条件的是 ( D )。 A. 银行家算法 B. 一次性分配策略 C. 剥夺资源法 D. 资源 有序分配法 5.进程状态从就绪态到运行态的转化工作是由( B )完成的。 A. 作业调度 B. 进程调度 C. 页面调度 D. 设备 调度 6.采用缓冲技术的主要目的是( C )。 A. 改善用户编程环境 B. 提高CPU的处理速度 C. 提高CPU和设备间的并行程度 D. 实现与设备无关性 7.目录文件所存放的信息是( D )。 A. 该目录中所有数据文件目录 B. 某一文件存放的数据信息 C. 某一个文件的文件目录 D. 该目录中所有文件的目录 8.最容易形成很多小碎片的可变分区分配算法是( D )。 A. 首次适应算法 B. 循环首次适应算法 C. 最坏适应算法 D. 最佳适应算法 9.用户程序与实际使用的物理设备无关是由( A )功能实现的。 A. 设备独立性 B. 设备驱动 C. 虚拟设备 D. 设备分配 10.下面关于顺序文件、链接文件和索引文件的论述中不正确的是( A )。 A. 显示链接文件是在每个盘块中设置一个链接指针,用于将该文件所属的所有盘 块链接起来 B. 顺序文件必须采用连续分配方式,而链接文件和索引文件则都可采取离散 分配方式 C. 顺序文件适用于对诸记录进行批量存取时

Linux期末考试复习试题含答案

L i n u x期末考试复习题 --completedonNov17,2013bylvlv 一、选择题 1.下列关于Linux说法中,不正确的是(B) A.Linux操作系统具有虚拟内存的能力 B.Linux操作系统不是UNIX系统的变种,因此Linux上程序不适合UNIX平台上运行 C.Linux操作系统不限制应用程序可用内存的大小 D.Linux操作系统支持多用户,在同一时间可以有多个用户使用主机 解析:与传统的网络操作系统相比,Linux操作系统主要有以下几个特点:不限制应用程序可用内存的大小;具有虚拟内存的能力,可以利用硬盘来扩展内存:允许在同一时间内,运行多个应用程序;支持多用户,在同一时间内可以有多个用户使用主机;具有先进的网络能力,可以通过TCP/IP协议与其他计算机连接,通过网络进行分布式处理;符合Unix标准,可以将Linux上完成的程序移植到Unix主机上去运行;Linux操作系统是免费软件,并且开放源代码,这是其与其他网络操作系统最大的区别。 2.Linux交换分区的作用是(C)。 A.保存系统软件B.保存访问过的网页文件 C.虚拟内存空间D.作为用户的主目录 3.如果执行命令#chmod746file.txt,那么该文件的权限是(A)。 A.rwxr--rw- B.rw-r--r-- C.--xr—rwx D.rwxr--r— 4.Linux有三个查看文件的命令,若希望在查看文件内容过程中可以用光标上下移动来查看文件内容,应使用命令(C) A.catB.moreC.less???D.menu 解析: less具有more相同的功能,同时支持方向键和前翻页,后翻页滚屏。 more只能用空格键下翻,不小心翻多了就没法反回看。 5.若一台计算机的内存为8GB,则交换分区的大小通常是(C) A.64GBB.128GBC.16GB???D.32GB 解析:交换分区的大小一般为内存的两倍. 6.在使用mkdir命令创建新的目录时,在其父目录不存在时先创建父目录的选项是(B) A.-mB.-pC.-f???D.-d 7.为了能够把新建立的文件系统mount到系统目录中,我们还需要指定该文件系统的在整个目录结构中的位置,或称为(B)。 A.子目录 B.挂载点 C.新分区 D.目录树 8.文件exer1的访问权限为rw-r--r--,现要增加所有用户的执行权限和同组用户的写权限,下列命令正确的是(A) A.chmoda+x,g+wexer1B.chmod765exer1 C.chmodo+xexer1D.chmodg+wexer1 9.关闭linux系统(不重新启动)可使用-命令(C) A.ctrl+alt+del?B.shutdown-r?C.haltD.reboot 解析:ctrl+alt+del:A是退出系统会话 10.(C)命令可实现重新启动Linux操作系统。 A.init0B.haltC.shutdown-rD.shutdown-h 解析: init是所有进程的祖先,其进程号始终为1。init用于切换系统的运行级别,切换的工作是立即完成的。init0命令用于立即将系统运行级别切换为0,即关机;init6命令用于将系统运行级别切换为6,即重新启动。

操作系统期末试题及答案

《操作系统》期末试卷 姓名 一、选择题(15*2分=30分) 1、在操作系统中,JCB是指(A ) A.作业控制块B.进程控制块C.文件控制块D.程序控制块 2、并发进程之间(D) A.彼此无关 B.必须同步 C.必须互斥 D.可能需要同步或互斥 3 A 4 ?A 5、(D A 6 A 7 A. 8 A. C. 9、设有。 A.2 10 A. 11 A 12、() A C 13 A 14、(B A.固定分区 B.分段 C.分页 D.可变分区 15、在进程管理中,当()时,进程从阻塞状态变为就绪状态。 A.进程被进程调度程序选中B.等待某一事件C.等待的事件发生D.时间片用完 二、填空题(20*1分=20分) 1、在单用户环境下,用户独占全机,此时程序的执行具有_封闭性______和_可再现性_。 2、对于信号量,在执行一次P操作时信号量-1_;当其值为__<0__时,进程应阻塞。在执行V操作时信号量的值应当_信号量+1_; 当其值为__<=0__时,应唤醒阻塞队列中的进程。 3、进程的三种基本状态分别是、进程的三种基本状态分别是__运行______,_就绪_和__阻塞(等待)__。 4、多道程序环境下的各道程序,宏观上它们是_并行__运行,微观上是_串行_运行。 5、在单CPU系统中有(n>1)个进程,在任一时刻处于就绪的进程最多是__n-1__个,最少是___0____个。

6、分区管理方案不能实现虚存的原因是_作业地址空间不能大于存储空间_。 7、段页式存储管理中,是将作业分_段__,__段_____内分___页____。分配以__页_____为单位。在不考虑使用联想存储器快表 的情况下,每条访问内存的指令需要____3___访问内存。其中第_2___次是查作业的页表。 三、简答题(4*5分=20分) (2) ????????????进程A???????????????????????????????进程B ???????????...??????????????????????????????????... ????????P(mutex);????????????????????????????P(mutex);

Linux操作系统模拟题一

《Linux操作系统》模拟题一 填空题 1、RedHat Linux内置的两种开机管理程序(启动管理程序)分别是grub和lilo; 2、在Linux中,IDE第1个硬盘的第1个逻辑分区表示为/dev/hda1; 3、安装Linux时,至少需要2个分区,一个是根(/)分区,供Linux存放所有文件;另一个则是交换(swap)分区,用来作为虚拟内存使用; 4、当安装Linux时,必须指定一个分区,其挂载点为/ ; 5、重新启动Linux系统的命令有:reboot 、shutdown –r now 、 init 6 ; 6、关闭Linux系统的命令有:shutdown –h now 、halt 、 init 0 7、管道命令的符号是竖线(|) ,作用是将一个命令的运行结果传递给另一个命令作为该命令的输入; 8、在Linux中挂载光盘的命令是mount /dev/cdrom /mnt/cdrom ,挂载软盘的命令是mount /dev/fd0 /mnt/floppy 9、在RedHat Linux9.0系统,存放密码的文件是/etc/passwd ,此文件的默认权限是允许任何人读取。 10、在/etc/passwd文件中,第三项为用户标识码(User ID),这其中root帐号的UID是0 ,第一个分配给普通用户的UID应从500 开始。 11、在Linux系统中,要更改某个文件或目录的权限可以使用chmod命令,同时也可以使用数字法来更改权限,其中R(读权限)对应的数值为 4 ,W(写权限)对应的数值为 2 ,X(执行权限)对应的数值为1 。 12、想把文件home.txt的信息添加到last.txt文件中去,可以使用命令 cat home.txt>>last.txt 13、、要删除目录olddir(包括此目录下的文件及子目录)用命令 rm –fr olddir。 14、使用shotdown命令使计算机在5分钟后关机,具体格式为 shutdown -h 5。 15、要结束某个正在运行的进程,首先用命令ps 查看该进程的进程号,然后用命令_kill__结束该进程。 16、RedHat Linux原生分区采用的文件系统格式是ext3和ext2 ; 17、RedHat Linux有文本模式以及图形面模式两种操作界面; 18、在Linux中,最多可让用户创建 4 个主分区; 19、在Linux中,/dev/hdb5表示的意思是什么:第二块IDE硬盘的第一个逻辑分区 20、重定向可将某命令的结果输出到文件中,它有两种命令:> 和>> ; 21、如果要在启动时自动挂载光盘或软盘,可编辑/etc/fstab 配置文件 22、在RedHat Linux系统中两个非常重要的用户配置文件是/etc/passwd和/etc/shadow ; 23、在文字模式下,如果要用数值法更改文件lookup.txt的权限为文件拥有者对文件具有读写执行的权限,同组的用户对文件具有读写的权限,而其他用户只具有读取的权限,应执行命令 chmod u=rwx, g=rw, o=r lookup.txt 或chmod 764 lookup.txt ; 24、向上移动一级目录可以使用cd .. 命令,把你送回到登录目录可以使用cd ~ 或cd

相关文档
最新文档