发布时间:2017-06-19 18:03:39
一、内存管理的基本概念 1.存储空间 在32位嵌入式系统中,存储空间的地址范围从0x00000000到0xFFFFFFFF。这4GB存储范围内可以包括以下几种存储空间: 设备空间(MT_DEVICE)、内部高速SRAM空间(MT_CACHECLEAN)、内部mini cache空间(.........【阅读全文】
发布时间:2017-06-19 18:02:47
long int strtol(const char *nptr,char **endptr,int base);这个函数会将参数nptr字符串根据参数base来转换成长整型数。 参数base范围从2至36,或0。参数base代表采用的进制方式, 如base值为10则采用10进制,若base值为16则采用16进制等。 当base.........【阅读全文】
发布时间:2017-06-19 18:02:13
在Linux操作系统中,驱动程序的加载分为两种:内核启动时自动加载和用户手动加载;硬件设备也可以采用两种方式添加到系统中:在系统启动前及系统运行时的热插拨。下面,我们以arm体系结构下的at91处理器中的I2C控制器为例,介绍一下硬件设备及相关的驱动程序是如何绑定及松绑的。1. .........【阅读全文】
发布时间:2017-06-19 18:00:48
缺省情况下,BusyBox是对桌面linux的一个简化,如果要定制比较特殊的功能,比如像操作文件系统一样操作Flash存储器,那么就需要预先定制BusyBox的Applet。这一次,我们就介绍一下为BusyBox追加功能(Applet)的方法。窥探BusyBox的源代码如果要添加Applet,首先必须了解BusyBox的源代码结构。在Busy.........【阅读全文】
发布时间:2017-06-19 17:59:38
前言:前段时间做一个项目需要设计一个动态库,并希望在加载库的同时自动执行一些初始化动作,于是联想到了linux内核众子系统的初始化,于是研究之,并在过这程中发现了初始化段的存在,利用初始化段实现了该功能。工作一年,笔记积累多了,慢慢变得杂乱无章,于是开博,一方面整理笔记,梳理知识,另一方面和大家交流,.........【阅读全文】