Linux选择填空练习题

1.linux中把分区和目录对应的过程叫做(挂载)

2.信号是在软件层次上对(中断)机制的一种模拟, 是一种异步通信方式。

3.用GCC编译过程可以被细分为四个阶段:(预处理、编译、汇编和链接)

4.编译有线程的文件要加(-pthread)参数。

5.父进程等待子进程的结束,可以使用的函数是(wait())(waitpid())

6.linux主要有两个信号安装函数,分别是什么?(signaction)、(signal)

7.Linux操作系统内核由(c语言和汇编语言)编写完成。

8.目录(/boot)下存放linux操作系统启动时所要用到的程序

9.Linux 系统的设备文件分为三类?(字符设备、块设备和网络设备)

10.Linux 中采用“一对一”的线程机制,也就是一个用户线程对应一个(内核线程)

11.vim三种模式:在命令模式下按下(:(英文冒号))就进入了底线命令模式。

12.Vim的三种模式:(命令模式  插入模式   底行模式)

13.标准I/O提供了三种类型的缓冲,分别是?(全缓冲,行缓冲,不带缓冲)

14.linux文件系统由四部分组成(内核、shell、文件系统和应用程序)用于存放文件的控制信息。

15.一个完整的信号生命周期包含4个重要的事件,这4个重要事件分别是?(信号诞生、信号在进程中注册、信号在进程中注销、信号处理函数执行完毕)

16.互斥锁只有两种状态,即?(上锁( lock )和解锁( unlock ))

17.线程本身调用(pthread_exit)函数可以退出线程。

18.向消息队列发送消息的函数是(msgsnd)

19.(fcntl)系统调用可以根据文件描述符来操作文件特性。

20.Valgrind包括很多工具,(Memcheck)是valgrind应用最广泛的工具,一个重量级的内存检查器,能够发现开发中绝大多数内存错误使用情况,(Cachegrind)是主要用来检查程序中缓存使用出现的问题。

21.信号发送函数中, (alarm)和(setitimer())用于设置定时器,当计时时间到达时,向进程发送SIGALRM信号。

22.在标准IO库中,rewind函数作用?(将文件内部的位置指针重新指向一个流(数据流/文件)的开头)

23.c语言中没有明确给定初值的全局变量和静态变量存放在哪儿?(全局存储区(静态存储区))

24.函数geteuid()用于得到进程的? (用户有效 UID 值)

25.当一个线程的属性设置为(分离状态),该线程结束时立即释放它所占有的系统资源。

26.以下哪种方式属于异常终止一个进程(D接到一个信号并终止)

27.下列命令哪个是创建线程私有数据命令()(pthread_key_create())    

28.下面哪种通信方式适用于不同机器之间的进程通信。(套接字)

29.linux中通过调用waitpid()函数得到进程的退出信息,该函数原型为pid_t waitpid(pid_t pid, int *status, int options);当第一个参数pid取值为-1时,表示(等待任一子进程退出,相当于 wait())

30.Linux环境中使用kill函数向进程或进程组发送信号。Kill函数原型为int kill(pid_t  pid,  int signo);当第一个31.参数pid>0时,表示(发送信号给进程ID为pid的进程

32.共享主存基本操作(shmat())将共享主存区映射到进程虚拟地址空间

33.lseek(fd,位移数,whence):设置文件偏移量

34.文件描述符的数据类型:int

35.创建目录:mkdir()

36.命令行有什么函数提供:shell

37.getpid()获取子进程id             getppid()获取父进程id

38.getuid()获取用户id                geteuid()获取有效用户id

39.更改目录:cd ;查看当前所在的目录位置: pwd;查看目录下的文件: ls;修改文件权限:chmod;查看进程:ps

40.进程中不能忽略的两个信号?(SIGSTOP和SIGKILL)

41.UDP,TCP属于(传输层)协议。

42.移动指针lseek函数的参数:(lseek(int fd ,_off_t  offset , int whence))

43.一个进程是 ( PCB 结构与程序和数据的组合)

44.一个进程调用 wait 或 waitpid 函数,可能产生 3 中情况,下列不属于这 3 种情况的是 (如果该进程没有子进程,立即返回,返回值为 0)

45.程序和进程是两个不同的概念,以下不能描述这个观点的是 (同一个程序运行 10 次,产生的是同一个进程)

46.哪种进程之间的通信,数据不可以重复读(fifo、 管道)

47.下述是Linux下多线程编程常用的pthread库提供的函数名和意义,说法不正确的是?(pthread_exit杀死一个线程)

48.对线程函数来说,说法正确的是:(pthread_create中参数arg是传递给start_routine函数的参数)

49.对互斥锁及条件变量说法不正确的是:(在使用条件变量时,互斥锁会失去作用,所以是否有互斥锁关系不重要)

50.以下说明正确的是:(线程是一个独立的指令流,是在进程中被创建的,随进程的关闭而关闭)

51.线程A SendMessage给线程B,线程B处理该消息时又SendMessage给线程A,会出现:(继承执行)

52.linux文件系统通常由四部分组成:引导块,超级块,索引节点和 (数据块)

53.任何进程在运行时默认打开的三个流对象,都有相应的文件描述符,标准文件描述符定义标准输入设备的值为(0)

54.系统调用的函数原型int open(const char *pathname, int flags),flag值中(O_TRUNC)表示若文件存在且为只读或只写成功打开,则将长度截为0。

55.使用下列函数调用int fcntl(int fd, int cmd);来实现文件描述符的复制,cmd参数应使用哪一个?(F_DUPFD)

56.获取目录的系统调用函数为(getcwd())

57.linux 文件系统由四部分组成,(超级块)用于存放文件的控制信息。

58.使用 gdb 调试程序时,next 和 step 命令的作用?(next:单步运行,不进入函数内部; setp:单步运行,进入函数内部) 

59.返回调用进程的进程标识号的系统函数是(getpid)

60.进程初始化数据区:全局初始化数据区/静态数据区

61.进程的堆区:用于动态内存分配。一般由程序员分配和释放,若程序员不释放,程序结束时由 OS 回收。

62. Linux 文件系统中的块有(根据块使用的不同):引导块、超级块、Inode 块、数据块。 控制信息、文件基本属性等是 Inode 节点,为文件系统索引。存放数据的为数据块。超级块中含有文件系统的基本信息,如块大小、指向空间 inode 和数据块的指针等相关信息。

63.进程运行时默认打开的标准对象:标准输入设备 stdin、标准输出设备 stdout、标准错误 输出设备 stderror

64.修改文件权限命令:chmod、chgrp、chown。

65.文件描述符为?整型。对于用户空间来说,任何打开的文件都将分配一个唯一非负整数, 用于标识该打开文件,该值即文件描述符,为一个大于等于 0 的整数。

66.权限的值?读:4 写:2 执行:1 注意:前三位为用户的权限,再三位为所属组的权 限,再三位为其他用户的权限。

67.获取文件属性,是否穿透?stat 函数具有穿透能力,能够穿透链接文件;而 lstat 函数不 具有穿透能力,不穿透链接文件,文件类型还为链接文件。

68. opendir 函数:打开一个目录,返回一个目录流指针。参数为欲打开目录的名称(路径)。

mkdir 函数:第一个参数是欲创建的目录文件路径,第二个参数是创建目录的权限。

69. fcntl 函数:修改某个文件描述符的特殊属性

70.创建硬链接的系统调用:link()

71.接受消息队列的函数 msgrcv()

72.自己退出线程的函数:pthread_exit();被取消线程运行:pthread_cancle()

73.互斥锁、条件变量、读写锁的初始化:互斥锁的初始化:pthread_mutex_init() 条件变量的初始化:pthread_cond_init() 读写锁的初始化:pthread_rwlock_init()

74.读写锁:非阻塞的加锁解锁和阻塞的加锁解锁。

堵塞的方式申请读锁:pthread_rwlock_rdlock()

非堵塞的方式申请读锁:pthread_rwlock_tryrdlock()

堵塞方式申请写锁:pthread_rwlock_wrlock()

非堵塞方式申请写锁:pthread_rwlock_trywrlock()

75.互斥锁的上锁函数是 pthread_mutex_lock(),非阻塞加 try; 解锁函数是 pthread_mutex_unlock()

76.面向连接的编程:TCP;面向无连接的是:UDP

77.在不同主机间进行通讯的是:scoket 或者是套接字

78.三次握手:连接建立、数据传输、连接释放

79.创建套接字的函数 scoket()

80.网络编程的常见函数:

监听网络函数:listen()

发起连接函数:connect()

接受连接函数:accept()

读写 scoket 对象:read()/write()

TCP 发送和接受数据:send()/recv()

关闭 scoket 对象:close()

81. Linux下获取文件属性函数: stat()

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值