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

Views :
Update time : 2025-06-27 20:35:16

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 如何评价腾讯元宝桌面端使用 Rust 的 Tauri 框架?
2025-06-24 23:35:16
如何评价腾讯元宝桌面端使用 Rust 的 Tauri 框架?...
Blog Post With Youtube Video 三大运营商无差别封禁上行带宽,真正的刚需用户应该怎么办?
2025-06-24 23:25:16
三大运营商无差别封禁上行带宽,真正的刚需用户应该怎么办?...
Blog Post With Youtube Video 为什么大多数NAT网关都是对称型NAT而不是锥形NAT?
2025-06-24 23:50:15
为什么大多数NAT网关都是对称型NAT而不是锥形NAT?...
Blog Post With Youtube Video 为什么一谈到Wi-Fi想支持6GHz,总有人说那你可以去国外?
2025-06-24 23:45:15
为什么一谈到Wi-Fi想支持6GHz,总有人说那你可以去国外?...

Leave Your Message