匿名内存
2018-04-09 本文已影响0人
xor_eax_eax
有时候我们在看文档的过程中, 会遇到 匿名内存 这个词
要理解匿名内存,就必须了解计算机的内存,计算机中的内存,分为2种
- 内存映射文件
- 匿名内存
我们知道,文件是操作系统抽象出来的,操作系统把设备或者io都抽象为文件.
比如我们的键盘,鼠标,还有打印机之类的,在操作系统层面都属于文件,当然我们的文档,应用程序,也属于文件.
操作系统要执行一个程序,或者说打开一个文档,都是要把二进制数据从磁盘或者其他IO设备,读取到内存,然后进行处理.那么,这里使用的内存,就是内存映射文件.
匿名内存也很好理解,我们写程序时,肯定了解 堆和栈, 操作系统为了减少内存碎片,采用了分段和分页的机制.了解过汇编的应该知道一个程序,包括stack segment,data segment,code segment.实际上堆和栈都是属于匿名内存,写c的时候,我们会malloc一段内存,那这块内存就是匿名内存,包括c++或者java中的new 出来的指针(java中的引用)都是在匿名内存中.还有执行函数调用时,局部变量等等存储在栈帧中的数据也是在匿名内存中.
以上就是我对匿名内存的理解