博客
关于我
报名:《Linux的任督二脉》之《内存管理》在线课程
阅读量:105 次
发布时间:2019-02-25

本文共 1256 字,大约阅读时间需要 4 分钟。

内存管理是Linux里面最难最晦涩的部分,但是内存管理不清楚,Linux的很多现象又无法解释,很多环节都无法理清。这是宋老师继在CSDN上的《Linux的任督二脉:进程调度和内存管理》第一脉《进程、线程和调度》后的第二脉。

主要目的:

理解硬件访问内存的原理,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点。

本课程已于2018年开展了3期,共有500+人参加,取得了极好的效果;应广大童鞋的殷切希望,*同样的内容*,特别开展第四期。

FAQ:

上课的时间段在加班怎么办?

视频可以一直反复看。

请问如何答疑?

报名的同学扫描报名页的客服二维码,客服会拉您入答疑群。

大纲:

1

硬件原理和分页管理

  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

640?wx_fmt=png

报名方法

电脑浏览器访问(暂时不支持手机)

https://yomocode.com/courses/7

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

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

原价759元,现价:659元,优惠价格6月15日晚8点结束

转载地址:http://npt.baihongyu.com/

你可能感兴趣的文章
Mysql 常见错误
查看>>
mysql 常见问题
查看>>
MYSQL 幻读(Phantom Problem)不可重复读
查看>>
mysql 往字段后面加字符串
查看>>
mysql 快照读 幻读_innodb当前读 与 快照读 and rr级别是否真正避免了幻读
查看>>
MySQL 快速创建千万级测试数据
查看>>
mysql 快速自增假数据, 新增假数据,mysql自增假数据
查看>>
MySql 手动执行主从备份
查看>>
Mysql 批量修改四种方式效率对比(一)
查看>>
Mysql 报错 Field 'id' doesn't have a default value
查看>>
MySQL 报错:Duplicate entry 'xxx' for key 'UNIQ_XXXX'
查看>>
Mysql 拼接多个字段作为查询条件查询方法
查看>>
mysql 排序id_mysql如何按特定id排序
查看>>
Mysql 提示:Communication link failure
查看>>
mysql 插入是否成功_PDO mysql:如何知道插入是否成功
查看>>
Mysql 数据库InnoDB存储引擎中主要组件的刷新清理条件:脏页、RedoLog重做日志、Insert Buffer或ChangeBuffer、Undo Log
查看>>
mysql 数据库中 count(*),count(1),count(列名)区别和效率问题
查看>>
mysql 数据库备份及ibdata1的瘦身
查看>>
MySQL 数据库备份种类以及常用备份工具汇总
查看>>
mysql 数据库存储引擎怎么选择?快来看看性能测试吧
查看>>