免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 49519 | 回复: 2
打印 上一主题 下一主题

"内存分段"只是intel架构(windows)的一个概念吗? [复制链接]

论坛徽章:
2
2015年迎新春徽章
日期:2015-03-04 10:16:532015元宵节徽章
日期:2015-03-06 15:53:22
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2017-01-02 10:51 |只看该作者 |倒序浏览
好像说linux的内存管理只是基于分页的,根本就没有分段的这个概念?

那么,在汇编语言里面,at&t的section概念,和intel的segment概念,似乎是同一个东西,都是代码段,数据段等等。

请问,"section"概念等同于"segment"的概念吗? 这两个我有点搞混了,不知道linux下的内存管理是否也有分段的说法呢?

论坛徽章:
0
2 [报告]
发表于 2017-01-17 21:29 |只看该作者
你提及的section是纯软件角度提出的一个概念,是跨平台的(arm,x86,ppc里面都能看到这玩意),跟x86 isa里面的segment没有任何关系

评分

参与人数 1信誉积分 +10 收起 理由
cdsfiui + 10

查看全部评分

论坛徽章:
0
3 [报告]
发表于 2017-04-08 01:03 |只看该作者
本帖最后由 chaoswind 于 2017-04-08 01:09 编辑

segment 对应 8086 模式下,采用段页式访问不同空间,因此有了 cs, ds , 等寄存器用来存储 段地址 , 加上偏移量形成目标地址, 因此是 对应一种寻址方式。 当前处理器中已经没有这个了。

section 是一个纯软件的概念,或者在编译和 binary中存在的, 最典型的是可以定义多个section , 每个section不同用途。

linux 或者现代os 中都使用处理器支持的page 方式进行虚实地址变换,这个和 section 又没有什么关系。 page 大小和使用方式和处理器密切相关。 通常都支持标准的 4KB page大小。
注意这个的主要目的是为了多进程数据安全,每个进程的虚拟地址空间独立,os管理如何映射到物理地址空间。

在page映射过程中,能够玩出很多花样。 具体可以参考进程间通讯等的实现。

评分

参与人数 1信誉积分 +10 收起 理由
cdsfiui + 10 很给力!

查看全部评分

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP