摘要:FreeR'TOS作为一种开源的轻量级多任务实时操作系统,被广泛应用在各种嵌入式仪器和设备中,但该操作系统不支持软件模块的动态加载,这限制了它的灵活性和扩展性。本文在详细分析ELF文件符号重定位原理的基础上,通过修改FreeRTOS任务的内存布局,并在其内核中添加ELF文件加载器,实现软件模块的动态加载和卸载功能。程序在STM32平台上的测试结果表明,软件模块能够在系统运行时被动态加载入内存,并成功被FreeRTOS内核调度执行。
关键词:FreeRTOS;ELF文件;动态软件模块;符号重定位
0引言
动态软件模块是一种能够在操作系统运行时加载和卸载的程序代码或数据,对于不支持该特性的嵌人式操作系统,其任务代码必须与操作系统内核一起编译,链接成一个完整的可执行镜像,并下载或烧写到目标板中运行,一旦任务代码需要修改更新,则必须重新编译所有代码。这一不支持动态软件模块的缺点限制了嵌入式操作系统的灵活性和可扩展性,给应用软件的更新升级也带来了不便。
资源简介:摘要:FreeR'TOS作为一种开源的轻量级多任务实时操作系统,被广泛应用在各种嵌入式仪器和设备中,但该操作系统不支持软件模块的动态加载,这限制了它的灵活性和扩展性。本文在详细分析ELF文件符号重定位原理的基础上,通过修改FreeRTOS任务的内存布局,并在其...
上传时间: 2022-06-24
上传用户:lostxc
资源简介:基于HT49CVX的遥控接收软件模块设计指南 本软件模块用于接收译码编码格式为NEC 格式 (见图1) 的红外遥控器信号,由于使用了RMT TIMER,所以适用于带有RMT TIMER 功能的HT49CVX 系列。
上传时间: 2013-11-21
上传用户:jiangshandz
资源简介:查询是信息管理系统中使用涉及用户最多使用最频繁的功能。为了提高用户查询的灵活性与查询效率,设计了基于多表的动态查询模块,使得用户可以自己选择查询数据项,动态组合查询条件。应用结果表明,该模块不仅提高了查询的灵活度与效率,而且增加了查询的信息...
上传时间: 2013-11-11
上传用户:18165383642
资源简介:这是一本介绍软件模块的书,可以用这些模块设计嵌入式系统.
上传时间: 2015-06-19
上传用户:baitouyu
资源简介:TEC6122芯片数码管动态扫描模块,C51编写,已经用在产品中了,对学习LED动他扫描很有帮助的
上传时间: 2013-12-23
上传用户:小宝爱考拉
资源简介:软件模块之间总是存在着一定的接口,从调用方式上,可以把他们分为三类:同步调用、回调和异步调用。
上传时间: 2016-02-03
上传用户:sz_hjbf
资源简介:本书详细介绍当前几大热点ARM嵌入式系统软件模块的c/c++以及UCOSii的编程方法和技巧及其在AM7上的实现。分为5个压缩软件包,每个压缩软件包介绍一种模块的编程方法和技巧。第1个压缩软件包演示了FAT文件系统的基础知识,以及兼容FAT12、FAT16和FAT32的文件系...
上传时间: 2016-03-27
上传用户:气温达上千万的
资源简介:详细介绍CF卡和IDE硬盘及相应软件模块CF的设计思想及实现过程。
上传时间: 2014-06-01
上传用户:362279997
资源简介:用VC开发综合自动化动态软件,由于在做组态软件开发,这方面资料比较多,这个很实用。
上传时间: 2013-12-09
上传用户:王小奇
资源简介:WiMAX基站系统中关键软件模块的设计与实现,优秀论文
上传时间: 2014-06-26
上传用户:CSUSheep