发一个贴跟踪RT-Thread的开发情况:
1、0.2.4正式版 这个是0.2.x系列的升级版本,主要修正0.2.x系列的问题
[list=a][li]0.2.4正式版已经发布,0.2.x系列版本基本上将终结,开始进入0.3.0 beta版本的发布周期。[/li]
2、0.3.x 这个是针对后续的发展版本,会添加新的特性。主要包括支持FAT32长文件名的文件系统,GUI等
[list=a][li]
[*:3aiq26xx]20090413 修正STM32中PendSV异常优先级设置过高的问题。[/*:m:3aiq26xx]
[*:3aiq26xx]20090531 加入线程栈溢出检查,通过RT_USING_OVERFLOW_CHECK宏定义使能。[/*:m:3aiq26xx]
[*:3aiq26xx]20090531 LPC2148更新到0.3.0版本的驱动框架,并且加入文件系统,TCP/IP协议栈支持(因为开发板无相应外设,目前只包含驱动框架)[/*:m:3aiq26xx]
[*:3aiq26xx]20090531 AT91SAM7X256更新到0.3.0版本的驱动框架,加入文件系统支持,SD卡驱动还未调试通过。[/*:m:3aiq26xx]
[*:3aiq26xx]20090531 STM32F103ZE加入GoAhead WebServer,还在调试中,需要先稳定。[/*:m:3aiq26xx]
[*:3aiq26xx]20090607 修正STM32中任务切换可能会被中断打断的问题。[/*:m:3aiq26xx]
[*:3aiq26xx]20090614 修正LwIP中lwip_select如果不是lwip thread时定时器的问题。[/*:m:3aiq26xx]
[*:3aiq26xx]20090614 修正LwIP中小型内存模式下,TCP PCB分配失败处理的问题。[/*:m:3aiq26xx]
[*:3aiq26xx]20090614 修正LwIP时间准确转换到RT-Thread的问题;[/*:m:3aiq26xx]
[*:3aiq26xx]20090614 GoAhead WebServer在STM32F103ZE中跑得已经非常稳定了,优化其内存占用到原始版本的一半左右。[/*:m:3aiq26xx]
[*:3aiq26xx]20090614 修正调度器开锁时中断未打开的问题;[/*:m:3aiq26xx][/li]
20090803 修正内存管理器中rt_realloc的问题,惭愧当时第一次修正的时候似乎没修正到位。
3、RT-Thread实时操作系统编程指南 (RT-Thread最重要的一份文档)
[list=a][li]
[*:3aiq26xx]20090329 全部初稿完成,准备进行整体统一修订。[/*:m:3aiq26xx]
[*:3aiq26xx]20090415 终于头大的sphinx搞定了,能够生成中文PDF文档啦!接下去就是熟悉rst文档的语法,不过先的试试如何添加图形。[/*:m:3aiq26xx]
[*:3aiq26xx]20090427 基本上把原来的word文档都转换成sphinx的文档,并添加了device章节中关于如何创建一个驱动的文档;对象模型单独分列一章讨论,还需要附上更多的例子。[/*:m:3aiq26xx]
[*:3aiq26xx]20090518 在补上快速入门章节,同时包含相配套的代码。[/*:m:3aiq26xx]
[*:3aiq26xx]20090529 给出第一整合版,虽然还有些章节未完善,不过大体框架都已经定型。[/*:m:3aiq26xx][/li]
4、RTGUI,实际开发板上用得比较少,需要在实际使用过程中做完善(刷新速度、代码占用体积、控件细节完善、面板特性完善)
[list=a][li]
[*:3aiq26xx]20090325 正在做STM32F103ZE的移植(armcc),以单独工程编译成库的方式移植[/*:m:3aiq26xx]
[*:3aiq26xx]20090329 RTGUI已经运行起来,但还无输入[/*:m:3aiq26xx]
[*:3aiq26xx]20090413 新的STM32F103ZE开发板拿到了,还在测试板子中。把电路图用A3的纸打印了一份,希望没什么硬件错误。[/*:m:3aiq26xx]
[*:3aiq26xx]20090414 新的Device框架都差不多了,不过STM32上串口的DMA传送失败,晚上继续调。[/*:m:3aiq26xx]
[*:3aiq26xx]20090419 新的STM32F103ZE开发板真是不错,网口也是通的,就差触摸屏没验证了。
RTGUI开始报内存不够,很是郁闷。 [/*:m:3aiq26xx]
[*:3aiq26xx]20090803 更多的RTGUI例子可以运行成功了,已经同时把LCD和外扩的SRAM用起来了,可用的动态内存立马多了512K,确实很爽。[/*:m:3aiq26xx][/li]
5、文件系统,已经在s3c2410开发板上配合SD卡做了一些测试,但需要做一些大的压力测试以检测它的稳定性
[list=a][li]
[*:3aiq26xx]20090325 STM32F103ZE的SD卡还不知道如何用,Keil的例子跑不成功,老是报timeout。[/*:m:3aiq26xx]
[*:3aiq26xx]20090419 STM32F103ZE新的开发板上的SD卡已经能够用了,这次是千真万确的SDIO接口的。希望到时能有个文件系统读写文件速度的测试。[/*:m:3aiq26xx]
[*:3aiq26xx]20090426 DFS/EFSL已经全部跑起来了,打算重写其中cache层,希望能够做到更加高效。另外,也在准备更新STM32F103VB的代码,需要添加DFS及SPI SD Card的驱动。[/*:m:3aiq26xx][/li]
6、动态模块载入,已经有一些思路,打算在STM32/s3c2410上完整实现
动态模块加载的三个难点:
[list=a][li]
[*:3aiq26xx]一般模块二进制文件需要采用重定位方式编译,在加载的时候做符号的重定位,让代码中的引用指向正确的位置。[/*:m:3aiq26xx]
[*:3aiq26xx]在卸载时(如果支持,或需要支持当模块中创建的任务出错时进行动态删除这个模块),需要把模块中创建的对象,分配的内存块,打开的文件等正确释放、关闭。[/*:m:3aiq26xx]
[*:3aiq26xx]在调试模块时,能够让一些调试器能够支持,因为加载到内存的文件地址已经和初始的地址不一样了。[/*:m:3aiq26xx]
[*:3aiq26xx]Module添加内存保护相关的信息。 [/*:m:3aiq26xx]
[*:3aiq26xx]20090427 提交一份代码到服务器上,这个主要面向于资源丰富的设备系统,先考虑s3c2410吧。[/*:m:3aiq26xx]
[*:3aiq26xx]20090518 动态模块这部分会先在PXA9xx上实现,目前PXA9xx的测试代码实现得差不多了,可以开始RT-Thread的移植。文件系统则比较麻烦,好像是个micro SD卡,或者可以考虑上YAFFS2了,不过又是一项任务。。。[/*:m:3aiq26xx][/li]
7、Target Insight,用于运行过程中检测系统信息的模块,串口、USB、网口输出信息
[list=a][li][*:3aiq26xx]调试方便,添加粗略的任务信息检测[/*:m:3aiq26xx][/li]
8、USB Device Stack,包含serial port和mass storage的driver,还没啥想法
9、VM的实现,这个理论、实现都已经比较成熟了,目前没计划在RT-Thread中实现
10、异构多核中IPC的实现,可能会考虑如何与Linux进行一个密切配合:把semaphore、mailbox、message queue映射到Linux中去
查看更多