Linux期末复习第八单元

填空题

1、Linux系统中使用的进程通信机制包括管道通信、(信号量)、(消息队列)、(共享内存)以及socket通信
2、管道采用(半双工)方式进行通信,其实质是由(内核)管理的一个缓冲区
3、与管道相比,消息队列通信方式更为灵活;它提供有格式的(字节流),无须通信双方额外约定数据传输格式;其中的消息被设定为不同类型,又被分配了不同的优先级;此外消息队列有效降低了读写进程间的(耦合度)
4、在代码中,临界区是指并发进程中与(共享)资源有关的程序段。
5、在使用PV操作实现进程互斥时,调用(P)操作相当于申请一个共享资源,调用(V)操作相当于归还共享资源的使用权。

判断题

1、匿名管道只能用于父子进程间通信。(错)
匿名管道可以用于有亲缘关系的进程间通信,包括父子进程,兄弟进程等的呢过
2、在实现进程互斥时,用一个信号量与一组相关临界资源对应,在实现进程同步时,每一个消息与一个信号量对应。(对)
3、popen()函数若调用成功,则返回一个I/O文件指针
popen()函数的功能是:调用pipe()函数创建管道,调用fork()函数创建子进程,之后在子进程中通过execve()函数调用shell命令执行相应功能,若整个流程都成功执行,则返回一个I/O文件指针,若PIPE()或FORK()函数调用失败,或因无法分配内存等原因造成popen()函数调用失败,该函数将会返回NULL
4、消息队列的实质是一个存放信息的链表,该链表由内核维护,内核会决定其回收时机,所以进程中的消息队列使用完毕后无须删除。(错)
若没有删除内核中的消息队列,即便所有使用消息队列的进程都已终止,消息队列仍存在内核中,知道内核重新启动、管理命令被执行或调用系统接口删除消息队列,消息队列才会真正被销毁。
5、因为共享内存机制的本质是将物理地址与虚拟地址直接进行映射,避免了数据的重复读写,所以内存共享机制的效率相当高(对)

单选题

1、管道不能使用lseek()函数定位
2、管道内容保存在内存中
3、匿名管道不能实现非亲缘关系进程间的通信
4、P操作使信号量-1,V操作使信号量+1
5、制约关系分为直接制约关系和间接制约关系,等待使用一个打印机的两个进程间存在间接制约关系,是互斥的

  • 0
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

向上Claire

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值