
计算机系统
文章平均质量分 90
FirMoonLight
这个作者很懒,什么都没留下…
展开
-
HW5: xv6 CPU alarm
这个HW的主要任务就是在进程使用CPU的时候,定期向其发送alert。添加这个功能的意义在于,一是可以限制进程占用CPU的时间,二是可以当进程想要执行定时任务的时候,可以利用这个alert。添加一个新的alarm(interval,handler)系统调用。如果应用程序调用alarm(n,fn),那么在程序消耗每个n“ticks”的CPU时间之后,内核将调用应用程序函数fn。当fn返回时,应用程序将从中断处继续。tick是xv6中相当随意的时间单位,由硬件定时器产生中断的频率决定。原创 2022-11-20 19:08:09 · 546 阅读 · 0 评论 -
x86的DPL,RPL,CPL
此时JMP和CALL指令对此的处理是不同的:对于nonconforming code segment,调用CALL指令时,如果CPL >= DPL, 就会发生控制转移;而调用JMP指令时,必须CPL == DPL才会发生控制转移。对于conforming code segment,调用CALL指令和JMP指令时,如果CPL >= DPL就会发生控制转移。原创 2022-09-30 21:53:05 · 2349 阅读 · 1 评论 -
MESI缓存协议简述
参考《深入理解计算机系统》。早期计算机系统的存储器层次结构只有三层:CPU寄存器,主DRAM存储器和磁盘存储设备。不过,随着CPU和主存之间逐渐增大的差距,系统设计者被迫在CPU寄存器和主存之间插入缓存。原创 2022-09-10 00:19:00 · 477 阅读 · 0 评论