操作系统-嗜睡理发师.zip

时间:2024-06-12 09:16:56
【文件属性】:

文件名称:操作系统-嗜睡理发师.zip

文件大小:3KB

文件格式:ZIP

更新时间:2024-06-12 09:16:56

linux

1. 某大学的计算机科学系有一名助教(TA)、他在正常办公时间帮助大学生做编程任务。TA的办公室相当小,只有一张书桌、一把椅子和一台电脑。 2. 在TA办公室外的走廊里,有三把椅子;如果TA正在帮助一个学生,那么其他学生坐在那里等待。如果没有学生在办公时间里需要帮助,那么TA坐在桌子边,打个盹。 3. 首先创建n个学生。每个作为单独线程来运行。TA也作为一个单独线程来运行。学生线程在编程与寻求TA帮助之间交替。 4. 如果TA有空,他们将获得帮助。否则,他们会坐在走廊椅子上,或者如果没有椅子可用,将恢复编程并将在以后寻求帮助。 5. 如果学生来时TA在睡觉,学生应采用信号量通知TA。 6. 当TA完成帮助一个学生时,TA应检查走廊上是否有学生在等待帮助。如果有,TA应按顺序帮助这些学生。如果没有,TA可以再小睡。


【文件预览】:
code_for_project6
----Makefile(440B)
----help_student.c(259B)
----ta.h(840B)
----hangout.c(215B)
----student.c(946B)
----ta.c(718B)
----main.c(1KB)

网友评论