- 有"spoc"标记的题是要求拿清华学分的同学要在实体课上完成,并按时提交到学生对应的ucore_code和os_exercises的git repo上。
- 尝试举一个生活中死锁实例。
- 可重用资源和消耗资源有什么区别?
- 资源分配图中的顶点和有向边代表什么含义?
- 出现死锁的4个必要条件是什么?
- 死锁处理的方法有哪几种?它们的区别在什么地方?
- 安全序列的定义是什么?
- 安全、不安全和死锁有什么区别和联系?
- 什么是银行家算法?
- 安全状态判断和安全序列是一回事吗?
- 死锁检测与安全状态判断有什么区别和联系?
死锁检测、安全状态判断和安全序列判断的本质就是资源分配图中的循环等待判断。
- 直接通信和间接通信的区别是什么? 本质上来说,间接通信可以理解为两个直接通信,间接通信中假定有一个永远有效的直接通信方。
- 同步和异步通信有什么区别?
- 尝试视频中的信号通信例子。
- 写一个检查本机网络服务工作状态并自动重启相关服务的程序。
- 什么是管道?
- 写测试用例,测试管道、消息队列和共享内存三种通信机制进行不同通信间隔和通信量情况下的通信带宽、通信延时、带宽抖动和延时抖动方面的性能差异。
-
(spoc) 每人用python实现银行家算法。大致输出可参考参考输出。除了
YOUR CODE
部分需要填写代码外,在算法的具体实现上,效率也不高,可进一步改进执行效率。 -
(spoc) 以小组为单位,请思考在lab1~lab5的基础上,是否能够实现IPC机制,请写出如何实现信号,管道或共享内存(三选一)的设计方案。
-
(spoc) 扩展:用C语言实现某daemon程序,可检测某网络服务失效或崩溃,并用信号量机制通知重启网络服务。信号机制的例子
-
(spoc) 扩展:用C语言写测试用例,测试管道、消息队列和共享内存三种通信机制进行不同通信间隔和通信量情况下的通信带宽、通信延时、带宽抖动和延时抖动方面的性能差异。管道的例子