• Stars
    star
    701
  • Rank 64,589 (Top 2 %)
  • Language
  • Created almost 3 years ago
  • Updated almost 3 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

总结整理linux内核的内存管理的资料,包含论文,文章,视频,以及应用程序的内存泄露,内存池相关

💻 总结整理linux内核的内存管理的资料,包含论文,文章,视频,以及应用程序的内存泄露,内存池相关


本repo搜集整理全网Linux内核---内存管理模块相关知识。

所有数据来源于互联网。所谓取之于互联网,用之于互联网。

如果涉及版权侵犯,请邮件至 [email protected] ,我们将第一时间处理。

如果您对我们的项目表示赞同与支持,欢迎您 lssues 我们,或者邮件 [email protected] 我们,更加欢迎您 pull requests 加入我们。

感谢您的支持!

This Repo collects and organizes the whole network Linux kernel -- memory management module related knowledge.

All data comes from the Internet. The so-called take from the Internet, use for the Internet.

If copyright infringement is involved, please email [email protected] and we will deal with it as soon as possible.

If you agree to our project and support, welcome lssues, we, or email [email protected] us, More welcome pull requests to join us.

Thank you for your support.

📜 100篇文章

内存管理(一):硬件原理 和 分页管理

内存管理(二):内存的动态申请和释放

内存管理(三):进程的内存消耗和泄漏

内存管理(四):内存与IO的交换

内存管理(五):其他工程问题以及调优

---------内存管理系列文章---------

内存管理系列一:启动简介

内存管理系列二:创建启动阶段的页表

内存管理系列三:MMU前CPU初始化及打开MMU

内存管理系列四:setup_arch简介(内存管理初始化)

内存管理系列五:alloc_pages从伙伴系统申请空间简易流程

内存管理系列六:伙伴系统之buffered_rmqueue

内存管理系列七:slub初始化

内存管理系列八:slub创建

内存管理系列九:slub申请内存

内存管理系列十:slub回收

内存管理系列十一:slub销毁

内存管理系列十二:vmalloc内存机制

内存管理系列十三:VMA操作

内存管理系列十四:brk

内存管理系列十五:do_page_fault缺页中断

内存管理系列十六:反向映射RMAP

内存管理系列十七:内存池

内存管理系列十八:内存回收之LRU链表

内存管理系列十九:内存压缩算法

内存管理系列二十:内存压缩算法之数据同步

内存管理系列二十一:内存回收入口

内存管理系列二十二:内存回收核心流程

----------英文文章鉴赏----------

Linux: large-memory management histories

Looking at kmalloc() and the SLUB Memory Allocator

Memory Management in OS: Contiguous, Swapping, Fragmentation

Memory Management in Operating System

Operating System - Memory Management

Virtual Memory in OS: What is, Demand Paging, Advantages

Why Do We Need Virtual Memory

----------分割线----------

Linux 内核(5.4.81)—内存管理模块源码分析

glibc2.23 ptmalloc 原理概述

多核心Linux内核路径优化的不二法门之-slab与伙伴系统

尽情阅读,技术进阶,详解mmap原理

浅谈Linux内存管理机制

Linux中的内存管理机制

C++中内存管理之new、delete

malloc和free的实现原理解析

常用寄存器总结

内存碎片之外部碎片与内部碎片

Linux虚拟内存管理,MMU机制,原来如此

一文了解,Linux内存管理,malloc、free 实现原理

内存管理之内存映射

内存管理之分页

内存管理之内核空间和用户空间

Linux 内存占用分析的几个方法,你知道几个?

深入理解 Linux 内存子系统

深入理解 glibc malloc:内存分配器实现原理

图解 Linux 内存性能优化核心思想

一文让你看懂内存与CPU之间的关系

linux内存管理---详解

一文带你了解,虚拟内存、内存分页、分段、段页式内存管理

深入浅出linux内存管理(一)

深入浅出linux内存管理(二)

为什么linux需要虚拟内存

【总结时刻】物理内存空间管理

【总结时刻】用户态内存映射

【总结时刻】内核态内存映射

虚拟地址空间——MMU

进程的虚拟内存空间

📀 视频

Linux内核源码/内存调优/文件系统/进程管理/设备驱动/网络协议栈

内存管理 ---Slab | 内存映射 | kmalloc | vmalloc | 内核源码 | MM | brk

90分钟了解 Linux内存架构--- numa的优势 | slab的实现 | vmalloc的原理

内存分配与回收机制---伙伴算法|slab分析|内存映射|进程虚拟空间|请求调页|写时复制

3种内存泄漏的解决方案--hook|malloc函数|free函数|避免内存泄漏

剖析Linux内核MMU机制---页表原理|高速缓存|TLB工作原理|内存映射|不连续页原理

虚拟内存空间之VMA实战操作

Linux内核内存管理(一)---内存映射|空间管理|ARM32/64页表|slab分配器|malloc

Linux内核内存管理(二)---malloc|mmap|反向映射|缺页中断处理|回收页面|KSM实现|内存漏洞|匿名页面

Linux内核内存管理(三)---Slab机制架构|物理页面|管理区|分配/释放页面

Linux内核之内存页回收---LRU及反向映射?如何异步回收、直接回收?以及回收slab缓存

Linux内核内存管理专题训练营(一)---伙伴系统|slab分配器|vmalloc()|malloc()|TLB|虚拟内存|缺页机制

Linux内核内存管理专题训练营(二)---伙伴系统|slab分配器|vmalloc()|malloc()|TLB|虚拟内存|缺页机制

Linux内核精讲之内存管理---物理内存组织|内核引导|内存映射

Linux物理内存页面分配---kmalloc|slab/slub|页框分配机制

Linux内存问题终极探讨---虚拟内存|内存池|内存泄漏|管理组件

-----西安交通大学内存管理(24讲)提取码1024-----

背景

固定分区分配

连续内存分配

分页

分页硬件和TLB

分段管理

虚拟内存

请求调页

页面置换

页面置换算法

帧分配

颠簸

面试题

📃 100篇论文

《ARM的虚拟内存管理技术的研究》

《C语言的内存漏洞分析与研究》

《FreeRTOS内存管理方案的分析与改进》

《Linux Memory Management》

《Linux内存管理分析与研究》

《Linux内存管理的设计与实现》

《Linux内核中内存池的实现及应用》

《Linux内核中动态内存检测机制的研究》

《Linux内核伙伴系统分析》

《Linux内核内存池实现研究》

《Linux实时内存的研究与实现》

《Linux操作系统内核分析与研究》

《Memory Management 101: Introduction to Memory Management in Linux》

《Memory Management in Linux》

《Memory Management》

《NUMA架构内多个节点间访存延时平衡的内存分配策略》

《Nginx Slab算法研究》

《TCP_IP协议栈的轻量级多线程实现》

《VC中利用内存映射文件实现进程间通信的方法》

《Virtual Memory Management Techniques in 2.6 Kernel and Challenges》

《Visual C 中利用内存映射文件在进程之间共享数据》

《Linux Physical Memory Page Allocation》

《一个内存分配器的设计和实现》

《一种Linux内存管理机制》

《一种TLB结构优化方法》

《一种优化的伙伴系统存储管理算法设计》

《一种基于虚拟机的动态内存泄露检测方法》

《一种提高Linux内存管理实时性的设计方案》

《一种改进的Linux内存分配机制》

《一种改进的伙伴系统内存管理方法》

《一种跨平台内存池的设计与实现》

《一种高效的池式内存管理器的设计》

《云计算平台中多虚拟机内存协同优化策略研》

《云计算平台中多虚拟机内存协同优化策略研究》

《内存管理机制的高效实现研究》

《分页存储管理系统中内存有效访问时间的计算》

《利用内存映射连续性提高TLB地址覆盖范围的技术评测》

《动态内存分配器研究综述》

《动态存储管理机制的改进及实现》

《基于C 的高效内存池的设计与实现》

《基于C 自定义内存分配器的实现》

《基于Linux内核的动态内存管理机制的实现》

《基于Linux内核页表构建内核隔离空间的研究及实现》

《基于RDMA和NVM的大数据系统一致性协议研究》

《基于RDMA高速网络的高性能分布式系统》

《基于RelayFS的内核态内存泄露的检测和跟踪》

《基于linux用户态可自控缓冲区管理设计与实现》

《基于multimap映射的动态内存分配算法探究》

《基于云计算虚拟化平台的内存管理研究》

《基于内存池的空间数据调度算法》

《多核系统内存管理算法的研究》

《实时系统内存管理方案的设计与实现》

《对linux伙伴系统及其反碎片机制的研究》

《嵌入式实时系统动态内存分配管理器的设计与实现》

《并发数据结构及其在动态内存管理中的应用》

《应用协同的进程组内存管理支撑技术》

《支持高性能IPC的内存管理策略研究》

《有效的C 内存泄露检测方法》

《浅析伙伴系统的分配与回收》

《用户态内存管理关键技术研究》

《申威处理器页表结构Cache的优化研究与实现》

《虚拟化系统中的内存管理优化》

《面向Linux内核空间的内存分配隔离方法的研究与实现》

《页面分配器的研究与实现》

🌌 内存池相关

文章

框架

🍺 内存泄露

🛠 内存管理工具

Valgrind:Valgrind是一个用于构建动态分析工具的工具框架。有一些Valgrind工具可以自动检测许多内存管理和线程错误,并详细分析你的程序。您还可以使用Valgrind来构建新的工具。 Valgrind发行版目前包括7个产品质量的工具:一个内存错误检测器、两个线程错误检测器、一个缓存和分支预测分析器、一个调用图生成缓存和分支预测分析器,以及两个不同的堆分析器。它还包括一个实验性的SimPoint基本块向量生成器。

AddressSanitizer:Google出品的内存检测工具

内存性能指标

指标-工具映射图

工具-指标映射图

分析思路

分析的基本过程

a. 先用 free 和 top,查看系统整体的内存使用情况。

b. 用vmstat及pidstat查看内存变化情况,确定内存问题类型

c. 详细分析,如内存分配分析、缓存/缓冲区分析、具体进程的内存分析

联系专栏

Linux内核源码/内存调优/文件系统/进程管理/设备驱动/网络协议栈

关注微信公众号【后台服务架构师】——【联系我们】,获取本repo最全PDF学习文档!

More Repositories

1

interview_internal_reference

2023年最新总结,阿里,腾讯,百度,美团,头条等技术面试题目,以及答案,专家出题人分析汇总。
Python
35,340
star
2

from_coder_to_expert

2021年最新总结,从程序员到CTO,从专业走向卓越,分享大牛企业内部pdf与PPT
10,920
star
3

Introduction-to-Golang

【未来服务器端编程语言】最全空降golang资料补给包(满血战斗),包含文章,书籍,作者论文,理论分析,开源框架,云原生,大佬视频,大厂实战分享ppt
Go
6,731
star
4

expert_readed_books

2021年最新总结,推荐工程师合适读本,计算机科学,软件技术,创业,思想类,数学类,人物传记书籍
5,877
star
5

audio_video_streaming

音视频流媒体权威资料整理,500+份文章,论文,视频,实践项目,协议,业界大神名单。
4,234
star
6

linux_kernel_wiki

linux内核学习资料:200+经典内核文章,100+内核论文,50+内核项目,500+内核面试题,80+内核视频
3,556
star
7

cpp_new_features

2021年最新整理, C++ 学习资料,含C++ 11 / 14 / 17 / 20 / 23 新特性、入门教程、推荐书籍、优质文章、学习笔记、教学视频等
C++
3,444
star
8

introduce_c-cpp_manual

一个收集C/C++新手学习的入门项目,整理收纳开发者开源的小项目、工具、框架、游戏等,视频,书籍,面试题/算法题,技术文章。
C++
2,671
star
9

learning_mind_map

2021年【思维导图】盒子,C/C++,Golang,Linux,云原生,数据库,DPDK,音视频开发,TCP/IP,数据结构,计算机原理等
2,468
star
10

campus_recruitmen_questions

2021年最新整理,5000道秋招/提前批/春招/常用面试题(含答案),包括leetcode,校招笔试题,面试题,算法题,语法题。
2,420
star
11

kernel_new_features

一个深挖 Linux 内核的新功能特性,以 io_uring, cgroup, ebpf, llvm 为代表,包含开源项目,代码案例,文章,视频,架构脑图等
C
1,443
star
12

ffmpeg_develop_doc

2023年,最新音视频学习资料整理,项目(调试可用),ffmpeg命令手册,文章,编解码论文,视频讲解,面试题全套资料
C
1,417
star
13

algorithm-structure

2021年最新总结 500个常用数据结构,算法,算法导论,面试常用,大厂高级工程师整理总结
C
1,371
star
14

computer_expert_paper

1000+份计算机paper,卡耐基梅隆大学,哈佛,斯坦福,芝加哥大学,MIT,facebook,google,微软,Amazon,twitter等大牛一作,持续更新中
1,222
star
15

k8s_awesome_document

【2021年新鲜出炉】K8s(Kubernetes)的工程师资料合辑,书籍推荐,面试题,精选文章,开源项目,PPT,视频,大厂资料
1,126
star
16

Understanding_in_Rust

【最安全的编程语言】Rust工程师枕边资料,大牛文章,开源框架,官方文档,视频,推荐书籍,学习干货,大牛语录
929
star
17

dpdk_engineer_manual

【冲破内核瓶颈,让I/O性能飙升】DPDK工程师手册,官方文档,最新视频,开源项目,实战案例,论文,大厂内部ppt,知名工程师一览表
904
star
18

developkit_set

2021年最新总结,值得推荐的c/c++开源框架与库。持续更新中。
799
star
19

enterprise_job_recommend

2023年 最新整理暑假实习(含Java,前端,测试,c++,嵌入式,算法岗),base(北京,上海,广州,深圳,杭州,西安,成都,南京),每周定时更新
601
star
20

Introduce_to_virtualization

500篇关于虚拟化的经典资料,含CPU虚拟化,磁盘虚拟化,内存虚拟化,io虚拟化。
427
star
21

newsql_nosql_library

整理12种数据库相关资料,mysql,mariaDB,Percona Server,MongoDB,Redis,RocksDB,TiDB,CouchDB,Cassandra,TokuDB,MemDB,Oceanbase
376
star
22

kernel_awsome_feature

深入研究 kvm,ceph,fuse特性,包含开源项目,代码案例,文章,视频,架构脑图等
371
star
23

backend_video

后端免费技术分享视频,包含Linux,RTSP RTMP, HLS, 流媒体, ffmpeg, WebRTC,golang,Nginx,ZeroMQ,MySQL,Redis,fastdfs,MongoDB,ZK,CDN,P2P,K8S,Docker,ffmpeg,TCP/IP,协程,DPDK
294
star
24

interview_experience

2021年最新整理,200位校招面经分享,包含微软,华为,腾讯,字节,阿里,360,tplink,好未来,网易,搜狗,wps等,研发岗位,C++研发岗位,安全岗位。
275
star
25

develop_skill_tree

2021年最新整理,名企校招各大岗位的技能树,含技术细节,Java,C/C++,前端,运维,测试,运营岗位。持续更新中
223
star
26

linux_environment_tools

总结linux环境开发工具,包含linux,虚拟机,编译器,编辑器,测试工具,加密工具
208
star
27

cpp_backend_awsome_blog

2023年最新整理 c++后端开发,1000篇优秀博文,含内存,网络,架构设计,高性能,数据结构,基础组件,中间件,分布式相关
122
star
28

students_blog_collection

学员学习过程,课程总结的文章集锦,包含linux c/c++服务器,音视频,内核,dpdk,golang
81
star
29

qt_interview_reference

2023年最新整理,qt开发最全面试集锦,含网络,文件系统,数据库,自定义控件,以及视频讲解,文档
60
star
30

influence_programmer

2022年,梳理100位具有影响力的程序员,包含大厂高p高t,开源作者,学术比赛,博客自媒体,书籍作者
39
star