在C语言中,内存可分用五个部分: 1. BSS段(Block Started by Symbol): 用来存放程序中未初始化的全局变量的内存区域。 2. 数据段(data segment): 用来存放程序中已初始化的全局变量的内存区域。 3. 代码段(text segment): 用来存放程序执行代码的内存区域。 4. 堆(heap):用来存放进程运行中被动态分配的内存段,它的大小并不固定,可动态扩张或缩减。当进程调用malloc分配内存时,新分配的内存就被动态添加到堆上,当进程调用free释放内存时,会从堆中剔除。 5. 栈(stack):存放程序中的局部变量(但不包括static声明的变量,static变量放在数据段中)。同时,在函数被调用时,栈用来传递参数和返回值。由于栈先进先出特点。所以栈特别方便用来保存/恢复调用现场。
- 浏览: 1143146 次
- 性别:
- 来自: 深圳
文章分类
- 全部博客 (1027)
- 拼接字符串小技巧 (1)
- JAVA 模块知识小结 (23)
- Tools (14)
- Android (20)
- ExtJS必学必会 (1)
- Nginx (4)
- 中间件 (9)
- java中间件 (6)
- linux (47)
- 23种设计模式 (15)
- 数据库知识 (15)
- Mycat中间件 (80)
- 华为框架--jalor5 (2)
- 数据库-----DB2 (24)
- 数据库-----ORACLE (47)
- 数据库-----MYSQL (82)
- 大数据 (16)
- 大数据--HBASE (4)
- 大数据--Storm (9)
- 大数据--Hive (5)
- 大数据--Hadoop (11)
- 大数据--ElasticSearch (16)
- 大数据--ZooKeeper (13)
- 大数据--redis (17)
- 大数据--Kafka (26)
- 大数据--MongoDB (9)
- 大数据之Flume (4)
- 大数据--sqoop (3)
- 大数据--SPARK (7)
- 大数据--memcached (1)
- 大数据------Impala (1)
- 大数据--Avro (1)
- 大数据--Apache Pig (1)
- 大数据--Logstash (1)
- 大数据--Kibana 简介 (1)
- 大数据之Impala (1)
- 大数据之Druid-IO介绍 (1)
- 大数据之HUE (1)
- 大数据之Ambari (1)
- 大数据之Presto (1)
- 大数据之Oozie (1)
- 编程语言之Python (4)
- 编程语言--PHP (5)
- 编程语言--Scala (2)
- 编程语言--JAVA之Mybatis (26)
- 编程语言之Ruby (2)
- 编程语言之C (2)
- 编程语言--JAVA之Spring (7)
- 编程语言--JAVA之Struts (1)
- 编程语言JAVA Hibernate (6)
- 编程语言之Kotlin (1)
- 编程语言--JAVA之网络编程 (3)
- 编程语言之Go (3)
- 编程语言之Erlang (1)
- erlang语言 (1)
- 算法研究--查找 (8)
- 算法研究--排序 (10)
- 网络协议 (47)
- 版本控制工具 (6)
- JAVA基础知识 (20)
- 负载均衡 (14)
- Hessian (1)
- 阿里之RocketMQ (5)
- 阿里之Canal (2)
- 阿里之TDDL (1)
- 阿里之DRDS (1)
- 阿里Dubbo框架 (2)
- 阿里JStorm框架 (3)
- 阿里之yugong (2)
- 阿里之Druid框架 (3)
- 阿里之cobar (1)
- Docker (17)
- VPN虚拟专网 (1)
- JFinal (1)
- JAVA语言基础 (23)
- HAProxy简介 (5)
- Netty介绍 (1)
- Squid介绍 (1)
- ZeroMQ (1)
- JVM深入研究 (4)
- Kerberos (1)
- Shiro (1)
- R语言 (2)
- CAS (2)
- Spring Security (1)
- 虚拟化技术 (10)
- python (2)
- Wireshark (1)
- JAVA_WEB 开发 (6)
- I/O模型 (1)
- Apache Mina (1)
- Apache Solr (2)
- Apache Nutch (1)
- Apache nifi (1)
- Apache Phoenix (1)
- Apache Thrift (1)
- Apache --Groovy (2)
- Apache Tika (1)
- Apache JMeter (1)
- Apache 之CouchDB (1)
- Apache之XML-RPC (1)
- 读书笔记 (4)
- 统计分析系统--SAS (1)
- Java Applet (1)
- JAVA之XStream (1)
- java之FreeMarker (1)
- JAVA 之WebWork (1)
- JAVA之velocity 介绍 (1)
- JAVA之Excel的导入(出) (4)
- Node.js (1)
- 信息安全 (2)
- Flex 编程 (1)
- 大数据--Alluxio (1)
- Jenkins (1)
- XDoclet (1)
- Play 框架 (1)
- ESB (2)
- JAVA之SiteMesh (1)
- JAVA 之Tiles (1)
- JAVA之工作流系统 (5)
- Apache之Tajo (1)
- 搜索引擎知识 (1)
- Apache 之Chukwa (1)
- Apache 之 ActiveMQ (2)
- Apache 之Accumulo (1)
- Apache之Lucene (2)
- Apache S4 (2)
- Apache之Tez (1)
- Apache之TOMCAT (3)
- Apache Kylin (1)
- Apache 之Ivy (1)
- Apache之Mesos (1)
- Zenoss (1)
- 阿里妈妈-adhoc之mdrill (1)
- 分布式调用 (5)
- RPC之Zeroc ICE (3)
- Java之RMI (1)
- RPC框架之Apache-XML (1)
- 人工智能系统 (10)
- 构建工具Maven (6)
- 持续集成 (1)
- 缓存技术 (8)
- 数据库之SequoiaDB (1)
- 数据分析 (2)
- 自然语言处理 (10)
- 数据库----MariaDB (1)
- 压缩算法 (2)
- 消息队列之LMAX Disruptor (1)
- 分布式文件系统DFS (1)
- Kubernetes (1)
- 自动化部署框架 (2)
- 分布式文件系统Tachyon (1)
- OpenCV (1)
- 数据库--db4o (1)
- 任务调度--Azkaban (1)
- 消息队列 (3)
- Apache 之 Flink (1)
- 消息队列,StormMQ (1)
- 图形数据库 (1)
- Zuul (1)
- 网站加速 (1)
- CDN (1)
- 数据库之PostgreSQL (2)
- CQRS 命令查询职责分离模式 (1)
- CoreOS--ETCD (1)
- 工作流引擎--Snaker (1)
- HPCC (1)
- 数据库之Greenplum (1)
- 监控系统 (8)
- Neo4j (1)
- Apache之Calcite (1)
- 大数据分享 (4)
- 人工智能分享 (10)
- Apache 之Camel (1)
- Apache之 Crunch (1)
- 分布式缓存 (7)
- Apache 之Etch (1)
- Apache之 Karaf (1)
- Apache 之ODE (1)
- Eclipse安装插件 (1)
- Apache之Qpid (1)
- Apache 之Ranger (1)
- Apache 之Flink (1)
- Apache 之Lens (1)
- Apache之Zeppelin (1)
- Apache 之Mahout (1)
- Apache之 Samza (1)
- Apache 之VCL (1)
- Apache 之Synapse (1)
- Apache 之ORC (1)
- apache之Tapestry (1)
- 射频识别 (2)
- JAVA框架之spark (1)
- Web服务器 Tengine (1)
- web服务器之kangle (1)
- 全文检索 (1)
- Java开发框架之Ninja (1)
- Spring-Boot (2)
- 操作系统底层 (1)
- Java之Web框架Vert.x (1)
- JAVA之NIO框架 (1)
- CORBA (2)
- 敏感词过滤 (1)
- 前端语言 (18)
- 事处理务 (2)
- 网络爬虫 (1)
- 复杂SQL案例 (3)
- 经典理论 (1)
- 容器集群管理系统 (1)
- 代理服务器 (1)
- 微服务框架 (8)
- 编程语言--JAVA之Web (4)
- 存储知识 (2)
- 报表技术 (12)
- Tomcat专题研究 (7)
- 网络知识 (2)
- Web服务器 之WebLogic (2)
- 编程语言--JAVA之Email (5)
- Apache 之Velocity (1)
- java之Javassist (1)
- JAVA之工作流 (3)
- JAVA之Undertow (1)
- JAVA之Grizzly (1)
- java之Spray (1)
- JAVA之验证码 (8)
- JAVA之序列化 (1)
- JAVA 之RESTful (1)
- XML解析 (5)
- RPC框架之Motan (1)
- 数据库之ArangoDB (1)
- 【lanproxy】 (1)
- 【RPC框架之RPCX】 (1)
- RPC框架之gRPC (1)
- JavaWeb之G4Studio (1)
- 区块链 (1)
- Sphinx (1)
- 跟踪系统 (1)
- 多租户 (1)
- 大数据之数据采集应用 (2)
- JAVA 之文件操作 (10)
- 软件测试 (1)
- Apache 之DistributedLog (1)
- Apache 之 Ignite (1)
- 分布式配置中心 (1)
- 【SaaS 介绍】 (1)
- 【数据库之ArangoDB】 (1)
- 【数据处理之ETL】 (1)
- Undertow (1)
- JAX-RS (1)
- 【百度云消息推送】 (1)
- IOS (7)
- Kannel (1)
- ServiceComb (1)
- 微信 (2)
- 规则引擎 (1)
- 短地址 (1)
- Exam (1)
- FastDFS (1)
- Arthas (0)
- 阿里之Arthas (1)
- 阿里之Seata (1)
- 微服务 (1)
- 分布式事务 (1)
- Flink (2)
- Apache-Ranger (1)
- azkaban (1)
- Intellij Idea (1)
- Apache DolphinScheduler (3)
- PMP项目管理 (1)
- sentry介绍 (1)
- 堡垒机 (1)
- 对象存储服务简介 (1)
- prometheus (1)
- Hazelcast (1)
- dolphinscheduler (1)
- PMP (1)
- 数据库之ClickHouse (2)
- Telegraf (1)
- apache之Dolphinscheduler (1)
最新评论
-
gaojingsong:
jstl1point0 写道高级版本JDK可以直接安装不用配置 ...
【win7配置jdk 环境变量】 -
jstl1point0:
高级版本JDK可以直接安装不用配置了
【win7配置jdk 环境变量】 -
hdd901002:
光说明错误在哪里有什么用,解决方法啊。。。我也碰到了,一条jo ...
Mycat源码解读--错误之【can't find table define in schema 】 -
masuweng:
【JAVA之图片水印】 -
masuweng:
【JAVA之多线程下载文件实现】
相关推荐
对c语言内存模型和粗浅认识和总结,我们对一门学问的认识都有一个从散落到集中过程,权当一次小小的总结吧。
4. C语言内存对齐,提高寻址效率 5. 内存分页机制,完成虚拟地址的映射 6. 分页机制究竟是如何实现的? 7. MMU部件以及对内存权限的控制 8. Linux下C语言程序的内存布局(内存模型) 9. Windows下C语言程序的内存...
我们所说的BSS段(bss segment)通常是指用来存放程序中未初始化的全局变量的一块内存区域。BSS是英文Block Started by Symbol的简称。 3、栈区:由编译器自动分配释放,存放函数的参数值,局部变量的值等。其操作...
在用C语言开发时,特别是在服务器端,内存的使用会成为系统性能的一个瓶颈,如频繁的分配和释放内存,会不断的增加系统的内存碎片,影响内核之后分配内存的效率,这个时候一个比较可行的做法是采用内存池,先分配好...
该程序是我写的博客“一起talk C栗子吧(第一百三十回:C语言实例--C程序内存布局二)”的配套程序,共享给大家使用
一种用于类C语言环境的安全的类型化内存模型.pdf
主要介绍了C语言中的内存四区模型及结构体对内存的使用,包括结构体中内存泄漏情况的注意点提醒,需要的朋友可以参考下
主要介绍了详解C语言-二级指针三种内存模型的相关知识,文中代码非常详细,供大家参考和学习,感兴趣的朋友可以了解下
显式内存模型的好处显式内存模型的好处像 C 和 C++ 这些语言就没有显示的内存模型 —— 但 C 语言程序继承了执行程序处理器的内存模型(尽管一个给定体系结构
C语言基本语法、操作系统知识、编译过程、常用库函数、内层模型、指针的使用、及内存管理、基础的链表结构与排序算法
C语言的内存模型基本上对应了现在von Neumann(冯·诺伊曼)计算机的实际存储模型,很好的达到了对机器的映射,这是C/C++适合做底层开发的主要原因,另外,C语言适合做底层开发还有另外一个原因,那就是C语言对底层...
LinuxC语言实现生产者和消费者模型LinuxC语言实现生产者和消费者模型LinuxC语言实现生产者和消费者模型LinuxC语言实现生产者和消费者模型LinuxC语言实现生产者和消费者模型LinuxC语言实现生产者和消费者模型LinuxC...
本书系统地阐述了物联网的层次结构和功能划分,提出物联网四层体系结构模型,从感知识别、网络构建、管理服务、综合应用这4层分别进行阐述,深入浅出地为读者拨开萦绕于物联网的重重迷雾,引领求知者步入物联网世界...
介绍com基础知识和应用接口:是一个包含一个函数接针数组的内存结构。每一个数组元素包含的是一个由组件所实现的函数的地址。
C语言的内存模型基本上对应了现在von Neumann(冯•诺伊曼)计算机的实际存储模型,很好的达到了对机器的映射,这是C/C++适合做底层开发的主要原因,另外,C语言适合做底层开发还有另外一个原因,那就是C语言对底层操作做了...
像机器一样思考,像婴儿一样体验! 这个PPT会让你对C语言的理解有一个质的提升,但这还仅仅是一个入门,并不是全部。...11.秘密九:内存模型 (1-3) 12.秘密十:main函数不是第一个执行的函数 (1-4)
有关java内存泄露的详细资料,Java与C语言的内存管理模型,内存泄漏方式
Java与C语言混合开发是一种强大的编程技术,它结合了Java的跨平台性和...在C语言中编写本地方法时,需要注意函数名、参数类型和返回值类型的定义,以及内存分配和释放的问题。在Java代码中调用本地方法时,需要先加