什么是堆?什么是栈?他们之间的区别和联系?

    首先说明一下,本文说到的堆、栈不是数据结构中的堆、栈,而是内存使用中的堆和栈。    栈区(stack)——由编译器自动分配释放,存储函数的参数值,局部变量的值等,其操作方式类似于数据中的栈,先进先出。    堆区(heap)——一般由程序员分配释放,若程序员不分配也就没有堆,不释放,程序...

2018-06-26 22:02:56

阅读数 1076

评论数 1

内存是什么及作用

    这一问题乍一看会觉得特别简单,但是仔细一想,却很难准确的概括。    内存:RAM-随机存储器。    程序的运行是需要有一个场所的,因为对于CPU来说,甭管i7或者i8就那么几个寄存器,这一点特别能被忽略,对的,再高级的CPU确实只有那么几个寄存器,CPU的所有动作都是直接对寄存器操作的...

2018-06-26 21:32:11

阅读数 1751

评论数 0

转:u-boot SPL的理解

        uboot分为uboot-spl和uboot两个组成部分。SPL是Secondary Program Loader的简称,第二阶段程序加载器,这里所谓的第二阶段是相对于SOC中的BROM来说的,之前的文章已经有所介绍,SOC启动最先执行的是BROM中的固化程序。BROM会通过检测启...

2018-06-25 10:51:05

阅读数 62

评论数 0

fork函数分析二

一个简单的例子:#include "stdio.h" #include "sys/types.h" #include "unistd.h" int main() { pid...

2018-06-21 22:38:44

阅读数 74

评论数 0

copy_to_user和copy_from_user函数

        由于在linux中,内核空间和用户空间的内存是不能之间互相访问的,所以需要借助上面2个函数完成数据传输。        copy_to_user:从内核空间复制数据到用户空间       copy_from_user:从用户空间复制数据到内核空间。        在进行驱动相关程序...

2018-06-20 22:31:47

阅读数 670

评论数 0

#ifndef #define #endif的用法总结

    先说结论,这种用法的目的是为了防止重复定义,而不是所谓的重复声明。   其实这一点也是很容易理解的,头文件的定义本身就是为了引入“声明”的,如果不允许重复声明,那多个文件引用同一个头文件就非法了,这显然是错误的,在C编译中,恰恰是允许也需要重复声明的,只要引用声明了,就可以远程使用该声明对...

2018-06-18 22:40:59

阅读数 1354

评论数 0

提示
确定要删除当前文章?
取消 删除