Chinaunix首页 | 论坛 | 博客
  • 博客访问: 26144
  • 博文数量: 42
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 10
  • 用 户 组: 普通用户
  • 注册时间: 2015-05-13 22:55
文章分类

全部博文(42)

文章存档

2015年(42)

我的朋友

发布时间:2015-12-31 00:15:22

前面的前奏已经分析介绍了建立内核页表相关变量的设置准备,接下来转入正题分析内核页表的建立。 建立内核页表的关键函数init_mem_mapping():【file:/arch/x86/mm/init.c】void __init init_mem_mapping(void){  &nbs.........【阅读全文】

阅读(587) | 评论(0) | 转发(0)

发布时间:2015-12-31 00:15:10

前面已经分析过了Intel的内存映射和linux的基本使用情况,已知head_32.S仅是建立临时页表,内核还是要建立内核页表,做到全面映射的。下面就基于RAM大于896MB,而小于4GB ,切CONFIG_HIGHMEM配置了高端内存的环境情况进行分析。 建立内核页表前奏,了解两个很关键的变量:max_pfn:最大物理内存页面帧号.........【阅读全文】

阅读(210) | 评论(0) | 转发(0)

发布时间:2015-12-31 00:15:00

结束完memblock算法初始化前的准备工作,回到memblock算法初始化及其算法实现上面。memblock是一个很简单的算法。memblock算法的实现是,它将所有状态都保存在一个全局变量__initdata_memblock中,算法的初始化以及内存的申请释放都是在将内存块的状态做变更。那么从数据结构入手,__initdata_memblock是一个.........【阅读全文】

阅读(265) | 评论(0) | 转发(0)

发布时间:2015-12-31 00:14:49

memblock算法是linux内核初始化阶段的一个内存分配器(它取代了原来的bootmem算法),实现较为简单。负责page allocator初始化之前的内存管理和分配请求。分析memblock算法,可以从几点入手:1、 memblock算法初始化;2、 memblock算法管理内存的申请和释放; memblock算法前的准备:前.........【阅读全文】

阅读(220) | 评论(0) | 转发(0)

发布时间:2015-12-31 00:14:40

本文主要总结一下Intel的x86架构处理器所支持各式内存映射情况。 实模式实模式下,没有什么内存映射的概念,逻辑地址简单地转换一下就是物理地址。实模式下的逻辑地址表现形式为[Base:Offset](即[基地址:偏移量],虽然Base类似于保护模式下的段选择符,但是实模式下,它仅表示基地址,无任何的段.........【阅读全文】

阅读(274) | 评论(0) | 转发(0)
给主人留下些什么吧!~~
留言热议
请登录后留言。

登录 注册