CN103150217B - 多核处理器操作系统设计方法 - Google Patents
多核处理器操作系统设计方法 Download PDFInfo
- Publication number
- CN103150217B CN103150217B CN201310104002.0A CN201310104002A CN103150217B CN 103150217 B CN103150217 B CN 103150217B CN 201310104002 A CN201310104002 A CN 201310104002A CN 103150217 B CN103150217 B CN 103150217B
- Authority
- CN
- China
- Prior art keywords
- operating system
- resource
- core
- processor
- mirror image
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Abstract
一种多核处理器操作系统设计方法,包括:第一步骤,用于建立基于资源划分的多系统架构;第二步骤,用于建立全局资源管理机制。在第一步骤中,将处理器和内存按照同构和紧耦合的原则进行划分,以使得每个核单独运行一份操作系统镜像,并且每个核独立拥有部分CPU核资源和所划分的内存资源;设备资源根据资源类型划分使用或通过设备虚拟化共享给多个操作系统镜像。在第二步骤中,在多个操作系统镜像的基础上,通过内核数据分布式共享技术及远程通信接口封装技术等,建立起全局资源管理机制,将分布的多操作系统统一起来,对外体现为单一操作系统映像。
Description
技术领域
本发明涉及操作系统设计领域,更具体地说,本发明涉及一种多核处理器操作系统设计方法。
背景技术
多核处理器的结构日益复杂。从对称多核处理器CMP(Chipmultiprocessors,单芯片多处理器),到异构多核处理器以及类NUMA(NonUniform Memory Access Achitecture,非一致性内存访问)多核处理器,操作系统的设计需要耗费更多的精力对复杂结构进行相应优化。与此同时,多核处理器的核心数量也在迅速增长,扩展的“摩尔定律”预言并证实了核心数量的指数增长速率。
传统多核操作系统(如Linux、Windows等宏内核架构)的可扩展性受到锁竞争与Cache(高速缓冲存储器)缺失的限制。以类NUMA结构多核处理器为例。类NUMA结构处理器的特点是不同核心(或核组)非共享Cache,核(或核组)间Cache易于缺失,因而核(或核组)间的内存访问效率较低,这给操作系统的设计带来了困难,目前面向该结构的已有传统多核操作系统性能较低。
在未来处理器核数增长的情况下,操作系统还需依赖于调整锁粒度以适应新的处理器,锁设计的复杂度与开销都将随之进一步增大,使设计周期更长,性能与可扩展能力进一步受到限制。
可见,对于复杂结构多核处理器,设计传统多核操作系统的工作量大,性能提高也较为有限。因此,需要有一种新的操作系统设计方法,以适应未来核数迅速增长,真正将硬件性能增长转化为操作系统性能提高。
发明内容
本发明所要解决的技术问题是针对现有技术中存在上述缺陷,提供一种适应复杂多核处理器核数增长的操作系统设计方法。
根据本发明,提供了一种多核处理器操作系统设计方法,其包括:第一步骤:用于建立基于资源划分的多系统架构;第二步骤:用于建立全局资源管理机制。
优选地,在第一步骤中,将处理器和内存按照同构和紧耦合的原则进行划分,以使得每个核单独运行一份操作系统镜像,并且每个核独立拥有部分CPU核资源和所划分的内存资源。
优选地,在第一步骤中,设备资源根据资源类型划分使用或通过设备虚拟化共享给多个操作系统镜像。
优选地,在第二步骤中,在多个操作系统镜像的基础上,通过内核数据分布式共享方式,将操作系统核心数据共享为多个操作系统镜像可见,并且通过应用一致性协议来保证多个操作系统镜像之间核心数据的一致性。
优选地,在第二步骤中,通过网络虚拟化和远程通信接口封装在多个操作系统镜像之间建立统一和透明的通信机制。
优选地,在第二步骤中,通过内核数据分布式共享技术及远程通信接口封装技术等建立起的全局资源管理机制,将分布的多个操作系统镜像统一起来,对外体现为单一操作系统映像。
根据本发明的多核处理器操作系统设计方法的优点在于能够充分利用多核资源并达到较好的可扩展性,该方法通过数据分布合理规避了锁竞争以及Cache缺失等限制,创造出一种新的操作系统可扩展途径。采用该设计方法实现的多核操作系统具有良好的性能和可扩展性,该操作系统设计方法能够适应未来核数迅速增长的复杂多核处理器,将硬件性能增长转化为操作系统性能提高。
附图说明
结合附图,并通过参考下面的详细描述,将会更容易地对本发明有更完整的理解并且更容易地理解其伴随的优点和特征,其中:
图1示意性地示出了根据本发明优选实施例的多核处理器操作系统设计方法的流程图。
图2示意性地示出了根据本发明优选实施例的多核处理器操作系统设计方法的具体示例的示意图。
需要说明的是,附图用于说明本发明,而非限制本发明。注意,表示结构的附图可能并非按比例绘制。并且,附图中,相同或者类似的元件标有相同或者类似的标号。
具体实施方式
为了使本发明的内容更加清楚和易懂,下面结合具体实施例和附图对本发明的内容进行详细描述。
本发明基于“分而治之再合而为一”的思想,提出并设计了一种适应复杂多核处理器核数增长的多核操作系统设计方法。该方法的设计思路来源于分布式计算,具体思路为首先将操作系统分割成彼此相对独立的各子系统,彼此基于消息通信,然后松散耦合成数据一致性要求较低的整体系统。该设计方法具体实现时可充分利用分布处理以及虚拟化等技术手段。
具体地说,图1示意性地示出了根据本发明优选实施例的多核处理器操作系统设计方法的流程图。
更具体地说,如图1所示,根据本发明优选实施例的多核处理器操作系统设计方法包括:
第一步骤S1:用于建立基于资源划分的多系统架构;具体地说,为更加灵活地使用多核资源,将处理器和内存按照同构和紧耦合的原则进行划分,以使得每个核(组)单独运行一份操作系统镜像,并且每个核(组)独立拥有部分CPU核资源和所划分的内存资源。此外,优选地,诸如网卡之类的除处理器与内存之外的其它设备的设备资源则根据资源类型划分使用或通过设备虚拟化共享给多个操作系统镜像。虚拟化技术是多操作系统镜像的支撑手段,虚拟机管理器统一管理资源的仲裁使用,能很好地保证该模式系统运行的正确性、稳定性和可靠性。第一步骤S1实现了“分而治之”。
第二步骤S2:用于建立全局资源管理机制;具体地说,在多个操作系统镜像的基础上,通过内核数据分布式共享方式,将操作系统核心数据共享为多个操作系统镜像可见,通过应用一致性协议来保证多个操作系统镜像之间核心数据的一致性;此外,优选地,例如通过网络虚拟化和远程通信接口封装或者其它适当技术,在多个操作系统镜像之间建立统一和透明的通信机制,即将分布的多个操作系统镜像统一起来,对外体现为单一操作系统映像。基于上述技术手段建立起全局资源管理机制,将分布的多个操作系统镜像统一起来,对外体现为单一操作系统映像。第二步骤S2实现了“合而为一”。
下文将参考图2以类NUMA结构多核处理器为例,详细描述根据本发明优选实施例的多核处理器操作系统设计方法。
图2示意性地示出了根据本发明优选实施例的多核处理器操作系统设计方法的具体示例的示意图。
具体地说,在第一步骤中,建立基于资源划分的多系统架构。将处理器和内存按照同构和紧耦合的原则进行划分,使得第一处理器核组CG0(CG,core group)单独运行第一操作系统镜像OS0,第二处理器核组CG1单独运行第二操作系统镜像OS1,第三处理器核组CG2单独运行第三操作系统镜像OS2,第四处理器核组CG3单独运行第四操作系统镜像OS3;而且,第一处理器核组CG0独立拥有第一内存区域M0,第二处理器核组CG1独立拥有第二内存区域M1,第三处理器核组CG2独立拥有第三内存区域M2,第四处理器核组CG3独立拥有第四内存区域M3;再者,四个操作系统镜像OS(第一操作系统镜像OS1、第二操作系统镜像OS1、第三操作系统镜像OS2和第四操作系统镜像OS3)根据不同设备资源的特征,划分或共享的使用设备资源;最后,四个操作系统镜像分别拥有用于统一管理资源的第一虚拟机管理器VMM0、第二虚拟机管理器VMM1、第三虚拟机管理器VMM2和第四虚拟机管理器VMM3。
在第二步骤中,建立全局资源管理机制。可以在第一操作系统镜像OS1、第二操作系统镜像OS1、第三操作系统镜像OS2和第四操作系统镜像OS3的基础上,通过内核数据分布式共享方式,将操作系统核心数据共享为多个操作系统镜像可见,其中通过应用一致性协议来保证多个操作系统镜像之间核心数据的一致性;此外,通过网络虚拟化和远程通信接口封装,在多个操作系统镜像之间建立统一和透明的通信机制。全局资源管理(进程,内存,设备)将分布的多个操作系统镜像统一起来,对外体现为单一操作系统映像。
由此,即使第一用户0、第二用户1、第三用户2和第四用户3分别占用第一处理器核组CG0、第二处理器核组CG1、第三处理器核组CG2和第四处理器核组CG3,而第一处理器核组CG0、第二处理器核组CG1、第三处理器核组CG2和第四处理器核组CG3分别单独运行第一操作系统镜像OS0、第二操作系统镜像OS1、第三操作系统镜像OS2和第四操作系统镜像OS3,多核处理器整体也对第一用户0、第二用户1、第三用户2和第四用户3体现为单一操作系统。
根据本发明优选实施例的多核处理器操作系统设计方法的优点在于能够充分利用多核资源并达到较好的可扩展性。该方法通过数据分布合理规避了锁竞争以及Cache缺失等限制,创造出一种新的操作系统可扩展途径。实际测试表明,用该设计方法实现的多核操作系统具有良好的性能和可扩展性,该操作系统设计方法能够适应未来核数迅速增长的复杂多核处理器,将硬件性能增长转化为操作系统性能提高。
此外,需要说明的是,除非特别指出,否则说明书中的术语“第一”、“第二”、“第三”等描述仅仅用于区分说明书中的各个组件、元素、步骤等,而不是用于表示各个组件、元素、步骤之间的逻辑关系或者顺序关系等。
可以理解的是,虽然本发明已以较佳实施例披露如上,然而上述实施例并非用以限定本发明。对于任何熟悉本领域的技术人员而言,在不脱离本发明技术方案范围情况下,都可利用上述揭示的技术内容对本发明技术方案作出许多可能的变动和修饰,或修改为等同变化的等效实施例。因此,凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所做的任何简单修改、等同变化及修饰,均仍属于本发明技术方案保护的范围内。
Claims (1)
1.一种多核处理器操作系统设计方法,多核处理器具有类NUMA架构,其特征在于包括:
第一步骤:用于建立基于资源划分的多系统架构;其中,将处理器和内存按照同构和紧耦合的原则进行划分,以使得每个核单独运行一份操作系统镜像,并且每个核独立拥有部分CPU核资源和所划分的内存资源;
第二步骤:用于建立全局资源管理机制,其中,在多个操作系统镜像的基础上,通过内核数据分布式共享方式,将操作系统核心数据共享为多个操作系统镜像可见,并且通过应用一致性协议来保证多个操作系统镜像之间核心数据的一致性;而且,设备资源根据资源类型划分使用或通过设备虚拟化共享给多个操作系统镜像;在第二步骤中,通过网络虚拟化和远程通信接口封装技术,在多操作系统之间建立统一和透明的通信机制;而且,在第二步骤中,通过内核数据分布式共享技术及远程通信接口封装技术建立起的全局资源管理机制,将分布的多操作系统统一起来,对外体现为单一操作系统映像。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310104002.0A CN103150217B (zh) | 2013-03-27 | 2013-03-27 | 多核处理器操作系统设计方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310104002.0A CN103150217B (zh) | 2013-03-27 | 2013-03-27 | 多核处理器操作系统设计方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103150217A CN103150217A (zh) | 2013-06-12 |
CN103150217B true CN103150217B (zh) | 2016-08-10 |
Family
ID=48548315
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310104002.0A Active CN103150217B (zh) | 2013-03-27 | 2013-03-27 | 多核处理器操作系统设计方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103150217B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104793924B (zh) * | 2014-01-21 | 2019-03-15 | 中兴通讯股份有限公司 | 计算任务的处理方法及装置 |
CN104503948B (zh) * | 2015-01-19 | 2017-08-11 | 中国人民解放军国防科学技术大学 | 支持多核网络处理架构的紧耦合自适应协处理系统 |
CN105094992B (zh) * | 2015-09-25 | 2018-11-02 | 浪潮(北京)电子信息产业有限公司 | 一种处理文件请求的方法与系统 |
CN105450792B (zh) * | 2015-12-23 | 2018-09-14 | 东软集团股份有限公司 | 用于多核转发网络地址端口转换的端口分配方法和装置 |
US10521273B2 (en) * | 2017-06-08 | 2019-12-31 | Cisco Technology, Inc. | Physical partitioning of computing resources for server virtualization |
CN107479943B (zh) * | 2017-07-03 | 2020-02-21 | 北京东土科技股份有限公司 | 基于工业互联网操作系统的多操作系统运行方法及装置 |
CN109032510B (zh) * | 2018-06-29 | 2021-07-09 | 山石网科通信技术股份有限公司 | 基于分布式结构的处理数据的方法和装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008084009A (ja) * | 2006-09-27 | 2008-04-10 | Toshiba Corp | マルチプロセッサシステム |
CN100524286C (zh) * | 2007-10-29 | 2009-08-05 | 中国科学院计算技术研究所 | 一种多核处理系统及其管理方法 |
CN101706757B (zh) * | 2009-09-21 | 2011-11-16 | 中国科学院计算技术研究所 | 面向多核平台和分布式虚拟化环境的i/o系统及工作方法 |
US20120096462A1 (en) * | 2010-10-18 | 2012-04-19 | Electronics And Telecommunications Research Institute | Dynamic virtualization technique for multicore processor system |
-
2013
- 2013-03-27 CN CN201310104002.0A patent/CN103150217B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN103150217A (zh) | 2013-06-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103150217B (zh) | 多核处理器操作系统设计方法 | |
WO2021051914A1 (zh) | 基于gpu资源的数据处理方法、电子设备及系统 | |
CN102262557B (zh) | 通过总线架构构建虚拟机监控器的方法及性能服务框架 | |
ES2743469T3 (es) | Disposición de ordenadores en racimo para el tratamiento de una tarea de cálculo y procedimiento correspondiente | |
Durand et al. | Euroserver: Energy efficient node for european micro-servers | |
CN101751284A (zh) | 一种分布式虚拟机监控器的i/o资源调度方法 | |
CN103197979B (zh) | 一种用于实现在进程间进行数据交互访问的方法及其装置 | |
CN102968331B (zh) | 一种虚拟机管理系统及其文件访问方法 | |
CN110659245A (zh) | 具有可编程多上下文加速器电路的系统 | |
CN110520847A (zh) | 控制和状态信号的虚拟化 | |
CN108490893A (zh) | 一种工业控制方法、装置及设备 | |
US11784990B2 (en) | Protecting data transfer between a secure application and networked devices | |
CN105956981A (zh) | 一种灾害信息云计算系统和计算方法 | |
US20180210747A1 (en) | Computing devices | |
CN103577247A (zh) | 基于Rocks集群技术的虚拟机计算和存储集群及其构建方法 | |
CN104360927B (zh) | 一种基于numa的计算机体系结构的监控信息采集方法 | |
WO2022139920A1 (en) | Resource manager access control | |
Knodel et al. | Computing framework for dynamic integration of reconfigurable resources in a cloud | |
CN105988877A (zh) | 基于硬件的设备间资源共享 | |
CN109634673A (zh) | 星载电子系统管理控制设备 | |
CN110457066A (zh) | 使国产操作系统兼容Windows系统应用软件的架构 | |
Jiang et al. | Interdomain I/O optimization in virtualized sensor networks | |
CN106502930A (zh) | 基于windows平台的GPIO模拟串行接口的方法和装置 | |
CN103685564A (zh) | 引入插件化应用能力层的行业应用在线运营云平台架构 | |
CN102781119A (zh) | 无线泛在网络应用终端系统及软件组件应用进程管理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |