管程的设计实在是精妙,初看的时候觉得非常奇怪,这混乱的进程切换怎么能保证同一时刻只有一个进程访问管程?理清之后大为赞叹,函数中途把前一个进程唤醒后立刻把自己挂起,完美切换.后一个进程又在巧妙的时机将自己唤醒,同时让后一个挂起.看似松散的跳转背后竟然是无比严丝合缝的逻辑,真的就滴水不漏. 等待状态 在proc.h中又增加了等待定时器和等待内核信号量的宏供本节使用 #define WT_INTERRUPTED // the wait state could be interrupted #defin…
源码获取 https://github.com/icoty/nachos-3.4-Lab 内容一:总体概述 本实习希望通过修改Nachos系统平台的底层源代码,达到"扩展同步机制,实现同步互斥实例"的目标. 内容二:任务完成情况 任务完成列表(Y/N) Exercise1 Exercise2 Exercise3 Exercise4 Challenge1 Challenge2 Challenge3 第一部分 Y Y Y Y Y Y N 具体Exercise的完成情况 Exercise1…