malloc-程序取得所需存储空间的方法???

问题描述

程序取得所需存储空间的方法???

在学习汇编语言的时候看到这样一句话:程序取得所需存储空间的方法有两种,一是在加载程序的时候为程序分配,二是在程序执行的过程中向系统申请。
这让我联系到了C语言的为变量分配存储空间:在C语言中具有外部链接的静态变量是在程序加载的过程中系统为程序分配存储空间并且一直到程序执行完以后才释放空间,而其他的变量(具有内部链接的静态变量,自动变量,寄存器变量)以及使用malloc函数来分配空间是在程序执行的过程中向系统申请的存储空间。
请问我的总结对吗?如果不对,错在哪里?
小生为一名小白学生,希望得到大家的帮助,谢谢。

解决方案

对,只是你这里提的外部连接具体指什么?

解决方案二:

执行的过程中向系统申请, “向系统申请”的话主要指的是malloc的内存,而malloc实现主要是用brk系统调用(linux下,有兴趣可以百度一下)。

时间: 2024-08-20 14:28:25

malloc-程序取得所需存储空间的方法???的相关文章

“Visual Studio.net已检测到指定的Web服务器运行的不是Asp.net1.1版。您将无法运行Asp.net Web应用程序或服务”问题的解决方法

asp.net|visual|web|web服务|web服务器|程序|解决|问题 可能的解决方法有下面这些: 1.先确定是不是1.1 2.把"IP地址"设成全部未分配 3.在IE连接设置中把本地地址不使用代理服务器那里打上勾 4.运行aspnet_regiis -i   1.你的Web服务器使用了固定IP:确定你的"Internet信息服务"中使用的是"默认web站点"并且其属性中的IP地址为"(全部未分配)",而不是你己指定

Win7安装程序提示“安装程序已经在运行”的解决方法

  Win7安装程序提示"安装程序已经在运行"的解决方法 1.在任务栏单击右键,选择"启动任务管理器"; 2.在任务管理器中点击"用户"选项卡,在下面找到当前运行的用户并单击右键,选择"注销"; 3.注销后重新登入操作系统,然后在安装程序上单击右键,选择"重命名",随便添加一些数字或者字母(程序名字后面的.exe千万不要改); 4.修改完成后重新安装即可解决.

在Python程序中操作文件之flush()方法的使用

  这篇文章主要介绍了在Python程序中操作文件之flush()方法的使用教程,是Python入门学习中的基础知识,需要的朋友可以参考下 flush()方法刷新内部缓冲区,像标准输入输出的fflush.这类似文件的对象,无操作. Python关闭时自动刷新文件.但是可能要关闭任何文件之前刷新数据. 语法 以下是flush()方法的语法: ? 1 fileObject.flush(); 参数 NA 返回值 此方法不返回任何值. 例子 下面的例子显示了flush()方法的使用. ? 1 2 3 4

在Python程序中操作文件之isatty()方法的使用

  这篇文章主要介绍了在Python程序中操作文件之isatty()方法的使用教程,是Python入门学习中的基础知识,需要的朋友可以参考下 如果文件已连接(与终端设备相关联)到一个tty(状)的设备,isatty()方法返回True,否则返回False. 语法 以下是isatty()方法的语法: ? 1 fileObject.isatty(); 参数 NA 返回值 如果该文件被连接(与终端设备相关联)到一个tty(类似终端)设备此方法返回true,否则返回false. 例子 下面的例子显示了i

Win8系统无法关闭后台程序导致电脑卡的解决方法

  Win8系统无法关闭后台程序导致电脑卡的解决方法.在雨林木风win8系统中运行的应用程序,往往无法关闭,因为没有关闭的选项,这些应用程序一直在后台运行,导致电脑变卡,严重影响操作.那么Win8系统无法关闭后台程序怎么办呢?大家不要着急,针对此问题,小编研究整理出win8系统关闭后台程序的方法,大家不妨一起来学习下. 解决方法一: 1.在Win8中使用过应用程序后,返回传统桌面,把鼠标移动到屏幕的最左上角,此时会出现在后台运行的应用程序; 2.点击鼠标右键,选择"关闭"即可. 解决方

Win7 旗舰版系统安装程序提示错误代码0x80070422的解决方法

  Win7 旗舰版系统安装程序提示错误代码0x80070422的解决方法.在Win7旗舰版系统中安装某个程序时突然弹出windows Update独立安装程序提示错误代码0x80070422,如下图所示: 解决方法: 1.按"Win+R"键,调出运行命令,在运行命令窗口中输入"services.msc",回车;打开[服务]窗口; 2.找到"Windows Update",查看状态是否已启动; 若未正常启动"Windows Update

给Win8系统增加存储空间的方法

Win8系统下玩大型游戏的时候经常弹框提示虚拟内存不够,其实是真是内存不够大,支持这么大型的游戏运行,这时候用户可以通过设置虚拟内存的大小来扩大存储空间的方法解决这个问题. Win8巧设虚拟内存扩大存储空间: 1.打开系统属性.右击"这台电脑"-"属性"; 2.点击左边的"高级系统设置"; 3.进入到系统属性界面,在性能选项点击"设置"; 4.虚拟内存选项"更改"; 5.在这个界面里选择"自定义大

delphi线程问题 delphi 程序里我写了一个方法

问题描述 delphi线程问题 delphi 程序里我写了一个方法 delphi 程序里我写了一个方法,方法里面的算法比较复杂,计算起来时间比较长,我想把这个方法单独放到一个线程里去执行,请问是怎么写?一点头绪没有啊,谢谢 解决方案 unit Unit1; interface uses Windows Messages SysUtils Variants Classes Graphics Controls Forms Dialogs StdCtrls; type TForm1 = class(T

用UBOOT自带loadb命令加载应用程序到SDRAM中运行的方法

  S3C44B0开发板中,用UBOOT自带loadb命令加载应用程序到SDRAM中运行的方法    1.开发板说明:  开发板上已有移植好的UBOOT运行.   2.交叉编译工具链为arm-linu-gcc-4.0.4 3.原理:  采用UBOOT自带的命令loadb,加应用程序(.bin)加载至SDRAM中某一地址中,然后用go 命令从某地址处开始执行程序.   操作方法说明:  1.编写一个测试程序,见附上的例程hello.c.    hello.c主要包含以下几个功能,在串口终端打印输出