Lecture 5 Memorky Layout and Allocation
使用静态内存分配方式的不一定都是静态变量, 也可能是全局变量
但静态变量一定是静态内存分配
int a;
int b = 1;
static int c; //静态全局变量:只在文件内使用
static int d = 1;
char *str = "str";
static char *str1 = "str1";
void func() {
int e;
int f = 1;
static int g; //静态局部变量:只在函数内使用, 函数执行完后并不释放, 可供下次调用函数时使用
static int h = 1;
char *str2 = "str2";
static char *str3 = "str3";
int *p = (int *)malloc(sizeof(int));
}
Linux的内存布局
(1)全局区和静态区
初始化:
初始化的全局变量b : 0x80495ec
初始化的静态全局变量d : 0x80495f0
全局字符串str : 0x80495f4
全局静态字符串str1 : 0x80495f8
局部静态字符串str3 : 0x80495fc
初始化的静态局部变量h : 0x8049600
未初始化: 系统自动赋予0
未初始化的静态全局变量c : 0x8049610
未初始化的静态局部变量g : 0x804960c
未初始化的全局变量a : 0x8049614
(2)栈区
局部变量:
未初始化的局部变量e : 0xbfd36fdc (使用未初始化的局部变量可能出错,因为它的值是随机的)
初始化的局部变量f : 0xbfd36fe0
局部字符串str2 : 0xbfd36fe4
(3)字符串常量区
字符串常量:
全局字符串str的内容 : 0x80484c0
全局静态字符串str1的内容 : 0x80484c4
局部静态字符串str3的内容 : 0x80484c9
局部字符串str2的内容 : 0x80484ce
(4)堆区
动态分配的内存地址p: 0x8e91008
(5)程序代码区
Windows的内存布局
(1)全局区和静态区
初始化:
初始化的全局变量b : 0x00417000
初始化的静态全局变量d : 0x00417004
全局字符串str : 0x00417008
全局静态字符串str1 : 0x0041700c
局部静态字符串str3 : 0x00417014
初始化的静态局部变量h : 0x00417010
未初始化: 系统自动赋予0
未初始化的静态全局变量c : 0x00417160
未初始化的静态局部变量g : 0x00417164
未初始化的全局变量a : 0x0041718c
(2)栈区
局部变量:
未初始化的局部变量e : 0x0012fe8c (使用未初始化的局部变量可能出错,因为它的值是随机的)
初始化的局部变量f : 0x0012fe80
局部字符串str2 : 0x0012fe74
(3)字符串常量区
字符串常量:
全局字符串str的内容 : 0x0041574c
全局静态字符串str1的内容 : 0x00415744
局部静态字符串str3的内容 : 0x0041573c
局部字符串str2的内容 : 0x004157b8
(4)堆区
动态分配的内存地址p: 0x00385ee8
(5)程序代码区
分享到:
相关推荐
[基于QoS的资源分配与收发机优化]QoS-Based Resource Allocation and Transceiver Optimization
No part of this publication may be reproduced or transmitted in any form or for any purpose without the express permission of SAP AG. The information contained herein may be changed ...
【风险规避与风险资产分配】是财务管理中的核心概念,它涉及到投资者如何在不确定性和收益之间做出决策。在投资领域,风险意味着可能的结果多种多样,而不仅仅是两种情况。简单预期是考虑了投资机会的风险,即未来...
《MATLAB风险管理教程》是Attilio Meucci教授的一部深度著作,专注于通过MATLAB这一强大的计算工具,探讨和实施复杂的风险管理和资产配置策略。本书不仅涵盖了理论层面的知识,更侧重于实践应用,使得读者能够将理论...
201705Taxation and the Allocation of Talent.pdf
Allocation Tracker 的使用 Allocation Tracker 是一个强大的工具,用于追踪内存分配信息。它可以在 Android Studio(AS)和 Eclipse 中使用。 Allocation Tracker 提供了详细的内存分配信息,帮助开发者更好地了解...
In this paper we examine the question of designing and allocating transmission sequences to users in a mobile ad hoc network that has no spatially boundary. A basic tenet of the transmission sequence ...
Wilson 等作者的这篇论文《Dynamic Storage Allocation: A Survey and Critical Review》是对自 1960 年代以来动态内存管理技术的一次全面回顾与分析。本文主要关注于内存分配器的设计与评估,并提出了若干重要的...
Design_and_Implementation_of_GCC_Register_Allocation ........................................................................... ....................................................... ..................
### 逻辑信道描述符与逻辑信道号分配:DVB-T系统中的核心概念 在数字电视广播领域,特别是澳大利亚的免费地面数字电视传输中,逻辑信道描述符(Logical Channel Descriptor,简称LCH)与逻辑信道号(Logical ...
【ASGNet】是一种针对小样本分割问题的深度学习模型,该模型采用了自适应超像素引导的聚类和原型分配策略,旨在解决传统语义分割方法中存在的数据需求量大、泛化能力差的问题。在小样本分割场景下,ASGNet能够通过...
### 协方差矩阵与资本配置:基于方差协方差的风险分配在信贷组合中的应用 #### 摘要 本文提出了一种高精度的分析近似方法来处理基于方差协方差的风险分配问题,该问题出现在由风险资产构成的投资组合中。...
The flow capturing and the p-median location-allocation models deal quite differently with demand for service in a network. The p-median model assumes that demand is expressed at nodes and locates ...
In this paper, we study the resource allocation algorithm design for multiuser orthogonal frequency division multiplexing (OFDM) downlink systems with simultaneous wireless information and power ...
Resource allocation and cross-layer control in wireless networks
在线匹配与广告分配是互联网广告领域的一个重要问题,它在理论计算机科学和实践应用中都有着深远的影响。本文主要探讨了在线匹配和分配的关键问题、模型以及算法,并分析了这些理论在实际广告分配中的应用。...
with average and water-filling power allocation schemes are presented, respectively. Numerical results indicate that the maximum limits of energy efficiency are always there for MIMO random cellular ...