小编ARI*_*TOS的帖子

OsDev系统调用/ sysret和sysenter/sysexit指令启用

我正在组装中构建一个32位操作系统.
我已经设置了IDT,我正在通过int指令处理程序interruptus .

如何启用syscallsysenter说明以及如何处理/返回?
诚然,syscall指令在32位基于英特尔处理器的支持,所以我不能用它?sysret教学不安全是真的吗?在某处存在一个教程吗?

编辑:我的主要问题是如何启用syscallsysenter说明!(没有重复)

assembly system-calls protected-mode osdev interrupt-handling

0
推荐指数
1
解决办法
929
查看次数

汇编x86 REP,REPZ,REPNZ,XACQUIRE和XRELEASE指令

正如我已经注意到0xF3二进制前缀被用作:
1)重复和减小ecx直至ecx等于0INS,OUTS,MOVS,LODS,STOS指令和称为rep
2)重复和减小ecx直至ecx等于0ZF在设置CMPS,SCAS指令和称为repzrepe

0xF3二进制前缀被用作:
1)重复和减小ecx直至ecx等于0ZF不在集合中CMPS,SCAS指令和称为repnzrepne

最近注意到XACQUIRE/ XRELEASE前缀也有相同的二进制值(0xF2,0xF3)

那是什么XACQUIRE/ XRELEASE正在做什么(我读了一些关于锁定内存地址的东西,但它们不是工作线lock(我相信))?

还会怎么0xF3 mov byte ptr [ecx],0x0做?(将停在ZF …

binary x86 assembly instructions

-2
推荐指数
1
解决办法
658
查看次数