产生竞态的情况:(1)对称多处理器(SMP)的多个CPU(2)单CPU的进程与抢占它的进程(3)中断与进程之间解决竞态途径:互斥访问临界区:访问共享资源的代码区互斥途径:中断屏蔽、原子操作、自旋锁、信号量、互斥体中断屏蔽local_irq_disable() /*屏蔽中断*/ ...critical...
分类:
系统相关 时间:
2015-09-07 19:34:58
阅读次数:
334
内存管理中,内存被划分为:系统预留区、代码区、全局变量区、堆和栈。全局变量区又可划分为:data段和bss段。data段用于存储已经初始化的全局变量、static变量和文字常量。bss段用于存储未初始化的全局变量、static变量。【程序实例1】#include using namespace st...
分类:
其他好文 时间:
2015-09-05 13:44:02
阅读次数:
202
首先普及一下内存存储区域知识:内存分为五大区域:堆、栈、全局区、文字常量区、代码区堆存放:由new、alloc分配的内存块,由程序员控制释放 p1=(char*)malloc(10);栈存放:存放函数参数、局部变量,在不需要的时候由编译器自动清除的变量存储区。 int b; char s[] ...
分类:
移动开发 时间:
2015-09-03 16:35:05
阅读次数:
214
参考http://blog.sina.com.cn/s/blog_4f1c99de0100tyty.htmltry{//代码区}catch(Exception e){//异常处理}代码区如果有错误,就会返回所写异常的处理。首先要清楚,如果没有try的话,出现异常会导致程序崩溃。而try则可以保证程序...
分类:
其他好文 时间:
2015-09-03 10:24:57
阅读次数:
157
之前一直希望以python作为支点,进入代码区,但每当有所得,就会遇到一些事情出来阻挠,拿学车来说,真是一件痛苦的事,不懂就学嘛,结果别人却不好好教,不熟就多练啊,但是别人还要省油钱,闹心啊,一切看似的真...
分类:
其他好文 时间:
2015-09-02 16:01:39
阅读次数:
163
第一部分 类和对象内存中按照用途被划分的五个区:栈区、堆区、全局区、常量区、代码区栈区由系统来进行控制,无论是内存的分配还是回收都不需要程序员关心堆区由new分配内存,使用完成之后必须使用delete进行回收,需要程序员自己关心和管理的全局区存储全局变量以及静态变量常量区存储一些字符串和常量代码区存...
分类:
编程语言 时间:
2015-08-31 23:11:49
阅读次数:
154
内存分区: 1、堆(malloc(C语言)或new(C++)); 2、栈(编译器自动分配); 3、全局(静态)存储区:DATA(全局初始化区)和BSS(全局未初始化区) 4、文字常量区: 5、程序代码区: int?k=1;//全局存储区(D...
分类:
编程语言 时间:
2015-08-31 12:00:28
阅读次数:
146
手动内存管理什么是内存管理.进程空间-代码区:只读-堆:自己创建、自己回收释放,对象是保存在堆区的。-全局区:进程启动时候分配,进行结束时释放。-栈:局部变量,自动创建,自动释放空间.什么是内存管理-只要对堆内进行管理,所谓的管理是值内存的分配(创建)和释放(回收..
分类:
其他好文 时间:
2015-08-29 17:10:04
阅读次数:
195
本文背景,在实际项目中使用git已有一年多,发现不少同事虽然会使用常用git指令,但并不理解每个指令对应的作用原理。今天静下心总结下git 的基本理解:代码的存在区域;本文以实际项目出发,理清使用git过程中,代码的迁徙流程。git跟传统的代码管理器(如:svn)不同, 主要区别在于git多了个本地...
分类:
其他好文 时间:
2015-08-21 21:16:47
阅读次数:
132
内存分为五大区域:栈区(存放局部变量),堆区(申请内存空间存储程序运行中动态分配的存储空间),BSS段,数据区,代码区【后三个是程序启动时使用】尽可能的减少全局变量内存管理的范围:管理任何继承NSObject的对象,对其他的基本数据类型无效。本质原因是因为对象和其他数据类型在系统中的存储空间不一样,...
分类:
其他好文 时间:
2015-08-19 09:24:24
阅读次数:
116