CRC计算方法与C实现
| 关注: 2013-11-23 |
|
CRC的全称为Cyclic Redundancy Check,中文名称为循环冗余校验。它是一类重要的线性分组码,编码和解码方法简单,检错和纠错能力强,在通信领域广泛地用于实现差错控制。实际上,除数据通信外,CRC在其它很多领域也是大...... |
|
Intel HEX格式命令的解析代码
| 关注: 2013-11-23 |
|
在P89C51RD2的ISP状态下,单片机接收上位机发送的命令和数据,这些命令和数据是采用Intel HEX 文件的格式,网上有不少文章中研究甚至反编译了BOOT ROM中的代码,得到了ISP运行的过程,在我的系统中也用到了这个东西,因为要...... |
|
arm linux演艺(一)
| 关注: 2013-11-23 |
|
滚滚长江东四水,浪花淘净英雄。 大家好,许多人和我一样,正在苦读arm linux源代码,希望有照一日,宝典在手,天下我有。小弟不才,也读了两年,写的几首歪诗。从本级开始,把我所理解的 linux如何启动贴出来,不懂之处大家讨...... |
|
arm linux演艺(二)
| 关注: 2013-11-23 |
|
长篇连载--arm linux演艺---第二回
--------------------------------------------------------------------------------上回书说到flashloader把bootloader load到0x0AFE0100, 然回跳了过去,
其实0x0AFE0100 就是烧...... |
|
arm linux演艺(三)
| 关注: 2013-11-23 |
|
长篇连载--arm linux演艺---第三回
--------------------------------------------------------------------------------书接上回:下面让我们看看bootloader的c代码干了些什么。main函数比较长,让我们分段慢慢看。int...... |
|
arm linux演艺(四)
| 关注: 2013-11-23 |
|
长篇连载--arm linux演艺---第四回
--------------------------------------------------------------------------------如果直接输入回车,进入kernel拷贝工作:EUARTputString("Copying kernel from Flash to RAM ......... |
|
arm linux演艺(五)
| 关注: 2013-11-23 |
|
长篇连载--arm linux演艺---第五回
--------------------------------------------------------------------------------好,从本节开始,我们走过了bootloader的漫长征途,开始进入linux的内核:说实话,linux宝典的确高深莫...... |
|
arm linux演艺(六)
| 关注: 2013-11-23 |
|
长篇连载--arm linux演艺---第六回
--------------------------------------------------------------------------------查询到了处理器类型和系统的内存映像后就要进入初始化过程中比较关键的一步了,开始设置mmu,但...... |
|
arm linux演艺(七)
| 关注: 2013-11-23 |
|
长篇连载--arm linux演艺---第七回
--------------------------------------------------------------------------------上回书讲到已经设置好了内核的页表,然后要跳转到__arm920_setup,这个函数在arch/arm/mm/proc-a...... |
|
arm linux演艺(八)
| 关注: 2013-11-23 |
|
长篇连载--arm linux演艺---第八回
--------------------------------------------------------------------------------上回我们讲到arm靠初始化完成了,打开了cache,到此为止,汇编部分的初始化代码就差不多了,最后还...... |
|
arm linux演艺(九)
| 关注: 2013-11-23 |
|
长篇连载--arm linux演艺---第九回
--------------------------------------------------------------------------------
下面就是一个重量级的函数:
setup_arch(&command_line); //arm/kernel/setup.c
完成内存映像...... |
|
arm linux演艺(十)
| 关注: 2013-11-23 |
|
长篇连载--arm linux演艺---第十回
--------------------------------------------------------------------------------书接上回,
下面是init_mm的初始化,init_mm定义在/arch/arm/kernel/init_task.c:
struct mm_stru...... |
|
arm linux演艺(十一)
| 关注: 2013-11-23 |
|
长篇连载--arm linux演艺---第十一回上回我们说到在paging_init中分配了三个页:zero_page=0xc0000000
bad page=0xc0001000
bad_table=0xc0002000但是奇怪的很,在更新的linux代码中只分配了一个zero_page,而且在源代码...... |
|
|
|
|