内核空间隔离方法、空间管理实体及系统技术方案

技术编号:3755168 阅读:397 留言:0更新日期:2012-04-11 18:40
本发明专利技术实施例提供一种内核空间隔离方法、空间管理实体及系统,其中,内核空间隔离方法包括:当运行在CPU核上的内核态业务请求物理空间时,在该CPU核的虚拟空间中的非公共系统空间部分分配该CPU核的私有虚拟空间;确定所述CPU核的物理空间;建立所述CPU核的私有虚拟空间到所述CPU核的物理空间的映射关系,使得运行在所述CPU核上的内核态业务根据所述私有虚拟空间以及所述映射关系访问所述物理空间;其中,该CPU核的虚拟空间与其他CPU核的虚拟空间相互独立。使用本发明专利技术实施例提供的技术方案,实现不同CPU核间的内核空间隔离。

【技术实现步骤摘要】

本专利技术涉及网络
,特别涉及内核空间隔离方法、空间管理实体及系统
技术介绍
现有的Linux/Unix中的SMP( Symmetrical Multi-Processing ,对称多处理)系统中,多个CPU核都映射到相同的内核空间,为了方便描述,以SMP系统采用具体的CPU,如X86架构CPU核为例进行说明,当采用X86架构的CPU核时,CPU核采用两级映射关系,包括页目录和页表;Linux的虚拟地址空间为0-4G,将这4G空间分为两部分,将最高的1G字节(从虚拟地址OxCOOOOOOO到OxFFFFFFFF )供内核使用,称为内核地址空间(简称内核空间)。而将4K氐的3G字节(从虚拟地址0x00000000到0xBFFFFFFF),作为用户地址空间。其中,内核地址空间中保存有内核页目录和内核页表,用于将内核中虚拟地址映射到对应的物理内存空间;其中,内核页目录包括多个页目录项,每个页目录项对应一个内核页表,即每个页目录项中保存有对应内核页表的地址,内核页表中包括多个页表项,每个页表项对应一个物理页,即每个页表项中有对应物理页的物理地址。现有的Linux/Unix中的SMP( Symmetrical Multi-Processing,对称多处理)系统中,在创建进程时,进程页目录中前部分页目录项(固定数目的页目录项)映射到用户地址空间,后部分映射到内核地址空间,其内核地址空间都指向相同的物理地址。在实现本专利技术的过程中,专利技术人发现现有技术中至少存在如下问题现有的SMP系统中,对于所有内核态业务(如内核线程),内核空间都是相同的,因此内核空间被所有内核态业务共享,使不同CPU核运行内核态业务时所需要的物理空间(内核地址空间所映射的物理空间)也相同,难以保证内核态业务在CPU上运行时的安全性。
技术实现思路
本专利技术实施例提供一种内核空间隔离方法、空间管理实体及SMP系统,实现不同CPU核间的内核空间隔离。有鉴于此,本专利技术实施例提供 一种内核空间隔离方法,包括当运行在CPU核上的内核态业务请求物理空间时,在该CPU核的虚拟空间 中的非公共系统空间部分分配该CPU核的私有虚拟空间; 确定所述CPU核的物理空间;建立所述CPU核的私有虚拟空间到所述CPU核的物理空间的映射关系,使 得运行在所述CPU核上的内核态业务才艮据所述私有虚拟空间以及所述映射关 系访问所述物理空间;其中,该CPU核的虚拟空间与其他CPU核的虚拟空间相 互独立。一种空间管理实体,包括确定单元,用于当运行在CPU核上的内核态业务请求物理空间时,在该 CPU核的虚拟空间中的非公共系统空间部分分配该CPU核的私有虚拟空间,确 定所述CPU核的物理空间,其中,该CPU核的虚拟空间与其他CPU核的虚拟空 间相互独立;第一建立单元,用于建立所述CPU核的私有虚拟空间到所述CPU核的物理 空间的映射关系,使得运行在所述CPU核上的内核态业务根据所述私有虚拟 空间以及所述映射关系访问所述物理空间。一种对称多处理SMP系统,该系统包含多个CPU核和私有空间管理实体, 其中所述私有空间管理实体,用于当运行在CPU核上的内核态业务请求物理 空间时,在该CPU核的虚拟空间中的非公共系统空间部分分配该CPU核的私有 虚拟空间,确定所述CPU核的物理空间,建立所述CPU核的私有虚拟空间到所 述CPU核的物理空间的映射关系,使得运行在所述CPU核上的内核态业务根据 所述私有虚拟空间以及所述映射关系访问所述物理空间,其中,该CPU核的 虚拟空间与其他CPU核的虚拟空间相互独立。本专利技术实施例中,每个CPU核对应一个独立的虚拟空间,当运行在CPU 核上的内核态业务请求物理空间时,在该CPU核的虚拟空间中的非公共系统 空间部分分配该CPU核的私有虚拟空间,确定所述CPU核的物理空间,建立所空间到所述CPU核的物理空间的映射关系,使运行在所述 CPU核上的内核态业务能够利用该CPU核的私有虚拟空间及已建立的映射关 系访问该CPU核的物理空间,实现不同CPU核间的内核空间隔离,从而能够保 证CPU核运行内核态业务的安全性。附图说明图l是本专利技术实施例一提供的内核空间隔离方法流程图2是本专利技术实施例二提供的内核空间隔离方法流程图3是本专利技术实施例提供的内核空间分配第 一示意图4是本专利技术实施例提供的内核空间分配第二示意图5是本专利技术实施例提供的内核空间分配第三示意图6是本专利技术实施例提供的一种建立CPU核的私有虚拟空间到物理空间 的映射方法流程图7是本专利技术实施例提供的另 一种建立CPU核的私有虚拟空间到物理空 间的映射方法流程图8是本专利技术实施例三提供的在SMP系统上仿真AMP系统的方法流程图9是本专利技术实施例四提供的空间管理实体结构示意图IO是本专利技术实施例五提供的SMP系统逻辑示意图。 具体实施例方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行 清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而 不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作 出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本专利技术实施例4是供一种内核空间隔离方法,该方法包括当运行在CPU 核上的内核态业务请求物理空间时,在该CPU核的虚拟空间中的非公共系统 空间部分分配该CPU核的私有虚拟空间,确定所述CPU核的物理空间,建立所 述CPU核的私有虚拟空间到所述CPU核的物理空间的映射关系,使得运行在所 述CPU核上的内核态业务能够#>据所述私有虚拟空间以及所述映射关系访问 所述物理空间;其中,所述CPU核的虛拟空间与其他CPU核的虚拟空间相互独 立。使用本专利技术实施例提供的技术方案,4吏运行在所述CPU核上的内核态业务能够利用该CPU核的私有虚拟空间及已建立的映射关系找到该CPU核的物 理空间,实现不同CPU核间的内核空间隔离,从而能够保证CPU核运行内核态业务的安全性。实施例一参阅图l,本专利技术实施例一4是供一种内核空间隔离方法,该方法可应用于 SMP系统,其中,该方法包括AIO、当运行在CPU核上的内核态业务请求物理空间时,在该CPU核的虚 拟空间中的非公共系统空间部分分配该CPU核的私有虚拟空间;其中,该CPU 核的虚拟空间与其他CPU核的虚拟空间相互独立;A20、确定所述CPU核的物理空间;A30、建立所述CPU核的私有虚拟空间到所述CPU核的物理空间的映射关 系,使得运行在所述CPU核上的内核态业务能够根据所述私有虚拟空间以及 所述映射关系访问所述物理空间。可见,本专利技术实施例中,每个CPU核对应一个独立的虚拟空间,当运行 在CPU核上的内核态业务请求物理空间时,在该CPU核的虚拟空间中的非7>共 系统空间部分分配该CPU核的私有虚拟空间,确定所述CPU核的物理空间,建 立所述CPU核的私有虚拟空间到所述CPU核的物理空间的映射关系,使运行在 所述CPU核上的内核态业务能够利用该CPU核的私有虚拟空间及已建立的映 射关系访问该CPU核的物理空间,实现不同CPU核间的内核空间隔离,从而能 够保证CPU核运行内核态业务的安全性。实施例二参阅图2-5,本专利技术实施例二提供一种内核空间隔离方法,其中,图2示 出了内核空间隔离方法的流程图,图3本文档来自技高网
...

【技术保护点】
一种内核空间隔离方法,其特征在于,包括: 当运行在CPU核上的内核态业务请求物理空间时,在该CPU核的虚拟空间中的非公共系统空间部分分配该CPU核的私有虚拟空间; 确定所述CPU核的物理空间; 建立所述CPU核的私有虚拟空 间到所述CPU核的物理空间的映射关系,使得运行在所述CPU核上的内核态业务根据所述私有虚拟空间以及所述映射关系访问所述物理空间;其中,该CPU核的虚拟空间与其他CPU核的虚拟空间相互独立。

【技术特征摘要】

【专利技术属性】
技术研发人员:戴华飞李国柱
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:94[中国|深圳]

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

1