摘要:
bootloader 1. bootasm.S : start32 2. bootmain.c : bootmain kernel 3. main.c : main 4. proc.c : userinit 创建第一个用户进程 initcode 5. main.c : mpmain 调用schedu 阅读全文
摘要:
在xv6 中锁对象是 spinlock,spinlock中的locked为1的时候表示被占用,为0的时候锁空闲。 使用 acquire获取锁 该函数中通过xchg原子性交换locked和1,并返回locked的原来的值。当返回值为1时,说明其他线程占用了该锁,继续循环等待;当返回值为0时,说明其他地 阅读全文