Linux内核高端内存

Tags: Memory   Linux  

Linux内核地址映射模型
x86 CPU采用了段页式地址映射模型。进程代码中的地址为逻辑地址,经过段页式地址映射后,才真正访问物理内存。

段页式机制如下图。

leon Published by 2014-04-02 23:46

Detail »

内存管理内幕

Tags: Memory   Linux  

内存管理是计算机编程最为基本的领域之一。在很多脚本语言中,您不必担心内存是如何管理的,这并不能使得内存管理的重要性有一点点降低。对实际编程来说,理解您的内存管理器的能力与局限性至关重要。在大部分系统语言中,比如 C 和 C++,您必须进行内存管理。本文将介绍手工的、半手工的以及自动的内存管理实践的基本概念。

leon Published by 2014-03-21 08:32

Detail »

Linux内存管理

Tags: Memory   Linux  

本章首先以应用程序开发者的角度审视Linux的进程内存管理,在此基础上逐步深入到内核中讨论系统物理内存管理和内核内存的使用方法。力求从外到内、水到渠成地引导网友分析Linux的内存管理与使用。在本章最后,我们给出一个内存映射的实例,帮助网友们理解内核内存管理与用户内存管理之间的关系,希望大家最终能驾驭Linux内存管理。

leon Published by 2014-03-20 12:10

Detail »

虚拟内存,地址空间,page cache

Tags: Memory   Linux  

我们平时编写程序, 执行程序的时候, 总是会接触到"内存(memory)", "buffer", "cache" 这样的概念, 多少会在英文术语和中文翻译中迷失. 本文尝试建立对这些概念和其原理的初步认识.

leon Published by 2014-03-16 23:57

Detail »

Memory Management and the TLB

Tags: Memory   TLB  

Random寄存器在TLB里保有一個在CPU執行每條指令時進行計數(是遞減的,如果這個特征對您來說重要的話)而得的索引,它在寫TLB入口的tlbwr指令執行時作為TLB的索引,以此支持寫TLB入口的隨機替換策略。

通常情況下您永遠不需要去讀寫Random寄存器(圖6.6所示),不過在診斷過程中它可能是有用的。我們可能會期望在系統重啟(reset)時把硬件的Random域置為最大值——相當於選擇最大序號的TLB入口,並且每個時鐘周期它都會遞減,直到達到某個基值(floor value),然后數值回卷(wrap back)變為63,重新開始遞減。

leon Published by 2014-03-11 12:03

Detail »