Koros:Runtime Trait-Object Dispatch
kor 定义 ArchProvider trait → kor-arch 每架构一个 impl → 启动时 install() 注册到全局 → 下游通过 kor::arch::current()(&dyn ArchProvider)调用。
共享 crate 中零 #[cfg(target_arch)],架构差异完全封装在 kor-arch。
ArceOS:Feature-Gated Modules + cfg
axhal 是单个 HAL crate,内部用 cfg(target_arch) 选择平台实现(依赖 axplat-x86-pc / axplat-aarch64-qemu-virt 等外部 crate)。模块通过 Cargo features(smp, irq, paging 等)条件编译。
axhal 内部有大量 cfg,但通过 axplat 外部 crate 抽象平台差异。