CN101149728A - A kind of multi-core processing system and its management method - Google Patents
A kind of multi-core processing system and its management method Download PDFInfo
- Publication number
- CN101149728A CN101149728A CNA2007101764934A CN200710176493A CN101149728A CN 101149728 A CN101149728 A CN 101149728A CN A2007101764934 A CNA2007101764934 A CN A2007101764934A CN 200710176493 A CN200710176493 A CN 200710176493A CN 101149728 A CN101149728 A CN 101149728A
- Authority
- CN
- China
- Prior art keywords
- operation system
- privileged operation
- module
- privileged
- processor
- 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.)
- Granted
Links
- 238000012545 processing Methods 0.000 title claims abstract description 76
- 238000007726 management method Methods 0.000 title claims abstract description 40
- 238000004891 communication Methods 0.000 claims description 29
- 238000006243 chemical reaction Methods 0.000 claims description 3
- 238000013507 mapping Methods 0.000 claims description 3
- 238000012986 modification Methods 0.000 claims description 2
- 230000004048 modification Effects 0.000 claims description 2
- 238000013519 translation Methods 0.000 claims description 2
- 238000004321 preservation Methods 0.000 claims 1
- 238000005192 partition Methods 0.000 abstract description 79
- 238000000034 method Methods 0.000 description 10
- 238000005516 engineering process Methods 0.000 description 5
- 238000000638 solvent extraction Methods 0.000 description 4
- 239000003795 chemical substances by application Substances 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000011068 loading method Methods 0.000 description 3
- 238000007796 conventional method Methods 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 238000002955 isolation Methods 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000007717 exclusion Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Landscapes
- Multi Processors (AREA)
Abstract
本发明公开了一种解决对称多处理系统可扩展性问题的多核处理系统及其管理方法。该系统,包括多个处理器核和/或多个处理器、分区模块和启动模块:所述分区模块,用于解析由用户指定的各个分区的资源配置参数和启动参数并保存;所述分区包括至少一个处理器和/或一个处理器核;所述启动模块,用于启动特权操作系统和受特权操作系统管理的非特权操作系统。该管理方法,包括以下步骤:步骤S100,分区模块解析用户指定各个分区的资源配置参数,并保存;步骤S200,根据分区模块解析的分区资源配置参数,启动特权操作系统和受特权操作系统管理的非特权操作系统。本发明有效利用处理器资源,解决了对称多处理系统的可扩展性问题。
The invention discloses a multi-core processing system and a management method thereof for solving the scalability problem of the symmetrical multi-processing system. The system includes a plurality of processor cores and/or a plurality of processors, a partition module and a startup module: the partition module is configured to parse and save resource configuration parameters and startup parameters of each partition specified by the user; the partition It includes at least one processor and/or one processor core; the startup module is used to start a privileged operating system and a non-privileged operating system managed by the privileged operating system. The management method includes the following steps: step S100, the partition module parses and saves the resource configuration parameters of each partition specified by the user; step S200, starts the privileged operating system and the privileged operating system managed Unprivileged operating system. The invention effectively utilizes the processor resources and solves the scalability problem of the symmetric multiprocessing system.
Description
技术领域 technical field
本发明涉及计算机技术领域,特别涉及一种解决对称多处理系统(Symmetric Multi-Processing,SMP)可扩展性的多核处理系统及其管理方法。The invention relates to the field of computer technology, in particular to a multi-core processing system and a management method for solving the scalability of a symmetric multi-processing system (Symmetric Multi-Processing, SMP).
背景技术 Background technique
随着摩尔定律和多核技术的发展,对称多处理系统的可扩展性问题越来越突出,即由于处理器或处理器核间同步互斥的原因,整个系统的性能不能随着处理器或处理器核数目的增长而线性增长,甚至当处理器或处理器核数目过多时,系统性能会有逐渐下降的趋势。With the development of Moore's law and multi-core technology, the scalability problem of symmetric multi-processing system has become more and more prominent, that is, due to the synchronization and mutual exclusion between processors or processor cores, the performance of the entire system cannot The number of processor cores increases linearly, and even when the number of processors or processor cores is too large, the system performance will gradually decline.
SMP的全称是″对称多处理″(Symmetrical Multi-Processing)技术,是指在一个计算机上汇集了一组处理器(多CPU),各CPU之间共享内存子系统以及总线结构。它是相对非对称多处理技术而言的、应用十分广泛的并行技术。在这种架构中,一台电脑不再由单个CPU组成,而同时由多个处理器运行操作系统的单一复本,并共享内存和一台计算机的其他资源。虽然同时使用多个CPU,但是从管理的角度来看,它们的表现就像一台单机一样。系统将任务队列对称地分布于多个CPU之上,从而极大地提高了整个系统的数据处理能力。所有的处理器都可以平等地访问内存、I/O和外部中断。在对称多处理系统中,系统资源被系统中所有CPU共享,工作负载能够均匀地分配到所有可用处理器之上。The full name of SMP is "Symmetrical Multi-Processing" (Symmetrical Multi-Processing) technology, which means that a group of processors (multi-CPU) are assembled on a computer, and the memory subsystem and bus structure are shared between each CPU. It is a very widely used parallel technology relative to asymmetric multiprocessing technology. In this architecture, a computer no longer consists of a single CPU, but multiple processors simultaneously run a single copy of the operating system and share memory and other resources of a computer. Although multiple CPUs are used simultaneously, they behave like a single computer from a management point of view. The system symmetrically distributes task queues on multiple CPUs, thus greatly improving the data processing capability of the entire system. All processors have equal access to memory, I/O, and external interrupts. In a symmetric multiprocessing system, system resources are shared by all CPUs in the system, and workloads are evenly distributed across all available processors.
图1表示现有技术的对称多处理系统结构,其中框4表示整个多核和/或多处理器系统的硬件平台,配置了多处理器核或多个处理器,图中表示出有8个处理器,分别用P1-P8表示,且图1中只标出处理器资源,其它资源省略。Fig. 1 shows the structure of the symmetrical multiprocessing system of the prior art, wherein
如图1所示,标号3表示其中的一个处理器。As shown in Fig. 1,
标号2表示传统对称多处理操作系统,它同时管理8个处理器和所有其它硬件资源,如输入输出资源。
标号1表示运行在对称多处理操作系统2上的应用程序。Reference numeral 1 denotes an application program running on a symmetric
但是,由于对称多处理系统的可扩展性问题,对称多处理操作系统2不能管理过多的处理器或处理器核,否则系统性能就会下降,并影响上层应用程序1的性能。However, due to the scalability problem of the symmetric multi-processing system, the symmetric
因此,如何更有效的利用多核和多处理器,并解决对称多处理系统的可扩展性问题,已经成为急需解决的问题。Therefore, how to make more effective use of multi-cores and multi-processors and solve the scalability problem of symmetric multi-processing systems has become an urgent problem to be solved.
发明内容 Contents of the invention
本发明要解决对称多处理系统的可扩展性问题,使整个系统的性能随着处理器和/或处理器核数目的增长而不断增长,从而提供一种扩展性好的多核处理系统及其管理方法。The present invention solves the scalability problem of the symmetric multi-processing system, so that the performance of the entire system increases continuously with the increase of the number of processors and/or processor cores, thereby providing a multi-core processing system with good scalability and its management method.
为此目的,本发明采取如下技术方案:To this end, the present invention takes the following technical solutions:
一种多核处理系统,包括多个处理器核和/或多个处理器;其还包括分区模块和启动模块,其中:A multi-core processing system includes a plurality of processor cores and/or a plurality of processors; it also includes a partition module and a startup module, wherein:
所述分区模块,用于解析由用户指定的各个分区的资源配置参数和启动参数并保存;所述分区包括至少一个处理器和/或至少一个处理器核;The partition module is configured to parse and save resource configuration parameters and startup parameters of each partition specified by the user; the partition includes at least one processor and/or at least one processor core;
所述启动模块,用于根据所述分区模块解析的分区资源配置参数,启动特权操作系统和受特权操作系统管理的非特权操作系统。The starting module is configured to start the privileged operating system and the non-privileged operating system managed by the privileged operating system according to the partition resource configuration parameters parsed by the partitioning module.
优选地,所述启动模块包括特权操作系统启动模块、非特权操作系统启动处理模块和非特权操作系统启动模块,其中:Preferably, the booting module includes a privileged operating system booting module, a non-privileged operating system booting processing module and a non-privileged operating system booting module, wherein:
所述特权操作系统启动模块,用于根据所述分区模块的分区配置,在一个分区的内存资源中保留所述特权操作系统的用于所述特权操作系统和所述非特权操作系统之间的通信缓冲区,完成所述特权操作系统的初始化,并加载非特权操作系统启动处理模块,完成特权操作系统启动;The privileged operating system startup module is configured to, according to the partition configuration of the partition module, reserve the memory resource of the privileged operating system in a memory resource for the privileged operating system and the non-privileged operating system. The communication buffer area completes the initialization of the privileged operating system, and loads the non-privileged operating system startup processing module to complete the privileged operating system startup;
所述非特权操作系统启动处理模块,用于在启动非特权操作系统时,根据用户输入的命令和特权操作系统保存的非特权操作系统启动参数,在用户指定的用于启动非特权操作系统的分区的内存资源中设置非特权操作系统代码映像、非特权操作系统的启动参数;The non-privileged operating system startup processing module is configured to, when starting the non-privileged operating system, according to the command input by the user and the non-privileged operating system startup parameters saved by the privileged operating system, to start the non-privileged operating system specified by the user. Set the non-privileged operating system code image and the startup parameters of the non-privileged operating system in the memory resources of the partition;
所述非特权操作系统启动模块在所述非特权操作系统启动处理模块之后执行,用于向所述用户指定的用于启动非特权操作系统的分区中的处理器和/或处理器核发出启动命令,使该处理器和/或处理器核在非特权操作系统代码映像处执行启动操作,并且在所述用户指定的用于启动非特权操作系统的分区的内存资源中保留非特权操作系统的通信缓冲区,完成非特权操作系统初始化,完成非特权操作系统启动。The non-privileged operating system startup module is executed after the non-privileged operating system startup processing module, and is used to issue startup to the processor and/or processor core in the partition designated by the user for starting the non-privileged operating system command to cause the processor and/or processor core to perform a boot operation at a non-privileged operating system code image, and to reserve the non-privileged operating system's Communication buffer, complete unprivileged operating system initialization, complete unprivileged operating system startup.
优选地,所述特权操作系统启动模块使得所述特权操作系统在初始化完成后,还加载虚拟网卡模块;Preferably, the privileged operating system startup module enables the privileged operating system to also load a virtual network card module after the initialization is completed;
所述非特权操作系统启动模块使得所述非特权操作系统在初始化完成后,还加载虚拟网卡模块;The non-privileged operating system startup module enables the non-privileged operating system to also load a virtual network card module after the initialization is completed;
所述虚拟网卡模块,用于操作系统间通信。The virtual network card module is used for communication between operating systems.
优选地,所述非特权操作系统启动处理模块,在启动非特权操作系统之前,还在所述用户指定的用于启动非特权操作系统的分区内的内存资源中设置跳板模块的代码;Preferably, the non-privileged operating system startup processing module, before starting the non-privileged operating system, also sets the code of the springboard module in the memory resource in the partition designated by the user for starting the non-privileged operating system;
所述跳板模块,用于执行跳板代码,并修改跳板自身页表和非特权操作系统页表,完成跳转和处理器和/或处理器核模式转换;The springboard module is used to execute the springboard code, and modify the springboard's own page table and non-privileged operating system page table to complete the jump and processor and/or processor core mode conversion;
所述非特权操作系统启动模块,用于向所述用户指定的用于启动非特权操作系统的分区中的处理器和/或处理器核发出启动命令,令其执行所述跳板模块;执行所述跳板模块使所述用户指定的用于启动非特权操作系统的分区中的处理器和/或处理器核根据所述跳板模块执行结果,跳转到非特权操作系统代码映像处执行启动操作。The non-privileged operating system startup module is configured to issue a startup command to the processor and/or processor core in the partition designated by the user for starting the non-privileged operating system, so that it executes the springboard module; executes the The springboard module enables the processors and/or processor cores in the partition designated by the user to start the non-privileged operating system to jump to the code image of the non-privileged operating system to perform the startup operation according to the execution result of the springboard module.
优选地,所述用户输入的命令包括指定要启动的非特权操作系统的分区;所述非特权操作系统的启动参数包括非特权操作系统的内存起始位置,跳板代码的起始地址以及非特权操作系统代码映像的起始地址。Preferably, the command input by the user includes specifying the partition of the non-privileged operating system to be started; the startup parameters of the non-privileged operating system include the starting location of the memory of the non-privileged operating system, the starting address of the springboard code, and the non-privileged operating system. The starting address of the operating system code image.
优选地,还包括资源管理模块,用于利用异构式资源管理方式来管理多核处理系统的资源,使各个操作系统独立管理自己的内存和处理器资源和/或处理器核资源;所述多核处理系统的资源包括内存资源和处理器资源和/或处理器核资源及输入输出资源;特权操作系统能够访问系统的输入输出资源,非特权操作系统通过特权操作系统的代理访问输入输出资源。Preferably, it also includes a resource management module, which is used to manage the resources of the multi-core processing system in a heterogeneous resource management manner, so that each operating system independently manages its own memory and processor resources and/or processor core resources; the multi-core The resources of the processing system include memory resources, processor resources and/or processor core resources and input and output resources; the privileged operating system can access the input and output resources of the system, and the non-privileged operating system accesses the input and output resources through the agent of the privileged operating system.
一种多核处理系统的管理方法,包括以下步骤:A management method for a multi-core processing system, comprising the following steps:
步骤S100,分区模块解析用户指定各个分区的资源配置参数,并保存;Step S100, the partition module parses and saves the resource configuration parameters of each partition specified by the user;
步骤S200,根据分区模块解析的分区资源配置参数,启动特权操作系统和受特权操作系统管理的非特权操作系统。Step S200, start the privileged operating system and the non-privileged operating system managed by the privileged operating system according to the partition resource configuration parameters analyzed by the partitioning module.
优选地,步骤S200具体包括下列步骤:Preferably, step S200 specifically includes the following steps:
步骤S210,启动模块中的特权操作系统启动模块,根据分区模块的分区配置,在本分区的内存资源中,保留一块内存区域作为核心间通信缓冲区;Step S210, the privileged operating system startup module in the startup module reserves a memory area in the memory resources of the partition as an inter-core communication buffer according to the partition configuration of the partition module;
步骤S220,特权操作系统启动模块使特权操作系统完成自身的初始化并完成启动;Step S220, the privileged operating system startup module enables the privileged operating system to complete its own initialization and start;
步骤S230,特权操作系统启动模块使特权操作系统加载启动模块中的非特权操作系统启动处理模块;Step S230, the privileged operating system startup module enables the privileged operating system to load the non-privileged operating system startup processing module in the startup module;
步骤S240,非特权操作系统启动处理模块根据用户输入的命令和特权操作系统保存的非特权操作系统启动参数,将非特权操作系统代码映像和非特权操作系统启动参数拷贝到要启动非特权操作系统的分区的内存区域;Step S240, the non-privileged operating system startup processing module copies the non-privileged operating system code image and the non-privileged operating system startup parameters to the non-privileged operating system to be started according to the command input by the user and the non-privileged operating system startup parameters saved by the privileged operating system The memory area of the partition;
步骤S250,非特权操作系统启动模块给非特权操作系统的处理器和/或处理器核发送启动命令使其到非特权操作系统映像处执行;Step S250, the non-privileged operating system startup module sends a startup command to the processor and/or processor core of the non-privileged operating system to execute at the non-privileged operating system image;
步骤S260,非特权操作系统启动模块使非特权操作系统修改内存管理内容,使其在自身分区内完成操作系统的启动,并保留核心间通信缓冲区,完成启动。Step S260, the non-privileged operating system startup module enables the non-privileged operating system to modify the memory management content, so that it completes the startup of the operating system in its own partition, and reserves the inter-core communication buffer to complete the startup.
优选地,在所述步骤S230中,特权操作系统启动模块使特权操作系统还加载虚拟网卡模块;Preferably, in the step S230, the privileged operating system startup module causes the privileged operating system to also load the virtual network card module;
在所述步骤S260中,非特权操作系统启动模块使非特权操作系统保留核心间通信缓冲区后,还加载虚拟网卡模块;In said step S260, after the non-privileged operating system startup module makes the non-privileged operating system reserve the inter-core communication buffer, it also loads the virtual network card module;
所述虚拟网卡模块用于操作系统之间的通信。The virtual network card module is used for communication between operating systems.
优选地,在步骤S240中,非特权操作系统启动处理模块根据用户输入的命令和特权操作系统保存的非特权操作系统启动参数还将跳板模块的代码拷贝到要启动非特权操作系统的分区的内存区域;Preferably, in step S240, the non-privileged operating system startup processing module also copies the code of the springboard module to the memory of the partition to start the non-privileged operating system according to the command input by the user and the non-privileged operating system startup parameters saved by the privileged operating system area;
在所述步骤S250中,非特权操作系统启动模块给非特权操作系统的处理器和/或处理器核发送启动命令并使其执行跳板代码;执行所述跳板代码用于修改跳板自身页表和非特权操作系统页表,使其映射到非特权操作系统代码映像处,并使非特权操作系统的处理器和/或处理器核跳转到非特权操作系统映像处执行。In the step S250, the non-privileged operating system startup module sends a startup command to the processor and/or processor core of the non-privileged operating system and makes it execute the springboard code; executing the springboard code is used to modify the springboard's own page table and The non-privileged operating system page table is mapped to the non-privileged operating system code image, and the processor and/or processor core of the non-privileged operating system jumps to the non-privileged operating system image for execution.
优选地,所述用户输入的命令包括指定要启动的非特权操作系统;所述非特权操作系统的启动参数包括非特权操作系统的内存起始位置,跳板代码的起始地址以及非特权操作系统代码映像的起始地址。Preferably, the command input by the user includes specifying the non-privileged operating system to be started; the startup parameters of the non-privileged operating system include the memory starting position of the non-privileged operating system, the starting address of the springboard code, and the non-privileged operating system The starting address of the code image.
优选地,所述修改内存管理内容包括限制页表映射范围,根据分区内存范围修改虚实地址转换方式。Preferably, said modifying the memory management content includes limiting the page table mapping range, and modifying the virtual-real address conversion method according to the partition memory range.
优选地,还包括步骤S300,采用异构式资源管理方式来管理多核处理系统资源。所述多核处理系统的资源包括内存资源和处理器资源和/或处理器核资源及输入输出资源。Preferably, the method further includes step S300 of managing multi-core processing system resources in a heterogeneous resource management manner. The resources of the multi-core processing system include memory resources and processor resources and/or processor core resources and input and output resources.
优选地,所述步骤S300具体包括以下步骤:Preferably, the step S300 specifically includes the following steps:
步骤S310,各个操作系统独立管理相应的内存资源和处理器资源和/或处理器核资源;Step S310, each operating system independently manages corresponding memory resources, processor resources and/or processor core resources;
步骤S320,处理器资源和/或处理器核资源和内存资源经过共享协议,在分区之间共享;Step S320, processor resources and/or processor core resources and memory resources are shared between partitions through a sharing protocol;
步骤S330,特权操作系统能够访问系统的输入输出资源,非特权操作系统需要通过特权操作系统的代理才能访问输入输出资源。Step S330, the privileged operating system can access the input and output resources of the system, and the non-privileged operating system can access the input and output resources only through the proxy of the privileged operating system.
本发明所产生的有益效果是:The beneficial effects produced by the present invention are:
(1)由于每个分区内的处理器核和/或处理器的数目相对较少,所以分区上的单个操作系统的性能可以随着处理器和/或处理器核数目的增长而不断增长,有效的利用了日益丰富的处理器资源。(1) Since the number of processor cores and/or processors in each partition is relatively small, the performance of a single operating system on a partition can continuously increase with the increase of the number of processors and/or processor cores, Effective use of increasingly abundant processor resources.
(2)由于在所有分区之间通过操作系统的虚拟网卡模块建立一套基于内存操作的内部网络,使得各个分区上的操作系统可以高效地协同工作,并使整个多处理器核和/或多处理器系统取得很高的并行性能。(2) Since a set of internal network based on memory operation is established between all partitions through the virtual network card module of the operating system, the operating systems on each partition can work together efficiently, and the entire multi-processor core and/or multi-processor The processor system achieves high parallel performance.
(3)本发明不需要任何特殊的硬件支持,可以在任何通用的平台上,很好的解决对称多处理系统的可扩展性问题。(3) The present invention does not require any special hardware support, and can well solve the scalability problem of the symmetric multiprocessing system on any common platform.
(4)本发明提出的操作系统管理方法,大大增强了本系统的可管理性和灵活性。(4) The operating system management method proposed by the present invention greatly enhances the manageability and flexibility of the system.
(5)本发明采用异构式资源管理方式,加强了整个系统的安全性和功能隔离性。(5) The present invention adopts a heterogeneous resource management mode, which strengthens the security and functional isolation of the entire system.
附图说明 Description of drawings
图1为传统的对称多处理系统结构图。Figure 1 is a structural diagram of a traditional symmetric multiprocessing system.
图2为本发明一实施例中的多核处理系统结构图。FIG. 2 is a structural diagram of a multi-core processing system in an embodiment of the present invention.
图3为本发明一实施例中的多核处理系统管理方法的流程图。FIG. 3 is a flowchart of a management method for a multi-core processing system according to an embodiment of the present invention.
图4为图3中步骤S200的具体流程图。FIG. 4 is a specific flowchart of step S200 in FIG. 3 .
图5为图3中步骤S300的具体流程图。FIG. 5 is a specific flowchart of step S300 in FIG. 3 .
具体实施方式 Detailed ways
下面结合附图与具体实施方式对本发明作进一步详细描述。The present invention will be further described in detail below in conjunction with the accompanying drawings and specific embodiments.
如图2所示,为本发明的多核处理系统的结构图,包括多个处理器核和/或多个处理器,其还包括分区模块和启动模块。As shown in FIG. 2 , it is a structural diagram of the multi-core processing system of the present invention, which includes multiple processor cores and/or multiple processors, and also includes a partition module and a startup module.
分区模块:用户根据计算机的处理器和/或处理器核和内存配置,指定各个分区的资源配置,每个分区包括至少一个处理器和/或一个处理器核,并把每个分区的资源通过Grub参数传递给操作系统(例如,参数“cpumask=13,mem1=1024M,mem2=512M”表示整个系统有两个分区:第一个分区有1个单核处理器或处理器核,1024M内存;第二个分区有三个单核处理器和/或处理器核,512M内存)。分区模块解析这些参数,并保存在操作系统中。Partition module: The user specifies the resource configuration of each partition according to the computer's processor and/or processor core and memory configuration. Each partition includes at least one processor and/or one processor core, and the resources of each partition are passed through The Grub parameter is passed to the operating system (for example, the parameter "cpumask=13, mem1=1024M, mem2=512M" indicates that the entire system has two partitions: the first partition has a single-core processor or processor core, and 1024M memory; The second partition has three single-core processors and/or processor cores, 512M memory). The partition module parses these parameters and saves them in the operating system.
启动模块:根据分区模块解析的分区资源配置参数,启动特权操作系统和受特权操作系统管理的非特权操作系统。Startup module: start the privileged operating system and the non-privileged operating system managed by the privileged operating system according to the partition resource configuration parameters parsed by the partitioning module.
所述的启动模块,包括特权操作系统启动模块、非特权操作系统启动处理模块和非特权操作系统启动模块。其中:The starting module includes a privileged operating system starting module, a non-privileged operating system starting processing module and a non-privileged operating system starting module. in:
所述特权操作系统启动模块,用于根据分区模块的分区配置,在第一分区的内存区域内配置保留自身的处理器和/或处理器核间通信缓冲区,利用Grub启动参数,完成自身的初始化,并加载非特权操作系统启动处理模块,以完成启动。优选地,所述特权操作系统启动模块使特权操作系统还加载虚拟网卡模块,用于通过共享内存来完成操作系统间的通信。The privileged operating system startup module is used to configure and reserve its own processor and/or inter-processor core communication buffer in the memory area of the first partition according to the partition configuration of the partition module, and use the Grub startup parameters to complete its own Initialize and load the non-privileged operating system boot processing module to complete the boot. Preferably, the privileged operating system startup module enables the privileged operating system to also load a virtual network card module for completing communication between operating systems through shared memory.
所述虚拟网卡模块,用于操作系统之间通信。该虚拟网卡模块使用软件模拟常规网卡的功能,将内存拷贝原语封装成消息传递原语,以在多个操作系统间提供高速通信,并遵守TCP/IP协议。The virtual network card module is used for communication between operating systems. The virtual network card module uses software to simulate the function of a conventional network card, encapsulates memory copy primitives into message passing primitives, provides high-speed communication between multiple operating systems, and complies with the TCP/IP protocol.
所述的非特权操作系统启动处理模块,用于在启动非特权操作系统时,根据用户输入的命令和特权操作系统保存的非特权操作系统启动参数,在用户指定的用于启动非特权操作系统的分区(比如第二分区)的内存区域内内设置非特权操作系统代码映像、非特权操作系统的启动参数。优选地,所述的非特权操作系统启动处理模块还在在所述用户指定的用于启动非特权操作系统的分区的内存区域内设置跳板模块的代码;用户输入命令包括指定要启动第几个非特权操作系统。特权操作系统保存的用于非特权操作系统的启动参数包括非特权操作系统的内存起始位置,跳板代码以及非特权操作系统代码映像的起始地址等。The non-privileged operating system startup processing module is used to start the non-privileged operating system according to the command input by the user and the non-privileged operating system startup parameters saved by the privileged operating system when starting the non-privileged operating system. The non-privileged operating system code image and the startup parameters of the non-privileged operating system are set in the memory area of the partition (such as the second partition). Preferably, the non-privileged operating system startup processing module also sets the code of the springboard module in the memory area of the partition designated by the user for starting the non-privileged operating system; the user input command includes specifying which Unprivileged operating system. The startup parameters for the non-privileged operating system saved by the privileged operating system include the starting address of the memory of the non-privileged operating system, the springboard code, and the starting address of the code image of the non-privileged operating system.
所述跳板模块,用于执行跳板代码,完成部分初始化任务(如处理器和/或处理器核模式转变等),并修改跳板自身页表和非特权操作系统页表,完成跳转和处理器和/或处理器核模式转换。The springboard module is used to execute the springboard code, complete some initialization tasks (such as processor and/or processor core mode transition, etc.), and modify the springboard's own page table and non-privileged operating system page table to complete the jump and processor and/or processor core mode transitions.
所述非特权操作系统启动模块,向所述用户指定的用于启动非特权操作系统的分区中处理器和/或处理器核发出启动命令,令其执行跳板模块;所述跳板模块使非特权操作系统的处理器和/或处理器核根据跳板模块跳转到非特权操作系统代码映像处执行启动操作,并在所述用户指定的用于启动非特权操作系统的分区的内存区域内保留非特权操作系统通信缓冲区,完成非特权操作系统初始化,完成启动。优选地,所述非特权操作系统启动模块使非特权操作系统在所述用户指定的用于启动非特权操作系统的分区的内存区域内保留非特权操作系统通信缓冲区后,还使非特权操作系统加载用于操作系统间通信的虚拟网卡模块。The non-privileged operating system startup module sends a startup command to the processor and/or processor core in the partition designated by the user for starting the non-privileged operating system to make it execute the springboard module; the springboard module enables the non-privileged The processor and/or processor core of the operating system jumps to the non-privileged operating system code image according to the springboard module to perform the startup operation, and reserves the non-privileged operating system in the memory area of the partition designated by the user for starting the non-privileged operating system. Privileged operating system communication buffer, complete unprivileged operating system initialization, and complete startup. Preferably, after the non-privileged operating system startup module makes the non-privileged operating system reserve the non-privileged operating system communication buffer in the memory area of the partition designated by the user for starting the non-privileged operating system, it also enables the non-privileged operation The system loads a virtual network card module for communication between operating systems.
本发明的多核处理系统,通过分区的操作系统启动,可以使各个非特权操作系统并行启动,大大减小了整个系统的启动时间;同时,用户只需通过修改Grub参数,就可以自由选择各个多处理器核和/或者处理器和内存配置,其增强了整个系统的灵活性和可管理性;最后,用户可以在不影响特权核心操作系统的情况下,多次启动、关闭非特权核心操作系统,增强整个多核处理系统的可靠性。The multi-core processing system of the present invention can start each non-privileged operating system in parallel by starting the partitioned operating system, which greatly reduces the startup time of the whole system; at the same time, the user can freely select each multi-core system by modifying the Grub parameters. Processor cores and/or processor and memory configurations, which enhance overall system flexibility and manageability; finally, users can boot and shut down non-privileged core operating systems multiple times without affecting privileged core operating systems , enhance the reliability of the whole multi-core processing system.
更佳地,本发明的多核处理系统,还包括资源管理模块,用于利用异构式资源管理方式来管理多核处理系统的资源,其各个操作系统独立管理自己的内存和处理器资源和/或处理器核资源,所述多核处理系统的资源包括内存资源和处理器资源和/或处理器核资源及输入输出资源;处理器资源和/或处理器核资源和内存资源经过共享协议,可以在所述分区之间共享;只有特权操作系统可以访问系统的输入输出资源,非特权操作系统通过特权操作系统的代理才能访问输入输出资源。More preferably, the multi-core processing system of the present invention further includes a resource management module, which is used to manage the resources of the multi-core processing system in a heterogeneous resource management manner, and each operating system independently manages its own memory and processor resources and/or Processor core resources, the resources of the multi-core processing system include memory resources and processor resources and/or processor core resources and input and output resources; processor resources and/or processor core resources and memory resources can be shared in the The partitions are shared; only the privileged operating system can access the input and output resources of the system, and the non-privileged operating system can access the input and output resources through the agent of the privileged operating system.
所述代理输入输出资源的代理是一种现有技术,在本发明中不再一一详细描述。The proxy of the proxy input and output resources is a prior art, and will not be described in detail in the present invention.
如图2所示,计算机底层硬件配置了8个处理器,分别用标号15~22来表示。As shown in Fig. 2, the underlying hardware of the computer is equipped with 8 processors, which are represented by numbers 15-22 respectively.
作为一种可实现方式,本发明的实施例中,分区模块把它们分为四个处理器分区:第一处理器分区,包括处理器15;第二处理器分区,包括处理器16~17;第三处理器分区,包括处理器18~20;第四处理器分区,包括处理器21~22。As an implementable manner, in the embodiment of the present invention, the partition module divides them into four processor partitions: the first processor partition includes
在每个处理器分区上可以运行一个对称多处理操作系统,对应地分别用标号9~12表示。A symmetric multi-processing operating system can run on each processor partition, which is correspondingly denoted by numbers 9-12 respectively.
作为本发明的实施例,将操作系统9设置为特权操作系统,可以访问硬件资源(如输入输出资源),负责输入输出,并和用户交互,以及给其它非特权操作系统分配任务。其它操作系统10~12为非特权操作系统,主要用于执行特权操作系统9分配的任务,而且必须由特权操作系统9代理才能进行输入输出操作。由于各操作系统9~12管理的处理器数目都较少,所以各操作系统9~12的个体性能不会受到对称多处理系统可扩展性的影响,会随着处理器数目的增长而不断增长。As an embodiment of the present invention, the
图2中,标号14表示一套基于内存操作的内部网络,负责各个操作系统9~12之间的通信,并支持TCP/IP协议。内部网络14包括位于每个操作系统中的虚拟网卡模块,图中仅用标号表示出位于操作系统9中的虚拟网卡模块13。在这种系统结构下,应用程序5~8可以并行的在操作系统9~12上运行,使整个系统取得很高的并行性能,有效的解决了对称多处理系统的可扩展性问题。In Fig. 2,
下面以Linux系统为例,进一步详细说明本发明的多核处理系统的管理方法,即本发明的多核管理方法,但是应当说明的是,本领域的技术人员,也可以利用本发明的技术方案,利用其熟知的计算机语言,实现本发明的多核处理系统,但这种实现也在本发明的保护范围之内。如图3所示,本发明的多核处理系统的管理方法包括以下步骤:Taking the Linux system as an example below, the management method of the multi-core processing system of the present invention, that is, the multi-core management method of the present invention, is further described in detail, but it should be noted that those skilled in the art can also use the technical solution of the present invention to utilize Its well-known computer language realizes the multi-core processing system of the present invention, but this realization is also within the protection scope of the present invention. As shown in Figure 3, the management method of the multi-core processing system of the present invention comprises the following steps:
步骤S100,用户根据计算机的处理器和/或处理器核和内存配置,指定各个分区的资源,每个分区包括至少一个处理器和/或一个处理器核,并把每个分区的资源通过Grub参数传递给操作系统(例如,参数“cpumask=13,mem1=1024M,mem2=512M”表示整个系统有两个分区:第一个分区有1个单核处理器或处理器核,1024M内存;第二个分区有三个单核处理器和/或处理器核,512M内存)。分区模块解析这些参数,并保存在操作系统中。此处的分区模块解析参数的方法采用本领域的常规技术。Step S100, the user specifies the resources of each partition according to the processor and/or processor core and memory configuration of the computer, each partition includes at least one processor and/or one processor core, and passes the resources of each partition through Grub The parameter is passed to the operating system (for example, the parameter "cpumask=13, mem1=1024M, mem2=512M" indicates that the entire system has two partitions: the first partition has a single-core processor or processor core, and 1024M memory; The second partition has three single-core processors and/or processor cores, 512M memory). The partition module parses these parameters and saves them in the operating system. The method for parsing parameters by the partition module here adopts conventional techniques in the art.
步骤S200,根据分区模块解析的分区资源参数,启动特权操作系统和受特权操作系统管理的非特权操作系统。Step S200, start the privileged operating system and the non-privileged operating system managed by the privileged operating system according to the partition resource parameters analyzed by the partitioning module.
如图4所示,步骤S200具体包括下列步骤:As shown in Figure 4, step S200 specifically includes the following steps:
步骤S210,启动模块中的特权操作系统启动模块,根据分区模块的分区配置,在本分区的内存资源中,保留一块内存区域作为核心间通信缓冲区。本发明中保留内存区域的方法采用本领域的常规技术;In step S210, the privileged operating system startup module in the startup module reserves a memory area in the memory resources of the partition as an inter-core communication buffer according to the partition configuration of the partition module. The method for reserving the memory area in the present invention adopts conventional techniques in the art;
步骤S220,特权操作系统启动模块利用Grub启动参数,完成自身的初始化。本发明特权操作系统的启动过程与LINUX操作系统的启动方式相同,本领域技术人员根据现有技术能够实现;Step S220, the privileged operating system startup module uses the Grub startup parameters to complete its own initialization. The start-up process of the privileged operating system of the present invention is the same as the start-up mode of the LINUX operating system, and those skilled in the art can realize according to the prior art;
步骤S230,特权操作系统加载启动模块中的非特权操作系统启动处理模块。此处的加载方法采用本领域的常规加载操作系统模块方法。优选地,特权操作系统还加载用于操作系统之间通信的虚拟网卡模块。Step S230, the privileged operating system loads the non-privileged operating system startup processing module in the startup module. The loading method here adopts the conventional loading operating system module method in the art. Preferably, the privileged operating system also loads a virtual network card module for communication between operating systems.
步骤S240,非特权操作系统启动处理模块根据用户输入的命令和特权操作系统保存的非特权操作系统启动参数,将非特权操作系统代码映像和非特权操作系统的其它启动参数(如CPU性能参数,全局时钟参数等)拷贝到用户指定的用于启动非特权操作系统的分区的内存区域。优选地,非特权操作系统启动处理模块还将跳板模块的代码拷贝到用户指定的用于启动非特权操作系统的分区的内存区域;所述用户输入命令包括指定要启动第几个非特权操作系统;所述特权操作系统保存的用于非特权操作系统的启动参数包括非特权操作系统的内存起始位置,跳板代码以及内核映像的起始地址等。In step S240, the non-privileged operating system startup processing module converts the non-privileged operating system code image and other startup parameters of the non-privileged operating system (such as CPU performance parameters, Global clock parameters, etc.) are copied to the memory area of the partition designated by the user for starting the non-privileged operating system. Preferably, the non-privileged operating system startup processing module also copies the code of the springboard module to the memory area of the partition designated by the user for starting the non-privileged operating system; the user input command includes specifying which non-privileged operating system to start ; The startup parameters for the non-privileged operating system saved by the privileged operating system include the starting address of the memory of the non-privileged operating system, the springboard code, and the starting address of the kernel image.
步骤S250,非特权操作系统启动模块给非特权操作系统的处理器和/或处理器核发送启动命令使其到非特权操作系统映像处执行。优选地,非特权操作系统启动模块给非特权操作系统的处理器和/或处理器核发送启动命令(如发送处理器间中断)并使其执行跳板代码;执行所述跳板代码用于修改跳板自身页表和非特权操作系统页表,使其映射到非特权操作系统代码映像处,并使非特权操作系统的处理器和/或处理器核跳转到非特权操作系统映像处执行。Step S250, the non-privileged operating system startup module sends a startup command to the processor and/or processor core of the non-privileged operating system to execute on the non-privileged operating system image. Preferably, the non-privileged operating system startup module sends a startup command (such as sending an interprocessor interrupt) to the processor and/or processor core of the non-privileged operating system and makes it execute the springboard code; executing the springboard code is used to modify the springboard The own page table and the non-privileged operating system page table are mapped to the non-privileged operating system code image, and the processor and/or processor core of the non-privileged operating system jump to the non-privileged operating system image for execution.
步骤S260,非特权操作系统启动模块使非特权操作系统修改内存管理相关内容,使其在自身分区内完成操作系统的启动,并在内存区域中保留核心间通信缓冲区,完成启动。优选地,非特权操作系统启动模块使非特权操作系统保留核心间通信缓冲区后,还加载虚拟网卡模块,用于各个操作系统之间的高效通信。保留通信缓冲区、加载核心间通信模块的方法与传统方法相同。对内存管理的修改包括限制页表映射范围,根据分区内存范围修改虚实地址转换方式等。Step S260, the non-privileged operating system startup module enables the non-privileged operating system to modify memory management-related content, so that it can complete the startup of the operating system in its own partition, and reserve the inter-core communication buffer in the memory area to complete the startup. Preferably, after the non-privileged operating system startup module enables the non-privileged operating system to reserve the inter-core communication buffer, it also loads the virtual network card module for efficient communication between various operating systems. The method of reserving the communication buffer and loading the inter-core communication module is the same as the traditional method. Modifications to memory management include limiting the page table mapping range, modifying virtual and real address translation methods according to the partition memory range, and so on.
较佳地,所述多核处理系统的管理方法,还包括下列步骤:Preferably, the management method of the multi-core processing system further includes the following steps:
步骤S300,采用异构式资源管理方式来管理多核处理系统的资源。所述多核处理系统的资源包括内存资源、处理器资源和/或处理器核资源和输入输出资源。In step S300, resources of the multi-core processing system are managed in a heterogeneous resource management manner. The resources of the multi-core processing system include memory resources, processor resources and/or processor core resources and input and output resources.
如图5所示,步骤S300具体包括如下步骤:As shown in Figure 5, step S300 specifically includes the following steps:
步骤S310,各个操作系统独立管理自身的内存资源和处理器资源和/或处理器核资源,操作系统在经授权的方式下,访问其它分区的处理器资源和/或处理器核资源和内存资源。这样保证了整个系统的安全性和功能隔离,并避免了对称多处理系统的可扩展性问题;Step S310, each operating system independently manages its own memory resources, processor resources and/or processor core resources, and the operating system accesses processor resources and/or processor core resources and memory resources of other partitions in an authorized manner . This ensures the security and functional isolation of the entire system, and avoids the scalability problem of symmetric multiprocessing systems;
步骤S320,处理器资源和/或处理器核资源和内存资源经过共享协议,在分区之间动态流动,保证了整个资源的负载平衡;In step S320, processor resources and/or processor core resources and memory resources dynamically flow between partitions through a sharing protocol, ensuring load balance of the entire resource;
步骤S330,只有特权操作系统可以访问系统的输入输出资源,其它非特权操作系统需要通过特权操作系统的代理才能访问输入输出资源。In step S330, only the privileged operating system can access the input and output resources of the system, and other non-privileged operating systems can access the input and output resources only through the agent of the privileged operating system.
这种异构式的资源管理方式,使得特权操作系统负责整个系统的资源调度和任务分配,并与用户进行交互;同时,非特权操作系统不用关心除了处理器(CPU)和/或处理器核和内存外的其它资源,可以更加有效的执行计算任务;底层基于内存的内部网络,使得特权操作系统和非特权操作系统可以更加快速的进行交互,减少了操作系统间通信的延迟。This heterogeneous resource management method makes the privileged operating system responsible for resource scheduling and task allocation of the entire system, and interacts with users; Computing tasks can be performed more efficiently with other resources outside the memory; the underlying memory-based internal network enables privileged operating systems and non-privileged operating systems to interact more quickly, reducing communication delays between operating systems.
本发明的多核处理系统,解决了SMP可扩展性的问题,同时可以使各个非特权操作系统并行启动,大大减小了整个系统的启动时间;同时,用户只需通过修改Grub参数,就可以自由选择各个核心的处理器和/或处理器核和内存配置,增强了整个系统的灵活性和可管理性;最后,用户可以在不影响特权核心的情况下,多次启动、关闭非特权核心,增强了整个系统的可靠性。The multi-core processing system of the present invention solves the problem of SMP scalability, and at the same time enables each non-privileged operating system to start in parallel, greatly reducing the start-up time of the entire system; at the same time, users only need to modify the Grub parameters to freely Selecting processors and/or processor cores and memory configurations for each core enhances the flexibility and manageability of the entire system; finally, users can enable and disable non-privileged cores multiple times without affecting privileged cores, Enhanced the reliability of the whole system.
以上所述内容,仅为本发明具体的实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围内。The above-mentioned content is only a specific embodiment of the present invention, but the scope of protection of the present invention is not limited thereto. Any person familiar with the technical field can easily think of changes or substitutions within the technical scope disclosed in the present invention. , should be covered within the protection scope of the present invention.
Claims (14)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2007101764934A CN100524286C (en) | 2007-10-29 | 2007-10-29 | Multiple core processing system and its management method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2007101764934A CN100524286C (en) | 2007-10-29 | 2007-10-29 | Multiple core processing system and its management method |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101149728A true CN101149728A (en) | 2008-03-26 |
CN100524286C CN100524286C (en) | 2009-08-05 |
Family
ID=39250259
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2007101764934A Expired - Fee Related CN100524286C (en) | 2007-10-29 | 2007-10-29 | Multiple core processing system and its management method |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100524286C (en) |
Cited By (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101788920A (en) * | 2010-02-05 | 2010-07-28 | 北京航空航天大学 | CPU virtualization method based on processor partitioning technology |
CN101901207A (en) * | 2010-07-23 | 2010-12-01 | 中国科学院计算技术研究所 | Operating System and Working Method of Heterogeneous Shared Memory Multiprocessor System |
CN102053869A (en) * | 2009-10-29 | 2011-05-11 | 杭州华三通信技术有限公司 | Resource allocation method and device for multi-operation system |
CN101634979B (en) * | 2008-07-22 | 2011-09-07 | 中国科学院计算技术研究所 | Multi-core processor satisfying SystemC syntax |
CN102193898A (en) * | 2010-03-05 | 2011-09-21 | 华硕电脑股份有限公司 | Central processing unit opening core device of computer system |
CN103150217A (en) * | 2013-03-27 | 2013-06-12 | 无锡江南计算技术研究所 | Design method of multi-core processor operating system |
CN103207782A (en) * | 2013-03-27 | 2013-07-17 | 北京航空航天大学 | Method for establishing partition system based on multi-kernel MOS (Module Operating System) |
WO2014190486A1 (en) * | 2013-05-28 | 2014-12-04 | 华为技术有限公司 | Method and system for supporting resource isolation under multi-core architecture |
CN104503800A (en) * | 2014-12-29 | 2015-04-08 | 宇龙计算机通信科技(深圳)有限公司 | Starting-up resource setting method and starting-up resource setting device |
CN104714843A (en) * | 2013-12-17 | 2015-06-17 | 华为技术有限公司 | Method and device supporting multiple processors through multi-kernel operating system living examples |
CN104714924A (en) * | 2013-12-12 | 2015-06-17 | 华为技术有限公司 | Resource control method and device |
CN104714844A (en) * | 2013-12-17 | 2015-06-17 | 华为技术有限公司 | Lightweight operating system deployment method and device |
CN104809002A (en) * | 2015-05-26 | 2015-07-29 | 中国科学院自动化研究所 | Execution method for multi-layer application program of heterogeneous multi-core processor and processor |
CN106648758A (en) * | 2016-11-30 | 2017-05-10 | 中国电子科技集团公司第五十八研究所 | Multi-core processor BOOT starting system and method |
CN104216862B (en) * | 2013-05-29 | 2017-08-04 | 华为技术有限公司 | Communication method and device between user process and system service |
WO2017174000A1 (en) * | 2016-04-06 | 2017-10-12 | Huawei Technologies Co., Ltd. | Dynamic partitioning of processing hardware |
CN108108199A (en) * | 2017-12-21 | 2018-06-01 | 北京东土科技股份有限公司 | Multiple operating system starts method and device on a kind of multi-core CPU |
CN108255527A (en) * | 2017-12-05 | 2018-07-06 | 华为技术有限公司 | The method and apparatus of activation system, computing device, readable storage medium storing program for executing |
CN109542831A (en) * | 2018-10-28 | 2019-03-29 | 西南电子技术研究所(中国电子科技集团公司第十研究所) | Airborne platform multi-core virtual multidomain treat-ment system |
CN110334509A (en) * | 2019-07-08 | 2019-10-15 | 北京可信华泰信息技术有限公司 | The construction method and device of the credible calculating platform of binary system structure |
CN110334512A (en) * | 2019-07-08 | 2019-10-15 | 北京可信华泰信息技术有限公司 | The staticametric method and apparatus of credible calculating platform based on binary system structure |
CN110414235A (en) * | 2019-07-08 | 2019-11-05 | 北京可信华泰信息技术有限公司 | A kind of dual Architecture system of the active immunity based on ARM TrustZone |
CN113721989A (en) * | 2021-07-19 | 2021-11-30 | 陆放 | Multiprocessor parallel operation system and computer architecture |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100514305C (en) * | 2005-08-23 | 2009-07-15 | 北京软通科技有限责任公司 | System and method for implementing safety control of operation system |
CN1952890B (en) * | 2005-10-21 | 2010-05-05 | 神基科技股份有限公司 | Computer starting method and computer device using same |
CN100492291C (en) * | 2005-10-21 | 2009-05-27 | 神基科技股份有限公司 | Computer system with instant start function and processing method thereof |
-
2007
- 2007-10-29 CN CNB2007101764934A patent/CN100524286C/en not_active Expired - Fee Related
Cited By (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101634979B (en) * | 2008-07-22 | 2011-09-07 | 中国科学院计算技术研究所 | Multi-core processor satisfying SystemC syntax |
CN102053869A (en) * | 2009-10-29 | 2011-05-11 | 杭州华三通信技术有限公司 | Resource allocation method and device for multi-operation system |
CN102053869B (en) * | 2009-10-29 | 2013-11-06 | 杭州华三通信技术有限公司 | Resource allocation method and device for multi-operation system |
CN101788920A (en) * | 2010-02-05 | 2010-07-28 | 北京航空航天大学 | CPU virtualization method based on processor partitioning technology |
CN102193898A (en) * | 2010-03-05 | 2011-09-21 | 华硕电脑股份有限公司 | Central processing unit opening core device of computer system |
CN102193898B (en) * | 2010-03-05 | 2013-07-10 | 华硕电脑股份有限公司 | Central processing unit opening core device of computer system |
CN101901207A (en) * | 2010-07-23 | 2010-12-01 | 中国科学院计算技术研究所 | Operating System and Working Method of Heterogeneous Shared Memory Multiprocessor System |
CN101901207B (en) * | 2010-07-23 | 2012-03-28 | 中国科学院计算技术研究所 | Operating System and Working Method of Heterogeneous Shared Memory Multiprocessor System |
CN103150217A (en) * | 2013-03-27 | 2013-06-12 | 无锡江南计算技术研究所 | Design method of multi-core processor operating system |
CN103207782A (en) * | 2013-03-27 | 2013-07-17 | 北京航空航天大学 | Method for establishing partition system based on multi-kernel MOS (Module Operating System) |
US9411646B2 (en) | 2013-05-28 | 2016-08-09 | Huawei Technologies Co., Ltd. | Booting secondary processors in multicore system using kernel images stored in private memory segments |
WO2014190486A1 (en) * | 2013-05-28 | 2014-12-04 | 华为技术有限公司 | Method and system for supporting resource isolation under multi-core architecture |
CN104216862B (en) * | 2013-05-29 | 2017-08-04 | 华为技术有限公司 | Communication method and device between user process and system service |
CN104714924A (en) * | 2013-12-12 | 2015-06-17 | 华为技术有限公司 | Resource control method and device |
CN104714924B (en) * | 2013-12-12 | 2018-07-13 | 华为技术有限公司 | A kind of resource control method and device |
CN104714844B (en) * | 2013-12-17 | 2018-06-26 | 华为技术有限公司 | Lightweight allocating operating system method and device |
CN104714843A (en) * | 2013-12-17 | 2015-06-17 | 华为技术有限公司 | Method and device supporting multiple processors through multi-kernel operating system living examples |
CN104714844A (en) * | 2013-12-17 | 2015-06-17 | 华为技术有限公司 | Lightweight operating system deployment method and device |
CN104714843B (en) * | 2013-12-17 | 2018-06-15 | 华为技术有限公司 | More kernel operating system instances support the method and device of multiprocessor |
CN104503800B (en) * | 2014-12-29 | 2019-03-22 | 宇龙计算机通信科技(深圳)有限公司 | Be switched on resource arrangement method and booting resource allocation device |
CN104503800A (en) * | 2014-12-29 | 2015-04-08 | 宇龙计算机通信科技(深圳)有限公司 | Starting-up resource setting method and starting-up resource setting device |
CN104809002A (en) * | 2015-05-26 | 2015-07-29 | 中国科学院自动化研究所 | Execution method for multi-layer application program of heterogeneous multi-core processor and processor |
CN104809002B (en) * | 2015-05-26 | 2018-05-11 | 北京思朗科技有限责任公司 | The execution method and processor of heterogeneous multi-nucleus processor Multi-tiers Application |
US10133504B2 (en) | 2016-04-06 | 2018-11-20 | Futurewei Technologies, Inc. | Dynamic partitioning of processing hardware |
WO2017174000A1 (en) * | 2016-04-06 | 2017-10-12 | Huawei Technologies Co., Ltd. | Dynamic partitioning of processing hardware |
CN106648758A (en) * | 2016-11-30 | 2017-05-10 | 中国电子科技集团公司第五十八研究所 | Multi-core processor BOOT starting system and method |
CN108255527A (en) * | 2017-12-05 | 2018-07-06 | 华为技术有限公司 | The method and apparatus of activation system, computing device, readable storage medium storing program for executing |
CN108108199A (en) * | 2017-12-21 | 2018-06-01 | 北京东土科技股份有限公司 | Multiple operating system starts method and device on a kind of multi-core CPU |
CN109542831A (en) * | 2018-10-28 | 2019-03-29 | 西南电子技术研究所(中国电子科技集团公司第十研究所) | Airborne platform multi-core virtual multidomain treat-ment system |
CN110334509A (en) * | 2019-07-08 | 2019-10-15 | 北京可信华泰信息技术有限公司 | The construction method and device of the credible calculating platform of binary system structure |
CN110334512A (en) * | 2019-07-08 | 2019-10-15 | 北京可信华泰信息技术有限公司 | The staticametric method and apparatus of credible calculating platform based on binary system structure |
CN110414235A (en) * | 2019-07-08 | 2019-11-05 | 北京可信华泰信息技术有限公司 | A kind of dual Architecture system of the active immunity based on ARM TrustZone |
CN110334509B (en) * | 2019-07-08 | 2021-08-13 | 北京可信华泰信息技术有限公司 | Method and device for constructing trusted computing platform of dual-system architecture |
CN113721989A (en) * | 2021-07-19 | 2021-11-30 | 陆放 | Multiprocessor parallel operation system and computer architecture |
Also Published As
Publication number | Publication date |
---|---|
CN100524286C (en) | 2009-08-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101149728A (en) | A kind of multi-core processing system and its management method | |
Wu et al. | Transparent {GPU} sharing in container clouds for deep learning workloads | |
Lagar-Cavilla et al. | Snowflock: Virtual machine cloning as a first-class cloud primitive | |
CN100511151C (en) | Multiple-path multiple-core server and CPU virtualization processing method thereof | |
Kalé et al. | A malleable-job system for timeshared parallel machines | |
Nightingale et al. | Helios: heterogeneous multiprocessing with satellite kernels | |
Gu et al. | A state-of-the-art survey on real-time issues in embedded systems virtualization | |
JP5106036B2 (en) | Method, computer system and computer program for providing policy-based operating system services within a hypervisor on a computer system | |
Si et al. | Casper: An asynchronous progress model for MPI RMA on many-core architectures | |
CN101271401B (en) | A server farm system with a single system image | |
US20060206891A1 (en) | System and method of maintaining strict hardware affinity in a virtualized logical partitioned (LPAR) multiprocessor system while allowing one processor to donate excess processor cycles to other partitions when warranted | |
US9804874B2 (en) | Consolidation of idle virtual machines on idle logical processors | |
Cheng et al. | vscale: Automatic and efficient processor scaling for smp virtual machines | |
Siavashi et al. | GPUCloudSim: an extension of CloudSim for modeling and simulation of GPUs in cloud data centers | |
Gohringer et al. | RAMPSoCVM: runtime support and hardware virtualization for a runtime adaptive MPSoC | |
CN116360941A (en) | Multi-core DSP-oriented parallel computing resource organization scheduling method and system | |
Thomadakis et al. | Toward runtime support for unstructured and dynamic exascale-era applications | |
Hetherington et al. | Edge: Event-driven gpu execution | |
Mvondo et al. | Tell me when you are sleepy and what may wake you up! | |
AT&T | ||
Zaykov et al. | Reconfigurable multithreading architectures: A survey | |
CN114281529A (en) | Distributed virtualization guest operating system scheduling optimization method, system and terminal | |
Peter | Resource management in a multicore operating system | |
Rotta et al. | Mythos—scalable os design for extremely parallel applications | |
Patel et al. | {XRT}: An {Accelerator-Aware} Runtime for Accelerated Chip Multiprocessors |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20090805 |