代码之家  ›  专栏  ›  技术社区  ›  Paul Hollingsworth

多核汇编语言是什么样子的?

  •  208
  • Paul Hollingsworth  · 技术社区  · 16 年前

    例如,曾几何时,要编写x86汇编程序,您可能会有指令说明“使用值5加载EDX寄存器”、“递增EDX”寄存器,等等。

    对于具有4个内核(甚至更多)的现代CPU,在机器代码级别,它是否看起来就像有4个独立的CPU(即,只有4个不同的“EDX”寄存器)?如果是这样,当您说“递增EDX寄存器”时,是什么决定递增哪个CPU的EDX寄存器?x86汇编程序中现在有“CPU上下文”或“线程”概念吗?

    如果您正在为多核CPU编写一个优化编译器/字节码VM,那么您需要特别了解什么,比如说x86,以使其生成高效运行于所有内核的代码?

    为了支持多核功能,对x86机器代码进行了哪些更改?

    10 回复  |  直到 7 年前
    推荐文章