一种支持多级加载的安全嵌入式操作系统的制作方法

文档序号:6424701阅读:146来源:国知局
专利名称:一种支持多级加载的安全嵌入式操作系统的制作方法
技术领域
本发明涉及嵌入式系统领域,特别涉及一种支持多级加载的安全嵌入式操作系统。
背景技术
随着通信技术的飞速发展,电信网、计算机互联网、有线数字电视网日趋呈现多层次的融合特性,各运营商也向全业务综合运营方向发展,而运营商竞争的核心是能否向用户提供多样化、丰富的应用服务产品。嵌入式终端作为直接面向用户的业务操控和呈现设备,是业务应用的最终运行载体,运营商希望能够通过吸引更多的第三方应用开发商不断的快速开发和部署新的增值应用,这就需要在技术上实现终端业务的快速开发、部署、运行,降低业务设计以及接入运行的门槛。目前传统嵌入式终端业务应用开发运行多采用客户端集成的方式,业务应用程序由应用开发人员开发完成后,以客户端软件库的形式交由终端开发人员进行软件移植,将应用程序集成到嵌入式终端平台的整体软件系统中,再通过大规模的终端整体软件升级, 实现该业务的终端部署运行。此种应用开发方式,对于业务应用的丰富和业务开发商的引入,存在诸多限制因素1、应用开发技术门槛高,开发周期长。目前嵌入式终端多种多样,在主芯片类型、资源配置、操作系统类型、软件架构等各方面存在差异,应用开发因采取移植的方式集成到终端软件系统中,需要应用开发人员对终端的软件架构熟悉了解,这对应用开发提出了较高的技术需求。而移植过程中,终端开发人员与应用开发人员间的技术沟通磨合,势必造成应用开发周期的加长,无法实现业务的快速开发部署。2、应用采用内置方式,对嵌入式终端资源配置带来挑战。应用程序以客户端软件库形式内嵌在嵌入式终端整体软件系统中,当应用开发快速发展,应用数量极大丰富时,势必产生对终端资源配置的巨大挑战,造成终端硬件平台的不断升级换代,使运营商反复重复投资,终端开发商技术重复投入,而分散新业务应用开发的投入力度。3、业务应用更新流程复杂,维护成本高昂。新应用的开发部署,需应用开发人员、终端开发人员、终端生产厂家、运营商等产业链各环节的参与,流程繁杂,势必造成维护成本高昂。并且某个应用的更新,需大规模用户终端软件升级,带来运营风险提高。针对业务应用极大丰富的需求,及现有应用开发的问题,急需构建一种将应用程序开发与嵌入式终端平台隔离,并支持应用程序动态加载、运行具有完善的生命周期管理, 以及安全性保障的嵌入式终端基础软件-嵌入式操作系统,以实现应用开发与终端平台的良好隔离,为业务应用的快速开发、部署、下载、运行提供技术支撑。同时,嵌入式操作系统作为运行与终端平台之上的核心软件系统,除传统操作系统的进/线程管理、内存管理、系统服务提供等功能,还需具备应用级系统资源优化调度配置、平台能力抽象封装、针对第三方应用引入的安全机制等新的功能。

发明内容
本发明的目的在于,为克服目前传统嵌入式终端业务应用开发存在应用开发技术门槛高,开发周期长;诸多限制因素应用采用内置方式,对嵌入式终端资源配置带来挑战及业务应用更新流程复杂,维护成本高昂,从而提供了一种支持多级加载的安全嵌入式操作系统。为实现上述发明目的,本发明提出一种支持多级加载的安全嵌入式操作系统,该操作系统操基于传统的Linux系统内核,采用包含内核层、支撑层、中间件层和应用层的分层构件化体系架构,其特征在于,所述的内核层包含标准Linux基本内核和驱动模块,该部分将被静态编译到内核映像中,随着Linux 的启动而运行和加载;标准Linux扩展内核与驱动模块,该部分以模块的形式配置到内核,在应用需要时加载;所述的支撑层包含平台移植层模块,该层为封装的一套平台无关的接口,用于实现移植层以上软件部分与终端平台的隔离;资源管理框架模块,用于对系统的软硬件资源进行统一管理,实施资源规划、资源分配和资源监控;功能组件模块,终端平台的能力抽象封装,用于为各种应用提供所需功能;系统管理框架模块,负责终端应用管理和调度的核心单元,实施对终端软硬件资源的管理,负责对执行引擎和功能组件的管理;安全框架模块,负责保证应用全生命周期的安全,包括安全发布、安全加载和安全运行;GUI模块,负责多窗口管理、输入事件的统一接收和分发、提供图形操作接口 ;所述的中间件层,包含应用执行引擎模块,用于应用程序的解释处理,通过系统管理框架调度,实现应用程序的动态解释运行;API模块,提供给应用开发人员进行编程的程序接口,设置于应用执行引擎之上, 可被执行弓I擎动态解析运行。所述的支持多级加载的安全嵌入式操作系统,其特征在于,所述的支撑层还包含标准库模块。所述的支持多级加载的安全嵌入式操作系统,其特征在于,所述的应用执行引擎模块包含JAVA执行引擎子模块、ffeb Widget执行引擎子模块。所述的支持多级加载的安全嵌入式操作系统,其特征在于,所述的系统管理框架模块具体包含应用发现子模块,用于实现新发布应用的发现和下载功能;
应用管理子模块,负责管理下载到终端平台的应用程序,实现应用程序的加载、删除,在终端维护一个本地应用列表;应用调度子模块,用于实现应用程序的加载执行调度和应用生命周期管理功能, 该子模块维护一个任务调度请求列表和一个任务调度管理列表;组件管理子模块,用于负责操作系统中各功能组件的加载、卸载或更新;执行引擎管理子模块,用于负责操作系统中执行引擎的管理,及系统监控子模块,用于负责监控管理进程的状态;其中所述的应用发现能采用基于B/S架构的Web部署发现方法或基于C/S架构的消息通告部署发现方法;所述的本地应用列表包含所有的本地应用记录信息,该信息具体包含应用ID,应用版本号,应用类型,应用名称,应用在本地的存储路径以及应用描述。所述的支持多级加载的安全嵌入式操作系统,其特征在于,所述的安全框架具体包含应用发布子模块,用于完成用户的注册和程序上载,应用程序的安全检测,认证和应用程序的发布授权;可信应用加载子模块,用于完成从发布服务端到终端的端到端可信加载;及安全运行子模块,用于加载的程序运行时防止外来入侵和代码变异,保证程序动态运行的一致性。所述的支持多级加载的安全嵌入式操作系统,其特征在于,所述的功能组件模块包含浏览器子模块用于支持标准HTML、JS网页解析,为B/S架构双向应用提供功能支撑;媒体播放器子模块用于支持多格式音视频媒体文件、流式数据的解码播放,为应用提供媒体处理功能;和网络应用协议栈子模块用于针对应用需求,基于操作系统内置的TCP/UDP/IP标准网络协议栈所开发的扩展网络协议栈。所述的支持多级加载的安全嵌入式操作系统,其特征在于,所述的GUI模块能通过输入设备插件系统支持输入设备的扩展,该模块具体包含窗口管理子模块,用于实现多窗口共存和快速切换管理,包括窗口的创建,销毁, 绘制;事件管理器子模块,用于收集系统消息,转换并且分发系统消息和用户消息给各个窗口对象;及⑶I子模块,该子模块包括图形上下文设备管理,上下文设备对象管理,图形系统绘制传送接口,及各种图形控件。其中,各构成模块通过标准接口以松耦合的形式结合在一起;采用分级处理,基本级模块固定加载,扩展级中各模块及各功能组件模块在所述系统管理框架调度下,依据应用需求进行选择性动态加载。鉴于以上业务快速开发部署需求以及所带来的嵌入式操作系统新功能要求,本发明提供一种支持多级加载的安全嵌入式操作系统,支持应用程序动态加载运行,该操作系统是一个面向嵌入式终端应用开发和动态加载运行的开放式终端基础软件平台。该操作系统能为应用开发商提供硬件无关的开发环境,具备应用的动态发现、加载和管理功能,并能够整合终端系统的软硬件资源为应用提供运行环境,并为第三方应用的运行提供任务管理和资源管理功能。本操作系统特征在于1)在传统Linux内核基础上,采用分级处理,至少分为基本级和扩展级,基本级模块固定加载,扩展级中各模块及各功能组件模块在系统管理框架调度下,依据应用需求进行选择性动态加载,实现系统分级加载。2)系统管理框架作为本操作系统的核心管理单元,除具备应用管理、调度功能外,同时具有操作系统自身的执行引擎、 组件管理功能,支持多引擎共存的动态加载调度管理,支持引擎、组件的分布式管理;3)安全框架模块实现对应用程序的安全管理控制功能,具有应用端到端安全发布加载、基于应用进程隔离及信任机制的安全运行保护、应用运行监控等机制,实现应用从发布、下载、力口载到运行的全生命周期安全管控。本发明的优点在于,所提供的操作系统适用于具有应用程序执行处理能力的各种嵌入式终端设备,操作系统各构成模块通过开放的移植层接口与终端平台的底层软硬件隔离,可移植集成到不同的嵌入式终端平台。本发明所提供操作系统主要优点包括1、通过平台能力抽象、应用执行引擎及应用程序的全生命周期管理,实现了应用程序与终端平台的隔离,以及动态加载运行。2、通过内核分级,结合系统管理框架的管理调度,实现内核基本级、扩展级、功能组件模块分级加载。其中扩展级、功能组件中各模块依据应用需求进行选择性动态加载。3、通过采用具有应用全生命周期安全管控的安全框架,确保系统的安全可罪。


图1本发明的支持多级加载的安全嵌入式操作系统的整体架构示意图;图2本发明的支持多级加载的安全嵌入式操作系统包含的组件管理子模块构成及接口关系;图3本发明的支持多级加载的安全嵌入式操作系统包含的GUI模块构成示意图。
具体实施例方式下面结合附图和实施例对本发明进行进一步说明。为使本发明的技术方案更加清晰,下面将结合附图对本发明做进一步的详细阐述。本发明提出一种具有多级优化的安全嵌入式操作系统,该操作系统运行于具有应用程序执行处理能力的各种嵌入式终端设备,通过移植层接口,与终端底层的驱动、BSP等平台相关软件隔离,可集成到不同嵌入式终端平台中。如图1所示,图1为操作系统整体结构示意图,采用了分层构件化体系架构,各构成模块通过开放的标准接口以松耦合的形式结合在一起。如图所示操作系统分层架构及各构成模块可实现如下(1)内核层(a)标准Linux基本内核和驱动,这部分内核将被静态编译到内核映像中,随着 Linux的启动而运行和加载。(b)标准Linux扩展内核与驱动,这里的驱动将以模块的形式配置到内核,在应用需要时加载;这里的系统服务也是在应用需要的时候启动。⑵支撑层(a)平台移植层,为屏蔽不同硬件平台的差异,封装的一套平台无关的接口 ;实现移植层以上软件部分与终端平台的隔离;(b)标准库,主要包括libc,pthread等Linux库。操作系统可对某些标准库做修改,以支撑资源管理框架等;(c)资源管理模块,对系统的软硬件资源进行统一管理,实施资源规划、资源分配和资源监控;(d)功能组件,终端平台的能力抽象封装,应用所需各种功能的实际提供者。(e)系统管理模块,系统管理框架是负责终端应用管理和调度的核心单元,实施对终端软硬件资源的管理,负责对执行引擎和功能组件的管理。(f)安全模块,负责保证应用全生命周期的安全,包括安全发布、安全加载和安全运行。(g)⑶I模块,负责多窗口管理、输入事件的统一接收和分发、提供图形操作接口。(3)中间件层(a)应用执行引擎,应用程序的解释处理单元,通过系统管理框架调度,实现应用程序的动态解释运行。本发明所提供操作系统,可包含多种应用执行引擎,包括但不限于 JAVA执行引擎、Web Widget执行引擎等。(b) API模块,提供给应用开发人员进行编程的程序接口,架构于应用执行引擎之上,可被执行弓I擎动态解析运行。(4)应用层为基于API接口编写的运行于执行引擎之上的各种应用程序。API模块为应用开发人员提供编程接口,API模块构建于应用执行引擎之上,可被应用执行引擎解析处理;采用开放API接口生成的应用程序,以一定机制发布到终端可访问的应用服务器上,并被终端操作系统应用管理模块发现和动态加载执行,而不需将应用程序以移植方式集成到嵌入式终端的软件系统中;API模块与解释执行引擎相结合,利用应用执行引擎的本地方法调用机制,通过扩展API组件和相应的基础功能组件进行接口扩展;API模块采用解释执行语言,从而为应用开发者提供硬件无关的开发方法。以上各构成模块,通过系统管理框架的调度控制,以及相互间的接口调用,配合完成应用的下载、加载及可靠运行。并通过安全框架的应用全生命周期安全管控,确保操作系统安全性及可靠性。其中以上所述的的各个模块组成、功能及具体实现方式如下详述。系统管理模块是本发明所述操作系统的核心管理单元,具有对所加载应用程序的全生命周期管理功能,实现应用的发现、下载、加载、运行、卸载等过程管理调度。同时具有对框架自身构成模块如功能组件、应用执行引擎的管理功能,可实现但不限于功能组件、 执行引擎的注册、加载、更新、卸载等生命周期管理。其他开发人员所开发的执行引擎、功能组件,在满足接口、功能、运行方式等要求的前提下,可通过管理模块的注册、加载,吸纳到本发明的软件框架中。系统管理模块包含但不限于应用发现下载、应用管理、应用调度、组件管理、执行引擎管理以及系统监控等功能子模块。其中(1)应用发现下载子模块实现新发布应用的发现和下载功能。应用的部署发现可采用以下方法基于B/S架构的Web部署发现方法和基于C/S架构的消息通告部署发现方法,但不限于这两种方法。采用基于Web的应用部署发现方法,应用服务器将所要发布的应用程序以网页的形式呈现给终端用户,应用发现下载子模块通过终端功能组件库的浏览器组件访问应用发布网页并呈现给用户,由用户选择希望下载的应用启动下载。而基于消息通告的应用部署发现方法,应用服务器与嵌入式终端之间保持一个网络链接,新应用注册到应用服务器后,服务器通过该链接向当前在线的嵌入式终端发送通过信息,终端收到信息后根据发布信息和用户操作启动应用下载。应用下载可采用通用的下载协议,如FTP, HTTP, TFTP等,也可采用私有下载协议。如果采用通用下载协议,终端得到应用下载协议和下载路径后直接调用相应的下载器下载应用;如果采用私有协议,终端首先根据下载提示下载私有协议下载器,然后启动私有协议下载器下载应用;下载后的应用程序存放到指定目录。所发布的应用程序不仅包括应用程序代码,而是以“应用程序+应用描述”的方式进行打包,完整的应用程序包可具有但不限于以下信息1)应用程序及程序运行所需要的各类辅助数据文件;2)应用描述,可采用但不限于XML文件形式,其中集成了关于应用的详细描述信肩、ο3)应用海报等图片资源,以确保应用展示的美观(2)应用管理子模块负责管理下载到终端平台的应用程序,实现应用程序的加载、删除。应用下载到本地后,将结合安全框架的应用安全校验机制,对应用进行安全性校验;只有通过安全性校验的应用,才会安装到本地。用本地应用记录(LocalApplication Record)来记录已经下载到本地的应用基本信息。本地应用记录包括但不限于应用ID,应用版本号,应用类型,应用名称,应用在本地的存储路径以及应用描述等。在终端本地,维护一个本地应用列表(Local Application List),记录存储在本地的所有应用的基本信息。 通过对应用列表的管理维护,实现对应用程序的管理。(3)应用调度子模块实现应用程序的加载执行调度和应用生命周期管理功能,应用调度子模块维护一个任务调度请求列表(TRL)和一个任务调度管理列表(TML),当用户操作触发应用启动请求时,应用请求向TRL注册一个表项;应用调度子模块实时监控TRL状态,一旦TRL不为空,则取出TRL中的表项,根据表项内容启动相应的应用进程,应用启动时,会与资源管理框架交互,确认应用运行的资源情况是否满足,若满足则启动应用并把应用进程信息加入TML ;该子模块同时具有应用生命周期管理功能,提供应用程序的装载、启动、暂停和销毁等功能接口,管理程序以及其他模块均可通过这些接口控制相关应用程序的运行时状态;应用调度子模块还可统计各应用的用户访问特性,根据用户访问关注度为各应用动态建立优先级;应用调度子模块实时监控各应用进程的状态,一旦发现有应用进程发生异常或退出,则强行终止未退出的异常进程,并从TML中删除相应表项。(4)组件管理子模块负责操作系统中各功能组件的加载、卸载、更新等管理功能。如图2所示,该图为组件管理子模块的一个典型构成示意,其中主要功能模块如下
预加载。决定哪些功能组件需要在程序运行开始时进行加载。组件的预加载需要和应用的预加载结合起来,共同支持应用的快速启动;生命周期管理。对每个功能组件在程序运行期间的生命周期进行管理;在线升级。如果组件有新的版本,下载并更新本地的组件;发现与更新。动态查找高级别组件,增加高级别组件,删除低级别组件;按需获取。在应用运行过程中,如果所需要的组件不在本地,可以从组件服务器动态获取;加载记录维护。维护组件的加载使用情况,为预加载和生命周期管理提供依据。执行引擎管理子模块负责操作系统中执行引擎的管理,其构成与组件管理子模块可类似。(5)系统监控子模块负责监控管理进程的状态,该模块在系统启动时启动一个监控进程,监控进程与管理进程之间建立一个周期为1秒的心跳报文,报文可采用消息队列实现,也可采用TCP连接建立,从而监控管理进程的运行状态,并在管理进程发生异常是进行恢复处理。资源管理模块的工作机制和流程由本发明的申请人在申请号为 “201010144555. 5”,名称为“一种基于层间协作的家庭网络Qos保障方法”的专利申请文件中做了详细阐述。该资源管理框架是终端系统软硬件资源统一规划、分配单元,在嵌入式系统有限的资源条件下,根据应用特性合理的规划和分配资源,并对应用、组件进行有效的管
理调度。安全框架模块是本发明所提供安全操作系统的安全管控核心,确保应用的安全可靠运行。其特征在于具有应用端到端安全发布加载机制、基于应用进程隔离及信任机制的安全运行机制、应用运行监控及一致性检测机制,实现应用从发布、下载、加载到运行的全生命周期安全管控。该安全框架模块进一步包含安全发布子模块,用于完成用户的注册和程序上载,应用程序的安全检测,认证和应用程序的发布授权;安全加载子模块,用于完成从发布服务端到终端的端到端可信加载;安全运行子模块,在程序运行时用于防止外来入侵和代码变异,保证程序动态运行的一致性;和安全管理子模块,用于为程序的全生命周期提供安全保护策略,根据不同的用户和不同的应用,建立相应的信任机制,并为待发布的程序提供授权认证和加壳保护。本操作系统安全框架模块实现了应用从发布、下载、加载到运行的全生命周期安全管控,主要功能包含应用发布、可信应用加载、运行时安全保护和安全管理器。其中安全发布主要完成用户的注册和程序上载,应用程序的安全检测,认证和应用程序的发布授权; 安全加载完成从发布服务端到终端的端到端可信加载;安全运行完成运行时安全保护,主要在程序运行时防止外来入侵和代码变异,保证程序动态运行的一致性;安全管理器为程序的全生命周期提供安全保护策略,根据不同的用户和不同的应用,建立相应的信任机制, 并为待发布的程序提供授权认证和加壳保护。安全管理模块对外为执行引擎提供程序的运行访问控制策略,并为资源分配提供依据;同时安全框架实时接收来自资源监控和系统监控反馈的异常信息,并针对异常信息进行相应的异常处理,及时纠正系统运行中的错误,防止系统出现崩溃。GUI模块是操作系统的屏幕输出管理及操控输入响应处理单元,完成应用程序的用户界面呈现、图形绘制输出及用户输入事件响应处理,实现操作系统的图形化操控,提升用户体验。如图3所示,该图为⑶I模块包含但不限于如下功能模块窗口管理系统,实现多窗口共存和快速切换管理,包括窗口的创建,销毁,绘制。窗口焦点的切换,窗口间关系处理等。同时支持事件管理器和各种输入设备插件扩展。事件管理器,作为窗口管理系统的一部分负责收集系统消息,转换并且分发系统消息和用户消息给各个窗口对象。因为事件管理器对输入设备事件进行统一分发上很重要,将单独阐述。⑶I,包括图形上下文设备管理,上下文设备对象管理(字体等),良好的图形系统绘制传送接口,以及各种图形控件。设计良好的GDI,应该向上提供方便,完整,性能优越的用户接口,便于用户开发使用,向下屏蔽各种图形资源的差别,通过实现图形驱动插件系统来兼容和扩展对各种图形资源的支持和对其硬件加速功能的支持。通过输入设备插件系统支持输入设备的扩展,特别是新型输入设备,如基于体感、 语音等新型设备。功能组件模块是终端资源能力的抽象封装,针对应用需求,每个组件具有相对独立的功能;本操作系统中,还可以本地方法实现组合功能组件,组合功能组件通过对独立功能组件接口调用,将多个功能集成到一起以标准接口形式提供执行引擎调用;基础功能组件为终端应用开发提供所需的功能支撑,提高代码复用效率,降低应用开发难度;功能组件模块还为第三方开发接口提供本地方法支持,通过应用执行引擎的本地方法调用机制提高应用执行效率;功能组件提供功能相关的通用访问接口,供其他组件或执行引擎调用。本发明所述终端功能组件模块是在嵌入式终端平台资源、能力合理抽象基础上, 针对性组合形成的满足应用开发需求并具备动态扩展能力的组件集合。功能组件的开发采用C/C++等编译执行语言,确保库的执行效率。以静态库或动态链接库的形式集成于基础软件框架中,以标准接口形式提供解释执行引擎调用。针对嵌入式终端应用需求,典型的功能组件举例如下浏览器支持标准HTML、JS网页解析,为B/S架构双向应用提供功能支撑;媒体播放器支持多格式音视频媒体文件、流式数据等的解码播放,为应用提供媒体处理功能;网络应用协议栈针对应用需求,基于操作系统内置的TCP/UDP/IP标准网络协议栈所开发的扩展网络协议栈,如RTP、SIP、FTP等。应用执行引擎模块是应用程序的解释处理单元,为应用程序提供动态运行环境, 实现应用程序的动态解释执行,其位于应用程序与功能组件之间,在框架管理模块调度下, 对应用程序进行代码解析并通过标准接口调用功能组件实现应用功能,执行引擎决定了操作系统所支持的应用类型及应用程序运行效率。本发明所述的解释执行引擎是应用程序的解释处理单元,典型的解释执行引擎举例为JAVA虚拟机(JVM),相应的应用程序采用解释执行语言JAVA开发。JAVA是由SUN公司发布的一种标准开放程序语言,其源程序被编译为字节码(Bytecode),通过JVM解释为具体平台的机器指令进行执行,从而使应用程序与具体终端平台隔离,并可在终端运行时, 由JVM动态加载运行JAVA应用程序。面向应用程序开发,提供标准的JAVA类库包及开放的API接口,同时针对终端平台特有的功能组件库资源,软件框架扩展JAVA类库包,并提供扩展的API接口供应用程序开发使用,通过扩展接口的调用,应用程序可访问功能组件库资源。总之,本发明所提出的操作系统采用分层构件化体系架构,各构成模块通过标准接口以松耦合的形式结合在一起。在传统Linux系统内核基础上,同时具有系统管理框架、 安全框架、资源管理框架、功能组件、GUI模块、应用执行引擎、应用程序接口(API)等模块 其中系统管理框架为本操作系统的核心管理单元,负责操作系统中功能组件、应用执行引擎、GUI模块的管理,以及所加载的应用程序的管理;安全框架模块实现对应用程序的安全管理控制功能,实现应用程序发布、加载、运行的全生命周期安全保护,防止非法或恶意程序的运行或攻击;资源管理框架实现对嵌入式终端软硬件资源的统一管理调度及分配;功能组件实现对终端平台解码、解复用、网络接收等各种能力的程序封装,并通过程序访问接口提供应用执行引擎调用,为应用运行提供平台能力支撑;GUI模块实现应用程序的用户界面呈现、图形绘制及用户输入事件响应,管理用户输入和屏幕输出;应用执行引擎为应用程序提供动态运行环境,是JAVA等解释语言开发的应用程序的解释处理单元,通过系统管理框架调度,实现应用程序的动态解释运行;API模块提供给应用开发人员进行编程的程序接口,接口架构于应用执行引擎之上,基于API开发的应用程序可被执行引擎动态解析运行。以上各功能模块通过各自功能实现及相互间的接口配合,构成本发明所提供的一种具有内核、组件、引擎等多级优化的安全操作系统,通过平台能力抽象、应用执行引擎及应用程序的全生命周期管理,实现了应用程序与终端平台的隔离,以及动态加载运行;通过内核分级,结合系统管理框架的管理调度,实现内核基本级、扩展级、功能组件模块分级加载;通过采用具有应用全生命周期安全管控的安全框架,确保系统的安全可靠。需要说明的是,以上介绍的本发明的实施方案而并非限制。本领域的技术人员应当理解,任何对本发明技术方案的修改或者等同替代都不脱离本发明技术方案的精神和范围,其均应涵盖在本发明的权利要求范围内。
权利要求
1.一种支持多级加载的安全嵌入式操作系统,该操作系统基于Linux系统内核,采用分层构件化体系架构,且该嵌入式操作系统包含资源管理模块、功能组件模块、GUI模块、 应用执行引擎模块、应用程序接口模块,其特征在于,所述Linux内核采用分级处理策略,所述分级处理策略为标准Linux基本内核和驱动模块,该部分将被静态编译到内核映像中,随着Linux的启动而运行和加载;标准Linux扩展内核与驱动模块,该部分以模块的形式,依据应用需求进行选择性动态加载;所述嵌入式操作系统还包含系统管理框架模块,负责终端应用管理和调度的核心单元,实施对终端软硬件资源的管理,负责对执行引擎和功能组件的管理;支持多引擎共存的动态加载调度管理,支持引擎、组件的分布式管理;其中,所述各模块通过标准接口以松耦合的形式结合在一起。
2.根据权利要求1所述的支持多级加载的安全嵌入式操作系统,其特征在于,所述系统还包含安全框架模块,用于保证应用全生命周期的安全,包括安全发布、安全加载和安全运行。
3.根据权利要求2所述的支持多级加载的安全嵌入式操作系统,其特征在于,所述的安全框架模块进一步包含安全发布子模块,用于完成用户的注册和程序上载,应用程序的安全检测,认证和应用程序的发布授权;安全加载子模块,用于完成从发布服务端到终端的端到端可信加载; 安全运行子模块,在程序运行时用于防止外来入侵和代码变异,保证程序动态运行的一致性;和安全管理子模块,用于为程序的全生命周期提供安全保护策略,根据不同的用户和不同的应用,建立相应的信任机制,并为待发布的程序提供授权认证和加壳保护。
4.根据权利要求1所述的支持多级加载的安全嵌入式操作系统,其特征在于,所述的资源管理模块对系统的软硬件资源进行统一管理,实施资源规划、资源分配和资源监控。
5.根据权利要求1所述的支持多级加载的安全嵌入式操作系统,其特征在于,所述的应用执行引擎模块可支持多种执行引擎子模块,包括JAVA执行引擎子模块、Web Widget 执行引擎子模块等。
6.根据权利要求1所述的支持多级加载的安全嵌入式操作系统,其特征在于,所述的系统管理框架模块进一步包含应用发现子模块,用于实现新发布应用的发现和下载功能;应用管理子模块,负责管理下载到终端平台的应用程序,实现应用程序的加载、删除, 在终端维护一个本地应用列表;应用调度子模块,用于实现应用程序的加载执行调度和应用生命周期管理功能,该子模块维护一个任务调度请求列表和一个任务调度管理列表;组件管理子模块,用于负责操作系统中各功能组件的加载、卸载或更新; 执行引擎管理子模块,用于负责操作系统中执行引擎的管理,及系统监控子模块,用于负责监控管理进程的状态;其中所述的应用发现能采用基于B/S架构的Web部署发现方法或基于C/S架构的消息通告部署发现方法。
全文摘要
本发明提出一种支持多级加载的安全嵌入式操作系统,支持嵌入式终端应用程序的动态加载运行,实现应用程序与嵌入式终端平台的隔离,包括系统管理模块、安全管理模块、资源管理模块、功能组件模块、GUI模块、应用执行引擎模块、应用程序接口(API)等模块,同时本发明在传统Linux内核基础上,采用分级处理,至少分为基本级和扩展级,基本级模块固定加载,扩展级中各模块及各功能组件模块在系统管理框架调度下,依据应用需求进行选择性动态加载,实现系统分级加载。具有安全框架模块实现对应用程序的安全管理控制功能,具有应用端到端安全发布加载、基于应用进程隔离及信任机制的安全运行保护、应用运行监控等机制,实现应用从发布、下载、加载到运行的全生命周期安全管控。
文档编号G06F9/445GK102479097SQ20111013508
公开日2012年5月30日 申请日期2011年5月24日 优先权日2010年11月26日
发明者孙鹏, 张辉, 林军, 王劲林, 邓峰 申请人:中国科学院声学研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1