操作系统
kekefen01
这个作者很懒,什么都没留下…
展开
-
操作系统学习之bochs线程切换调试实战
用nm命令得到switch_to的地址 lb 0xc00037e0 最初进入内核时的esp值:0xc009f000 main esp: 0xc009ef14 c之后单步调试,记录下执行完某些指令时的寄存器值: 执行完mov eax,[esp+20] eax: 0xc009e000 (cur) esp: 0xc009ef04 执行完mov eax,[esp+24] eax: 0xc0100000...原创 2019-03-28 15:14:14 · 160 阅读 · 0 评论 -
操作系统真象还原笔记——x86下的概念总结
保护模式 保护模式,是一种80286系列和之后的x86的CPU操作模式。保护模式是设计用来增强多任务体系、内存保护、分页系统,以及硬件支援的虚拟内存。 1.为什么需要保护模式,因为实模式存在以下缺陷: 安全缺陷:没有特权级,用户进程可以任意修改内存 使用缺陷:由于地址总线的限制,内存只能使用1MB(20位,分段机制)。 要启用保护模式,需要以下三步: (1)打开 A20 。 (2)加载 gdt ...原创 2019-07-14 13:55:44 · 405 阅读 · 0 评论 -
CSAPP 代码运行和fork哪个先运行
sudo mv csapp.h /usr/include sudo mv csapp.c /usr/include 在 csapp.h 文件 #endif 之前添加 #include"csapp.c" 记得加上 -lpthread 选项 运行以下脚本: /* $begin waitprob0 */ int main() { if (Fork() == 0) { prin...原创 2019-07-25 16:01:20 · 156 阅读 · 0 评论 -
锁的分类
在不是很严格的意义上可以认为: 悲观锁 = 操作系统互斥锁,关开中断实现 = 重量级锁 乐观锁 = 自旋锁,CAS实现 = 轻量级锁 (自适应自旋锁可以控制轮询的次数或者时间,超过就阻塞了) 偏向锁 = 压根没有锁 Java中有三种锁,偏向锁,轻量级锁和重量级锁 当然Java中还存在读写锁,读写锁的实现方式暂时不明。 关于更细粒度的锁是不是会导致性能下降的问题 1.更细粒度的锁几乎一定能引起并发...原创 2019-08-05 23:38:30 · 126 阅读 · 1 评论