你现在的位置是:当前位置: 首页 >


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

更新时间: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)在哪些场景有应用?

案例推荐

case recommendation
  • 手机存储器为什么会出现速度倒挂的现象,外存比内存快?

    查看案例

  • 有一个***约你出去,你会去吗?

    查看案例

  • 前端是不是快没了?

    查看案例

  • Centos为什么突然没人用了?

    查看案例

  • 为什么没人提微软裁员?

    查看案例

  • 你为什么在日常生活中不敢穿的太漂亮?

    查看案例

  • PHP现在真的已经过时了吗?

    查看案例

  • 500 元档白酒里,是否真的存在口感和品质都接近千元档的白酒?

    查看案例