[代码导读4] 物理页面分配
对于物理内存的管理,你们觉得那个最重要?不少小伙伴会说,一定是物理页面分配。没错,一个系统里,操作系统就像皇帝,控制了所有的物理内存的资源的审批和分配,就像某国的房地产市场,地皮的流转是严格控制的。任何进程不管你是普通老百姓还是皇亲国戚,需要土地都需要找皇帝审批。那我们这期视频节目就带领带领大家去看看Linux内核里是如何管理和分配物理内存的。
本期视频的课程目标:
- 考察Linux内核婴儿底时期是如何分配物理页面的?
- 考察Linux内核儿童底时期是如何分配物理页面的?
- 考察当代Linux 4.0内核是如何分配物理页面的?
- 分配掩码是什么鬼?
- 页面分配时候是从哪些zone来分配?
- 页面分配的时候是沿着那个方向来扫描zone的?
- 怎么判断一个zone是否能胜任本次的页面分配任务?
预览片
笨叔制作了精彩的预览片,上传到腾讯视频。
本期视频全程约1小时,想观看完整视频或者更多视频的小伙伴,请订阅笨叔的旗舰篇视频!
https://shop115683645.taobao.com/
现在订阅在1月2号,还有机会赢取价值969元的国窖1573哟!
婴儿底
在神奇的中国大地,2018年有两个火热的单词:婴儿底和儿童底。婴儿底是说处于刚出生的婴儿时期,说明这时候很弱小,倒脏水的时候不要把幼小的婴儿倒掉,因为ta有价值。儿童底说明处于成长期,需要特别关心和照顾。
Linux内核不是一天练就的,从1991年出世,笨叔把0.11到1.0的内核定义为Linux内核婴儿底。我们首先考察一下Linux内核在婴儿底时期的情况。
儿童底
笨叔把Linux 1.0到Linux 2.0时期的Linux内核称为的儿童底,因为经过几年开发,Linux内核已经比较像模像样了,但还不够完善。
成人版
笨叔把Linux 4.x内核定义为成人版,这时候的内核内核已经很成熟了,完全可以称霸和傲视整个操作系统领域,孤独求败。成人版的Linux内核的物理页面分配是相当的复杂,一般人不耐心去认真阅读内核代码是完全不能体会的。
成人版的Linux内核物理页面分配复杂在哪里?
- 你需要考虑不同进程不同用户的分配物理内存的需求,有的进程需要5分熟,有的需要7分熟,有的需要加胡椒粉,有的需要淡一点等等
- 你需要考虑从哪个zone来完成这次物理页面分配任务
- 你需要考虑不同内存节点
- 你需要考虑不同zone的扫描平衡和内存节点的平衡,她们都是怨妇
- 你需要考虑内存不足的时候,肿么办?
- 如果打死了也分配不出所需要的内存,肿么办?
- 如果有进程狂吃内存,肿么办?
想要了解更多的有趣和好玩的内容,请关注奔跑吧Linux社区。
课件ppt
[往期精彩]
阅读原文 最新评论
推荐文章
作者最新文章
你可能感兴趣的文章
Copyright Disclaimer: The copyright of contents (including texts, images, videos and audios) posted above belong to the User who shared or the third-party website which the User shared from. If you found your copyright have been infringed, please send a DMCA takedown notice to [email protected]. For more detail of the source, please click on the button "Read Original Post" below. For other communications, please send to [email protected].
版权声明:以上内容为用户推荐收藏至CareerEngine平台,其内容(含文字、图片、视频、音频等)及知识版权均属用户或用户转发自的第三方网站,如涉嫌侵权,请通知[email protected]进行信息删除。如需查看信息来源,请点击“查看原文”。如需洽谈其它事宜,请联系[email protected]。
版权声明:以上内容为用户推荐收藏至CareerEngine平台,其内容(含文字、图片、视频、音频等)及知识版权均属用户或用户转发自的第三方网站,如涉嫌侵权,请通知[email protected]进行信息删除。如需查看信息来源,请点击“查看原文”。如需洽谈其它事宜,请联系[email protected]。