一种实时操作系统中内存的保护方法及装置制造方法及图纸

技术编号:9434503 阅读:63 留言:0更新日期:2013-12-12 00:34
本发明专利技术公开了一种实时操作系统中内存的保护方法及装置,所述实时操作系统中内存的保护方法在运行一个任务前,会首先确定操作系统下一个即将运行的任务的数据访问权限,并在运行这个任务前,根据确定的任务的数据访问权限来设置内存的保护权限,这样,在每执行一个任务前,都会根据该任务的一些属性来确定任务对内存的数据访问权限,并根据确定的结果动态的来设置内存的保护权限,从而能够准确的对实时操作系统中的内存进行保护,有效防止操作系统运行过程中对内存错误访问的情况发生。

【技术实现步骤摘要】
【专利摘要】本专利技术公开了一种实时操作系统中内存的保护方法及装置,所述实时操作系统中内存的保护方法在运行一个任务前,会首先确定操作系统下一个即将运行的任务的数据访问权限,并在运行这个任务前,根据确定的任务的数据访问权限来设置内存的保护权限,这样,在每执行一个任务前,都会根据该任务的一些属性来确定任务对内存的数据访问权限,并根据确定的结果动态的来设置内存的保护权限,从而能够准确的对实时操作系统中的内存进行保护,有效防止操作系统运行过程中对内存错误访问的情况发生。【专利说明】一种实时操作系统中内存的保护方法及装置
本专利技术涉及数据保护领域,更具体的说,是涉及一种实时操作系统中内存的保护方法及装置。
技术介绍
AUT0SAR OS (嵌入式实时操作系统)标准中规定操作系统的对象可以分配为不同的功能单元,即OS应用集。OS应用集的功能权限可以分为可信OS应用集和不可信OS应用集两种。为了保证不同的OS应用集,以及同一个OS应用集中不同任务之间的内存区域不被其他任务或者不可信的OS应用集非法或异常使用,需要对OS应用集中的内存进行保护。现有技术中,对OS应用集的内存进行保护的方法主要采用基于硬件使用MMU(Memory Manage Unit,内存管理单元)的方式进行内存保护。这种使用MMU的内存保护方法只需要将内存访问权限设定好,就能够实现对设定访问权限的内存进行保护。但是,现有的这种使用MMU的内存保护方法,虽然能够实现对内存的保护,但其保护机制模式主要体现在其功能实现上,由于操作系统在不同的时刻运行的任务可能是不一样的,而且操作系统中不同OS应用集的功能权限是不同的,这样,使用现有的MMU的内存保护方法就不能够满足操作系统中进行任务实时变化和OS应用集功能权限不同的特点要求,从而无法有效的防止操作系统运行过程中对内存错误访问的情况发生。
技术实现思路
有鉴于此,本专利技术提供了一种实时操作系统中内存的保护方法及装置,以实现准确对实时操作系统中的内存进行保护,有效防止操作系统运行过程中对内存错误访问的情况发生。为实现上述目的,本专利技术提供如下技术方案:一种实时操作系统中内存的保护方法,包括:确定操作系统下一个即将运行的任务的数据访问权限;在运行所述任务前,根据所述数据访问权限设置内存的保护权限。可选的,在所述确定操作系统下一个即将运行的任务的功能权限前,还包括:将操作系统中的数据分类。可选的,所述将操作系统中的数据分类,包括:将操作系统中的数据分为私有数据类型、堆栈类型、操作系统代码类型和应用程序代码类型四类。可选的,所述确定操作系统下一个即将运行的任务的数据访问权限,包括:确定操作系统下一个即将运行的任务所属的OS应用集的功能权限;根据确定的所述任务所属的OS应用集的功能权限和预设的任务/OS应用集与数据访问关系来确定所述任务的数据访问权限。可选的,所述预设的任务/OS应用集与数据访问关系包括:可信OS应用集中的任务对自身以及不可信OS应用集中任务的私有数据类型的数据可读可写,对同一 OS应用集中其他任务的私有数据类型的数据可读;不可信OS应用集中的任务对自身的私有数据类型的数据可读可写,对其他的所有任务的私有数据类型的数据可读;和/或,可信OS应用集中的任务对自身的堆栈类型的数据可读可写,对同一 OS应用集中其他任务及不可信OS应用集中任务的堆栈类型的数据可读;不可信OS应用集中任务对自身的堆栈类型的数据可读可写,对其他的所有任务的堆栈类型的数据可读;和/或,可信OS应用集中的任务对自身所在应用集及不可信OS应用集的私有数据类型的数据可读可写;不可信OS应用集中的任务仅对自身所在应用集的私有数据可读可写。一种实时操作系统中内存的保护装置,包括:访问权限确定模块,用于确定操作系统下一个即将运行的任务的数据访问权限;内存保护设置模块,用于在运行所述任务前,根据所述数据访问权限设置内存的保护权限。可选的,还包括:数据类型划分模块,用于在所述确定操作系统下一个即将运行的任务的功能权限前,将操作系统中的数据分类。可选的,所述数据类型划分模块包括:数据划分子模块,用于将操作系统中的数据分为私有数据类型、堆栈类型、操作系统代码类型和应用程序代码类型四类。可选的,所述访问权限确定模块包括:应用集权限确定模块,用于确定操作系统下一个即将运行的任务所属的OS应用集的功能权限;访问权限确定子模块,用于根据确定的所述任务所属的OS应用集的功能权限和预设的任务/OS应用集与数据访问关系来确定所述任务的数据访问权限。可选的,所述预设的任务/OS应用集与数据访问关系包括: 可信OS应用集中的任务对自身以及不可信OS应用集中任务的私有数据类型的数据可读可写,对同一 OS应用集中其他任务的私有数据类型的数据可读;不可信OS应用集中的任务对自身的私有数据类型的数据可读可写,对其他的所有任务的私有数据类型的数据可读;和/或,可信OS应用集中的任务对自身的堆栈类型的数据可读可写,对同一 OS应用集中其他任务及不可信OS应用集中任务的堆栈类型的数据可读;不可信OS应用集中任务对自身的堆栈类型的数据可读可写,对其他的所有任务的堆栈类型的数据可读;和/或,可信OS应用集中的任务对自身所在应用集及不可信OS应用集的私有数据类型的数据可读可写;不可信OS应用集中的任务仅对自身所在应用集的私有数据可读可写。经由上述的技术方案可知,与现有技术相比,本专利技术实施例公开了一种实时操作系统中内存的保护方法及装置,所述实时操作系统中内存的保护方法在运行一个任务前,会首先确定操作系统下一个即将运行的任务的数据访问权限,并在运行这个任务前,根据确定的任务的数据访问权限来设置内存的保护权限,这样,在每执行一个任务前,都会根据该任务的一些属性来确定任务对内存的数据访问权限,并根据确定的结果动态的来设置内存的保护权限,从而能够准确的对实时操作系统中的内存进行保护,有效防止操作系统运行过程中对内存错误访问的情况发生。【专利附图】【附图说明】为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。图1为本专利技术公开的实时操作系统中内存的保护方法流程图;图2为本专利技术公开的确定任务的数据访问权限的流程图;图3为本专利技术公开的操作系统中内存使用示意图;图4为本专利技术公开的任务数据段访问关系示意图;图5为本专利技术公开的任务堆栈段访问关系示意图;图6为本专利技术公开的OS应用集数据段访问关系示意图;图7为本专利技术公开的另一个实时操作系统中内存的保护方法流程图;图8为本专利技术公开的实时操作系统中内存的保护装置的结构示意图;图9为本专利技术公开的另一种实时操作系统中内存的保护装置的结构示意图。【具体实施方式】下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。图1为本专利技术公开的实时操作系统中内存的保护方本文档来自技高网
...

【技术保护点】
一种实时操作系统中内存的保护方法,其特征在于,包括:确定操作系统下一个即将运行的任务的数据访问权限;在运行所述任务前,根据所述数据访问权限设置内存的保护权限。

【技术特征摘要】

【专利技术属性】
技术研发人员:王载琼刘博张阳
申请(专利权)人:北京经纬恒润科技有限公司
类型:发明
国别省市:

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

1