1.段是指二进制文件内的区域,所有某种特定类型信息被保存在里面。linux下可以用size得到可执行文件中各个段的大小,在可执行程序中,正文段存储指令,数据段存储已经初始化的全局变量和静态变量, BSS段储存未赋值的全局变量和静态变量,BSS段内变量一般会被程序初始化为0;2.在运行时,程序会动态创...
分类:
数据库 时间:
2014-09-09 20:02:59
阅读次数:
248
进程就是处理执行期的程序(目标代码存放在某种存储介质上)。查进程并不仅仅局限于一段可执行程序代码。通常进程包括:打开的文件挂起的信号内核内部数据处理器状态地址空间一个或多个执行线程存放全局变量的数据段对linux而言,线程是特殊的进程,并不特别区分。在现代操作系..
分类:
系统相关 时间:
2014-09-08 03:19:26
阅读次数:
398
这两天看了马士兵老师的视频、视频中提到了一个万能钥匙、就是了解程序运行中对内存的操作、主要讲了堆、栈、Data、说真的有点晕、看了两遍、也就略懂一二、在这做个小小知道总结
简介
我们程序运行的时候都是放在内存里的、根据静态、成员函数、代码段、对象、等等、放在不同的内存分块里、大概分为5块
1 栈
2 堆
3 BSS段-全局...
分类:
其他好文 时间:
2014-09-08 01:05:06
阅读次数:
242
WIN32程序启动过程第一步:操作系统首先创建响应的进程并分配私有的进程空间,然后操作系统的加载器负责把可执行文件的数据段和代码段映射到进程的虚拟内容空间中。第二步:加载器读入可执行程序的导入符号表,根据这些符号表可以查找出该可执行程序所有依赖的动态链接库。第三步:加载器针对该程序依赖的每一个动态链...
分类:
其他好文 时间:
2014-09-07 20:59:15
阅读次数:
245
根据ECMA-262定义,Javascript的变量是弱类型的,它只是在特定时间用于保存特定值的一个名字而已。变量的值及其数据类型都可能在执行过程中改变ECMAScript变量的值分两种类型:基本类型值和引用类型值 基本类型值:简单的数据段引用类型值:由多个值构成的对象存储基本类型值的数据类型有:U...
分类:
编程语言 时间:
2014-09-07 08:42:34
阅读次数:
224
总结《现代操作系统》的一些概念知识。
1.进程上下文环境:
对进程执行活动全过程的静态描述
由进程的用户地址空间内容、硬件寄存器内容及与该进程相关的核心数据结构组成
用户级上下文:进程的用户地址空间(包括用户栈各层次),包括用户正文段、用户数据段和用户栈 寄存器级上下文:程序计数器、程序状态寄存器、栈指针、通用寄存器的值 系统级上下文: 静态部分(PCB和资源...
分类:
其他好文 时间:
2014-09-01 00:31:31
阅读次数:
305
可执行程序包括BSS段、数据段、代码段(也称文本段)。一.BSSBSS(Block Started by Symbol)通常是指用来存放程序中未初始化的全局变量和静态变量的一块内存区域。特点是:可读写的,在程序执行之前BSS段会自动清0。所以,未初始的全局变量在程序执行之前已经成0了。注意和数据段的...
分类:
其他好文 时间:
2014-08-28 21:07:36
阅读次数:
255
书接上回
既然有目标了 我们就开始写测试代码吧~~
1)使用超声波17500, 17700, 17900, 18100, 18300, 18500, 18700 分别表示0-6(为什么是0-6呢 嘿嘿 本人比较懒,SinVoice使用了6段频率,我也懒得修改代码了,就使用了同样的六段频率)其中0表示开始 6表示结束。真正的数据段就只有个1-5
2)修改SinVoice的正弦波生成类生成类
...
分类:
其他好文 时间:
2014-08-21 15:03:54
阅读次数:
294
1、高位地址:栈(存放着局部变量和函数参数等数据),向下生长 (可读可写可执行)2、 堆(给动态分配内存是使用),向上生长 (可读可写可执行)3、 数据段(保存全局数据和静态数据) (可读可写不可执行)4、地位地址:代码段(保存代码) (可读可执行不可写)代码段就是存储程序文本的,所以有时候也叫做文...
分类:
其他好文 时间:
2014-08-19 18:06:25
阅读次数:
165
逻辑地址(Logical Address) 是指由程序产生的与段相关的偏移地址部分。例如,你在进行C语言指针编程中,可以读取指针变量本身值(&操作),实际上这个值就是逻辑地址,它是相对于你当前进程数据段的地址,不和绝对物理地址相干。只有在Intel实模式下,逻辑地址才和物理地址相等(因为实模式没有分...
分类:
其他好文 时间:
2014-08-18 15:47:42
阅读次数:
173