Fork me on GitHub
摘要: 文件页 内存回收,也就是系统释放掉可以回收的内存,比如缓存和缓冲区,就属于可回收内存。它们在内存管理中,通常被叫做文件页(File backed Page)。大部分文件页,都可以直接回收,以后有需要时,再从磁盘重新读取就可以了。 脏页 那些被应用程序修改过,并且暂时还没写入磁盘的数据(也就是脏页), 阅读全文
posted @ 2019-10-06 23:03 yooooooo 阅读(452) 评论(0) 推荐(0) 编辑
摘要: 先说说cpu的cache,和cpu的cache比起来访问主内存是非常慢的,为了加快速度根据本地性原则,cpu在访问主内存的时候会把附近的一块数据都加载到cpu的cache里,之后读写这块数据都是在cache里做的。 linux本来有伙伴系统分配内存页,为了加快单个内存页的分配linux在每个node 阅读全文
posted @ 2019-10-06 23:00 yooooooo 阅读(513) 评论(0) 推荐(0) 编辑
摘要: 前面已经分析了内存管理框架的构建实现过程,有部分内容未完全呈现出来,这里主要做个补充。 如下图,这是前面已经看到过的linux物理内存管理框架的层次关系。 现着重分析一下各个管理结构体的成员功能作用。 struct zone node_zones[MAX_NR_ZONES]; ——存放该pg_dat 阅读全文
posted @ 2019-10-06 22:55 yooooooo 阅读(371) 评论(0) 推荐(0) 编辑
摘要: 虽说前文分析内存管理框架构建的实现,提到了find_zone_movable_pfns_for_nodes(),但这里不准备复述什么,仅针对required_movablecore和required_kernelcore做一个补充。 以required_movablecore为例,代码中没有很清晰地 阅读全文
posted @ 2019-10-06 22:32 yooooooo 阅读(349) 评论(0) 推荐(0) 编辑