一种支持应用程序动态加载运行的嵌入式系统技术方案

技术编号:3982061 阅读:261 留言:0更新日期:2012-04-11 18:40
本发明专利技术涉及一种支持应用程序动态加载运行的嵌入式系统,该系统包含:框架管理模块、应用执行引擎模块、基础功能组件库模块和API模块,其中,由上至下依次为:API模块、应用执行引擎模块和基础功能组件库模块;所述的框架管理模块是核心管理单元,用于实施对终端软硬件资源的统一管理调度,该框架管理模块用于为所加载的应用程序提供系统资源获取和释放接口,实现系统软硬资源统一管理和调度;所述的基础功能组件库模块,用于供其他组件或应用执行引擎调用,将基础功能组件分布到终端可访问的服务器上,终端运行时由所述的框架管理模块根据用户需要进行远程加载。本发明专利技术的嵌入式系统还包含分级的安全管理模块,具体采用三级进程管理子模块。

【技术实现步骤摘要】

本专利技术涉及嵌入式系统领域,特别涉及一种支持应用程序动态加载运行的嵌入式 系统。
技术介绍
随着通信技术的飞速发展,电信网、计算机互联网、有线数字电视网日趋呈现多层 次的融合特性,“三网融合”成为通信技术发展的必然产物,国家政策层面也给予了高度重 视,是国家发展信息化的重要战略部署。“三网融合”的发展,为目前国内运营商向全业务 综合运营方向发展提供有力支撑,而运营商竞争的核心是能否向用户提供多样化、丰富的 应用服务产品。多样化和丰富的应用需要来自最大范围业务提供商的积极参与和创作,而 不仅仅是少数业务提供商或运营商自己的工作。终端作为直接面向用户的业务操控和呈现 设备,是业务应用的最终运行载体,运营商希望能够通过吸引更多的第三方应用开发商不 断的快速开发和部署新的增值应用,这就需要在技术上实现终端业务的快速开发、部署、运 行,降低业务设计以及接入运行的门槛。目前传统嵌入式终端业务应用开发运行多采用客户端集成的方式,业务应用程序 由应用开发人员开发完成后,以客户端软件库的形式交由终端开发人员进行软件移植,将 应用程序集成到嵌入式终端平台的整体软件系统中,再通过大规模的终端整体软件升级, 实现该业务的终端部署运行。此种应用开发方式,对于业务应用的丰富和业务开发商的引 入,存在诸多限制因素1、应用开发技术门槛高,开发周期长。目前嵌入式终端多种多样,在主芯片类型、资源配置、操作系统类型、软件架构等 各方面存在差异,应用开发因采取移植的方式集成到终端软件系统中,需要应用开发人员 对终端的软件架构熟悉了解,这对应用开发提出了较高的技术需求。而移植过程中,终端开 发人员与应用开发人员间的技术沟通磨合,势必造成应用开发周期的加长,无法实现业务 的快速开发部署。2、应用采用内置方式,对嵌入式终端资源配置带来挑战。应用程序以客户端软件库形式内嵌在嵌入式终端整体软件系统中,当应用开发快 速发展,应用数量极大丰富时,势必产生对终端资源配置的巨大挑战,造成终端硬件平台的 不断升级换代,使运营商反复重复投资,终端开发商技术重复投入,而分散新业务应用开发 的投入力度。3、业务应用更新流程复杂,维护成本高昂。新应用的开发部署,需应用开发人员、终端开发人员、终端生产厂家、运营商等产 业链各环节的参与,流程繁杂,势必造成维护成本高昂。并且某个应用的更新,需大规模用 户终端软件升级,带来运营风险提高。针对业务应用极大丰富的需求,针对现有应用开发的问题,急需构建一种将应用 程序开发与嵌入式终端平台隔离,并支持应用程序动态加载、运行具有完善的生命周期管理,适合嵌入式系统应用的基础软件框架,为业务应用的快速开发、部署、下载、运行提供技 术支撑。
技术实现思路
本专利技术的目的在于,为克服现有技术的应用开发技术门槛高,开发周期长,应用采 用内置方式,对嵌入式终端资源配置要求很高以及业务应用更新流程复杂,维护成本高昂 等缺点,从而提出一种支持应用程序动态加载运行的嵌入式系统。鉴于业务快速开发部署需求和嵌入式终端多样性特点,本专利技术提供一种支持应用 程序动态加载运行的开放的嵌入式终端基础软件框架,该框架是一个面向嵌入式终端应用 开发和动态加载运行的开放式终端基础软件平台。该软件平台能为应用开发商提供硬件无 关的开发环境,具备应用的动态发现、加载和管理功能,并能够整合终端系统的软硬件资源 为应用提供运行环境,并为第三方应用的运行提供任务管理和资源管理功能。本专利技术提出的一种支持应用程序动态加载运行的嵌入式系统,该系统包含框架 管理模块、应用执行引擎模块、基础功能组件库模块和API模块,其中,由上至下依次为 API模块、应用执行引擎模块和基础功能组件库模块;所述的应用执行引擎模块用于解释应用程序开发语言,为应用程序提供动态运 行环境;所述的API模块用于提供编程的程序接口,且采用开放的API接口 ;其特征在于,所述的框架管理模块是核心管理单元,用于实施对终端软硬件资源的统一管理 调度,负责嵌入式系统中应用执行引擎模块、基础功能组件库模块和API模块所加载的应 用程序的管理调度,该框架管理模块用于为所加载的应用程序提供系统资源获取和释放接 口,实现系统软硬资源统一管理和调度;其中,所述的框架管理模块,对同时运行的N个应用程序,能动态分配M个应用执 行引擎实例进行解释执行,其中1 <= M <= N;所述的基础功能组件库模块,用于供其他组件或应用执行引擎调用,将基础功能 组件分布到终端可访问的服务器上,终端运行时由所述的框架管理模块根据用户需要进行 远程加载。上述技术方案,所述的管理框架模块,包括初始化单元,用于在系统开机时建立 执行引擎的父本进程,当需要创建新的执行引擎时,从该父本进程创建子进程,能完成新的 执行引擎实例的初始化;及优化分配及调度单元,用于对应用程序和解释执行引擎进行优化分配,提供对进入嵌入式系统的应用代码与所需执行引擎个数的优化分配,该优化分配单元为嵌入式系统 的应用程序建立优先级,调度单元根据优先级提供一种可抢占的资源访问控制策略,该策 略为一个执行引擎实例可以执行多个应用代码,各应用代码占用相互独立的线程;新的 应用代码需要执行时,系统从当前执行引擎实例中为其选择合适的执行引擎,并保证新的 应用代码加入后不会引起该执行引擎上的应用代码之间发生资源冲突;如果当前系统中没 有合适的执行引擎,系统为其建立新的执行引擎实例;执行引擎启动新的线程解释执行该 应用代码,并为各应用代码提供事件转发机制。上述技术方案,所述的基础功能组件库包括分布式管理单元,用于对分布于网络 服务器的各基础功能组件进行分布式管理,包含基础组件建立子单元,用于开发商对基础功能组件开发面向特定嵌入式系统的基 础功能组件,并为组件建立描述信息;验证发布子单元,用于开发商与运营商联合对新开发的功能组件进行合格验证, 通过后发布到基础功能组件发布服务器;及组件分发子单元,用于框架管理模块启动应用程序时依据应用程序对组件库的需 求,检查终端本地的组件模块是否具有,对于本地没有的组件模块,通过网络下载的方式, 从组件发布服务器下载所需组件模块。上述技术方案,所述的应用执行引擎运行于API模块的下层,基础功能组件库的 上层,是包含Java、JavaScript解释语言开发的应用程序的解释处理单元,为应用程序提 供动态运行环境,通过框架管理模块调度,实现应用程序的动态解释运行。所述的API模 块提供给应用开发人员进行编程的程序接口,接口架构于解释执行引擎之上,可被解释执 行引擎解析处理;采用开放API接口生成的应用程序,以一定机制发布到嵌入式终端可访 问的应用服务器上,可在嵌入式终端运行时,被框架管理模块发现并动态下载,进一步在管 理模块调度下,加载到执行引擎进行运行,而不需将应用程序以移植方式集成到嵌入式终 端的软件系统中。作为本专利技术的一个改进,所述的嵌入式系统还包括分级系统安全管理模块,用于 对框架管理模块、应用执行引擎模块、基础功能组件库模块和API模块进行分级式状态监 控和维护,具体采用三级进程管理子模块。所述的三级进程管理子模块,还包含第一进程管理单元,用于当操作系统启动后启动第一代进程,该进程单元用于启 动管理进程,并通过与管理进程之间的心跳报文实时监控管理进本文档来自技高网
...

【技术保护点】
一种支持应用程序动态加载运行的嵌入式系统,该系统包含:框架管理模块、应用执行引擎模块、基础功能组件库模块和API模块,其中,由上至下依次为:API模块、应用执行引擎模块和基础功能组件库模块;所述的应用执行引擎模块:用于解释应用程序开发语言,为应用程序提供动态运行环境;所述的API模块:用于提供编程的程序接口,且采用开放的API接口;其特征在于,所述的框架管理模块是核心管理单元,用于实施对终端软硬件资源的统一管理调度,负责嵌入式系统中应用执行引擎模块、基础功能组件库模块和API模块所加载的应用程序的管理调度,该框架管理模块用于为所加载的应用程序提供系统资源获取和释放接口,实现系统软硬资源统一管理和调度;其中,所述的框架管理模块,对同时运行的N个应用程序,能动态分配M个应用执行引擎实例进行解释执行,其中1<=M<=N;所述的基础功能组件库模块,用于供其他组件或应用执行引擎调用,将基础功能组件分布到终端可访问的服务器上,终端运行时由所述的框架管理模块根据用户需要进行远程加载。

【技术特征摘要】

【专利技术属性】
技术研发人员:王劲林孙鹏韩洪波邓峰林军朱小勇张辉
申请(专利权)人:中国科学院声学研究所
类型:发明
国别省市:11[中国|北京]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1