试图使用mprotect保护一个静态变量数组,当对该静态变量受保护的部分写时,程序core dump #include?<stdio.h>
#include?<stdlib.h>
#include?<sys/mman.h>
#include?<unistd.h>
int?protect_bss(void?*?p...
分类:
其他好文 时间:
2015-04-03 17:38:31
阅读次数:
158
===汇编基础====汇编语言程序由定义好的段构成,常用三个段:数据段 初始值的数据元素BSS段 使用零初始化的数据元素文本段 程序代码注明:在BSS段中声明的数据,是不包含在可执行程序中的,但是数据段必然包含在科执行程序中汇编的编写有如下规则:定义段 使用.section伪指令定义)定义入口点 使...
分类:
系统相关 时间:
2015-03-29 01:49:11
阅读次数:
162
进程的地址空间中有很大的一块区域是被称作“堆”的区域
其地址空间是在进程的.data和.bss的地址增长方向到动态库区域的低地址部分的范围
堆可以理解成是进程的一大块内存区域(已经分配实际物理内存,但并不是所有的地址空间都分配了物理内存,其大小根据系统类型和版本来定)
用来供进程中的程序动态分配内存空间
通常,进程通过向操作系统批发一大块实际的内存空间交给glibc管理以提高动态内存请求和释放的效率
在程序要请求动态分配比较小的内存空间的时候,glibc从这一大块内存空间中分配之
当程序要请求动态分配较大的...
分类:
系统相关 时间:
2015-03-07 20:03:14
阅读次数:
194
最成熟的3G网络系统,是3GPP项目组制订的WCDMA。WCDMA的网络结构,可参考Figure 12.1,其中有几个特点。1. 反向兼容GSM/GRPS网络。原有GSM网络的基站子系统(BSS)保持不变,并且可以通过原有A协议栈和Gb协议栈,与改造后的核心网(Core Network)互联互通。2...
分类:
移动开发 时间:
2015-02-26 13:26:17
阅读次数:
311
Linux应用程序在内存中的布局,由高地址到低地址依次为:栈、堆、BSS段、数据段、代码段。代码段的起始地址固定为0x8048000,无论哪一个应用程序它的代码段起始地址一定是0x8048000,这里的地址虚拟地址,映射到不同的物理地址中去。 查看程序各段的地址 ps aux ...
分类:
系统相关 时间:
2015-02-16 18:12:46
阅读次数:
167
BSSID,一种特殊的Ad-hoc LAN的应用,也称为Basic Service Set (BSS),一群计算机设定相同的BSS名称,即可自成一个group。每个BSS都会被赋予一个BSSID,它是一个长度为48位的二进制标识符,用来识别不同的BSS。其的主要优点是它可以作为过滤之用。BSSID ...
原文:Windows Phone获取WiFi BSSID BSSID,一种特殊的Ad-hoc LAN的应用,也称为Basic Service Set (BSS),一群计算机设定相同的BSS名称,即可自成一个group。每个BSS都会被赋予一个BSSID,它是一个长度为48位的二进制标识符,用来识别不...
1.内存分配区间: 对于一个C语言程序而言,内存空间主要由五个部分组成:代码段(.text)、数据段(.data)、静态区(.BSS)、堆和栈组成。 BSS段:BSS段(bss segment)通常是指用来存放程序中未初始化的全局变量和静态变量(这里注意一个问题:一般的书上都会说全局变量和...
分类:
编程语言 时间:
2015-02-08 23:10:19
阅读次数:
309
2015.2.3//内存//.text: 可执行程序//.data: 分为只读数据段, 以及可读可写数据段, 只读数据段存放常量如:"hello world" 可读可以数据段存初始化的全局变量及static关键字修饰的变量//.bss: 未初始化的全局变量及static修饰的变量//.heap: 也...
分类:
移动开发 时间:
2015-02-03 21:09:03
阅读次数:
237