kernel
文章平均质量分 82
识荒者
知识焦虑的心灵港湾。(本人目前在找工作,欢迎介绍)
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
VMA使用
VMA 用户地址空间 用户层进程的虚拟地址空间是linux的一个重要抽象:它向每个运行进程提供了同样的系统视图,这使得多个进程可以同时运行,而不会相互干扰。 本文讨论内核管理用户虚拟地址空间的方法,由于一下种种原因,这比内核地址空间的管理更复杂。 - 每个应用程序都有自身的地址空间,与所有其它的应用程序分隔开。 - 通常在巨大的线性地址空间中,只有很少的段可用于各个用户空间进程,这些...原创 2018-03-06 18:42:54 · 3122 阅读 · 0 评论 -
malloc实现
malloc实现 几个问题 malloc()函数是C语言中内存分配函数, - malloc()函数返回的内存是否马上就分配物理内存? - 如果不考虑libc,malloc分配100Byte,那么实际上内核是为其分配100Byte吗? - vm_normal_page()函数返回的什么样的页面的struct page数据结构?为什么内存管理代码中需要这个函数? - get_user_...原创 2018-03-06 18:44:06 · 671 阅读 · 0 评论 -
Linux kernel 4.x中的min和max宏
min和max是两个很常用的操作,一般都是用宏实现的,不过想要写出一个很完善的宏定义还是要考虑很多问题的,本文就来分析下Linux Kernel中的实现方法。文中仅考虑min,max的结构与其完全相同,只要修改下大于小于号即可。 宏定义中要将整体和变量都加上括号的意义此处就不多说了,据此我们可以写出一个最基本的形式: #define min(a, b) ((a) < (b) ? (a) ...原创 2018-08-14 16:09:45 · 1284 阅读 · 0 评论
分享