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


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

更新时间:2025-06-28 00:30: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
  • 《西西里美丽传说》女主角,在当时打扮这么高调,不觉得带给自己很多不便吗?如何理解她的心态?

    查看案例

  • switch2好用吗朋友们?

    查看案例

  • Windows有哪些神级软件?

    查看案例

  • k8s里面kubectl get pod -d wide命令作用是什么?

    查看案例

  • 你在武侠游戏中都见过哪些「怪东西」?

    查看案例

  • J***a 除了 Spring 还有什么?

    查看案例

  • 如何证明散片 CPU 比盒装 CPU 差?

    查看案例

  • 很好奇,组NAS的玩家是如何解决上传速率的问题?

    查看案例