摘要:
内存管理之结构体数据结构这门学问的意义 数据结构就是研究数据如何组织(在内存中排布),如何加工的学间。...4.1.6.2、最简单的数据结构:数组 为什么要有数组?因为程序中有好多个类型相同、意义相关的变量需要管理n这时候如果用单独的变量来做程序看起来比较乱,用数组来管理会更好管理。譬如int ag 阅读全文
摘要:
什么是内存? (硬件和逻辑两个角度)从硬件角度:内存实际上是电脑的一个配件(一般叫内存条)。根据不同的硬件实现原理还可以把内存分成SRAM和DRAM (DRAM又有好多代,譬如最早的SDRAM,后来的DDR1、DDR2 ... .. LPDDR)从逻辑角度:内存是这样一种东西,它可以随机访问(随机访 阅读全文
摘要:
先从操作系统角度讲:操作系统掌握所有的硬件内存,因为内存很大,所以操作系统把内存分成一个一个的页面(其实就是一个块,一般是4KB) ,然后以页面为单位来管理,页面内用更细小的方式来以字节为单位管理。操作系统内存管理的原理非常麻烦、非常复杂、非常不人性化。那么对我们这些使用操作系统的人来说,其实不需要 阅读全文
摘要:
内存是用来存储可变数据的,数据在程序中表现为全局变量,局部变量等(在GCC中,其实常量也存储在内存中。大部分单片机中,常量是存储在flash中,也就是代码段),对我们写程序非常重要,也对程序运行跟是本质相关。 所以内存对于写程序来说几乎是本质需求。越简单的程序需要越少的内存,而越庞大越复杂的程序需要 阅读全文
摘要:
gcc -v 查看gcc编译器版本 gcc -o 指定输出文件名file gcc -E 只预处理,不编译、汇编、链接 gcc -S 只编译,不汇编、链接 gcc -c 编译和汇编,不链接 gcc -m32 hello.c -o hello 用32位机器的编译器来编译这个文件 gcc-linux-ob 阅读全文
摘要:
ldr r0,=0x12345678伪指令,这个指令会被拆分成其他真正的指令 mov r0,#0x123456789,这条语句是错的,ARM一条指令32位,里面必须有几位来表示mov指令,所以0x12345678不能保存入r0 阅读全文
摘要:
ngg就跳转到第n行行首,G就到结尾 0光标移到当前行行首 $光标移到当前行行末 fx搜索当前行中下一个出现x的地方 yy复制当前行 nyy复制当前行到n-1行 dd删除当前行 ndd删除当前行到n-1行 u撤销上一步的操作 x删除所在光标的字符 :%s/abc/cba/gc用cba替换abc时需确 阅读全文
摘要:
http://blog.csdn.net/qq_16405157/article/details/49281793 阅读全文
摘要:
裸机中断: 1、中断流入口 2、事先注册中断处理程序 3、根据中断源编号,调取处理程序 irq_svc:1、等到产生中断源的编号(每一个中断号都有一个描述结构) 2、 阅读全文
摘要:
首先讲下字符设备控制技术 : 大部分驱动程序除了需要提供读写设备的能力外,还需要具备控制设备的能力。比如: 改变波特率。 在用户空间,使用ioctl系统调用来控制设备,原型如下:int ioctl(int fd,unsigned long cmd,...)fd: 要控制的设备文件描述符cmd: 发送 阅读全文