Linux期末复习第七章
Linux期末复习第七章
填空题
1、信号的产生是一个异步事件,从信号产生到信号抵达进程需要一定时间,而在这个过程中,会因为各种原因使信号处于不同的状态,Linux系统中信号可能发生的状态有:发送状态、阻塞状态、未决状态,递达状态、处理状态
2、信号递达进程后才可能被处理,信号的处理方式有三种,分别为:(忽略)、(捕捉)、(执行默认动作)
3、kill()函数的参数pid有4种取值,每种取值代表不同的含义。若pid<-1,则表示(发送信号给属于进程组-pid的所有进程)
4、若第一次调用alarm()函数时参数为5,3秒后再次调用alarm()函数并传入参数1,则第二次调用alarm()函数时,函数的返回值为(2)
若进程中不是第一次调用alarm(),且上一个的alarm()尚有剩余秒数,则该函数的成功调用后会返回旧计时器的剩余秒数,否则返回0
5、在进程PCB中,存在两个信号集,一个称为(信号掩码)另一个称为(未决信号集)。这两个信号集的实质都是位图,其中的每一位对应一个信号。
判断题
1、信号即可发送给前台进程,也可发送给后台进程。(对)
2、在程序中可以通过signal()函数向进程发送指定信号(错)
signal()函数用于捕获信号,用于发送信号的函数为kill()。
3、使用信号可实现进程同步(对)
4、signal()函数和sigaction()函数分别用于发送信号和捕获信号。(错)
signal()和sigaction()函数都用不捕获信号,自定义信号处理方法。
5、因设备或系统出现不恰当的执行时序而得到不正确结果的现象称为时序竞态。(对)
单选题
1、(保存信号)不属于进程对信号的响应方法
2、(SIGSTOP)不能被进程屏蔽和捕获
3、(睡眠状态)不是Linux系统中信号的状态
4、使用快捷键组合Ctrl+\会发送(SIGQUIT)信号到前台进程
5、不能产生信号的是(read())