Python
Java
PHP
IOS
Android
Nodejs
JavaScript
Html5
Windows
Ubuntu
Linux
Linux mmap系统调用视角看缺页中断
问题 1 mmap具体是怎么实现比read write少一次内存copy的 2 mmap共享映射和私有映射在内核实现的时候到底有什么区别 3 mmap的文件映射和匿名映射在内核实现的时候到底有什么区别 4 父子进程的COW具体怎么实现的 概
内存子系统
Linux
linux操作系统
内核
内存
Linux源码剖析struct page结构体flags成员
概述 struct page是mm种最核心的结构体之一 可以说整个内存管理就是围绕page展开的 不同场景下page的状态各有不同 page gt flags标志位是描述page状态的重要成员 定义在include linux page f
内存子系统
Linux
运维
服务器
linux的dirty page回写磁盘过程中是否允许并发写入更新page?
概述 众所周知Linux内核write系统调用采用pagecache机制加速写入过程 避免write系统调用长时间block应用进程 用户态进程执行write调用的时候 内核只是将用户态buffer copy到内核的pagecache当中
内存子系统
文件系统与存储
Linux
服务器
Linux内核
Linux mmap系统调用视角看缺页中断
问题 1 mmap具体是怎么实现比read write少一次内存copy的 2 mmap共享映射和私有映射在内核实现的时候到底有什么区别 3 mmap的文件映射和匿名映射在内核实现的时候到底有什么区别 4 父子进程的COW具体怎么实现的 概
内存子系统
Linux
linux操作系统
内核
内存
Linux mmap读/写触发共享文件页生命周期
概述 Linux的mm内存子系统的核心功能就要要管理各种类型的page 确保能高效分配和释放 让物理内存得以最大化使用 初识内存系统往往关注的是page的申请和管理流程 容易忽略page的释放回收流程 其实理解mm中的内存回收和释放也是最核
内存子系统
Linux
服务器
操作系统基本原理
内存
Linux内存回收入口
概述 内存回收主要是有kswapd异步回收和direct reclaim同步回收两种入口 其中逻辑非常复杂 本文主要只概要描述不同回收场景下内核设计的主要思想 源码细节不同版本有不少区别 具体的分析后续会有专门的文章分析 页面回收常识 页面
内存子系统
操作系统基本原理
内核
Linux关于memory cgroup的几个要点
概述 本文讲述memory cgroup比较容易误解的一些逻辑 如果不太经常使用和解决问题的话 对于memory cgroup的认知会比较浅显 cgroup memory用来限制进程的内存使用 但是我们进一步想如下的问题 进程的内存可以分很
内存子系统
Linux
运维
服务器