注册 登录
电子工程世界-论坛 返回首页 EEWORLD首页 频道 EE大学堂 下载中心 Datasheet 专题
shaolin的个人空间 https://home.eeworld.com.cn/space-uid-257858.html [收藏] [复制] [分享] [RSS]
日志

RT-Thread 0.4.0 beta1发布

已有 1869 次阅读2010-12-1 06:46


自RT-Thread 0.3.0正式版发布以来,经过开发人员密集的整8个月开发,大众用户的积极反馈、测试,终于完成了RT-Thread 0.4.x系列的第一个测试版本。这个测试版本,依然更多的面向测试目的,不建议直接应用到实际的产品中。RT-Thread 0.4.0的非正式版本依然沿用GPL v2许可证进行发布。


RT-Thread 0.4.0版本初始提出的几个功能亦基本达到,提供了相对完善的POSIX thread接口,动态库载入接口libdl以及应用模块支持。这些新功能的加入使得RT-Thread能够初步的兼容于POSIX标准。


自RT-Thread 0.3.0版本以来的更改:
内核:



  • 添加应用模块支持;支持两者应用方式:.mo 符号预解析应用;.so 符号未解析应用。.so应用需要在加载时动态解析符号。能够执行本地文件系统的应用模块,也能够执行网络文件系统上的应用模块。

  • 修正在rt_realloc参数中传入一个NULL指针时,分配失败的问题。修正slab管理器中对0xffffffff尺寸内存分配的问题;

  • 修正OS节拍数溢出的问题。(charlie weng提供相应的patch)

  • 块设备中读写偏移、大小等都更改成按块为单位;

  • 更改rt_device中成员private名为user_data;

  • 线程TCB中添加cleanup域,它将在线程运行结束时回调。

组件:



  • 添加newlib移植,当前仅能够支持GNU GCC编译环境;

    • 添加POSIX thread兼容接口(支持barrier,cond,mutex,rwlock,spin,tls等),采用IEEE Std 1003.1, 2004 Edition为参考进行实现;

  • 添加libdl兼容接口,能够使用dlopen,dlsym,dlclose等接口动态加载库;

  • 文件系统完善

    • 对设备虚拟文件系统代码部分进行调整,精简;

    • 修正device file system中struct stat的问题(能够兼容于newlib、minilibc、Keil MDK)

    • 修正dfs_filesystem_lookup函数中空项操作的问题;

    • 增加fstat接口;文件系统实现中增加mkfs,statfs接口以获得文件系统相关的信息。

    • 添加romfs文件系统,可以采用mkromfs.py脚本生成相应的ROM文件系统;

    • 添加devfs文件系统,增加/dev/console设备,它是一个虚拟设备,用于标准输入、输出、错误等;

    • 添加NFS v3客户端文件系统,可以配合FreeNFS/Linux NFS使用,以访问主机上的目录和文件;

    • elm fat文件系统

      • 添加非512扇区的宏定义;

      • 添加卸载的功能。

      • 修正重命名的问题;

  • RT-Thread/GUI

    • 增加bmp图像格式支持;

    • 原来的hardware dc更改为client dc;重写新的hardware dc,新的hardware dc绘图速度会更快。

    • 加入了非等宽字体支持。

    • 加入TTF字体支持,但内存空间占用估计比较大,对于unicode的问题还存在些问题。

    • 修正filelist_view控件析构的问题。

    • 对DC操作进行调整完善 (由richard lion完成)

分支:



  • STM3210

    • 完善SDIO驱动,并提供超过4G卡的支持;

  • mini2440

    • 能够使用0.4.0分支上所有的特性,能够开启newlib支持,能够开启POSIX thread支持,能够开启libdl支持。

  • 增加LPC的ARM Cortex-M0/3系列移植分支;

  • 增加新唐的ARM Cortex-M0 NU1xx分支;

  • 增加龙芯I SoC3210分支(MIPS 32位体系结构)

<其他分支,例如avr32,瑞萨m16,SEP4020等分支,由于分支维护人来不及准备,此次发布未包括在内,可以自行从RT-Thread的google svn中获取>


移植的组件:



  •   wyoujtg完成国内知名的开源项目FTK移植。FTK是一套极为绚丽,完整的GUI系统。

 


RT-Thread 0.4.0 在线API文档:这里


RT-Thread 0.4.0 Beta1下载:rt-thread-0.4.0 beta1


【RT-Thread 0.4.x分支的额外说明】似乎很多人误以为0.4.x分支是面向资源丰富的平台,不太适合类似STM32这样的CM3平台。这里要说的是,0.4.x分支绝大部分是兼容0.3.x分支,并且也非常适合于STM32等面向微控制器的硬件平台。例如POSIX thread部分,它能够运行于STM32平台,如果使用Code Sourcery GCC工具链,同样能够支持其中的newlib C库。这部分同样对内存的需求非常少,并且后续会移植到其他编译环境下。0.4.x分支一些特性不适合于微控制器的包括:



  • 应用模块加载。

  • FTK GUI。

对于Cortex-M3等平台,我们目前也在对 应用模块特性 进行评估,看看从技术上是否能够从另外的途径解决动态运行速度慢的问题。

发表评论 评论 (1 个评论)
回复 张无忌1987 2010-12-2 21:12
不太明白

facelist doodle 涂鸦板

您需要登录后才可以评论 登录 | 注册

热门文章