阅 读 文 章

探索Linux 操作系统内存模型和管理(8)

[来源:网上转载 () | 作者:网友() | 时间:2007-07-07 | 浏览:人次 ]

  这个物理内存区域的管理是通过一个 区域分配器(zone allocator) 实现的。它负责将内存划分为很多区域;它可以将每个区域作为一个分配单元使用。每个特定的分配请求都利用了一组区域,内核可以从这些位置按照从高到低的顺序来进行分配。

  例如:

  ●对于某个用户页面的请求可以首先从“普通”区域中来满足(ZONE_NORMAL);

  ●如果失败,就从 ZONE_HIGHMEM 开始尝试;

  ●如果这也失败了,就从 ZONE_DMA 开始尝试。

  这种分配的区域列表依次包括 ZONE_NORMAL、ZONE_HIGHMEM 和 ZONE_DMA 区域。另一方面,对于 DMA 页的请求可能只能从 DMA 区域中得到满足,因此这种请求的区域列表就只包含 DMA 区域。

  结束语

  内存管理是一组非常庞大、复杂且耗时的任务,也是一个非常难以实现的任务,因为我们需要精雕细琢出一个模型,设计好系统如何在真实的多程序的环境中进行操作,这是一项非常艰难的工作。诸如调度、分页行为和多进程的交互组件都向我们提出了相当难度的挑战。我希望本文可以帮助您了解接受 Linux 内存管理挑战所需要的一些基本知识,并为您提供一个起点。

论坛热门帖子: [lch203] 写得蛮好的linux学习笔记(10-21)
[黑马制造] 学习java的30个目标(10-19)
[笑傲股林] 做测试半年了,有点迷茫,应该再学些什么提高自己的测试水平和测试能力呢?(10-19)
[udp8589] 大家用google的来吱一声? 用百度的~~也来报道下?(10-18)
[沂偌掳兆] 本人总结的一些认为C++比较经典的书籍,希望对大家有用(10-18)
TAG标签: 模型 管理 内存 操作系统 探索 区域 可以 请求 分配 非常

最新评论 共有0位网友发表了评论

发表评论

评论内容:不能超过250字,需审核,请自觉遵守互联网相关政策法规。
用户名:(注册)
密码:
验证码:
匿名发表

网站地图友情连接交流论坛网站投稿广告服务联系我们留言本站长统计
Some rights reserved: www.chmhome.com, 鄂ICP备07010232号 E-mail:chinakafei@live.com,QQ:552766
中国咖啡技术网(Chmhome):国外编程技术书籍,中文编程手册,经典编程文章,交流技术,技术软件下载,计算机论文,毕业论文.