概述
一、写在前面;
首先我们通过一张图三个维度,来了解下“内存”在操作系统中的概念;
内存管理比较复杂,涉及的内容包括用户空间、内核空间和硬件;
用户空间即Linux Kernel暴露给用户态的系统调用,如brk,mmap等。通常会通过libc封装成常见的c函数,如mmap(),malloc(),free()等。大多数开发者都是在这个领域活动。
calloc,realloc等malloc家族,都是通过brk/sbrk/mmap等系统调用分配内存。内存释放需要手动调用free函数,或这置为NULL。
内核空间即为用户态提供系统调用的地方,因此在内存方面,内核空间往往需要处理系统调用请求。如sys_brk,sys_mmap等。内核空间除了处理用户态的系统调用外,还包括VMA管理,缺页中断,匿名页面等模块。为系统运行提供保障。
硬件层包括处理器的MMU,TLB和高速缓存部件,以及板载的物理内存,如LPDDR和DDR等。
学习内存是一个漫长的过程,要理解处理器是如何访问内存的,还要了解内存的基
最后
以上就是俏皮大神为你收集整理的Linux内存从0到1学习笔记(1,内存简介)一、写在前面;的全部内容,希望文章能够帮你解决Linux内存从0到1学习笔记(1,内存简介)一、写在前面;所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复