汇编和多核 CPU

标签 assembly x86 multicore x86-64

哪些 x86-64 指令用于启用/禁用其他内核/处理器以及如何开始在它们上执行代码?

是否有文档说明操作系统如何完成此操作?

最佳答案

假设您正在谈论实现内核......

我的理解是它很大程度上基于此文档:

如果我的内存没错(没有双关语),为了检测多处理器支持,您可以扫描某些内存范围以获取固件为您设置的一组神奇字节。从那里您可以了解描述 CPU 的结构,并且可以与 APIC Controller 讨论在各种 CPU 上设置中断等。

关于汇编和多核 CPU,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1516530/

相关文章:

c - 何时在扩展的 GCC 内联汇编中使用特定的操作数约束?

assembly - CA65:来自 16 位计算地址的 'Range error'

c - 使用端口映射 I/O 时是否使用虚拟内存?

multithreading - ARM裸机多核核心选择

multicore - qemu可以模拟多核环境吗?

multithreading - 多核系统 UMA NUMA 的进程地址空间

assembly - 跳出范围解决方案以及不同的指令如何影响范围

assembly - 如何在 MASM 32 中将小写更改为大写?

assembly - Little-Endianness 在 x86 架构中是字节顺序还是位顺序?

c++ - 为什么我的 x86 汇编代码会导致段错误?