Rust--程序和内存

一个程序运行,主流操作系统(windows/Linux)将运行程序作为进程加载到内存中,和其他进程一起共享CPU和内存;操作系统为每个进程分配各自虚拟地址空间,每个进程间的虚拟地址空间不同,每个进程具有各自的内存视图。如下为一个进程内存布局的基本展示:

 

 1.文本段

包含已编译的二进制文件中执行的实际代码;

文本段是只读的,禁止对其进行修改

2.数据段

保存程序中声明的所有全局和静态值;

数据段分为初始化数据段和未初始化数据段,其中未初始化数据段加载到内存时会被初始化为0

3.堆栈段

用于保存预先知道大小的所有资源;如局部变量和函数的返回地址,以及程序创建的任何临时/中间变量都隐式存储在堆栈中

4.堆片段

用于保存大小未知资源数据,如需要动态分配的数据

以上为《精通Rust》学习笔记

posted @ 2022-01-17 16:11  echo-efun  阅读(122)  评论(0)    收藏  举报