早鸟倒计时:Linux的任督二脉之《内存管理》在线视频

内存管理是Linux里面最难最晦涩的部分,可是内存管理不清楚,Linux的不少现象又没法解释,不少环节都没法理清。这是继《Linux的任督二脉:进程调度和内存管理》第一脉《进程、线程和调度》后的第二脉。算法


主要目的:api

理解硬件访问内存的原理,MMU和页表;澄清Linux内核ZONE,buddy,slab管理;澄清用户空间malloc与内核关系,Lazy分配机制;澄清进程的内存消耗的vss,rss,pss,uss概念;澄清内存耗尽的OOM行为;澄清文件背景页面与匿名页,page cache与swap;澄清内存的回收、dirty page的写回,以及一些内存管理/proc/sys/vm sysctl配置的幕后原理;DMA和cache一致性,IOMMU等;给出一些内存相关的调试和优化方法;消除网上各类免费资料的各类误解。浏览器

最终造成一个Linux内存管理的全景视图。微信


视频时间: 在线视频6月27日开始,共五晚9点-10点(时间错过也可无限次数回看)。
app

答疑:另设一个微信群用于答疑,报名页扫码客户加微信入群。性能


大纲:优化

1

硬件原理和分页管理spa

  1. CPU寻址内存,虚拟地址、物理地址线程

  2. MMU以及RWX权限、kernel和user模式权限调试

  3. 内存的zone: DMA、Normal和HIGHMEM

  4. Linux内存管理Buddy算法

  5. 连续内存分配器(CMA)

2

内存的动态申请和释放

  1. slab、kmalloc/kfree、/proc/slabinfo和slabtop

  2. 用户空间malloc/free与内核之间的关系

  3. mallopt

  4. vmalloc

  5. 内存耗尽(OOM)、oom_score和oom_adj

  6. Android进程生命周期与OOM

3

进程的内存消耗和泄漏

  1. 进程的VMA。

  2. 进程内存消耗的4个概念:vss、rss、pss和uss

  3. page fault的几种可能性,major和minor

  4. 应用内存泄漏的界定方法

  5. 应用内存泄漏的检测方法:valgrind和addresssanitizer


4

内存与I/O的交换

  1. page cache

  2. free命令的详细解释

  3. read、write和mmap

  4. file-backed的页面和匿名页

  5. swap以及zRAM

  6. 页面回收和LRU

5

其余工程问题以及调优

  1. DMA和cache一致性

  2. 内存的cgroup

  3. 性能方面的调优:page in/out, swapin/out

  4. Dirty ratio的一些设置

  5. swappiness



报名方法:电脑浏览器访问

https://yomocode.com/courses/7

点击网页最右上角,微信扫码登陆(首次登陆需完成信息注册)。


报名后,扫描报名页的客服微信,入答疑群。


原价759元,早鸟:599元,早鸟6月2日晚8点结束。