摘要: 代码放在github上。 这一次实验感觉挺简单的,特别是后面两个小实验。主要就是对多线程和锁进行一个学习。 Uthread: switching between threads 这一个实验是要实现一个简单的用户级线程,写完之后发现原来用户级线程的简单实现也没有想象的那么复杂。 首先定义一个conte 阅读全文
posted @ 2021-02-05 21:24 星見遥 阅读(2731) 评论(1) 推荐(0) 编辑
摘要: 在包括XV6的绝大部分操作系统都是多个任务交错执行的。交错的一个原因是多核硬件:多核计算机的多个CPU核心独立执行计算,如XV6的RISC-V处理器。多个CPU核心共享物理内存,XV6利用这种共享来维护所有核心都会读写的数据结构。而这种共享会导致一个CPU在读取某数据结构时,可能有另一个CPU正在对 阅读全文
posted @ 2021-02-05 11:05 星見遥 阅读(1238) 评论(0) 推荐(1) 编辑