你知道自修改代码(Self-Modified Code, SMC)在哪些场景有应用?

Views :
Update time : 2025-06-28 01:35:11

Linux kernel 在启动时如果发现 CPU 只有一个核,会把所有 LOCK 前缀都修改为 NOP。

为了高效实现修改,代码里做了一个很骚的操作来把所有 LOCK 前缀的位置保存下来: #define LOCK_PREFIX_HERE \ ".pushsection .smp_locks,\"a\" " \ ".balign 4 " \ ".long 671f - . " /* offset */ \ ".popsection " \ "671:" #define LOCK_PREFIX LOCK_PREFIX_HERE " \tlock "(以上代码见 arch/x86/include/asm/alternativ…。

你知道自修改代码(Self-Modified Code, SMC)在哪些场景有应用?
Related News
Read More >>
Blog Post With Youtube Video 好的鼠标垫和差的鼠标垫有什么区别?
2025-06-25 23:05:11
好的鼠标垫和差的鼠标垫有什么区别?...
Blog Post With Youtube Video 周杰伦为什么不告粥饼伦黑伦侵犯他的名誉权?
2025-06-25 23:55:11
周杰伦为什么不告粥饼伦黑伦侵犯他的名誉权?...
Blog Post With Youtube Video 为什么 Windows 系统上的安装包有 exe 和 msi 两种格式,有什么区别?
2025-06-25 23:30:11
为什么 Windows 系统上的安装包有 exe 和 msi 两种格式,有什么区别?...
Blog Post With Youtube Video 印度女性为什么不嫁到中国?
2025-06-25 23:10:11
印度女性为什么不嫁到中国?...

Leave Your Message