- 博客(12)
- 收藏
- 关注
原创 TLB与MMU
1.MMU介绍MMU,全称内存管理单元,一般是CPU里的硬件电路,也可单独集成电路,主要功能是把虚拟地址转换为物理地址。通过段机制和页机制完成转换. 至此,MMU可以完成地址转换,通过建立页表,把虚拟地址通过页表查找,得到最终的物理地址。例如,当需要访问内存中的一个数据,通过这个数据的虚拟地址查找页表,一旦在页表中找到(hit),就通过找到的物理地址寻址到内存中的数据。如果页表中没有
2018-02-01 23:48:56 12891 3
翻译 Memory part 4:NUMA support
1.硬件层面解决NUMA在part2的figure2.3中, 我们了解到,在一些机器上,不同的区域访问特定的内存花销不一样。例如,CPU1对它专属的内存的访问速度快于对CPU2专属内存的访问速度。CPU1访问CPU2的内存需要‘多走路’,这个‘多走的路’叫做NUMA factor。关于NUMA,这是大型计算机才有的问题。这个大型计算机有很多的CPU访问同一个内存。就像上面的例子。我们
2018-01-31 00:02:09 510
翻译 Memory part 3: Virtual Memory
1.简介处理器中的虚拟内存子系统为每个进程提供了虚拟地址空间。这使得每个进程认为它自己是独立的。虚拟地址有很多优点,此处不表。这里讲它的实现细节。 这个虚拟地址空间是由MMU(memory management unit)实现,MMU就是虚拟内存子系统。MMU是cpu中的东西。作用就是完成逻辑地址到线性地址(虚拟地址)再到物理地址的转换。逻辑地址到线程地址(虚拟地址)由MMU中的段机制实现转
2018-01-31 00:01:52 441
翻译 memory part2:CPU cache
1.引子25年前的cpu没有现在这麽复杂。那时候,cpu和内存的频率在同一个级别。内存的访问只比寄存器慢了一点点。但是这一切在90年代发生巨变。cpu厂商增加了其频率,但是内存厂商却没有相应地增加。原因不是技术上做不到,而是花费太高。内存频率若与cpu频率频率相同,所需要的经济代价要贵几个数量级。内存速度快,但考虑到经济性,不可能做太大。大容量的数据我们一般放在硬盘中。这是一种方法。但硬盘
2018-01-28 18:07:32 352
翻译 内存二三事,part1
1.简介早期的计算机较现在更简单。计算机系统的组件例如CPU,内存,硬盘,网络接口同时发展起来,结果就是他们在性能上很平衡。例如在数据传输速度上,内存网卡cpu相差不多。但是,当计算机系统的整个结构确定后,每个子部件的发展速度就各不相同了。例如 CPU发展非常快,但是内存和硬盘由于很多原因发展很慢。于是,内存,硬盘等成为了计算机性能发展的瓶颈。这些瓶颈,我们通过软件技术,例如OS来弥补。例
2018-01-25 00:45:53 269
原创 浅谈CPU Cache-page coloring 学习笔记
原文链接 感谢原文作者对知识普及所做的贡献。 本文用语和含义可能不算严谨或有错误,但仅是自己对原文章的理解1 page coloring出现的历史意义page coloring的出现是为了解决某个问题,这个问题就是:OS对内存的管理机制和CPU对cache的管理机制不协调有鸿沟,更具体地說就是在使用SET/WAY的cpu中,内存到cache的映射需要使用着色,从而解决一条物
2018-01-21 01:53:46 3062
原创 linux内核学习--内存管理theory篇
说明:以kernel-2.6.24为对象1 硬件知识关键词:RAM 内存条 CPU寄存器 MMU RAM:Random-access memory MMU:Memory Manage Unit(地址转换) CPU寄存器:稍后再表。2 逻辑地址/虚拟地址/线性地址/物理地址关键词:段寄存器 内存条 MMU的作用:逻辑地址转换为强调内容物理地址 各地址的区
2018-01-13 20:59:40 330
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人