门户网站建设方法,在线销售网站设计文献,工商局网站开发费用,绚丽的网站欣赏一.Linux的Page Cache
page cache#xff0c;又称pcache#xff0c;其中文名称为页高速缓冲存储器#xff0c;简称页高缓。page cache的大小为一页#xff0c;通常为4K。在linux读写文件时#xff0c;它用于缓存文件的逻辑内容#xff0c;从而加快对磁盘上映像和数据的访…一.Linux的Page Cache
page cache又称pcache其中文名称为页高速缓冲存储器简称页高缓。page cache的大小为一页通常为4K。在linux读写文件时它用于缓存文件的逻辑内容从而加快对磁盘上映像和数据的访问。 二.Linux内存泄漏
内存泄漏一般指的是堆内存的泄漏。堆内存是指程序从堆中分配的、大小任意的(内存块的大小可以在程序运行期决定)、使用完后必须显示的释放的内存。应用程序一般使用malloc、realloc、new 等函数从堆中分配到一块内存使用完后程序必须负责相应的调用 free 或 delete 释放该内存块。否则这块内存就不能被再次使用我们就说这块内存泄漏了。
三.Linux内核MMU
MMU是 MemoryManagementUnit 的缩写即内存管理单元. 针对各种CPU, MMU是个可选的配件. MMU负责的是虚拟地址与物理地址的转换. 提供硬件机制的内存访问授权。 四.应用程序的内存布局 代码段对应着程序中的代码函数代码段在linux中又叫文本段(.text)。
数据段显式初始化为非0的全局变量显式初始化为非0的static局部变量。
bss段存显式初始化为0或者未显式初始化的全局变量显式初始化为0或未显式初始化的static局部变量。
堆C语言中什么样变量存在堆内存中C语言不会自动向堆中存放东西堆的操作是程序员自己手工操作的。程序员根据需求自己判断要不要使用堆内存用的时候自己申请自己使用完了自己释放。
文件映射区文件映射区就是进程打开了文件后将这个文件的内容从硬盘读到进程的文件映射区以后就直接在内存中操作这个文件读写完了后在保存时再将内存中的文件写到硬盘中去
栈栈内存区局部变量分配在栈上函数调用传参过程也会用到栈递归函数运行也在栈上
内核映射区内核映射区就是将操作系统内核程序映射到这个区域了。
五.从内核角度看内存管理