2019年10月15日
摘要: 一、预备知识—程序的内存分配一个由c/C++编译的程序占用的内存分为以下几个部分1、栈区(stack)—由编译器自动分配释放,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。2、堆区(heap)—一般由程序员分配释放,若程序员不释放,程序结束时可能由OS回收。注意它与数据结构中的堆 阅读全文
posted @ 2019-10-15 20:06 守死得生 阅读(209) 评论(0) 推荐(0) 编辑
摘要: 近期在解决一个编译问题时,一直在考虑一个问题,那就是Linux下可执行程序执行时内存是什么状态,是依照什么方式分配内存并执行的。 linux下内存管理是通过虚存管理的,在分配内存时并不是在物理内存开辟了一段空间,而是在使用时才分配的。并且是通过段页式管理。 linux下内存分配是以页为单位的。而页是 阅读全文
posted @ 2019-10-15 19:41 守死得生 阅读(1290) 评论(0) 推荐(1) 编辑