是"内存片段"汇编编程中的英特尔概念?

时间:2017-01-02 02:50:04

标签: linux memory assembly segment

看来linux内存管理只是基于页面的,没有" segment"的概念。

但是,at& t程序集仍然具有" section"的概念,就像代码部分,数据部分一样,就像intel assmebly" segment"和它们一样看起来非常相似。

所以我的问题是,"部分"具有相同的含义,例如" segment"在英特尔组装?

1 个答案:

答案 0 :(得分:2)

Linkers将具有相同属性的页面收集到“sections”或“program sections”或“psects”中。通常默认是为每个内存属性创建一个部分。典型地:

  1. 只读
  2. 读/写
  3. 需求零
  4. 可执行
  5. 但是,大多数链接器都具有高级设置,允许程序员以不同方式设置psect。

    有些汇编程序有psect指令将数据放在特定的部分中。

    有时候psect被称为“细分”。例如,“代码段”

    正如你所说,还有一些硬件细分市场几乎是许多英特尔处理器的大脑损坏方面(尽管其他一些处理器使用[d]它们)。在64位模式下,英特尔终于抛弃了细分市场。此用途中的段由段寄存器访问。

    因此,这是两个不同的概念。