摘要: 文件系统 文件系统是操作系统用于明确磁盘或分区上的文件的方法和数据结构;即在磁盘上组织文件的方法.在移动存储设备上比较常用的有FAT文件系统和ExFAT文件系统。 FAT分区依据FAT表中每个簇链的所占位数分为fat12、fat16、fat32三种格式; exFAT是为了解决FAT32等不支持4G及 阅读全文
posted @ 2016-07-01 14:30 跑马灯的忧伤 阅读(6305) 评论(0) 推荐(0) 编辑
摘要: 转自http://www.amobbs.com/thread-5462878-1-1.html 自学uCOS-II源码,在论坛上上看到大神在WIN7 Visual Studio 2010环境下调试uCOS-II 2.91。故转载过来跟着调试学习。 1. 下载uCOS-II 2.91 官方下载地址:h 阅读全文
posted @ 2016-04-02 00:41 跑马灯的忧伤 阅读(1071) 评论(0) 推荐(0) 编辑
摘要: MIPS汇编 MIPS指令集 MIPS指令集属于精简指令集 MIPS的所有指令都是32位,指令格式简单,而X86的指令长度不是固定的。 简单的指令和格式易于译码和流水线操作,但是代码密度不高,导致二进制文件大 MIPS有32个通用寄存器REG,为什么是32个而不是更多呢? 因为更多的寄存器需要更多的 阅读全文
posted @ 2016-03-30 16:55 跑马灯的忧伤 阅读(43654) 评论(1) 推荐(2) 编辑
摘要: 实时系统概念 前后台系统 后台是各种面向硬件的程序,如中断,定时器,gpio等。 前台是: main() { while(1) { ; } } 循环中不断调用各种函数实现功能。 代码临界段 指处理时不可分割的代码,一旦这部分代码运行就不可以打断、 为了确保代码能正常运行,进入临界段代码钱需要关中断, 阅读全文
posted @ 2016-03-30 16:53 跑马灯的忧伤 阅读(476) 评论(0) 推荐(0) 编辑
摘要: I2S总线 Inter IC Sound总线又称集成电路内置音频总线。 I2S对数字音频设备之间的音频数据传输而制定的一种总线标准。 采用了沿独立的导线传输时钟与数据信号的设计,通过将数据和时钟信号分离,避免了因时差诱发的失真,为用户节省了购买抵抗音频抖动的专业设备的费用。 I2S模型 I2S有3个 阅读全文
posted @ 2016-03-30 15:31 跑马灯的忧伤 阅读(10963) 评论(0) 推荐(0) 编辑
摘要: gitbash是什么 git bash是Windows下的命令行工具。 基于msys GNU环境,有git分布式版本控制工具。 主要用于git版本控制,上传下载项目代码。 GNU环境,就是说如果你喜欢linux/unix的环境,就可以选择使用git bash。 里面有你熟悉的linux工具,tar, 阅读全文
posted @ 2016-03-21 11:06 跑马灯的忧伤 阅读(874) 评论(0) 推荐(0) 编辑
摘要: 背景(C&C++中) inline关键字用来定义一个类的内联函数,引入它的主要原因是用它替代C中表达式形式的宏定义。 表达式形式的宏定义如: #define ExpressionName(Var1,Var2) ((Var1)+(Var2))*((Var1)-(Var2)) 取代这种形式的原因如下: 阅读全文
posted @ 2016-03-21 10:33 跑马灯的忧伤 阅读(358) 评论(0) 推荐(0) 编辑
摘要: main.c中的初始化 head.s在最后部分调用main.c中的start_kernel() 函数,从而把控制权交给了它。 所以启动程序从start_kernel()函数继续执行。这个函数是main.c乃至整个操作系统初始化的最重要的函数,一旦它执行完了,整个操作系统的初始化也就完成了。 如前所述 阅读全文
posted @ 2016-03-21 10:08 跑马灯的忧伤 阅读(1627) 评论(0) 推荐(0) 编辑
摘要: [转自] http://www.sjhf.net/Article/sjhfdoc/200404/1.html 一、硬盘的物理结构: 硬盘存储数据是根据电、磁转换原理实现的。硬盘由一个或几个表面镀有磁性物质的金属或玻璃等物质盘片以及盘片两面所安装的磁头和相应的控制电路组成(图1),其中盘片和磁头密封在 阅读全文
posted @ 2016-03-19 12:13 跑马灯的忧伤 阅读(2630) 评论(0) 推荐(0) 编辑
摘要: 实际上,do{…}while(0)的作用远大于美化你的代码。 总结起来这样写主要有以下几点好处: 1. 辅助定义复杂的宏 避免引用的时候出错: 举例来说,假设你需要定义这样一个宏: #define DOSOMETHING()\ foo1();\ foo2(); 这个宏的本意是,当调用DOSOMETH 阅读全文
posted @ 2016-03-18 10:25 跑马灯的忧伤 阅读(321) 评论(0) 推荐(0) 编辑