CN104714846A - 资源处理方法、操作系统及设备 - Google Patents
资源处理方法、操作系统及设备 Download PDFInfo
- Publication number
- CN104714846A CN104714846A CN201310695461.0A CN201310695461A CN104714846A CN 104714846 A CN104714846 A CN 104714846A CN 201310695461 A CN201310695461 A CN 201310695461A CN 104714846 A CN104714846 A CN 104714846A
- Authority
- CN
- China
- Prior art keywords
- load operation
- operation system
- resource
- physical
- mos
- 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
- 238000003672 processing method Methods 0.000 title abstract 2
- 238000013507 mapping Methods 0.000 claims abstract description 193
- 238000000034 method Methods 0.000 claims abstract description 152
- 230000008569 process Effects 0.000 claims description 53
- 238000012545 processing Methods 0.000 claims description 50
- 230000005540 biological transmission Effects 0.000 claims description 29
- 238000012544 monitoring process Methods 0.000 claims description 20
- 230000006399 behavior Effects 0.000 claims description 4
- 238000007726 management method Methods 0.000 description 11
- 238000004891 communication Methods 0.000 description 10
- 230000000694 effects Effects 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 6
- 239000003795 chemical substances by application Substances 0.000 description 4
- 230000003750 conditioning effect Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 238000013519 translation Methods 0.000 description 4
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 230000009191 jumping Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- HPTJABJPZMULFH-UHFFFAOYSA-N 12-[(Cyclohexylcarbamoyl)amino]dodecanoic acid Chemical compound OC(=O)CCCCCCCCCCCNC(=O)NC1CCCCC1 HPTJABJPZMULFH-UHFFFAOYSA-N 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/24—Handling requests for interconnection or transfer for access to input/output bus using interrupt
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4403—Processor initialisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4405—Initialisation of multiprocessor systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4406—Loading of operating system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4406—Loading of operating system
- G06F9/4408—Boot device selection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5083—Techniques for rebalancing the load in a distributed system
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Stored Programmes (AREA)
Abstract
本发明实施例提供一种资源处理方法、操作系统及设备。该方法应用于多内核操作系统,多内核操作系统包括运行在宿主机的管理操作系统、多个负载操作系统、物理资源池。该方法包括:管理操作系统为各负载操作系统分配独占使用的物理资源集合,为每个负载操作系统构建启动镜像,为每个负载操作系统设置启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系,在分配给第一负载操作系统的处理器核中确定启动第一负载操作系统的启动处理器核,指示启动处理器核读取第一负载操作系统的启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系;指示启动处理器核执行预先为第一负载操作系统建立的启动镜像。
Description
技术领域
本发明实施例涉及通信技术,尤其涉及一种资源处理方法、操作系统及设备。
背景技术
目前,处理器已进入多核处理器时代,而且大多数多核处理器都支持虚拟化技术。由于多核处理器在一个芯片中集成多个处理器核,因此使并行执行成为可能。而虚拟化技术,可以将一台物理计算机转化成多台虚拟的计算机。因此,结合多核处理器和虚拟化技术,可以在一台物理计算机上同时运行多个操作系统。
现有的异构多核操作系统架构,在一台物理计算机上(宿主机)运行一个管理操作系统和多个负载操作系统。管理操作系统用于向各种应用程序和多个负载操作系统提供执行环境。负载操作系统用于向各种应用程序提供执行环境。其中,管理操作系统通过虚拟机监视器(Hypervisor)向负载操作系统提供执行环境对应的物理资源,该物理资源主要包括处理器核、物理内存和外部设备等。每个负载操作系统以独占的方式使用一个或多个处理器核,以时分复用的方式与其它负载操作系统共享相同的物理内存和外部设备等。
由于多个负载操作系统通过时分复用的方式共享相同的物理内存和外部设备等,在负载操作系统的数量较多时,则将会对各负载操作系统的运行造成延迟,从而降低了各负载操作系统的整体性能。
发明内容
本发明实施例提供一种资源处理方法、操作系统及设备,以提高负载操作系统的整体性能。
第一方面,本发明实施例提供一种资源处理方法,应用于多内核操作系统,所述多内核操作系统包括运行在宿主机的管理操作系统、多个负载操作系统、物理资源池,所述物理资源池包括所述宿主机的处理器核和物理内存,所述方法包括:
所述管理操作系统为各所述负载操作系统分配独占使用的物理资源集合,为每个负载操作系统构建启动镜像,为每个负载操作系统设置所述启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系,每个所述物理资源集合包括:所述宿主机的部分处理器核,所述宿主机的部分物理内存;
所述管理操作系统在分配给第一负载操作系统的处理器核中确定启动所述第一负载操作系统的启动处理器核,所述第一负载操作系统为任一所述负载操作系统;
所述管理操作系统指示所述启动处理器核读取所述管理操作系统预先建立的为所述第一负载操作系统的启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系,以使所述启动处理器核在所述启动镜像的执行过程中根据所述映射关系访问所述物理内存地址;指示所述启动处理器核执行预先为所述第一负载操作系统建立的启动镜像,所述启动镜像中包括所述第一负载操作系统的启动参数,所述启动参数包括分配给所述第一负载操作系统的处理器核的标识,分配给所述第一负载操作系统的物理内存地址的标识。
结合第一方面,在第一方面的第一种可能的实现方式中,所述管理操作系统指示所述启动处理器核读取所述管理操作系统预先建立的为所述第一负载操作系统的启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系;指示所述启动处理器核执行预先为所述第一负载操作系统建立的启动镜像,包括:
所述管理操作系统向所述启动处理器核发送核间中断消息,所述核间中断消息指示所述启动处理器核执行用于对所述启动处理器核初始化的所述第一负载操作系统所对应的初始化程序;
所述管理操作系统,通过指示所述启动处理器核执行所述第一负载操作系统所对应的初始化程序,指示所述启动处理器核从所述初始化程序中读取所述第一负载操作系统的所述启动镜像的执行所需的至少虚拟内存地址到物理内存地址的映射关系,指示所述启动处理器核在所述初始化程序运行结束后跳转到所述启动镜像所在物理内存位置以执行所述第一负载操作系统的启动镜像。
结合第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,所述管理操作系统为每个负载操作系统设置所述启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系之前,还包括:
所述管理操作系统为所述第一负载操作系统预先设置用于对所述第一负载操作系统进行初始化的初始化程序,在所述初始化程序中预先设置所述第一负载操作系统的启动镜像在物理内存地址的位置;
所述管理操作系统为每个负载操作系统设置所述启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系,包括:
所述管理操作系统在所述初始化程序中为所述第一负载操作系统设置所述启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系。
结合第一方面,在第一方面的第三种可能的实现方式中,所述管理操作系统在分配给第一负载操作系统的处理器核中确定启动所述第一负载操作系统的启动处理器核之前,还包括:
所述管理操作系统获取第二负载操作系统的可用处理器核,所述第二负载操作系统为所述多个负载系统中除所述第一负载操作系统之外的已注销的负载操作系统,所述可用处理器核中包括已完成启动的处理器核,所述第一负载操作系统的物理资源集合中包括所述可用处理器核;
所述管理操作系统在分配给所述第一负载操作系统的处理器核中确定启动所述第一负载操作系统的启动处理器核,包括:
当所述第一负载操作系统的物理资源集合中包括所述可用处理器核时,所述管理操作系统在所述可用处理器核中确定启动所述第一负载操作系统的启动处理器核。
结合第一方面的第三种可能的实现方式,在第一方面的第四种可能的实现方式中,所述管理操作系统在所述可用处理器核中确定启动所述第一负载操作系统的启动处理器核之后,还包括:
所述管理操作系统在所述启动处理核上为所述第一负载操作系统预先设置守护程序,在所述守护程序中预先设置所述第一负载操作系统的启动镜像在物理内存地址的位置;
所述管理操作系统为每个负载操作系统设置所述启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系,包括:
所述管理操作系统在所述守护程序中为所述第一负载操作系统设置的所述启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系。
结合第一方面的第四种可能的实现方式,在第一方面的第五种可能的实现方式中,所述管理操作系统指示所述启动处理器核读取所述管理操作系统预先建立的为所述第一负载操作系统的启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系;指示所述启动处理器核执行预先为所述第一负载操作系统建立的启动镜像,包括:
所述管理操作系统向所述启动处理器核上运行的守护程序发送核间中断消息,所述核间中断消息指示所述启动处理器核从所述守护程序中读取所述管理操作系统预先给所述第一负载操作系统建立的所述启动镜像的执行所需的虚拟内存地址到物理内存地址的映射关系;所述管理操作系统在所述守护程序中预先设置的所述第一负载操作系统对应的启动镜像在物理内存地址的位置,指示所述启动处理器核跳转到所述启动镜像所在物理内存地址的位置以执行所述第一负载操作系统的启动镜像。
结合第一方面、第一方面的第一种至第五种任一种可能的实现方式,在第一方面的第六种可能的实现方式中,所述管理操作系统为各所述负载操作系统分配独占使用的物理资源集合,包括:
所述管理操作系统根据所述负载操作系统的个数,对资源池可用物理资源列表中的物理资源的标识对应的所述物理资源池中的可用物理资源进行第一次划分,得到多个物理资源集合,所述物理资源集合的个数与所述负载操作系统的个数相等,所述管理操作系统确定各所述负载操作系统与各所述物理资源集合的对应关系;
所述管理操作系统根据所述对应关系,为各所述负载操作系统分配独占使用的物理资源集合。
结合第一方面的第六种可能的实现方式,在第一方面的第七种可能的实现方式中,每个所述物理资源集合还包括:所述宿主机的部分外部设备;
所述启动参数还包括:分配给所述第一负载操作系统的外部设备的标识,以及与所述外部设备对应的设备描述信息表。
结合第一方面的第七种可能的实现方式,在第一方面的第八种可能的实现方式中,所述管理操作系统指示所述启动处理器核执行预先为所述第一负载操作系统建立的启动镜像之后,还包括:
所述管理操作系统对所述第一负载操作系统的运行进行监控;
若分配给所述第一负载操作系统的物理资源的使用率小于第一预设阈值,则确定所述第一负载操作系统需要减少物理资源,确定需要减少的物理资源的类型标识,所述物理资源的类型标识用于区分所述物理资源为处理器核资源、物理内存资源还是外部设备资源;
所述管理操作系统根据所述需要减少的物理资源的类型标识,对所述资源池可用物理资源列表中的物理资源的标识对应的所述物理资源池中的可用物理资源进行第二次划分,减少所述第一负载操作系统的物理资源,其中,所述减少的物理资源是所述需要减少的物理资源的类型标识所对应的物理资源。
结合第一方面的第七种可能的实现方式,在第一方面的第九种可能的实现方式中,所述管理操作系统指示所述启动处理器核执行预先为所述第一负载操作系统建立的启动镜像之后,还包括:
所述管理操作系统对所述第一负载操作系统的运行进行监控;
若分配给所述第一负载操作系统的物理资源的使用率大于所述第二预设阈值,则确定所述第一负载操作系统需要增加物理资源,确定需要增加的物理资源的类型标识,所述物理资源的类型标识用于区分所述需要增加的物理资源为处理器核资源、物理内存资源还是外部设备资源;
所述管理操作系统根据所述需要增加的物理资源的类型标识,对所述资源池可用物理资源列表中的物理资源的标识对应的所述物理资源池中的可用物理资源进行第二次划分,增加所述第一负载操作系统的物理资源,其中,所述增加的物理资源是所述需要增加的物理资源的类型标识所对应的物理资源。
第二方面,本发明实施例提供一种资源处理方法,应用于多内核操作系统,所述多内核操作系统包括运行在宿主机的管理操作系统、多个负载操作系统、物理资源池,所述物理资源池包括所述宿主机的处理器核和物理内存,所述每个负载操作系统独占使用所述管理操作系统分配的物理资源集合,每个所述物理资源集合包括:所述宿主机的部分处理器核,所述宿主机的部分物理内存;所述管理操作系统预先为每个负载操作系统构建启动镜像,为每个负载操作系统设置所述启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系;所述方法包括:
第一负载操作系统的启动处理器核读取所述第一负载操作系统的启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系,所述映射关系用于使所述第一负载操作系统的启动处理器核访问所述物理内存地址;其中,所述第一负载操作系统为所述多内核操作系统中任一负载操作系统;
所述第一负载操作系统的启动处理器核按照所述管理操作系统设置的执行启动镜像跳转的指令,跳转到所述第一负载操作系统对应的启动镜像在物理内存地址的位置,根据所述映射关系执行所述第一负载操作系统对应的启动镜像;
所述第一负载操作系统的启动处理器核在执行所述第一负载操作系统的启动镜像的过程中,从所述第一负载操作系统的启动镜像中获取所述第一负载操作系统的启动参数,所述启动参数包括分配给所述第一负载操作系统的处理器核的标识,分配给所述第一负载操作系统的物理内存地址的标识;
所述第一负载操作系统根据所述处理器核的标识、所述第一负载操作系统的物理内存地址的标识,确定所述管理操作系统分配给所述第一负载操作系统独占使用的物理资源集合。
结合第二方面,在第二方面的第一种可能的实现方式中,所述第一负载操作系统的启动处理器核读取所述第一负载操作系统的启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系,包括:
所述第一负载操作系统的启动处理器核接收所述管理操作系统发送的核间中断消息,按照所述核间中断消息的指示,所述启动处理器核执行用于对所述启动处理器核初始化的所述第一负载操作系统对应的初始化程序;
所述第一负载操作系统的启动处理器核执行所述初始化程序,从所述初始化程序中读取所述管理操作系统预先给所述第一负载操作系统建立的所述启动镜像的执行所需的至少虚拟内存地址到物理内存地址的映射关系;
所述第一负载操作系统的启动处理器核按照所述管理操作系统设置的执行启动镜像跳转的指令,跳转到所述第一负载操作系统对应的启动镜像在物理内存地址的位置,包括:
所述第一负载操作系统的启动处理器核执行所述初始化程序,从所述初始化程序中读取所述管理操作系统预先设置在所述初始化程序中的跳转指令,跳转到所述第一负载操作系统对应的启动镜像在物理内存地址的位置。
结合第二方面,在第二方面的第二种可能的实现方式中,所述第一负载操作系统的启动处理器为所述管理操作系统确定的已经完成启动的处理器核,所述第一负载操作系统的启动处理器核上运行有守护程序,所述守护程序为所述管理操作系统为所述第一负载操作系统预先设置的,所述守护程序中设置有所述第一负载操作系统对应的启动镜像在物理内存地址的位置和所述启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系;
所述第一负载操作系统的启动处理器核读取所述第一负载操作系统的启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系,包括:
所述第一负载操作系统的启动处理器核上运行的守护程序接收所述管理操作系统发送的核间中断消息,所述启动处理器核按照所述核间中断消息的指示,从所述守护程序中读取所述管理操作系统预先给所述第一负载操作系统建立的所述启动镜像的执行所需的虚拟内存地址到物理内存地址的映射关系;
所述第一负载操作系统的启动处理器核按照所述管理操作系统设置的执行启动镜像的跳转的指令,跳转到所述第一负载操作系统对应的启动镜像在物理内存地址的位置,包括:
所述第一负载操作系统的启动处理器核读取所述管理操作系统预先在所述守护程序中设置的跳转指令,跳转到所述第一负载操作系统对应的启动镜像在物理内存地址的位置。
结合第二方面、第二方面的第一种或第二种任一种可能的实现方式,在第一方面的第三种可能的实现方式中,每个所述物理资源集合还包括:所述宿主机的部分外部设备;
所述启动参数还包括:所述管理操作系统分配给所述第一负载操作系统的外部设备的标识,以及与所述外部设备对应的设备描述信息表。
第三方面,本发明实施例提供一种管理操作系统,应用于多内核操作系统,所述多内核操作系统包括运行在宿主机的所述管理操作系统、多个负载操作系统、物理资源池,所述物理资源池包括所述宿主机的处理器核和物理内存,所述管理操作系统包括:
资源分配模块,用于为各所述负载操作系统分配独占使用的物理资源集合,每个所述物理资源集合包括:所述宿主机的部分处理器核,所述宿主机的部分物理内存;
映射关系设置模块,用于为每个负载操作系统构建启动镜像,为每个负载操作系统设置所述启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系;
启动处理器核确定模块,用于在分配给第一负载操作系统的处理器核中确定启动所述第一负载操作系统的启动处理器核,所述第一负载操作系统为任一所述负载操作系统;
指示模块,用于指示所述启动处理器核读取所述配置模块预先建立的为所述第一负载操作系统的启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系,以使所述启动处理器核在所述启动镜像的执行过程中根据所述映射关系访问所述物理内存地址;指示所述启动处理器核执行预先为所述第一负载操作系统建立的启动镜像,所述启动镜像中包括所述第一负载操作系统的启动参数,所述启动参数包括分配给所述第一负载操作系统的处理器核的标识,分配给所述第一负载操作系统的物理内存地址的标识。
结合第三方面,在第三方面的第一种可能的实现方式中,所述指示模块具体用于:
向所述启动处理器核发送核间中断消息,所述核间中断消息指示所述启动处理器核执行用于对所述启动处理器核初始化的所述第一负载操作系统所对应的初始化程序;
通过指示所述启动处理器核执行所述第一负载操作系统所对应的初始化程序,指示所述启动处理器核从所述初始化程序中读取所述第一负载操作系统的所述启动镜像的执行所需的至少虚拟内存地址到物理内存地址的映射关系,指示所述启动处理器核在所述初始化程序运行结束后跳转到所述启动镜像所在物理内存位置以执行所述第一负载操作系统的启动镜像。
结合第三方面的第一种可能的实现方式,在第三方面的第二种可能的实现方式中,还包括:
初始化程序配置模块,用于在所述映射关系设置模块为每个负载操作系统设置所述启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系之前,为所述第一负载操作系统预先设置用于对所述第一负载操作系统进行初始化的初始化程序,在所述初始化程序中预先设置所述第一负载操作系统的启动镜像在物理内存地址的位置;
所述映射关系设置模块具体用于:在所述初始化程序中为所述第一负载操作系统设置所述启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系。
结合第三方面,在第三方面的第三种可能的实现方式中,还包括:
可用处理器核获取模块,用于在启动处理器核确定模块在分配给第一负载操作系统的处理器核中确定启动所述第一负载操作系统的启动处理器核之前,获取第二负载操作系统的可用处理器核,所述第二负载操作系统为所述多个负载系统中除所述第一负载操作系统之外的已注销的负载操作系统,所述可用处理器核中包括已完成启动的处理器核,所述第一负载操作系统的物理资源集合中包括所述可用处理器核;
所述启动处理器核确定模块具体用于:当所述第一负载操作系统的物理资源集合中包括所述可用处理器核时,所述管理操作系统在所述可用处理器核中确定启动所述第一负载操作系统的启动处理器核。
结合第三方面的第三种可能的实现方式,在第三方面的第四种可能的实现方式中,还包括:
守护程序配置模块,用于所述启动处理器核确定模块在所述可用处理器核中确定启动所述第一负载操作系统的启动处理器核之后,在所述启动处理核上为所述第一负载操作系统预先设置守护程序,在所述守护程序中预先设置所述第一负载操作系统的启动镜像在物理内存地址的位置;
所述映射关系设置模块具体用于:在所述守护程序中为所述第一负载操作系统设置的所述启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系。
结合第三方面的第四种可能的实现方式,在第三方面的第五种可能的实现方式中,所述指示模块具体用于:向所述启动处理器核上运行的守护程序发送核间中断消息,所述核间中断消息指示所述启动处理器核从所述守护程序中读取所述管理操作系统预先给所述第一负载操作系统建立的所述启动镜像的执行所需的虚拟内存地址到物理内存地址的映射关系;所述守护程序配置模块在所述守护程序中预先设置的所述第一负载操作系统对应的启动镜像在物理内存地址的位置,指示所述启动处理器核跳转到所述启动镜像所在物理内存地址的位置以执行所述第一负载操作系统的启动镜像。
结合第三方面、第三方面的第一种至第五种任一种可能的实现方式,在第三方面的第六种可能的实现方式中,所述资源分配模块具体用于:
根据所述负载操作系统的个数,对资源池可用物理资源列表中的物理资源的标识对应的所述物理资源池中的可用物理资源进行第一次划分,得到多个物理资源集合,所述物理资源集合的个数与所述负载操作系统的个数相等,所述管理操作系统确定各所述负载操作系统与各所述物理资源集合的对应关系;
根据所述对应关系,为各所述负载操作系统分配独占使用的物理资源集合。
结合第三方面的第六种可能的实现方式,在第三方面的第七种可能的实现方式中,每个所述物理资源集合还包括:所述宿主机的部分外部设备;
所述启动参数还包括:分配给所述第一负载操作系统的外部设备的标识,以及与所述外部设备对应的设备描述信息表。
结合第三方面的第七种可能的实现方式,在第三方面的第八种可能的实现方式中,还包括:
第一监控模块,用于在所述指示模块指示所述启动处理器核执行预先为所述第一负载操作系统建立的启动镜像之后,对所述第一负载操作系统的运行进行监控;
第一资源管理模块,用于若所述第一监控模块的监控结果为分配给所述第一负载操作系统的物理资源的使用率小于第一预设阈值,则确定所述第一负载操作系统需要减少物理资源,确定需要减少的物理资源的类型标识,所述物理资源的类型标识用于区分所述物理资源为处理器核资源、物理内存资源还是外部设备资源;
所述资源配置模块,还用于根据所述需要减少的物理资源的类型标识,对所述资源池可用物理资源列表中的物理资源的标识对应的所述物理资源池中的可用物理资源进行第二次划分,减少所述第一负载操作系统的物理资源,其中,所述减少的物理资源是所述需要减少的物理资源的类型标识所对应的物理资源。
结合第三方面的第七种可能的实现方式,在第三方面的第九种可能的实现方式中,还包括:
第二监控模块,用于在所述指示模块指示所述启动处理器核执行预先为所述第一负载操作系统建立的启动镜像之后,对所述第一负载操作系统的运行进行监控;
第二资源管理模块,用于若所述第二监控模块的监控结果为分配给所述第一负载操作系统的物理资源的使用率大于所述第二预设阈值,则确定所述第一负载操作系统需要增加物理资源,确定需要增加的物理资源的类型标识,所述物理资源的类型标识用于区分所述需要增加的物理资源为处理器核资源、物理内存资源还是外部设备资源;
所述资源配置模块,还用于根据所述需要增加的物理资源的类型标识,对所述资源池可用物理资源列表中的物理资源的标识对应的所述物理资源池中的可用物理资源进行第二次划分,增加所述第一负载操作系统的物理资源,其中,所述增加的物理资源是所述需要增加的物理资源的类型标识所对应的物理资源。
结合第三方面的第七种可能的实现方式,在第三方面的第十种可能的实现方式中,还包括:
第一接收模块,用于所述指示模块指示所述启动处理器核执行预先为所述第一负载操作系统建立的启动镜像之后,接收所述第一负载操作系统发送的资源减少请求消息,所述资源减少请求消息包括需要减少的物理资源的类型标识,所述物理资源的类型标识用于区分所述物理资源为处理器核资源、物理内存资源还是外部设备资源;
所述资源配置模块,还用于根据所述资源减少请求消息中的所述需要减少的物理资源的类型标识,对所述资源池可用物理资源列表中的物理资源的标识对应的所述物理资源池中的可用物理资源进行第二次划分,减少所述第一负载操作系统的物理资源,其中,所述减少的物理资源是所述需要减少的物理资源的类型标识所对应的物理资源。
第四方面,本发明实施例提供一种负载操作系统,应用于多内核操作系统,所述多内核操作系统包括运行在宿主机的管理操作系统、多个所述负载操作系统、物理资源池,所述物理资源池包括所述宿主机的处理器核和物理内存,所述每个负载操作系统独占使用所述管理操作系统分配的物理资源集合,每个所述物理资源集合包括:所述宿主机的部分处理器核,所述宿主机的部分物理内存;所述管理操作系统预先为每个负载操作系统构建启动镜像,为每个负载操作系统设置所述启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系;所述负载操作系统包括:
映射关系获取模块,用于读取所述第一负载操作系统的启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系,所述映射关系用于使所述第一负载操作系统的启动处理器核访问所述物理内存地址;其中,所述第一负载操作系统为所述多内核操作系统中任一负载操作系统;
指令执行模块,用于按照所述管理操作系统设置的执行启动镜像跳转的指令,跳转到所述第一负载操作系统对应的启动镜像在物理内存地址的位置,根据所述映射关系执行所述第一负载操作系统对应的启动镜像;
启动参数获取模块,用于在所述指令执行模块执行所述第一负载操作系统的启动镜像的过程中,从所述第一负载操作系统的启动镜像中获取所述第一负载操作系统的启动参数,所述启动参数包括分配给所述第一负载操作系统的处理器核的标识,分配给所述第一负载操作系统的物理内存地址的标识;
物理资源集合获取模块,用于根据所述处理器核的标识、所述第一负载操作系统的物理内存地址的标识,确定所述管理操作系统分配给所述第一负载操作系统独占使用的物理资源集合。
结合第四方面,在第四方面的第一种可能的实现方式中,所述映射关系获取模块具体用于:
接收所述管理操作系统发送的核间中断消息,按照所述核间中断消息的指示,所述启动处理器核执行用于对所述启动处理器核初始化的所述第一负载操作系统对应的初始化程序;
执行所述初始化程序,从所述初始化程序中读取所述管理操作系统预先给所述第一负载操作系统建立的所述启动镜像的执行所需的至少虚拟内存地址到物理内存地址的映射关系;
所述指令执行模块具体用于:执行所述初始化程序,从所述初始化程序中读取所述管理操作系统预先设置在所述初始化程序中的跳转指令,跳转到所述第一负载操作系统对应的启动镜像在物理内存地址的位置。
结合第四方面,在第四方面的第二种可能的实现方式中,所述第一负载操做系统的启动处理器为所述管理操作系统确定的已经完成启动的处理器核,所述第一负载操作系统的启动处理器核上运行有守护程序,所述守护程序为所述管理操作系统为所述第一负载操作系统预先设置的,所述守护程序中设置有所述第一负载操作系统对应的启动镜像在物理内存地址的位置和所述启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系;
所述映射关系获取模块具体用于,在所述启动处理器核上运行的守护程序接收所述管理操作系统发送的核间中断消息后,按照所述核间中断消息的指示,从所述守护程序中读取所述管理操作系统预先给所述第一负载操作系统建立的所述启动镜像的执行所需的虚拟内存地址到物理内存地址的映射关系;
所述指令执行模块具体用于:读取所述管理操作系统预先在所述守护程序中设置的跳转指令,跳转到所述第一负载操作系统对应的启动镜像在物理内存地址的位置。
结合第四方面、第四方面的第一种或第二种任一种可能的实现方式,在第四方面的第三种可能的实现方式中,每个所述物理资源集合还包括:所述宿主机的部分外部设备;
所述启动参数还包括:所述管理操作系统分配给所述第一负载操作系统的外部设备的标识,以及与所述外部设备对应的设备描述信息表。
第五方面,本发明实施例提供一种多内核操作系统,包括:
运行在宿主机的如第三方面所述的管理操作系统;
多个如第四方面所述的负载操作系统;
物理资源池,所述物理资源池包括所述宿主机的处理器核、物理内存和外部设备。
第六方面,本发明实施例提供一种宿主机,包括处理器和存储器,所述存储器存储执行指令,当所述宿主机运行时,所述处理器与所述存储器之间通信,所述处理器执行所述执行指令使得所述宿主机执行如第一方面、第一方面的第一种至第三十一种任一种可能的实现方式所述的资源处理方法。
本实施例提供的资源处理方法、操作系统及设备,该方法通过管理操作系统为各所述负载操作系统分配独占使用的物理资源集合,为每个负载操作系统构建启动镜像,为每个负载操作系统设置所述启动镜像执行所需的至少部分虚拟内存地址到物理内存地址的映射关系;管理操作系统在分配给第一负载操作系统的处理器核中确定启动第一负载操作系统的启动处理器核;管理操作系统指示所述启动处理器核读取所述第一负载操作系统的所述启动镜像执行所需的至少部分虚拟内存地址到物理内存地址的映射关系,以使所述启动处理器核根据所述映射关系访问所述物理内存地址;指示所述启动处理器核执行预先为所述第一负载操作系统建立的启动镜像,所述启动镜像中包括所述第一负载操作系统的启动参数,所述启动参数包括分配给所述第一负载操作系统的处理器核的标识,分配给所述第一负载操作系统的物理内存地址的标识,管理操作系统通过在启动镜像中写入启动参数,从而为负载操作系统分配独占使用的物理资源,不需要虚拟机监视器的参与,简化了管理操作系统为负载操作系统分配物理资源的过程;进一步地,各负载操作系统能够独占使用物理资源,从而在独占使用的物理资源上建立独立的页表,运行时钟、运行时环境等,从而负载操作系统的整体性能得到提高。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明多内核操作系统架构示意图;
图2为本发明资源处理方法实施例一的流程示意图;
图3为本发明资源处理方法实施例二的流程示意图;
图4为本发明资源处理方法实施例三的流程示意图;
图5为本发明资源处理方法实施例四的流程示意图;
图6为本发明资源处理方法实施例五的流程示意图;
图7为本发明资源处理方法实施例六的流程示意图;
图8A为本发明第一负载操作系统增加处理器核的流程示意图;
图8B为本发明第一负载操作系统释放处理器核的流程示意图;
图9A为本发明第一负载操作系统增加物理内存地址的流程示意图;
图9B为本发明第一负载操作系统释放物理内存地址的流程示意图;
图10A为本发明第一负载操作系统增加外部设备的流程示意图;
图10B为本发明第一负载操作系统减少外部设备的流程示意图;
图11为本发明管理操作系统实施例一的结构示意图;
图12为本发明管理操作系统实施例二的结构示意图;
图13为本发明管理操作系统实施例三的结构示意图;
图14为本发明负载操作系统实施例一的结构示意图;
图15为本发明负载操作系统实施例二的结构示意图;
图16为异构平台上的多内核系统架构示意图;
图17为本发明宿主机实施例一的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明多内核操作系统架构示意图。如图1所示,本实施例提供的多内核操作系统包括运行在宿主机的管理操作系统,多个负载操作系统,物理资源池。其中,宿主机为一个实际的物理节点,管理操作系统对多个负载操作系统进行管理,主要包括为多个负载操作系统分配独占使用的物理资源,负责负载操作系统的启动和注销等。多个负载操作系统包括未启动的负载操作系统和正在运行的负载操作系统。特别地,在负载操作系统启动后,负载操作系统可以独占管理操作系统分配的物理资源,对该物理资源进行访问,负载操作系统在独占使用的物理资源上构建独立页表,独立时钟,独立运行时库等,不需要虚拟机监视器的协助,负载操作系统使用该独立页表,独立时钟,独立运行时库等,使得管理操作系统和负载操作系统之间共享系统总线,包括地址总线、数据总线,以及控制总线。管理操作系统与负载操作系统,负载操作系统与负载操作系统的通信由内部通信机制实现(实例间通信模块)。管理操作系统和各负载操作系统都分别拥有独立页表,每个负载操作系统使用独立的物理资源,一个管理操作系统进行管理,但不参与负载操作系统对物理资源的访问、通信等。物理资源池中包括宿主机的处理器核,物理内存,可选地,物理资源池中还包括外部设备,例如网卡阵列等。
图2为本发明资源处理方法实施例一的流程示意图。本实施例的执行主体为运行在宿主机的管理操作系统,该管理操作系统具体可如图1实施例所示的管理操作系统,如图2所示,本实施例提供的资源处理方法包括:
步骤201、所述管理操作系统为各所述负载操作系统分配独占使用的物理资源集合,为每个负载操作系统构建启动镜像,为每个负载操作系统设置所述启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系;
其中,每个所述物理资源集合包括:所述宿主机的部分处理器核,所述宿主机的部分物理内存;
步骤202、所述管理操作系统在分配给第一负载操作系统的处理器核中确定启动所述第一负载操作系统的启动处理器核;
其中,所述第一负载操作系统为任一所述负载操作系统;
步骤203、所述管理操作系统指示所述启动处理器核读取所述管理操作系统预先建立的为所述第一负载操作系统的启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系;指示所述启动处理器核执行预先为所述第一负载操作系统建立的启动镜像。
其中,所述启动镜像中包括所述第一负载操作系统的启动参数,所述启动参数包括分配给所述第一负载操作系统的处理器核的标识,分配给所述第一负载操作系统的物理内存地址的标识。
本实施例的应用场景可如图1实施例所示,本实施例此处不再赘述。本实施例以管理操作系统为执行主体,对本实施例提供的资源处理方法进行详细说明。其中,该管理操作系统具体可以为图1所示的管理操作系统。
在具体实现过程中,在步骤201中,管理操作系统为各负载操作系统分配独占使用的物理资源集合可通过如下的方式实现:
管理操作系统确定资源池可用物理资源列表中的物理资源的标识对应的物理资源池中的可用物理资源。具体地,管理操作系统维护资源池可用物理资源列表,该列表中记录了物理资源池中所有可用的物理资源的标识。其中可用物理资源为当前时刻没有被管理操作系统和负载操作系统使用的物理资源。管理操作系统根据负载操作系统的个数,对物理资源池中的可用物理资源进行第一次划分,得到多个物理资源集合,物理资源集合的个数与负载操作系统的个数相等,管理操作系统确定各负载操作系统与各物理资源集合的对应关系,并根据该对应关系,为各所述负载操作系统分配独占使用的物理资源集合。每个物理资源集合包括:宿主机的部分处理器核,宿主机的部分物理内存。
可选地,管理操作系统还可以为负载操作系统分配独占使用的外部设备,则物理资源集合还包括:宿主机的外部设备。其中,外部设备可以为网卡、磁盘等外部设备。
以一个具体的实施例为例,并请继续参照图1。在图1中,在物理资源池中的黑色填充为已被使用的物理资源,黑色填充之外的物理资源为可用物理资源。负载操作系统有两个,称为第一负载操作系统和第二负载操作系统。管理操作系统对可用物理资源进行第一次划分,得到两个物理资源集合。在具体实现过程中,管理操作系统对物理资源进行物理划分,可通过如下方式划分:
处理器核:以处理器核为最小功能单位,亦可以处理器为单位。对于异构平台,可以将异构处理器核、协处理器核同样纳入到全局计算资源中。
物理内存:以一段连续或不连续的物理内存为单位,具体内存块大小可采用单一块大小或混合块的方式。
对于外部设备而言,主要如下:
网络:以物理网卡为单位。当物理网卡不够用时,使用具有多队列功能或者支持服务器虚拟化(Single-Root I/O Virtualization,简称SR-IOV)的物理网卡,按照队列或者虚拟功能(Virtual Function,简称VF)进行划分。当物理网卡或者网卡独立的物理功能都不够用时,才会考虑通过虚拟网卡前后端的方式共享物理网卡、为操作系统实例提供多块物理网卡。
磁盘:以物理磁盘为单位。当物理磁盘不够用时,对于未来可能支持SR-IOV技术的磁盘,可以使用磁盘虚拟功能来进行划分。使用磁盘逻辑分区的方式共享单个物理磁盘,最后,可以采用网络文件系统(Network FileSystem,简称NFS)、内存磁盘(RAMDISK)等技术来替代传统磁盘文件系统的功能。
终端:由于终端设备(显示器、键盘)、串口等的使用并不耗费资源,所以可以在不影响系统性能的前提下,采用硬件抽象层虚拟化的方式为上层需求虚拟出多套串口和终端等设备资源。
在资源划分上,本实施例保证处理器核和物理内存在物理上的空间划分,而在外设上同样采用物理单元划分的方式,只是兼顾有物理划分无法满足时进行时间复用的替代方案。
管理操作系统根据第一负载操作系统运行的操作系统实例和第二负载操作系统运行的操作系统实例的类型,建立物理资源集合与负载操作系统的对应关系。当管理操作系统根据第一负载操作系统运行的操作系统实例的类型需要较多的物理资源时,管理操作系统将阴影填充对应的物理资源分配给第一负载操作系统,对应地,管理操作系统将白底对应的物理资源分配给第二负载操作系统。
在管理操作系统为各负载操作系统分配独占使用的物理资源之后,管理操作系统预先为各负载操作系统构建用于启动各负载操作系统的启动镜像,其中,启动镜像是指在负载操作系统运行所必须的硬件和内核数据结构还没有配置或准备充分时,为负载操作系统配置的内核运行必须的硬件、构建内核运行必须的数据结构程序,具体以一段程序的方式实现,使得启动处理器核能够更新启动处理器核的状态,在硬件与内核数据结构准备完成后,为负载操作系统配置的启动各个内核服务、加载各个内核模块的程序,最初达到负载操作系统的启动。
进一步地,管理操作系统还为每个负载操作系统设置各自启动镜像执行所需的至少部分虚拟内存地址到物理内存地址的映射关系,本领域技术人员可以理解,本实施例中所涉及的启动镜像执行所需的至少部分虚拟内存地址到物理地址的映射关系具体指,启动镜像所对应的虚拟内存地址中的至少部分虚拟内存地址到物理内存地址的映射关系,管理操作系统可通过页表的方式实现该映射关系。
在具体实现过程中,负载操作系统的启动处理器核先获取管理操作系统为负载操作系统设置的启动镜像执行所需的至少部分虚拟内存地址到物理内存地址的映射关系,负载操作系统根据该映射关系,可以直接访问物理内存地址,无需进行地址翻译。负载操作系统的启动镜像启动后,启动镜像用于启动负载操作系统。启动镜像在运行过程中,根据启动镜像对应的至少部分虚拟内存地址到物理内存地址的映射关系,直接访问物理内存地址。本领域技术人员可以理解,管理操作系统可以为启动镜像设置部分虚拟内存地址到物理内存地址的映射关系,也可以为启动镜像设置全部的虚拟内存地址到物理内存地址的映射关系。当管理操作系统为启动镜像设置了部分虚拟内存地址到物理内存地址的映射关系时,已经分配给负载操作系统的启动处理器在执行启动镜像在启动的过程时,该启动处理器核会设置启动镜像执行所需的全部虚拟内存地址到物理内存地址的映射关系。负载操作系统在启动完成后,负载操作系统会设置该负载操作系统执行所需的全部的虚拟内存地址到物理内存地址的映射关系。
在步骤202中,管理操作系统在分配给第一负载操作系统的处理器核中确定启动处理器核包括以下可能的实现方式,管理操作系统根据预设策略确定启动处理器核;管理操作系统在分配给第一负载操作系统的处理器核中随机选取一个处理器核作为启动处理器核;管理操作系统获取用户的指令,根据用户的指令确定启动处理器核。本实施例对管理操作系统确定启动处理器核的具体实现过程,不作特别限制。
在步骤203中,管理操作系统指示启动处理器核读取第一负载操作系统的启动镜像执行所需的至少部分虚拟内存地址到物理内存地址的映射关系。
具体地,启动处理器核通过读取该映射关系,可以直接访问物理内存地址,无需进行地址翻译过程。
进一步地,在步骤203中,管理操作系统还指示启动处理器核执行管理操作系统为第一负载操作系统预先建立的启动镜像。由于启动镜像包括第一负载操作系统的启动参数,启动处理器核在执行启动镜像的过程中,从启动镜像中读取启动参数,启动参数包括分配给第一负载操作系统的处理器核的标识,分配给第一负载操作系统的物理内存地址的标识,从而第一负载操作系统根据启动参数获取管理操作系统为第一负载操作系统分配的物理资源集合。其中,启动镜像的运行是为了启动负载操作系统。启动镜像的运行相当于第一负载操作系统的启动过程。
可选地,当物理资源集合中包括宿主机的部分外部设备时,启动参数还包括分配给所述第一负载操作系统的外部设备的标识,以及与该外部设备的标识对应的设备描述信息表。其中,设备描述信息表中包括外部设备的配置信息,例如外部设备的物理内存地址的配置,以及虚拟内存地址到该物理内存地址的映射关系等。对于设备描述信息表中所包括的具体内容,本实施例此处不做特别限制。
本实施例提供的资源处理方法,通过管理操作系统为各所述负载操作系统分配独占使用的物理资源集合,为每个负载操作系统构建启动镜像,为每个负载操作系统设置所述启动镜像执行所需的至少部分虚拟内存地址到物理内存地址的映射关系;管理操作系统在分配给第一负载操作系统的处理器核中确定启动第一负载操作系统的启动处理器核;管理操作系统指示所述启动处理器核读取所述第一负载操作系统的所述启动镜像执行所需的至少部分虚拟内存地址到物理内存地址的映射关系,以使所述启动处理器核根据所述映射关系访问所述物理内存地址;指示所述启动处理器核执行预先为所述第一负载操作系统建立的启动镜像,所述启动镜像中包括所述第一负载操作系统的启动参数,所述启动参数包括分配给所述第一负载操作系统的处理器核的标识,分配给所述第一负载操作系统的物理内存地址的标识,管理操作系统通过在启动镜像中写入启动参数,从而为负载操作系统分配独占使用的物理资源,不需要虚拟机监视器的参与,简化了管理操作系统为负载操作系统分配物理资源的过程;进一步地,各负载操作系统能够独占使用物理资源,从而在独占使用的物理资源上建立独立的页表、时钟、运行时环境等,从而负载操作系统的整体性能得到提高。
下面采用几个具体的实施例,对图2所示方法实施例的技术方案进行详细说明。
一个具体的实施例,可如图3所示。图3为本发明资源处理方法实施例二的流程示意图。如图3所示,本发明实施例提供的资源处理方法,包括:
步骤301、管理操作系统为各所述负载操作系统分配独占使用的物理资源集合,为每个负载操作系统构建启动镜像;
其中,每个所述物理资源集合包括:所述宿主机的部分处理器核,所述宿主机的部分物理内存;
步骤302、所述管理操作系统为所述第一负载操作系统预先设置用于对所述第一负载操作系统进行初始化的初始化程序,在所述初始化程序中预先设置所述第一负载操作系统对应的启动镜像在物理内存地址的位置;
步骤303、所述管理操作系统在所述初始化程序中为所述第一负载操作系统设置所述启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系;
步骤304、所述管理操作系统向所述启动处理器核发送核间中断消息;
其中,所述核间中断消息指示所述启动处理器核执行用于对所述启动处理器核初始化的所述第一负载操作系统所对应的初始化程序;
步骤305、所述管理操作系统,通过指示所述启动处理器核执行所述第一负载操作系统所对应的初始化程序,指示所述启动处理器核从所述初始化程序中读取所述第一负载操作系统的所述启动镜像的执行所需的至少虚拟内存地址到物理内存地址的映射关系,指示所述启动处理器核在所述初始化程序运行结束后跳转到所述启动镜像所在物理内存位置以执行所述第一负载操作系统的启动镜像;
其中,所述启动镜像中包括所述第一负载操作系统的启动参数,所述启动参数包括分配给所述第一负载操作系统的处理器核的标识,分配给所述第一负载操作系统的物理内存地址的标识。
在步骤301中,管理操作系统为各负载操作系统分配独占使用的物理资源集合,为每个负载操作系统构建启动镜像的过程,与步骤201类似,本实施例此处不再赘述。
在步骤302中,管理操作系统为第一负载操作系统预先设置用于对第一负载操作系统进行初始化的初始化程序,在所述初始化程序中预先设置所述第一负载操作系统对应的启动镜像在物理内存地址的位置。
本领域技术人员可以理解,管理操作系统为每个负载操作系统均预先设置了每个负载操作系统对应的初始化程序,在所述初始化程序中预先设置每个负载操作系统对应的启动镜像在物理内存地址的位置。本领域技术人员可以理解,也可以在初始化程序中预先设置每个负载操作系统对应的启动镜像在虚拟内存地址的位置,启动处理器核可以根据虚拟内存地址和物理内存地址的映射关系,获取启动镜像在物理内存地址的位置。
在步骤303中,管理操作系统在初始化程序中为第一负载操作系统设置启动镜像执行所需的至少部分虚拟内存地址到物理内存地址的映射关系。
在步骤304中,管理操作系统向所述启动处理器核发送核间中断消息,所述核间中断消息指示所述启动处理器核执行用于对所述启动处理器核初始化的所述第一负载操作系统所对应的初始化程序。
本领域技术人员可以理解,核间中断消息中传递一个数值,可以称为中断向量,对于核间中断消息所对应的数值,以及该数值对应的执行过程均为管理操作系统和第一负载操作系统事先约定的。当管理操作系统向启动处理器核发送核间中断消息,该核间中断消息指示启动处理器核执行用于对启动处理器核初始化的第一负载操作系统所对应的初始化程序。
第一负载操作系统的启动处理器核接收到核间中断消息之后,从预设的固定物理内存中查找初始化程序,运行该初始化程序,完成启动处理器核的初始化,启动处理器核的初始化即启动处理器核的启动过程。在初始化程序运行过程中,启动处理器核从运行的初始化程序中读取管理操作系统为第一负载操作系统预先设置的第一负载操作系统对应的启动镜像在物理内存地址的位置,从而启动该启动镜像。
在步骤305中,管理操作系统指示启动处理器核执行第一负载操作系统所对应的初始化程序,启动处理器核在执行初始化程序的过程中,读取第一负载操作系统的所述启动镜像执行所需的至少虚拟内存地址到物理内存地址的映射关系。
管理操作系统指示启动处理器核在初始化程序运行结束后跳转到启动镜像所在物理内存地址的位置以执行所述第一负载操作系统的启动镜像通过如下方式实现:
初始化程序的最后一条指令用于指示启动处理器核跳转到启动镜像处。当启动处理器核运行到初始化程序的最后一条指令时,跳转到启动镜像,执行启动镜像,所述启动镜像中包括所述第一负载操作系统的启动参数,所述启动参数包括分配给所述第一负载操作系统的处理器核的标识,分配给所述第一负载操作系统的物理内存地址的标识。
第一负载操作系统根据分配给所述第一负载操作系统的处理器核的标识,分配给所述第一负载操作系统的物理内存地址的标识,确定管理操作系统分配给所述第一负载操作系统独占使用的物理资源集合。
本实施例提供的资源处理方法,通过管理操作系统预先为负载操作系统建立初始化程序,并在初始化程序中为负载操作系统预先设置所述第一负载操作系统对应的启动镜像在物理内存地址的位置,在所述初始化程序中为所述第一负载操作系统设置所述启动镜像执行所需的至少部分虚拟内存地址到物理内存地址的映射关系,负载操作系统的启动处理器核执行初始化程序,从启动镜像中读取启动参数,根据启动参数获取物理资源集合,并完成负载操作系统的启动过程。管理操作系统为负载操作系统分配独占使用的物理资源,不需要虚拟机监视器的参与,简化了管理操作系统为负载操作系统分配物理资源的过程;进一步地,各负载操作系统能够独占使用物理资源,从而负载操作系统的整体性能得到提高。
另一个具体的实施例,可如图4所示。图4为本发明资源处理方法实施例三的流程示意图。如图4所示,本发明实施例提供的资源处理方法,包括:
步骤401、所述管理操作系统获取第二负载操作系统的可用处理器核;
其中,所述第二负载操作系统为所述多个负载系统中除所述第一负载操作系统之外的已注销的负载操作系统,所述可用处理器核中包括已完成启动的处理器核,所述第一负载操作系统的物理资源集合中包括所述可用处理器核;
步骤402、当所述第一负载操作系统的物理资源集合中包括所述可用处理器核时,所述管理操作系统在所述可用处理器核中确定启动所述第一负载操作系统的启动处理器核;
步骤403、所述管理操作系统在所述启动处理核上为所述第一负载操作系统预先设置守护程序,在所述守护程序中预先设置所述第一负载操作系统对应的启动镜像在物理内存地址的位置;
步骤404、所述管理操作系统在所述守护程序中为所述第一负载操作系统设置的所述启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系;
步骤405、所述管理操作系统向所述启动处理器核上运行的守护程序发送核间中断消息;所述管理操作系统在所述守护程序中预先设置的所述第一负载操作系统对应的启动镜像在物理内存地址的位置,指示所述启动处理器核跳转到所述启动镜像所在物理内存地址的位置以执行所述第一负载操作系统的启动镜像。
其中,所述核间中断消息指示所述启动处理器核从所述守护程序中读取所述管理操作系统预先给所述第一负载操作系统建立的所述启动镜像的执行所需的虚拟内存地址到物理内存地址的映射关系。
在步骤401中,管理操作系统获取第二负载操作系统的可用处理器核包括以下可能的实现方式:管理操作系统在第二负载操作系统的运行过程中强制注销第二负载操作系统;管理操作系统在第二负载操作系统运行结束后,注销第二负载操作系统;第二负载操作系统在运行结束后,自行注销。当第二负载操作系统注销后,管理操作系统获取第二负载操作系统的可用处理器核,可用处理器核包括第二负载操作系统的启动处理核和运行其他应用程序的处理器核。
本领域技术人员可以理解,第一负载操作系统的物理资源集合中,可以包括该可用处理器核,也可以不包括该可用处理器核。
特别地,在本实施例中,第二负载操作系统被注销了,但是第二负载操作系统的启动处理器核已经运行了初始化程序,管理操作系统可以将第二负载操作系统的启动处理器核作为第一负载操作系统的启动处理器核,在其作为第一负载操作系统的启动处理器核时,无需在运行初始化程序,完成初始化过程,而可用处理器核中的运行其他应用程序的处理器核,在作为启动处理器核时,还需运行初始化程序,完成初始化。
在步骤402中,当第一负载操作系统的物理资源集合中包括可用处理器核时,管理操作系统在可用处理器核中确定启动第一负载操作系统的启动处理器核。
本领域技术人员可以理解,当第一负载操作系统的物理资源集合中包括该可用处理器核时,管理操作系统可以在该可用处理器核中确定第一负载操作系统的启动处理核,也可以在物理资源集合中的其它处理器核中确定启动处理器核。
当管理操作系统在可用处理器核中确定启动处理核时,可通过如下方式实现:管理操作系统根据预设策略在可用处理器核中确定启动处理器核;管理操作系统在可用处理器核中随机选取一个处理器核作为启动处理器核;管理操作系统获取用户的指令,根据用户的指令在可用处理器核中确定启动处理器核。
在步骤403中,管理操作系统在该启动处理器核上为第一负载操作系统设置守护程序,在设置完成后,守护程序将一直运行在已经启动的启动处理核上,等待管理操作系统发送的各种系统命令。其中,守护程序为管理操作系统给第一负载操作系统预先设置的。管理操作系统还在守护程序中预先设置第一负载操作系统对应的启动镜像在物理内存地址的位置。
进一步地,在步骤404中,管理操作系统在守护程序中预先设置第一负载操作系统的启动镜像执行所需的至少部分虚拟内存地址到物理内存地址的映射关系。
在步骤405中,管理操作系统向启动处理器核上运行的守护程序发送核间中断消息,核间中断消息所对应的指令为管理操作系统和第一负载操作系统预先约定好的。当启动处理器核上运行的守护程序接收到管理操作系统发送的核间中断消息之后,启动处理器核从守护程序中读取所述管理操作系统预先给所述第一负载操作系统建立的所述启动镜像的虚拟内存地址到物理内存地址的映射关系,在启动处理器核执行启动镜像过程中,启动处理器核根据该映射关系访问物理内存地址。
管理操作系统指示启动处理器核跳转到所述启动镜像所在物理内存地址的位置以执行所述第一负载操作系统的启动镜像,其中,通过在守护程序中设置跳转命令,启动处理器核从守护程序中获取第一负载操作系统对应的启动镜像在物理内存地址的位置,跳转到所述启动镜像所在物理内存地址的位置以执行所述第一负载操作系统的启动镜像。
本实施例提供的资源处理方法,通过管理操作系统在守护程序中设置跳转命令,使得启动处理器核从守护程序中获取第一负载操作系统对应的启动镜像在物理内存地址的位置,跳转到所述启动镜像所在物理内存地址的位置以执行所述第一负载操作系统的启动镜像,从启动镜像中获取启动参数。管理操作系统为负载操作系统分配独占使用的物理资源,不需要虚拟机监视器的参与,简化了管理操作系统为负载操作系统分配物理资源的过程;进一步地,各负载操作系统能够独占使用物理资源,从而负载操作系统的整体性能得到提高。
图5为本发明资源处理方法实施例四的流程示意图。本实施例的资源处理方法,应用于多内核操作系统,多内核操作系统包括运行在宿主机的管理操作系统、多个负载操作系统、物理资源池,物理资源池包括宿主机的处理器核和物理内存,每个负载操作系统独占使用管理操作系统分配的物理资源集合,每个物理资源集合包括:宿主机的部分处理器核,宿主机的部分物理内存;管理操作系统预先为每个负载操作系统构建启动镜像,为每个负载操作系统设置启动镜像执行所需的至少部分虚拟内存地址到物理内存地址的映射关系。本实施例的执行主体为多个负载操作系统中的任一负载操作系统。为了便于描述,在本实施例中,称为第一负载操作系统。如图5所示,本实施例提供的资源处理方法,包括:
步骤501、第一负载操作系统的启动处理器核读取所述第一负载操作系统的启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系;
其中,所述映射关系用于使所述第一负载操作系统的启动处理器核访问所述物理内存地址,所述第一负载操作系统为所述多内核操作系统中任一负载操作系统;
步骤502、所述第一负载操作系统的启动处理器核按照所述管理操作系统设置的执行启动镜像跳转的指令,跳转到所述第一负载操作系统对应的启动镜像在物理内存地址的位置,根据所述映射关系执行所述第一负载操作系统对应的启动镜像;
步骤503、所述第一负载操作系统的启动处理器核在执行所述第一负载操作系统的启动镜像的过程中,从所述第一负载操作系统的启动镜像中获取所述第一负载操作系统的启动参数;
其中,所述启动参数包括分配给所述第一负载操作系统的处理器核的标识,分配给所述第一负载操作系统的物理内存地址的标识;
步骤504、所述第一负载操作系统根据所述处理器核的标识、所述第一负载操作系统的物理内存地址的标识,确定所述管理操作系统分配给所述第一负载操作系统独占使用的物理资源集合。
本实施例的应用场景可如图1实施例所示,本实施例此处不再赘述。本实施例以第一负载操作系统为执行主体,对本实施例提供的资源处理方法进行详细说明。其中,第一负载操作系统具体可以为图1所示的负载操作系统中的任一负载操作系统。
在步骤501中,在管理操作系统为第一负载操作系统确定启动处理器核之后,第一负载操作系统的启动处理器核先获取管理操作系统为负载操作系统设置的启动镜像执行所需的至少部分虚拟内存地址到物理内存地址的映射关系,第一负载操作系统根据该映射关系,可以直接访问物理内存地址,无需进行地址翻译。
在步骤502中,第一负载操作系统的启动处理器核接收到管理操作系统预先为第一负载操作系统设置的执行启动镜像跳转的指令,第一负载操作系统按照管理操作系统设置的执行启动镜像跳转的指令,跳转到第一负载操作系统对应的启动镜像在物理内存地址的位置,在第一负载操作系统的启动处理器核执行启动镜像时,第一负载操作系统根据启动镜像对应的至少部分虚拟内存地址到物理内存地址的映射关系,直接访问物理内存地址,从而完成启动镜像的启动过程。
在步骤503中,第一负载操作系统的启动处理器核在执行所述第一负载操作系统的启动镜像的过程中,从第一负载操作系统的启动镜像中获取第一负载操作系统的启动参数,启动参数包括管理操作系统分配给第一负载操作系统的处理器核的标识,管理操作系统分配给第一负载操作系统的物理内存地址的标识。
可选地,当物理资源集合中包括宿主机的部分外部设备时,启动参数还包括管理操作系统分配给第一负载操作系统的外部设备的标识,以及与该外部设备的标识对应的设备描述信息表。其中,设备描述信息表中包括外部设备的配置信息,例如外部设备的物理内存地址的配置,以及虚拟内存地址到该物理内存地址的映射关系等。对于设备描述信息表中所包括的具体内容,本实施例此处不做特别限制。
在步骤504中,第一负载操作系统根据处理器核的标识、第一负载操作系统的物理内存地址的标识,可以确定管理操作系统分配给第一负载操作系统独占使用的物理资源集合,第一负载操作系统可以在独占使用的物理资源上建立独立的页表、时钟、运行时环境等。
本领域技术人员可以理解,第一负载操作系统执行启动镜像的目的是为了启动该第一负载操作系统,在启动镜像运行结束后,第一负载操作系统的启动完成了,第一负载操作系统进入运行阶段。
本发明实施例提供的资源处理方法,第一负载操作系统的启动处理器核读取第一负载操作系统的启动镜像执行所需的至少部分虚拟内存地址到物理内存地址的映射关系,按照所述管理操作系统设置的执行启动镜像跳转的指令,跳转到所述第一负载操作系统对应的启动镜像在物理内存地址的位置,根据所述映射关系执行所述第一负载操作系统对应的启动镜像,在执行所述第一负载操作系统的启动镜像的过程中,从所述第一负载操作系统的启动镜像中获取所述第一负载操作系统的启动参数,所述启动参数包括分配给所述第一负载操作系统的处理器核的标识,分配给所述第一负载操作系统的物理内存地址的标识;所述第一负载操作系统根据所述处理器核的标识、所述第一负载操作系统的物理内存地址的标识,确定所述管理操作系统分配给所述第一负载操作系统独占使用的物理资源集合,第一负载操作系统通过从启动镜像中读取启动参数,从而获取管理操作系统为负载操作系统分配的独占使用的物理资源集合,不需要虚拟机监视器的参与,简化了管理操作系统为负载操作系统分配物理资源的过程;进一步地,各负载操作系统能够独占使用物理资源,从而在独占使用的物理资源上建立独立的页表、时钟、运行时环境等,从而负载操作系统的整体性能得到提高。
下面采用几个具体的实施例,对图5所示方法实施例提供的技术方案进行详细说明。
一个具体的实施例,可如图6所示。图6为本发明资源处理方法实施例五的流程示意图。如图6所示,本发明实施例提供的资源处理方法,包括:
步骤601、所述第一负载操作系统的启动处理器核接收所述管理操作系统发送的核间中断消息,按照所述核间中断消息的指示,所述启动处理器核执行用于对所述启动处理器核初始化的所述第一负载操作系统对应的初始化程序;
步骤602、所述第一负载操作系统的启动处理器核执行所述初始化程序,从所述初始化程序中读取所述管理操作系统预先给所述第一负载操作系统建立的所述启动镜像的执行所需的至少虚拟内存地址到物理内存地址的映射关系,读取所述管理操作系统预先设置在所述初始化程序中的跳转指令,跳转到所述第一负载操作系统对应的启动镜像在物理内存地址的位置,根据所述映射关系执行所述第一负载操作系统对应的启动镜像;
步骤603、所述第一负载操作系统的启动处理器核在执行所述第一负载操作系统的启动镜像的过程中,从所述第一负载操作系统的启动镜像中获取所述第一负载操作系统的启动参数;
其中,所述启动参数包括分配给所述第一负载操作系统的处理器核的标识,分配给所述第一负载操作系统的物理内存地址的标识;
步骤604、所述第一负载操作系统根据所述处理器核的标识、所述第一负载操作系统的物理内存地址的标识,确定所述管理操作系统分配给所述第一负载操作系统独占使用的物理资源集合。
在本实施例中,步骤603与步骤503类似,步骤604与步骤504类似,本实施例此处不再赘述。
在步骤601中,第一负载操作系统的启动处理器核接收管理操作系统发送的核间中断消息,按照核间中断消息的指示,启动处理器核执行用于对启动处理器核初始化的第一负载操作系统对应的初始化程序。
具体地,核间中断消息中传递一个数值,可以称为中断向量,对于核间中断消息所对应的数值,以及该数值对应的执行过程均为管理操作系统和第一负载操作系统事先约定的。管理操作系统向第一负载操作系统的启动处理器核发送核间中断消息,该核间中断消息指示启动处理器核执行用于对启动处理器核初始化的第一负载操作系统所对应的初始化程序。
第一负载操作系统的启动处理器核接收到管理操作系统发送的核间中断消息之后,从预设的固定物理内存中查找初始化程序,运行该初始化程序,完成启动处理器核的初始化,启动处理器核的初始化即启动处理器核的启动过程。
在步骤602中,在第一负载操作系统的启动处理器核执行初始化程序的过程中,从初始化程序中读取管理操作系统预先给第一负载操作系统建立的的启动镜像执行所需的至少虚拟内存地址到物理内存地址的映射关系,第一负载操作系统的启动处理器核读取该映射关系,在后续的执行启动镜像的过程中,可以根据该映射关系,直接访问物理内存地址,无需进行地址翻译。
进一步地,初始化程序的最后一条指令用于指示启动处理器核跳转到启动镜像处,可以理解为跳转指令。第一负载操作系统的启动处理器核从该初始化程序中读取管理操作系统预先设置在初始化程序中的跳转指令,跳转到第一负载操作系统对应的启动镜像在物理内存地址的位置,根据映射关系,直接访问物理内存地址,从而执行第一负载操作系统对应的启动镜像。
本发明实施例提供的资源处理方法,通过第一负载操作系统从初始化程序中读取管理操作系统预先给第一负载操作系统建立的的启动镜像执行所需的至少虚拟内存地址到物理内存地址的映射关系,读取管理操作系统预先设置在初始化程序中的跳转指令,跳转到第一负载操作系统对应的启动镜像在物理内存地址的位置,根据映射关系执行第一负载操作系统对应的启动镜像,从启动镜像中读取启动参数,根据启动参数获取物理资源集合,并完成负载操作系统的启动过程。管理操作系统为负载操作系统分配独占使用的物理资源,不需要虚拟机监视器的参与,简化了管理操作系统为负载操作系统分配物理资源的过程;进一步地,各负载操作系统能够独占使用物理资源,从而负载操作系统的整体性能得到提高。
另一个具体的实施例。在本实施例中,第一负载操做系统的启动处理器核为所述管理操作系统确定的已经完成启动的处理器核,所述第一负载操作系统的启动处理器核上运行有守护程序,所述守护程序为所述管理操作系统为所述第一负载操作系统预先设置的,所述守护程序中设置有所述第一负载操作系统对应的启动镜像在物理内存地址的位置和所述启动镜像执行所需的至少部分虚拟内存地址到物理内存地址的映射关系。图7为本发明资源处理方法实施例六的流程示意图。如图7所示,本发明实施例提供的资源处理方法,包括:
步骤701、所述第一负载操作系统的启动处理器核上运行的守护程序接收所述管理操作系统发送的核间中断消息,所述启动处理器核按照所述核间中断消息的指示,从所述守护程序中读取所述管理操作系统预先给所述第一负载操作系统建立的所述启动镜像的执行所需的虚拟内存地址到物理内存地址的映射关系;
步骤702、所述第一负载操作系统的启动处理器核读取所述管理操作系统预先在所述守护程序中设置的跳转指令,跳转到所述第一负载操作系统对应的启动镜像在物理内存地址的位置,根据所述映射关系执行所述第一负载操作系统对应的启动镜像;
步骤703、所述第一负载操作系统的启动处理器核在执行所述第一负载操作系统的启动镜像的过程中,从所述第一负载操作系统的启动镜像中获取所述第一负载操作系统的启动参数;
其中,所述启动参数包括分配给所述第一负载操作系统的处理器核的标识,分配给所述第一负载操作系统的物理内存地址的标识;
步骤704、所述第一负载操作系统根据所述处理器核的标识、所述第一负载操作系统的物理内存地址的标识,确定所述管理操作系统分配给所述第一负载操作系统独占使用的物理资源集合。
本实施例与图6实施例的区别为本实施例中的启动处理器核为已启动处理器核,即不需要对该启动处理器核进行初始化过程。本实施例中的步骤703与图5实施例中的步骤503类似,步骤704与图5实施例中的步骤504类似,本实施例此处不再赘述。在具体实现过程中,管理操作系统预先在该启动处理器核上为第一负载操作系统设置守护程序,在设置完成后,守护程序将一直运行在已经启动的启动处理核上。
在步骤701中,管理操作系统向启动处理器核上运行的守护程序发送核间中断消息,核间中断消息所对应的指令为管理操作系统和第一负载操作系统预先约定好的。当第一负载操作系统的启动处理器核上运行的守护程序接收到管理操作系统发送的核间中断消息之后,启动处理器核从守护程序中读取管理操作系统预先给第一负载操作系统建立的启动镜像的虚拟内存地址到物理内存地址的映射关系,在启动处理器核执行启动镜像过程中,启动处理器核根据该映射关系访问物理内存地址。
在步骤702中,第一负载操作系统的启动处理器核读取管理操作系统预先在所述守护程序中设置的跳转指令,跳转到所述第一负载操作系统对应的启动镜像在物理内存地址的位置,根据映射关系执行第一负载操作系统对应的启动镜像。
本实施例提供的资源处理方法,第一负载操作系统的启动处理器核从预先设置的守护程序中获取第一负载操作系统对应的启动镜像在物理内存地址的位置,跳转到所述启动镜像所在物理内存地址的位置以执行所述第一负载操作系统的启动镜像,从启动镜像中获取启动参数。管理操作系统为负载操作系统分配独占使用的物理资源,不需要虚拟机监视器的参与,简化了管理操作系统为负载操作系统分配物理资源的过程;进一步地,各负载操作系统能够独占使用物理资源,从而负载操作系统的整体性能得到提高。
在图5至图7实施例的基础上,启动处理器核执行启动镜像,完成第一负载操作系统的启动。在第一负载操作系统完成启动后,第一负载操作系统建立第一负载操作系统的执行所需的全部虚拟内存地址到物理内存地址的映射关系;第一负载操作系统的处理器核根据该映射关系,将虚拟内存地址转换得到的物理内存地址,直接访问物理内存地址。
进一步地,在第一负载操作系统的运行过程中,第一负载操作系统可以通过分配给该第一负载操作系统的处理器核执行管理操作系统下发的特权指令。在具体实现过程中,执行特权指令的处理器核可以为启动处理器核,也可以为启动处理器核之外的其它处理器核,只要是管理操作系统分配给第一负载操作系统的处理器核即可。其中,特权指令用于操作系统,一般不直接提供给用户使用。特权指令主要用于资源的分配和管理,包括检测用户的访问权限,完成任务的创建和切换等。
本实施例中,第一负载操作系统直接执行特权指令,省略了虚拟化技术中对特权操作进行翻译或进行超级调用(hypercall)的步骤。具体地,管理操作系统可将不影响宿主机正常运行状态的特权指令下发给第一负载操作系统,由第一负载操作系统进行执行。
图2至图7实施例详细说明了管理操作系统为第一负载操作系统分配物理资源的过程,还详细说明了第一负载操作系统如何执行启动镜像,完成第一负载操作系统的启动过程。
在第一负载操作系统的运行过程中,第一负载操作系统的物理资源还需进行动态调整。在具体实现过程中,对第一负载操作系统进行动态调整存在两种可能的实现方式。
一种可能的实现方式为管理操作系统对第一负载操作系统的运行进行监控,对第一负载操作系统的物理资源进行调整,具体包括两种可能的情况:
一种可能的情况,所述管理操作系统对所述第一负载操作系统的运行进行监控;
若分配给所述第一负载操作系统的物理资源的使用率小于第一预设阈值,则确定所述第一负载操作系统需要减少物理资源,确定需要减少的物理资源的类型标识,所述物理资源的类型标识用于区分所述物理资源为处理器核资源、物理内存资源还是外部设备资源;
所述管理操作系统根据所述需要减少的物理资源的类型标识,对所述资源池可用物理资源列表中的物理资源的标识对应的所述物理资源池中的可用物理资源进行第二次划分,减少所述第一负载操作系统的物理资源,其中,所述减少的物理资源是所述需要减少的物理资源的类型标识所对应的物理资源。
另一种可能的情况,所述管理操作系统对所述第一负载操作系统的运行进行监控;
若分配给所述第一负载操作系统的物理资源的使用率大于所述第二预设阈值,则确定所述第一负载操作系统需要增加物理资源,确定需要增加的物理资源的类型标识,所述物理资源的类型标识用于区分所述需要增加的物理资源为处理器核资源、物理内存资源还是外部设备资源;
所述管理操作系统根据所述需要增加的物理资源的类型标识,对所述资源池可用物理资源列表中的物理资源的标识对应的所述物理资源池中的可用物理资源进行第二次划分,增加所述第一负载操作系统的物理资源,其中,所述增加的物理资源是所述需要增加的物理资源的类型标识所对应的物理资源。
具体地,在本实施例中,管理操作系统为第一负载操作系统分配的物理资源有处理器核资源、物理内存资源、外部设备资源。管理操作系统在第一负载操作系统的运行过程中,对已分配给第一负载操作系统的物理资源的使用率进行监控,即对处理器核资源、物理内存资源、外部设备资源的使用率进行监控。
当管理操作系统确定分配给第一负载操作系统的物理资源的使用率小于第一预设阈值时,说明管理操作系统在为第一负载操作系统分配独占使用的物理资源集合时,为第一负载操作系统分配了过多的物理资源,此时,管理操作系统确定第一负载操作系统需要减少物理资源。由于物理资源有三类,因此管理操作系统会根据各物理资源的使用率,确定需要减少的物理资源的类型标识,然后,管理操作系统根据需要减少的物理资源的类型标识,对所述资源池可用物理资源列表中的物理资源的标识对应的所述物理资源池中的可用物理资源进行第二次划分,减少第一负载操作系统的物理资源。在具体实现过程中,管理操作系统可以根据第一负载操作系统的物理资源使用率和其它负责操作系统的物理资源的使用率,对可用物理资源进行第二次划分,目的是减少第一负载操作系统的物理资源。其中,减少的物理资源是需要减少的物理资源的类型标识所对应的物理资源。
当管理操作系统确定分配给第一负载操作系统的物理资源的使用率大于第二预设阈值时,说明管理操作系统在为第一负载操作系统分配独占使用的物理资源集合时,为第一负载操作系统分配了过少的物理资源,此时,管理操作系统确定第一负载操作系统需要增加物理资源。由于物理资源有三类,因此管理操作系统会根据各物理资源的使用率,确定需要增加的物理资源的类型标识,然后,管理操作系统根据需要增加的物理资源的类型标识,对物理资源池中的可用物理资源进行第二次划分,增加第一负载操作系统的物理资源。在具体实现过程中,管理操作系统可以根据第一负载操作系统的物理资源使用率和其它负责操作系统的物理资源的使用率,对可用物理资源进行第二次划分,目的是增加第一负载操作系统的物理资源。其中,增加的物理资源是需要增加的物理资源的类型标识所对应的物理资源。
另一种可能的实现方式为第一负载操作系统对第一负载操作系统的物理资源的使用情况进行监控,从而使管理操作系统对第一负载操作系统的物理资源进行调整。具体可包括两种可能的情况。
一种可能的情况,所述第一负载操作系统对所述第一负载操作系统的物理资源进行监控;
若所述第一负载操作系统确定所述管理操作系统分配给所述第一负载操作系统的物理资源的使用率小于第一预设阈值,所述第一负载操作系统向所述管理操作系统发送资源减少请求消息,所述资源减少请求消息中包括需要减少的物理资源的类型标识,所述物理资源的类型标识用于区分所述需要减少的物理资源为处理器核资源、物理内存资源还是外部设备资源。
另一种可能的情况,所述第一负载操作系统对所述第一负载操作系统的物理资源进行监控;
若所述第一负载操作系统确定所述管理操作系统分配给所述第一负载操作系统的物理资源的使用率大于第一预设阈值,则所述第一负载操作系统向所述管理操作系统发送资源增加请求消息,所述资源增加请求消息中包括需要增加的物理资源的类型标识,所述物理资源的类型标识用于区分所述需要增加的物理资源为处理器核资源还是物理内存资源。
具体地,在本实施例中,第一负载操作系统确定管理操作系统为第一负载操作系统分配的物理资源有处理器核资源、物理内存资源、外部设备资源。第一负载操作系统的运行过程中,对管理操作系统已分配给该第一负载操作系统的物理资源的使用率进行监控,即对处理器核资源、物理内存资源、外部设备资源的使用率进行监控。
当第一负载操作系统确定分配给第一负载操作系统的物理资源的使用率小于第一预设阈值时,说明管理操作系统在为第一负载操作系统分配独占使用的物理资源集合时,为第一负载操作系统分配了过多的物理资源,此时,第一负载操作系统确定第一负载操作系统需要减少物理资源,向管理操作系统发送资源减少请求消息。由于物理资源有三类,第一负载操作系统会根据各物理资源的使用率,确定需要减少的物理资源的类型标识。因此,资源减少请求消息中包括需要减少的物理资源的类型标识,物理资源的类型标识用于区分需要减少的物理资源为处理器核资源、物理内存资源还是外部设备资源。
当第一负载操作系统确定分配给第一负载操作系统的物理资源的使用率大于第二预设阈值时,说明管理操作系统在为第一负载操作系统分配独占使用的物理资源集合时,为第一负载操作系统分配了过少的物理资源,此时,第一负载操作系统确定第一负载操作系统需要增加物理资源,向管理操作系统发送资源增加请求消息。由于物理资源有三类,第一负载操作系统会根据各物理资源的使用率,确定需要增加的物理资源的类型标识。因此,资源增加请求消息中包括需要增加的物理资源的类型标识,物理资源的类型标识用于区分需要增加的物理资源为处理器核资源、物理内存资源还是外部设备资源。
上述两种可能的实现方式,分别从管理操作系统和第一负载操作系统的角度出发,说明了第一负载操作系统的物理资源需要增加或减少。下面将根据物理资源的类型,对各物理资源的增加或减少,进行详细说明。
当物理资源为处理器核时,图8A为本发明第一负载操作系统增加处理器核的流程示意图。图8B为本发明第一负载操作系统释放处理器核的流程示意图。
如图8A所示,第一负载操作系统增加处理器核包括以下步骤:
步骤8101、所述管理操作系统将需要为所述第一负载操作系统增加的处理器核标记为归属于所述第一负载操作系统的物理资源,向所述第一负载操作系统发送资源增加消息;
其中,所述资源增加消息中包括需要增加的处理器核的标识;
具体地,管理操作系统将需要为第一负载操作系统增加的处理器核标记为归属于第一负载操作系统的物理资源,该增加的处理器核将不会作为物理资源池中的可用物理资源,管理操作系统和第一负载操作系统将会对该增加的处理器核的使用率进行监控。
步骤8102、所述第一负载操作系统接收所述管理操作系统发送的资源增加消息,所述资源增加消息中包括需要增加的处理器核的标识;
步骤8103、所述第一负载操作系统根据所述需要增加的处理器核的标识确定所述管理操作系统为所述第一负载操作系统增加的处理器核;
步骤8104、所述管理操作系统向所述增加的处理器核发送跳转指示;
其中,所述跳转指示用于指示所述增加的处理器核执行所述第一负载操作系统的内核程序,指示所述增加的处理器核从所述内核程序中读取所述第一负载操作系统的执行所需的全部虚拟内存地址到物理内存地址的映射关系;
管理操作系统为第一负载操作系统在预设固定物理内存中设置内核程序,管理操作系统和第一负载操作系统事先约定该第一负载操作系统可以在内核程序中写入第一负载操作系统的执行所需的全部虚拟内存地址到物理内存地址的映射关系,本领域技术人员可以理解,内核程序中还可以包括增加的处理器核运行所需的其它信息,本实施例此处不做特别限制。
步骤8105、所述第一负载操作系统的增加的处理器核接收所述管理操作系统发送的跳转指示,并根据所述跳转指示执行所述第一负载操作系统的内核程序,并从所述内核程序中读取所述第一负载操作系统的执行所需的全部虚拟内存地址到物理内存地址的映射关系。
如图8B所示,第一负载操作系统释放处理器核包括以下步骤:
步骤8201、所述管理操作系统向所述第一负载操作系统发送资源减少消息;
其中,所述资源减少消息中包括需要释放的处理器核的标识;
步骤8202、所述第一负载操作系统接收所述管理操作系统发送的资源减少消息,所述资源减少消息中包括需要释放的处理器核的标识;
步骤8203、所述第一负载操作系统根据所述需要释放的处理器核的标识确定所述第一负载操作系统需要释放的处理器核;
步骤8204、所述第一负载操作系统释放处理器核,所述释放的处理器核为与所述需要释放的处理核的标识对应的处理器核;
第一负载操作系统释放处理器核是指该第一负载操作系统不再使用该处理器核。
步骤8205、所述管理操作系统获取所述第一负载操作系统释放的处理器核的标识,将所述释放的处理器核的标识添加到所述资源池可用物理资源列表中,所述释放的处理器核为与所述需要减少的处理核的标识对应的处理器核。
当物理资源为物理内存资源时,图9A为本发明第一负载操作系统增加物理内存地址的流程示意图。图9B为本发明第一负载操作系统释放物理内存地址的流程示意图。
如图9A所示,第一负载操作系统增加物理内存地址包括以下步骤:
步骤9101、所述管理操作系统将需要为所述第一负载操作系统增加的物理内存地址标记为归属于所述第一负载操作系统的物理资源,向所述第一负载操作系统发送资源增加消息;
其中,所述资源增加消息包括需要增加的物理内存地址的标识;
管理操作系统将需要为第一负载操作系统增加的物理内存地址标记为归属于第一负载操作系统的物理资源,该增加的物理内存地址将不会作为物理资源池中的可用物理资源,管理操作系统和第一负载操作系统将会对该增加的物理内存地址的使用率进行监控,第一负载操作系统还会建立虚拟内存地址到该增加的物理内存地址的映射关系。
步骤9102、所述第一负载操作系统接收所述管理操作系统发送的资源增加消息,所述资源增加消息包括需要增加的物理内存地址的标识;
步骤9103、所述第一负载操作系统根据所述需要增加的物理内存地址的标识确定所述管理操作系统为所述第一负载操作系统增加的物理内存地址。
如图9B所示,第一负载操作系统释放物理内存地址包括以下步骤:
步骤9201、所述管理操作系统向所述第一负载操作系统发送资源减少消息;
其中,所述资源减少消息包括需要释放的物理内存地址的标识;
步骤9202、所述第一负载操作系统接收所述管理操作系统发送的资源减少消息,所述资源减少消息包括需要释放的物理内存地址的标识;
步骤9203、所述第一负载操作系统根据所述需要释放的物理内存地址的标识确定所述第一负载操作系统需要释放的物理内存地址;
步骤9204、所述第一负载操作系统释放物理内存地址,所述释放的物理内存地址为与所述需要释放的物理内存地址的标识对应的物理内存地址;
步骤9205、所述管理操作系统获取所述第一负载操作系统释放的物理内存地址的标识,将所述释放的物理内存地址的标识添加到所述资源池可用物理资源列表中,所述释放的物理内存地址为与所述需要释放的物理内存地址的标识对应的物理内存地址。
当物理资源为外部设备资源时,图10A为本发明第一负载操作系统增加外部设备的流程示意图。图10B为本发明第一负载操作系统减少外部设备的流程示意图。
如图10A所示,第一负载操作系统增加外部设备包括以下步骤:
步骤10101、所述管理操作系统将需要为所述第一负载操作系统增加的外部设备标记为归属于所述第一负载操作系统的物理资源,向所述第一负载操作系统发送热插消息;
其中,所述热插消息用于指示所述第一负载操作系统获取需要增加的外部设备的标识以及与所述增加的外部设备对应的设备描述信息表;
具体地,管理操作系统将需要为第一负载操作系统增加的外部设备标记为归属于第一负载操作系统的物理资源,该增加的外部设备将不会作为物理资源池中的可用物理资源,管理操作系统和第一负载操作系统将会对该增加的外部设备的使用率进行监控。
所述热插消息用于指示所述第一负载操作系统获取需要增加的外部设备的标识以及与所述增加的外部设备对应的设备描述信息表包括两种可能的实现方式:
一种可能的实现方式:所述管理操作系统向所述第一负载操作系统发送热插消息,所述热插消息包括需要增加的外部设备的标识以及与所述增加的外部设备对应的设备描述信息表。
另一种可能的实现方式,所述管理操作系统向所述第一负载操作系统发送热插指示消息,所述热插指示消息用于指示所述第一负载操作系统从预设固定物理内存中读取所述需要增加的外部设备的标识以及与所述增加的外部设备对应的设备描述信息表。
步骤10102、所述第一负载操作系统接收管理操作系统发送的热插消息;
步骤10103、所述第一负载操作系统根据所述需要增加的外部设备的标识以及与所述增加的外部设备对应的设备描述信息表,对与所述需要增加的外部设备的标识对应的外部设备执行热插操作;
如图10B所示,第一负载操作系统减少外部设备包括以下步骤:
步骤10201、所述管理操作系统向所述第一负载操作系统发送热拔消息;
其中,所述热拔消息包括需要减少的外部设备的标识;
步骤10202、所述第一负载操作系统接收管理操作系统发送的热拔消息,所述热拔消息包括需要减少的外部设备的标识;
步骤10203、所述第一负载操作系统根据所述需要减少的外部设备的标识,对与所述需要减少的外部设备的标识对应的外部设备执行热拔操作;
步骤10204、所述管理操作系统获取所述第一负载操作系统减少的外部设备的标识,将所述减少的外部设备的标识添加到所述资源池可用物理资源列表中,所述减少的外部设备为与所述需要减少的外部设备的标识对应的外部设备。
本发明实施例通过上述方式,实现了物理资源的动态调整,使得第一负载操作系统不仅能够独占物理资源,通过增加或减少第一负载操作系统的物理资源,提高了物理资源的利用率。
图11为本发明管理操作系统实施例一的结构示意图。本实施例的管理操作系统应用于图1所示的多内核操作系统,所述多内核操作系统包括运行在宿主机的所述管理操作系统、多个负载操作系统、物理资源池,所述物理资源池包括所述宿主机的处理器核和物理内存。如图11所示,本实施例提供的管理操作系统110包括资源分配模块1101、映射关系设置模块1102、启动处理器核确定模块1103和指示模块1104。
资源分配模块1101,用于为各所述负载操作系统分配独占使用的物理资源集合,每个所述物理资源集合包括:所述宿主机的部分处理器核,所述宿主机的部分物理内存;
映射关系设置模块1102,用于为每个负载操作系统构建启动镜像,为每个负载操作系统设置所述启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系;
启动处理器核确定模块1103,用于在分配给第一负载操作系统的处理器核中确定启动所述第一负载操作系统的启动处理器核,所述第一负载操作系统为任一所述负载操作系统;
指示模块1104,用于指示所述启动处理器核读取所述配置模块预先建立的为所述第一负载操作系统的启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系,以使所述启动处理器核在所述启动镜像的执行过程中根据所述映射关系访问所述物理内存地址;指示所述启动处理器核执行预先为所述第一负载操作系统建立的启动镜像,所述启动镜像中包括所述第一负载操作系统的启动参数,所述启动参数包括分配给所述第一负载操作系统的处理器核的标识,分配给所述第一负载操作系统的物理内存地址的标识。
本实施例提供的管理操作系统,可以执行上述资源处理方法实施例的技术方案,其实现原理和技术效果类似,本实施例此处不再赘述。
图12为本发明管理操作系统实施例二的结构示意图。本实施例在图11实施例的基础上实现,具体如下:
可选地,所述指示模块1104具体用于:
向所述启动处理器核发送核间中断消息,所述核间中断消息指示所述启动处理器核执行用于对所述启动处理器核初始化的所述第一负载操作系统所对应的初始化程序;
通过指示所述启动处理器核执行所述第一负载操作系统所对应的初始化程序,指示所述启动处理器核从所述初始化程序中读取所述第一负载操作系统的所述启动镜像的执行所需的至少虚拟内存地址到物理内存地址的映射关系,指示所述启动处理器核在所述初始化程序运行结束后跳转到所述启动镜像所在物理内存位置以执行所述第一负载操作系统的启动镜像。
可选地,还包括:初始化程序配置模块1105,用于在所述映射关系设置模块为每个负载操作系统设置所述启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系之前,为所述第一负载操作系统预先设置用于对所述第一负载操作系统进行初始化的初始化程序,在所述初始化程序中预先设置所述第一负载操作系统的启动镜像在物理内存地址的位置;
所述映射关系设置模块1102具体用于:在所述初始化程序中为所述第一负载操作系统设置所述启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系。
本实施例提供的管理操作系统,可以执行上述资源处理方法实施例的技术方案,其实现原理和技术效果类似,本实施例此处不再赘述。
图13为本发明管理操作系统实施例三的结构示意图。本实施例在图11实施例的基础上实现,具体如下:
可选地,还包括:可用处理器核获取模块1106,用于在启动处理器核确定模块在分配给第一负载操作系统的处理器核中确定启动所述第一负载操作系统的启动处理器核之前,获取第二负载操作系统的可用处理器核,所述第二负载操作系统为所述多个负载系统中除所述第一负载操作系统之外的已注销的负载操作系统,所述可用处理器核中包括已完成启动的处理器核,所述第一负载操作系统的物理资源集合中包括所述可用处理器核;
所述启动处理器核确定模块1103具体用于:当所述第一负载操作系统的物理资源集合中包括所述可用处理器核时,所述管理操作系统在所述可用处理器核中确定启动所述第一负载操作系统的启动处理器核。
可选地,还包括:守护程序配置模块1107,用于所述启动处理器核确定模块在所述可用处理器核中确定启动所述第一负载操作系统的启动处理器核之后,在所述启动处理核上为所述第一负载操作系统预先设置守护程序,在所述守护程序中预先设置所述第一负载操作系统的启动镜像在物理内存地址的位置;
所述映射关系设置模块1102具体用于:在所述守护程序中为所述第一负载操作系统设置的所述启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系。
可选地,所述指示模块1104具体用于:向所述启动处理器核上运行的守护程序发送核间中断消息,所述核间中断消息指示所述启动处理器核从所述守护程序中读取所述管理操作系统预先给所述第一负载操作系统建立的所述启动镜像的执行所需的虚拟内存地址到物理内存地址的映射关系;所述守护程序配置模块在所述守护程序中预先设置的所述第一负载操作系统对应的启动镜像在物理内存地址的位置,指示所述启动处理器核跳转到所述启动镜像所在物理内存地址的位置以执行所述第一负载操作系统的启动镜像。
本实施例提供的管理操作系统,可以执行上述资源处理方法实施例的技术方案,其实现原理和技术效果类似,本实施例此处不再赘述。
在图12和图13实施例的基础上,所述资源分配模块具体用于:
根据所述负载操作系统的个数,对资源池可用物理资源列表中的物理资源的标识对应的所述物理资源池中的可用物理资源进行第一次划分,得到多个物理资源集合,所述物理资源集合的个数与所述负载操作系统的个数相等,所述管理操作系统确定各所述负载操作系统与各所述物理资源集合的对应关系;
根据所述对应关系,为各所述负载操作系统分配独占使用的物理资源集合。
可选地,每个所述物理资源集合还包括:所述宿主机的部分外部设备;
所述启动参数还包括:分配给所述第一负载操作系统的外部设备的标识,以及与所述外部设备对应的设备描述信息表。
在图12和图13实施例的基础上,当管理操作系统对第一负载操作系统的运行进行监控时,包括两种可能的实现方式,管理操作系统的结构包括两种可能的实现方式。
一种可能的实现方式为,管理操作系统还包括:
第一监控模块,用于在所述指示模块指示所述启动处理器核执行预先为所述第一负载操作系统建立的启动镜像之后,对所述第一负载操作系统的运行进行监控;
第一资源管理模块,用于若所述第一监控模块的监控结果为分配给所述第一负载操作系统的物理资源的使用率小于第一预设阈值,则确定所述第一负载操作系统需要减少物理资源,确定需要减少的物理资源的类型标识,所述物理资源的类型标识用于区分所述物理资源为处理器核资源、物理内存资源还是外部设备资源;
所述资源配置模块,还用于根据所述需要减少的物理资源的类型标识,对所述资源池可用物理资源列表中的物理资源的标识对应的所述物理资源池中的可用物理资源进行第二次划分,减少所述第一负载操作系统的物理资源,其中,所述减少的物理资源是所述需要减少的物理资源的类型标识所对应的物理资源。
一种可能的实现方式为,管理操作系统还包括:
第二监控模块,用于在所述指示模块指示所述启动处理器核执行预先为所述第一负载操作系统建立的启动镜像之后,对所述第一负载操作系统的运行进行监控;
第二资源管理模块,用于若所述第二监控模块的监控结果为分配给所述第一负载操作系统的物理资源的使用率大于所述第二预设阈值,则确定所述第一负载操作系统需要增加物理资源,确定需要增加的物理资源的类型标识,所述物理资源的类型标识用于区分所述需要增加的物理资源为处理器核资源、物理内存资源还是外部设备资源;
所述资源配置模块,还用于根据所述需要增加的物理资源的类型标识,对所述资源池可用物理资源列表中的物理资源的标识对应的所述物理资源池中的可用物理资源进行第二次划分,增加所述第一负载操作系统的物理资源,其中,所述增加的物理资源是所述需要增加的物理资源的类型标识所对应的物理资源。
在图12和图13实施例的基础上,当第一负载操作系统对该第一负载操作系统的运行进行监控时,包括两种可能的实现方式,管理操作系统的结构包括两种可能的实现方式。
一种可能的实现方式为,管理操作系统还包括:
第一接收模块,用于所述指示模块指示所述启动处理器核执行预先为所述第一负载操作系统建立的启动镜像之后,接收所述第一负载操作系统发送的资源减少请求消息,所述资源减少请求消息包括需要减少的物理资源的类型标识,所述物理资源的类型标识用于区分所述物理资源为处理器核资源、物理内存资源还是外部设备资源;
所述资源配置模块,还用于根据所述资源减少请求消息中的所述需要减少的物理资源的类型标识,对所述资源池可用物理资源列表中的物理资源的标识对应的所述物理资源池中的可用物理资源进行第二次划分,减少所述第一负载操作系统的物理资源,其中,所述减少的物理资源是所述需要减少的物理资源的类型标识所对应的物理资源。
另一种可能的实现方式为,管理操作系统还包括:
第二接收模块,用于在所述指示模块指示所述启动处理器核执行预先为所述第一负载操作系统建立的启动镜像之后,接收所述第一负载操作系统发送的资源增加请求消息,所述资源增加请求消息包括需要增加的物理资源的类型标识,所述物理资源的类型标识用于区分所述物理资源为处理器核资源、物理内存资源还是外部设备资源;
所述资源配置模块,还用于根据所述资源增加请求消息中的所述需要增加的物理资源的类型标识,对所述资源池可用物理资源列表中的物理资源的标识对应的所述物理资源池中的可用物理资源进行第二次划分,增加所述第一负载操作系统的物理资源,其中,所述增加的物理资源是所述需要增加的物理资源的类型标识所对应的物理资源。
在上述各实施例的基础上,若所述需要增加的物理资源为处理器核,则所述资源配置模块,还具体用于:
将需要为所述第一负载操作系统增加的处理器核标记为归属于所述第一负载操作系统的物理资源,向所述第一负载操作系统发送资源增加消息,所述资源增加消息中包括需要增加的处理器核的标识;
向所述增加的处理器核发送跳转指示,所述跳转指示用于指示所述增加的处理器核执行所述第一负载操作系统的内核程序,指示所述增加的处理器核从所述内核程序中读取所述第一负载操作系统的执行所需的全部虚拟内存地址到物理内存地址的映射关系。
在上述各实施例的基础上,若所述需要减少的物理资源为处理器核,则所述资源配置模块,还具体用于:
向所述第一负载操作系统发送资源减少消息,所述资源减少消息中包括需要释放的处理器核的标识;
获取所述第一负载操作系统释放的处理器核的标识,将所述释放的处理器核的标识添加到所述资源池可用物理资源列表中,所述释放的处理器核为与所述需要减少的处理核的标识对应的处理器核。
在上述各实施例的基础上,若所述需要增加的物理资源为物理内存资源,则所述资源配置模块,还具体用于:将需要为所述第一负载操作系统增加的物理内存地址标记为归属于所述第一负载操作系统的物理资源,向所述第一负载操作系统发送资源增加消息,所述资源增加消息包括需要增加的物理内存地址的标识。
在上述各实施例的基础上,若所述需要减少的物理资源为物理内存资源,则所述资源配置模块,还具体用于:向所述第一负载操作系统发送资源减少消息,所述资源减少消息包括需要释放的物理内存地址的标识;
获取所述第一负载操作系统释放的物理内存地址的标识,将所述释放的物理内存地址的标识添加到所述资源池可用物理资源列表中,所述释放的物理内存地址为与所述需要释放的物理内存地址的标识对应的物理内存地址。
在上述各实施例的基础上,若所述需要增加的物理资源为外部设备资源,则所述资源配置模块,还具体用于:将需要为所述第一负载操作系统增加的外部设备标记为归属于所述第一负载操作系统的物理资源,向所述第一负载操作系统发送热插消息,所述热插消息用于指示所述第一负载操作系统获取需要增加的外部设备的标识以及与所述增加的外部设备对应的设备描述信息表。
在上述各实施例的基础上,若所述需要减少的物理资源为外部设备资源,则所述资源配置模块,还具体用于:向所述第一负载操作系统发送热拔消息,所述热拔消息包括需要减少的外部设备的标识;
获取所述第一负载操作系统减少的外部设备的标识,将所述减少的外部设备的标识添加到所述资源池可用物理资源列表中,所述减少的外部设备为与所述需要减少的外部设备的标识对应的外部设备。
本实施例提供的管理操作系统,可以执行上述资源处理方法实施例的技术方案,其实现原理和技术效果类似,本实施例此处不再赘述。
在图11至图13实施例的基础上,管理操作系统还可以包括运行时所需的其它模块,例如:
实例间通讯模块,用于完成管理操作系统和其它负载操作系统间的底层通讯,通常并不会通过网络,而是通过处理器间中断的方式进行通知和响应;
资源运行时辅助模块,由于硬件功能的限制,当外部设备的中断不能直接路由到负载操作系统时,管理操作系统的运行时辅助模块可以对中断进行转发,帮助完成中断的正常响应。当硬件功能完全支持中断的自主路由、直接内存存取(Direct Memory Access,简称DMA)的自由配置,即外部设备的中断直接路由到负载操作系统时,则可以取消该资源运行时辅助模块;
终端服务模块:为需要终端(键盘、鼠标或显卡)的Light OS准备虚拟的终端设备,通过使用共享内存等机制保证通讯的效率,并在运行时提供支持;
应用管理模块,用于虚拟化系统面向用户的管理接口,方便用户管理复杂的应用,以及制定合适的应用调度策略。
图14为本发明负载操作系统实施例一的结构示意图。本实施例提供的负载操作系统应用于图1所示的多内核操作系统,所述多内核操作系统包括运行在宿主机的管理操作系统、多个所述负载操作系统、物理资源池,所述物理资源池包括所述宿主机的处理器核和物理内存,所述每个负载操作系统独占使用所述管理操作系统分配的物理资源集合,每个所述物理资源集合包括:所述宿主机的部分处理器核,所述宿主机的部分物理内存;所述管理操作系统预先为每个负载操作系统构建启动镜像,为每个负载操作系统设置所述启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系;所述负载操作系统140包括映射关系获取模块1401、指令执行模块1402、启动参数获取模块1403和物理资源集合获取模块1404。
映射关系获取模块1401,用于读取所述第一负载操作系统的启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系,所述映射关系用于使所述第一负载操作系统的启动处理器核访问所述物理内存地址;其中,所述第一负载操作系统为所述多内核操作系统中任一负载操作系统;
指令执行模块1402,用于按照所述管理操作系统设置的执行启动镜像跳转的指令,跳转到所述第一负载操作系统对应的启动镜像在物理内存地址的位置,根据所述映射关系执行所述第一负载操作系统对应的启动镜像;
启动参数获取模块1403,用于在所述指令执行模块执行所述第一负载操作系统的启动镜像的过程中,从所述第一负载操作系统的启动镜像中获取所述第一负载操作系统的启动参数,所述启动参数包括分配给所述第一负载操作系统的处理器核的标识,分配给所述第一负载操作系统的物理内存地址的标识;
物理资源集合获取模块1404,用于根据所述处理器核的标识、所述第一负载操作系统的物理内存地址的标识,确定所述管理操作系统分配给所述第一负载操作系统独占使用的物理资源集合。
本实施例提供的负载操作系统,可以执行上述资源处理方法实施例的技术方案,其实现原理和技术效果类似,本实施例此处不再赘述。
图15为本发明负载操作系统实施例二的结构示意图。本实施例在图14实施例的基础上实现,具体如下:
可选地,所述映射关系获取模块1401具体用于:
接收所述管理操作系统发送的核间中断消息,按照所述核间中断消息的指示,所述启动处理器核执行用于对所述启动处理器核初始化的所述第一负载操作系统对应的初始化程序;
执行所述初始化程序,从所述初始化程序中读取所述管理操作系统预先给所述第一负载操作系统建立的所述启动镜像的执行所需的至少虚拟内存地址到物理内存地址的映射关系;
所述指令执行模块1402具体用于:执行所述初始化程序,从所述初始化程序中读取所述管理操作系统预先设置在所述初始化程序中的跳转指令,跳转到所述第一负载操作系统对应的启动镜像在物理内存地址的位置。
可选地,所述第一负载操做系统的启动处理器为所述管理操作系统确定的已经完成启动的处理器核,所述第一负载操作系统的启动处理器核上运行有守护程序,所述守护程序为所述管理操作系统为所述第一负载操作系统预先设置的,所述守护程序中设置有所述第一负载操作系统对应的启动镜像在物理内存地址的位置和所述启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系;
可选地,所述映射关系获取模块1401具体用于,在所述启动处理器核上运行的守护程序接收所述管理操作系统发送的核间中断消息后,按照所述核间中断消息的指示,从所述守护程序中读取所述管理操作系统预先给所述第一负载操作系统建立的所述启动镜像的执行所需的虚拟内存地址到物理内存地址的映射关系;
所述指令执行模块1402具体用于:读取所述管理操作系统预先在所述守护程序中设置的跳转指令,跳转到所述第一负载操作系统对应的启动镜像在物理内存地址的位置。
可选地,每个所述物理资源集合还包括:所述宿主机的部分外部设备;
所述启动参数还包括:所述管理操作系统分配给所述第一负载操作系统的外部设备的标识,以及与所述外部设备对应的设备描述信息表。
可选地,还包括:映射关系建立模块1405,用于在所述物理资源集合获取模块确定所述管理操作系统分配给所述第一负载操作系统独占使用的物理资源集合之后,建立所述第一负载操作系统的执行所需的全部虚拟内存地址到物理内存地址的映射关系;
根据所述第一负载操作系统的执行所需的全部虚拟内存地址到物理内存地址的映射关系,访问物理内存地址。
可选地,所述指令执行模块1402还用于在所述物理资源集合获取模块确定所述管理操作系统分配给所述第一负载操作系统独占使用的物理资源集合之后,通过分配给所述第一负载操作系统的处理器核执行所述管理操作系统下发的特权指令。
本实施例提供的负载操作系统,可以执行上述资源处理方法实施例的技术方案,其实现原理和技术效果类似,本实施例此处不再赘述。
在图15实施例的基础上,第一负载操作系统对第一负载操作系统的物理资源进行监控,实现资源的动态调整,可选地,还包括:
第一监控模块,用于在所述物理资源集合获取模块确定所述管理操作系统分配给所述第一负载操作系统独占使用的物理资源集合之后,对所述第一负载操作系统的物理资源进行监控;
第一发送模块,用于若所述第一监控模块的监控结果为所述管理操作系统分配给所述第一负载操作系统的物理资源的使用率小于第一预设阈值,向所述管理操作系统发送资源减少请求消息,所述资源减少请求消息中包括需要减少的物理资源的类型标识,所述物理资源的类型标识用于区分所述需要减少的物理资源为处理器核资源、物理内存资源还是外部设备资源。
可选地,还包括:
第二监控模块,用于在所述物理资源集合获取模块确定所述管理操作系统分配给所述第一负载操作系统独占使用的物理资源集合之后,对所述第一负载操作系统的物理资源进行监控;
第二发送模块,用于若所述第一监控模块的监控结果为所述管理操作系统分配给所述第一负载操作系统的物理资源的使用率大于第一预设阈值,则向所述管理操作系统发送资源增加请求消息,所述资源增加请求消息中包括需要增加的物理资源的类型标识,所述物理资源的类型标识用于区分所述需要增加的物理资源为处理器核资源还是物理内存资源。
可选地,若所述需要增加的物理资源为处理器核,则所述物理资源集合获取模块还具体用于:在所述第二发送模块向所述管理操作系统发送资源增加请求消息之后,
接收所述管理操作系统发送的资源增加消息,所述资源增加消息中包括需要增加的处理器核的标识;
根据所述需要增加的处理器核的标识确定所述管理操作系统为所述第一负载操作系统增加的处理器核;
在所述第一负载操作系统的增加的处理器核接收所述管理操作系统发送的跳转指示时,根据所述跳转指示执行所述第一负载操作系统的内核程序,从所述内核程序中读取所述第一负载操作系统的执行所需的全部虚拟内存地址到物理内存地址的映射关系,所述第一负载操作系统在所述内核程序中预先设置所述第一负载操作系统的执行所需的全部虚拟内存地址到物理内存地址的映射关系。
可选地,若所述需要减少的物理资源为处理器核,则所述物理资源集合获取模块还具体用于:在所述第一发送模块向所述管理操作系统发送资源减少请求消息之后,
接收所述管理操作系统发送的资源减少消息,所述资源减少消息中包括需要释放的处理器核的标识;
根据所述需要释放的处理器核的标识确定所述第一负载操作系统需要释放的处理器核;
释放处理器核,所述释放的处理器核为与所述需要减少的处理核的标识对应的处理器核。
可选地,若所述需要增加的物理资源为物理内存资源,则所述物理资源集合获取模块还具体用于:在所述第二发送模块向所述管理操作系统发送资源增加请求消息之后,
接收所述管理操作系统发送的资源增加消息,所述资源增加消息包括需要增加的物理内存地址的标识;
根据所述需要增加的物理内存地址的标识确定所述管理操作系统为所述第一负载操作系统增加的物理内存地址。
可选地,若所述需要减少的物理资源为物理内存资源,则所述物理资源集合获取模块还具体用于:在所述第一发送模块向所述管理操作系统发送资源减少请求消息之后,还包括:
接收所述管理操作系统发送的资源减少消息,所述资源减少消息包括需要释放的物理内存地址的标识;
根据所述需要释放的物理内存地址的标识确定所述第一负载操作系统需要释放的物理内存地址;
释放物理内存地址,所述释放的物理内存地址为与所述需要释放的物理内存地址的标识对应的物理内存地址。
可选地,若所述需要增加的物理资源为外部设备资源,则所述物理资源集合获取模块还具体用于:在所述第二发送模块向所述管理操作系统发送资源增加请求消息之后,还包括:
接收管理操作系统发送的热插消息,所述热插消息用于指示所述第一负载操作系统获取需要增加的外部设备的标识以及与所述增加的外部设备对应的设备描述信息表;
根据所述需要增加的外部设备的标识以及与所述增加的外部设备对应的设备描述信息表,对与所述需要增加的外部设备的标识对应的外部设备执行热插操作。
可选地,若所述需要减少的物理资源为物理内存资源,则所述物理资源集合获取模块还具体用于:在所述第一发送模块向所述管理操作系统发送资源减少请求消息之后,
接收管理操作系统发送的热拔消息,所述热拔消息包括需要减少的外部设备的标识;
根据所述需要减少的外部设备的标识,对与所述需要减少的外部设备的标识对应的外部设备执行热拔操作。
本实施例提供的负载操作系统,可以执行上述资源处理方法实施例的技术方案,其实现原理和技术效果类似,本实施例此处不再赘述。
在图14和图15实施例的基础上,负载操作系统还可以包括运行时所需的其它模块,例如:
实例间通讯模块:用于负载操作系统与管理操作系统或者其它负载操作系统在宿主机内进行快速通信;
虚拟终端,通过管理操作系统提供的终端虚拟化服务,负载操作系统可以被用户以终端方式直接操作;
应用管理模块,用于接收管理操作系统或其它应用部署的应用,并运行及管理该应用的执行。
图16为异构平台上的多内核系统架构示意图。如图16所示,本发明虚拟化系统实施例中,在一个异构节点上,包含有数据处理器(Data ProcessingUnit,简称DPU),奔腾(Xeon)处理器及通用计算图形处理器(General PurposeGraphic Processing Unit,简称GPGPU)等处理器。其中,各处理器上均包括多个处理器核,异构的各处理器通过PCI-E总线互联,以非一致性内存访问(Non-uniform Memory Access,简称NUMA)的方式组合起来。该异构平台上还有物理内存、磁盘阵列、网卡阵列等资源,它们通过前端总线,输入输出控制中心,和PCI总线等设备连接起来。
本实施例将管理操作系统和部分负载操作系统运行在奔腾处理器对应的处理器核上,在其它处理器对应的处理器核上运行其它定制的负载操作系统,比如GPGPU适合运行并行度高的计算任务,DPU适合运行数据处理类的服务,因此,根据各个处理器的业务类型为GPGPU及DPU分别定制负载操作系统,如为GPGPU定制的负载操作系统仅包含基本矩阵运算的运行时库支持,且主要支持计算统一设备体系结构(Compute Unified Device Architecture,简称CUDA)等语言;为DPU定制的负载操作系统仅包含数据处理的包支持,且主要支持一个分布式系统基础架构(Hadoop)等应用,去除其它的计算组件。
其中,管理操作系统还可能管理由PCI-E交换机连接的内存(DRAM),并且根据管理员指定的配置文件启动DPU上的多个负载操作系统,并通过应用管理程序向负载操作系统发送任务。可选地,针对数据处理的应用,由于该应用对进程和线程数量要求并不高,因此,多内核在对数据通道处理能力进行优化时,可以减少并发线程、进程等数据结构的支持,从而以减少空间或性能开销,提升性能。
图17为本发明宿主机实施例一的结构示意图,如图17所示,本实施例提供的宿主机170包括处理器1701和存储器1702,其中,存储器1702存储执行指令,当宿主机170运行时,处理器1701与存储器1702之间通信,处理器1701执行存储器1702中的执行指令使得宿主机170执行上述资源处理方法技术方案的操作。
本实施例的宿主机,可以用于执行本发明上述虚拟机系统管理方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统和方法,可以通过其它的方式实现。例如,以上所描述的系统实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,模块间接耦合或通信连接,可以是电性,机械或其它的形式。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (66)
1.一种资源处理方法,其特征在于,应用于多内核操作系统,所述多内核操作系统包括运行在宿主机的管理操作系统、多个负载操作系统、物理资源池,所述物理资源池包括所述宿主机的处理器核和物理内存,所述方法包括:
所述管理操作系统为各所述负载操作系统分配独占使用的物理资源集合,为每个负载操作系统构建启动镜像,为每个负载操作系统设置所述启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系,每个所述物理资源集合包括:所述宿主机的部分处理器核,所述宿主机的部分物理内存;
所述管理操作系统在分配给第一负载操作系统的处理器核中确定启动所述第一负载操作系统的启动处理器核,所述第一负载操作系统为任一所述负载操作系统;
所述管理操作系统指示所述启动处理器核读取所述管理操作系统预先建立的为所述第一负载操作系统的启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系,以使所述启动处理器核在所述启动镜像的执行过程中根据所述映射关系访问所述物理内存地址;指示所述启动处理器核执行预先为所述第一负载操作系统建立的启动镜像,所述启动镜像中包括所述第一负载操作系统的启动参数,所述启动参数包括分配给所述第一负载操作系统的处理器核的标识,分配给所述第一负载操作系统的物理内存地址的标识。
2.根据权利要求1所述的方法,其特征在于,所述管理操作系统指示所述启动处理器核读取所述管理操作系统预先建立的为所述第一负载操作系统的启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系;指示所述启动处理器核执行预先为所述第一负载操作系统建立的启动镜像,包括:
所述管理操作系统向所述启动处理器核发送核间中断消息,所述核间中断消息指示所述启动处理器核执行用于对所述启动处理器核初始化的所述第一负载操作系统所对应的初始化程序;
所述管理操作系统,通过指示所述启动处理器核执行所述第一负载操作系统所对应的初始化程序,指示所述启动处理器核从所述初始化程序中读取所述第一负载操作系统的所述启动镜像的执行所需的至少虚拟内存地址到物理内存地址的映射关系,指示所述启动处理器核在所述初始化程序运行结束后跳转到所述启动镜像所在物理内存位置以执行所述第一负载操作系统的启动镜像。
3.根据权利要求2所述的方法,其特征在于,所述管理操作系统为每个负载操作系统设置所述启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系之前,还包括:
所述管理操作系统为所述第一负载操作系统预先设置用于对所述第一负载操作系统进行初始化的初始化程序,在所述初始化程序中预先设置所述第一负载操作系统的启动镜像在物理内存地址的位置;
所述管理操作系统为每个负载操作系统设置所述启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系,包括:
所述管理操作系统在所述初始化程序中为所述第一负载操作系统设置所述启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系。
4.根据权利要求1所述的方法,其特征在于,所述管理操作系统在分配给第一负载操作系统的处理器核中确定启动所述第一负载操作系统的启动处理器核之前,还包括:
所述管理操作系统获取第二负载操作系统的可用处理器核,所述第二负载操作系统为所述多个负载系统中除所述第一负载操作系统之外的已注销的负载操作系统,所述可用处理器核中包括已完成启动的处理器核,所述第一负载操作系统的物理资源集合中包括所述可用处理器核;
所述管理操作系统在分配给所述第一负载操作系统的处理器核中确定启动所述第一负载操作系统的启动处理器核,包括:
当所述第一负载操作系统的物理资源集合中包括所述可用处理器核时,所述管理操作系统在所述可用处理器核中确定启动所述第一负载操作系统的启动处理器核。
5.根据权利要求4所述的方法,其特征在于,所述管理操作系统在所述可用处理器核中确定启动所述第一负载操作系统的启动处理器核之后,还包括:
所述管理操作系统在所述启动处理核上为所述第一负载操作系统预先设置守护程序,在所述守护程序中预先设置所述第一负载操作系统的启动镜像在物理内存地址的位置;
所述管理操作系统为每个负载操作系统设置所述启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系,包括:
所述管理操作系统在所述守护程序中为所述第一负载操作系统设置的所述启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系。
6.根据权利要求5所述的方法,其特征在于,所述管理操作系统指示所述启动处理器核读取所述管理操作系统预先建立的为所述第一负载操作系统的启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系;指示所述启动处理器核执行预先为所述第一负载操作系统建立的启动镜像,包括:
所述管理操作系统向所述启动处理器核上运行的守护程序发送核间中断消息,所述核间中断消息指示所述启动处理器核从所述守护程序中读取所述管理操作系统预先给所述第一负载操作系统建立的所述启动镜像的执行所需的虚拟内存地址到物理内存地址的映射关系;所述管理操作系统在所述守护程序中预先设置的所述第一负载操作系统对应的启动镜像在物理内存地址的位置,指示所述启动处理器核跳转到所述启动镜像所在物理内存地址的位置以执行所述第一负载操作系统的启动镜像。
7.根据权利要求1至6任一项所述的方法,其特征在于,所述管理操作系统为各所述负载操作系统分配独占使用的物理资源集合,包括:
所述管理操作系统根据所述负载操作系统的个数,对资源池可用物理资源列表中的物理资源的标识对应的所述物理资源池中的可用物理资源进行第一次划分,得到多个物理资源集合,所述物理资源集合的个数与所述负载操作系统的个数相等,所述管理操作系统确定各所述负载操作系统与各所述物理资源集合的对应关系;
所述管理操作系统根据所述对应关系,为各所述负载操作系统分配独占使用的物理资源集合。
8.根据权利要求7所述的方法,其特征在于,每个所述物理资源集合还包括:所述宿主机的部分外部设备;
所述启动参数还包括:分配给所述第一负载操作系统的外部设备的标识,以及与所述外部设备对应的设备描述信息表。
9.根据权利要求8所述的方法,其特征在于,所述管理操作系统指示所述启动处理器核执行预先为所述第一负载操作系统建立的启动镜像之后,还包括:
所述管理操作系统对所述第一负载操作系统的运行进行监控;
若分配给所述第一负载操作系统的物理资源的使用率小于第一预设阈值,则确定所述第一负载操作系统需要减少物理资源,确定需要减少的物理资源的类型标识,所述物理资源的类型标识用于区分所述物理资源为处理器核资源、物理内存资源还是外部设备资源;
所述管理操作系统根据所述需要减少的物理资源的类型标识,对所述资源池可用物理资源列表中的物理资源的标识对应的所述物理资源池中的可用物理资源进行第二次划分,减少所述第一负载操作系统的物理资源,其中,所述减少的物理资源是所述需要减少的物理资源的类型标识所对应的物理资源。
10.根据权利要求8所述的方法,其特征在于,所述管理操作系统指示所述启动处理器核执行预先为所述第一负载操作系统建立的启动镜像之后,还包括:
所述管理操作系统对所述第一负载操作系统的运行进行监控;
若分配给所述第一负载操作系统的物理资源的使用率大于所述第二预设阈值,则确定所述第一负载操作系统需要增加物理资源,确定需要增加的物理资源的类型标识,所述物理资源的类型标识用于区分所述需要增加的物理资源为处理器核资源、物理内存资源还是外部设备资源;
所述管理操作系统根据所述需要增加的物理资源的类型标识,对所述资源池可用物理资源列表中的物理资源的标识对应的所述物理资源池中的可用物理资源进行第二次划分,增加所述第一负载操作系统的物理资源,其中,所述增加的物理资源是所述需要增加的物理资源的类型标识所对应的物理资源。
11.根据权利要求8所述的方法,其特征在于,所述管理操作系统指示所述启动处理器核执行预先为所述第一负载操作系统建立的启动镜像之后,还包括:
所述管理操作系统接收所述第一负载操作系统发送的资源减少请求消息,所述资源减少请求消息包括需要减少的物理资源的类型标识,所述物理资源的类型标识用于区分所述物理资源为处理器核资源、物理内存资源还是外部设备资源;
所述管理操作系统根据所述资源减少请求消息中的所述需要减少的物理资源的类型标识,对所述资源池可用物理资源列表中的物理资源的标识对应的所述物理资源池中的可用物理资源进行第二次划分,减少所述第一负载操作系统的物理资源,其中,所述减少的物理资源是所述需要减少的物理资源的类型标识所对应的物理资源。
12.根据权利要求8所述的方法,其特征在于,所述管理操作系统指示所述启动处理器核执行预先为所述第一负载操作系统建立的启动镜像之后,还包括:
所述管理操作系统接收所述第一负载操作系统发送的资源增加请求消息,所述资源增加请求消息包括需要增加的物理资源的类型标识,所述物理资源的类型标识用于区分所述物理资源为处理器核资源、物理内存资源还是外部设备资源;
所述管理操作系统根据所述资源增加请求消息中的所述需要增加的物理资源的类型标识,对所述资源池可用物理资源列表中的物理资源的标识对应的所述物理资源池中的可用物理资源进行第二次划分,增加所述第一负载操作系统的物理资源,其中,所述增加的物理资源是所述需要增加的物理资源的类型标识所对应的物理资源。
13.根据权利要求10或12所述的方法,其特征在于,若所述需要增加的物理资源为处理器核,则所述管理操作系统增加所述第一负载操作系统的物理资源包括:
所述管理操作系统将需要为所述第一负载操作系统增加的处理器核标记为归属于所述第一负载操作系统的物理资源,向所述第一负载操作系统发送资源增加消息,所述资源增加消息中包括需要增加的处理器核的标识;
所述管理操作系统向所述增加的处理器核发送跳转指示,所述跳转指示用于指示所述增加的处理器核执行所述第一负载操作系统的内核程序,指示所述增加的处理器核从所述内核程序中读取所述第一负载操作系统的执行所需的全部虚拟内存地址到物理内存地址的映射关系。
14.根据权利要求9或11所述的方法,其特征在于,若所述需要减少的物理资源为处理器核,则所述管理操作系统减少所述第一负载操作系统的物理资源包括:
所述管理操作系统向所述第一负载操作系统发送资源减少消息,所述资源减少消息中包括需要释放的处理器核的标识;
所述管理操作系统获取所述第一负载操作系统释放的处理器核的标识,将所述释放的处理器核的标识添加到所述资源池可用物理资源列表中,所述释放的处理器核为与所述需要减少的处理核的标识对应的处理器核。
15.根据权利要求10或12所述的方法,其特征在于,若所述需要增加的物理资源为物理内存资源,则所述管理操作系统增加所述第一负载操作系统的物理资源,包括:
所述管理操作系统将需要为所述第一负载操作系统增加的物理内存地址标记为归属于所述第一负载操作系统的物理资源,向所述第一负载操作系统发送资源增加消息,所述资源增加消息包括需要增加的物理内存地址的标识。
16.根据权利要求9或11所述的方法,其特征在于,若所述需要减少的物理资源为物理内存资源,则所述管理操作系统减少所述第一负载操作系统的物理资源,包括:
所述管理操作系统向所述第一负载操作系统发送资源减少消息,所述资源减少消息包括需要释放的物理内存地址的标识;
所述管理操作系统获取所述第一负载操作系统释放的物理内存地址的标识,将所述释放的物理内存地址的标识添加到所述资源池可用物理资源列表中,所述释放的物理内存地址为与所述需要释放的物理内存地址的标识对应的物理内存地址。
17.根据权利要求10或12所述的方法,其特征在于,若所述需要增加的物理资源为外部设备资源,则所述管理操作系统增加所述第一负载操作系统的物理资源,包括:
所述管理操作系统将需要为所述第一负载操作系统增加的外部设备标记为归属于所述第一负载操作系统的物理资源,向所述第一负载操作系统发送热插消息,所述热插消息用于指示所述第一负载操作系统获取需要增加的外部设备的标识以及与所述增加的外部设备对应的设备描述信息表。
18.根据权利要求9或11所述的方法,其特征在于,若所述需要减少的物理资源为外部设备资源,则所述管理操作系统减少所述第一负载操作系统的物理资源,包括:
所述管理操作系统向所述第一负载操作系统发送热拔消息,所述热拔消息包括需要减少的外部设备的标识;
所述管理操作系统获取所述第一负载操作系统减少的外部设备的标识,将所述减少的外部设备的标识添加到所述资源池可用物理资源列表中,所述减少的外部设备为与所述需要减少的外部设备的标识对应的外部设备。
19.一种资源处理方法,其特征在于,应用于多内核操作系统,所述多内核操作系统包括运行在宿主机的管理操作系统、多个负载操作系统、物理资源池,所述物理资源池包括所述宿主机的处理器核和物理内存,所述每个负载操作系统独占使用所述管理操作系统分配的物理资源集合,每个所述物理资源集合包括:所述宿主机的部分处理器核,所述宿主机的部分物理内存;所述管理操作系统预先为每个负载操作系统构建启动镜像,为每个负载操作系统设置所述启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系;所述方法包括:
第一负载操作系统的启动处理器核读取所述第一负载操作系统的启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系,所述映射关系用于使所述第一负载操作系统的启动处理器核访问所述物理内存地址;其中,所述第一负载操作系统为所述多内核操作系统中任一负载操作系统;
所述第一负载操作系统的启动处理器核按照所述管理操作系统设置的执行启动镜像跳转的指令,跳转到所述第一负载操作系统对应的启动镜像在物理内存地址的位置,根据所述映射关系执行所述第一负载操作系统对应的启动镜像;
所述第一负载操作系统的启动处理器核在执行所述第一负载操作系统的启动镜像的过程中,从所述第一负载操作系统的启动镜像中获取所述第一负载操作系统的启动参数,所述启动参数包括分配给所述第一负载操作系统的处理器核的标识,分配给所述第一负载操作系统的物理内存地址的标识;
所述第一负载操作系统根据所述处理器核的标识、所述第一负载操作系统的物理内存地址的标识,确定所述管理操作系统分配给所述第一负载操作系统独占使用的物理资源集合。
20.根据权利要求19所述的资源处理方法,其特征在于,所述第一负载操作系统的启动处理器核读取所述第一负载操作系统的启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系,包括:
所述第一负载操作系统的启动处理器核接收所述管理操作系统发送的核间中断消息,按照所述核间中断消息的指示,所述启动处理器核执行用于对所述启动处理器核初始化的所述第一负载操作系统对应的初始化程序;
所述第一负载操作系统的启动处理器核执行所述初始化程序,从所述初始化程序中读取所述管理操作系统预先给所述第一负载操作系统建立的所述启动镜像的执行所需的至少虚拟内存地址到物理内存地址的映射关系;
所述第一负载操作系统的启动处理器核按照所述管理操作系统设置的执行启动镜像跳转的指令,跳转到所述第一负载操作系统对应的启动镜像在物理内存地址的位置,包括:
所述第一负载操作系统的启动处理器核执行所述初始化程序,从所述初始化程序中读取所述管理操作系统预先设置在所述初始化程序中的跳转指令,跳转到所述第一负载操作系统对应的启动镜像在物理内存地址的位置。
21.根据权利要求19所述的资源处理方法,其特征在于,所述第一负载操作系统的启动处理器为所述管理操作系统确定的已经完成启动的处理器核,所述第一负载操作系统的启动处理器核上运行有守护程序,所述守护程序为所述管理操作系统为所述第一负载操作系统预先设置的,所述守护程序中设置有所述第一负载操作系统对应的启动镜像在物理内存地址的位置和所述启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系;
所述第一负载操作系统的启动处理器核读取所述第一负载操作系统的启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系,包括:
所述第一负载操作系统的启动处理器核上运行的守护程序接收所述管理操作系统发送的核间中断消息,所述启动处理器核按照所述核间中断消息的指示,从所述守护程序中读取所述管理操作系统预先给所述第一负载操作系统建立的所述启动镜像的执行所需的虚拟内存地址到物理内存地址的映射关系;
所述第一负载操作系统的启动处理器核按照所述管理操作系统设置的执行启动镜像的跳转的指令,跳转到所述第一负载操作系统对应的启动镜像在物理内存地址的位置,包括:
所述第一负载操作系统的启动处理器核读取所述管理操作系统预先在所述守护程序中设置的跳转指令,跳转到所述第一负载操作系统对应的启动镜像在物理内存地址的位置。
22.根据权利要求19至21任一项所述的方法,其特征在于,每个所述物理资源集合还包括:所述宿主机的部分外部设备;
所述启动参数还包括:所述管理操作系统分配给所述第一负载操作系统的外部设备的标识,以及与所述外部设备对应的设备描述信息表。
23.根据权利要求22所述的方法,其特征在于,所述第一负载操作系统确定所述管理操作系统分配给所述第一负载操作系统独占使用的物理资源集合之后,还包括:
所述第一负载操作系统建立所述第一负载操作系统的执行所需的全部虚拟内存地址到物理内存地址的映射关系;
所述第一负载操作系统的处理器核根据所述第一负载操作系统的执行所需的全部虚拟内存地址到物理内存地址的映射关系,访问物理内存地址。
24.根据权利要求22所述的方法,其特征在于,所述第一负载操作系统确定所述管理操作系统分配给所述第一负载操作系统独占使用的物理资源集合之后,还包括:
所述第一负载操作系统通过分配给所述第一负载操作系统的处理器核执行所述管理操作系统下发的特权指令。
25.根据权利要求23或24所述的方法,其特征在于,所述第一负载操作系统确定所述管理操作系统分配给所述第一负载操作系统独占使用的物理资源集合之后,还包括:
所述第一负载操作系统对所述第一负载操作系统的物理资源进行监控;
若所述第一负载操作系统确定所述管理操作系统分配给所述第一负载操作系统的物理资源的使用率小于第一预设阈值,所述第一负载操作系统向所述管理操作系统发送资源减少请求消息,所述资源减少请求消息中包括需要减少的物理资源的类型标识,所述物理资源的类型标识用于区分所述需要减少的物理资源为处理器核资源、物理内存资源还是外部设备资源。
26.根据权利要求23或24所述的方法,其特征在于,所述第一负载操作系统确定所述管理操作系统分配给所述第一负载操作系统独占使用的物理资源集合之后,还包括:
所述第一负载操作系统对所述第一负载操作系统的物理资源进行监控;
若所述第一负载操作系统确定所述管理操作系统分配给所述第一负载操作系统的物理资源的使用率大于第一预设阈值,则所述第一负载操作系统向所述管理操作系统发送资源增加请求消息,所述资源增加请求消息中包括需要增加的物理资源的类型标识,所述物理资源的类型标识用于区分所述需要增加的物理资源为处理器核资源还是物理内存资源。
27.根据权利要求26所述的方法,其特征在于,若所述需要增加的物理资源为处理器核,则所述第一负载操作系统向所述管理操作系统发送资源增加请求消息之后,还包括:
所述第一负载操作系统接收所述管理操作系统发送的资源增加消息,所述资源增加消息中包括需要增加的处理器核的标识;
所述第一负载操作系统根据所述需要增加的处理器核的标识确定所述管理操作系统为所述第一负载操作系统增加的处理器核;
所述第一负载操作系统的增加的处理器核接收所述管理操作系统发送的跳转指示,并根据所述跳转指示执行所述第一负载操作系统的内核程序,从所述内核程序中读取所述第一负载操作系统的执行所需的全部虚拟内存地址到物理内存地址的映射关系,所述第一负载操作系统在所述内核程序中预先设置所述第一负载操作系统的执行所需的全部虚拟内存地址到物理内存地址的映射关系。
28.根据权利要求25所述的方法,其特征在于,若所述需要减少的物理资源为处理器核,则所述第一负载操作系统向所述管理操作系统发送资源减少请求消息之后,还包括:
所述第一负载操作系统接收所述管理操作系统发送的资源减少消息,所述资源减少消息中包括需要释放的处理器核的标识;
所述第一负载操作系统根据所述需要释放的处理器核的标识确定所述第一负载操作系统需要释放的处理器核;
所述第一负载操作系统释放处理器核,所述释放的处理器核为与所述需要减少的处理核的标识对应的处理器核。
29.根据权利要求26所述的方法,其特征在于,若所述需要增加的物理资源为物理内存资源,则所述第一负载操作系统向所述管理操作系统发送资源增加请求消息之后,还包括:
所述第一负载操作系统接收所述管理操作系统发送的资源增加消息,所述资源增加消息包括需要增加的物理内存地址的标识;
所述第一负载操作系统根据所述需要增加的物理内存地址的标识确定所述管理操作系统为所述第一负载操作系统增加的物理内存地址。
30.根据权利要求25所述的方法,其特征在于,若所述需要减少的物理资源为物理内存资源,则所述第一负载操作系统向所述管理操作系统发送资源减少请求消息之后,还包括:
所述第一负载操作系统接收所述管理操作系统发送的资源减少消息,所述资源减少消息包括需要释放的物理内存地址的标识;
所述第一负载操作系统根据所述需要释放的物理内存地址的标识确定所述第一负载操作系统需要释放的物理内存地址;
所述第一负载操作系统释放物理内存地址,所述释放的物理内存地址为与所述需要释放的物理内存地址的标识对应的物理内存地址。
31.根据权利要求26所述的方法,其特征在于,若所述需要增加的物理资源为外部设备资源,则所述第一负载操作系统向所述管理操作系统发送资源增加请求消息之后,还包括:
所述第一负载操作系统接收管理操作系统发送的热插消息,所述热插消息用于指示所述第一负载操作系统获取需要增加的外部设备的标识以及与所述增加的外部设备对应的设备描述信息表;
所述第一负载操作系统根据所述需要增加的外部设备的标识以及与所述增加的外部设备对应的设备描述信息表,对与所述需要增加的外部设备的标识对应的外部设备执行热插操作。
32.根据权利要求25所述的方法,其特征在于,若所述需要减少的物理资源为物理内存资源,则所述第一负载操作系统向所述管理操作系统发送资源减少请求消息之后,还包括:
所述第一负载操作系统接收管理操作系统发送的热拔消息,所述热拔消息包括需要减少的外部设备的标识;
所述第一负载操作系统根据所述需要减少的外部设备的标识,对与所述需要减少的外部设备的标识对应的外部设备执行热拔操作。
33.一种管理操作系统,其特征在于,应用于多内核操作系统,所述多内核操作系统包括运行在宿主机的所述管理操作系统、多个负载操作系统、物理资源池,所述物理资源池包括所述宿主机的处理器核和物理内存,所述管理操作系统包括:
资源分配模块,用于为各所述负载操作系统分配独占使用的物理资源集合,每个所述物理资源集合包括:所述宿主机的部分处理器核,所述宿主机的部分物理内存;
映射关系设置模块,用于为每个负载操作系统构建启动镜像,为每个负载操作系统设置所述启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系;
启动处理器核确定模块,用于在分配给第一负载操作系统的处理器核中确定启动所述第一负载操作系统的启动处理器核,所述第一负载操作系统为任一所述负载操作系统;
指示模块,用于指示所述启动处理器核读取所述配置模块预先建立的为所述第一负载操作系统的启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系,以使所述启动处理器核在所述启动镜像的执行过程中根据所述映射关系访问所述物理内存地址;指示所述启动处理器核执行预先为所述第一负载操作系统建立的启动镜像,所述启动镜像中包括所述第一负载操作系统的启动参数,所述启动参数包括分配给所述第一负载操作系统的处理器核的标识,分配给所述第一负载操作系统的物理内存地址的标识。
34.根据权利要求33所述的管理操作系统,其特征在于,所述指示模块具体用于:
向所述启动处理器核发送核间中断消息,所述核间中断消息指示所述启动处理器核执行用于对所述启动处理器核初始化的所述第一负载操作系统所对应的初始化程序;
通过指示所述启动处理器核执行所述第一负载操作系统所对应的初始化程序,指示所述启动处理器核从所述初始化程序中读取所述第一负载操作系统的所述启动镜像的执行所需的至少虚拟内存地址到物理内存地址的映射关系,指示所述启动处理器核在所述初始化程序运行结束后跳转到所述启动镜像所在物理内存位置以执行所述第一负载操作系统的启动镜像。
35.根据权利要求34所述的管理操作系统,其特征在于,还包括:
初始化程序配置模块,用于在所述映射关系设置模块为每个负载操作系统设置所述启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系之前,为所述第一负载操作系统预先设置用于对所述第一负载操作系统进行初始化的初始化程序,在所述初始化程序中预先设置所述第一负载操作系统的启动镜像在物理内存地址的位置;
所述映射关系设置模块具体用于:在所述初始化程序中为所述第一负载操作系统设置所述启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系。
36.根据权利要求33所述的管理操作系统,其特征在于,还包括:
可用处理器核获取模块,用于在启动处理器核确定模块在分配给第一负载操作系统的处理器核中确定启动所述第一负载操作系统的启动处理器核之前,获取第二负载操作系统的可用处理器核,所述第二负载操作系统为所述多个负载系统中除所述第一负载操作系统之外的已注销的负载操作系统,所述可用处理器核中包括已完成启动的处理器核,所述第一负载操作系统的物理资源集合中包括所述可用处理器核;
所述启动处理器核确定模块具体用于:当所述第一负载操作系统的物理资源集合中包括所述可用处理器核时,所述管理操作系统在所述可用处理器核中确定启动所述第一负载操作系统的启动处理器核。
37.根据权利要求36所述的管理操作系统,其特征在于,还包括:
守护程序配置模块,用于所述启动处理器核确定模块在所述可用处理器核中确定启动所述第一负载操作系统的启动处理器核之后,在所述启动处理核上为所述第一负载操作系统预先设置守护程序,在所述守护程序中预先设置所述第一负载操作系统的启动镜像在物理内存地址的位置;
所述映射关系设置模块具体用于:在所述守护程序中为所述第一负载操作系统设置的所述启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系。
38.根据权利要求37所述的管理操作系统,其特征在于,所述指示模块具体用于:向所述启动处理器核上运行的守护程序发送核间中断消息,所述核间中断消息指示所述启动处理器核从所述守护程序中读取所述管理操作系统预先给所述第一负载操作系统建立的所述启动镜像的执行所需的虚拟内存地址到物理内存地址的映射关系;所述守护程序配置模块在所述守护程序中预先设置的所述第一负载操作系统对应的启动镜像在物理内存地址的位置,指示所述启动处理器核跳转到所述启动镜像所在物理内存地址的位置以执行所述第一负载操作系统的启动镜像。
39.根据权利要求33至38任一项所述的管理操作系统,其特征在于,所述资源分配模块具体用于:
根据所述负载操作系统的个数,对资源池可用物理资源列表中的物理资源的标识对应的所述物理资源池中的可用物理资源进行第一次划分,得到多个物理资源集合,所述物理资源集合的个数与所述负载操作系统的个数相等,所述管理操作系统确定各所述负载操作系统与各所述物理资源集合的对应关系;
根据所述对应关系,为各所述负载操作系统分配独占使用的物理资源集合。
40.根据权利要求39所述的管理操作系统,其特征在于,每个所述物理资源集合还包括:所述宿主机的部分外部设备;
所述启动参数还包括:分配给所述第一负载操作系统的外部设备的标识,以及与所述外部设备对应的设备描述信息表。
41.根据权利要求40所述的管理操作系统,其特征在于,还包括:
第一监控模块,用于在所述指示模块指示所述启动处理器核执行预先为所述第一负载操作系统建立的启动镜像之后,对所述第一负载操作系统的运行进行监控;
第一资源管理模块,用于若所述第一监控模块的监控结果为分配给所述第一负载操作系统的物理资源的使用率小于第一预设阈值,则确定所述第一负载操作系统需要减少物理资源,确定需要减少的物理资源的类型标识,所述物理资源的类型标识用于区分所述物理资源为处理器核资源、物理内存资源还是外部设备资源;
所述资源配置模块,还用于根据所述需要减少的物理资源的类型标识,对所述资源池可用物理资源列表中的物理资源的标识对应的所述物理资源池中的可用物理资源进行第二次划分,减少所述第一负载操作系统的物理资源,其中,所述减少的物理资源是所述需要减少的物理资源的类型标识所对应的物理资源。
42.根据权利要求40所述的管理操作系统,其特征在于,还包括:
第二监控模块,用于在所述指示模块指示所述启动处理器核执行预先为所述第一负载操作系统建立的启动镜像之后,对所述第一负载操作系统的运行进行监控;
第二资源管理模块,用于若所述第二监控模块的监控结果为分配给所述第一负载操作系统的物理资源的使用率大于所述第二预设阈值,则确定所述第一负载操作系统需要增加物理资源,确定需要增加的物理资源的类型标识,所述物理资源的类型标识用于区分所述需要增加的物理资源为处理器核资源、物理内存资源还是外部设备资源;
所述资源配置模块,还用于根据所述需要增加的物理资源的类型标识,对所述资源池可用物理资源列表中的物理资源的标识对应的所述物理资源池中的可用物理资源进行第二次划分,增加所述第一负载操作系统的物理资源,其中,所述增加的物理资源是所述需要增加的物理资源的类型标识所对应的物理资源。
43.根据权利要求40所述的管理操作系统,其特征在于,还包括:
第一接收模块,用于所述指示模块指示所述启动处理器核执行预先为所述第一负载操作系统建立的启动镜像之后,接收所述第一负载操作系统发送的资源减少请求消息,所述资源减少请求消息包括需要减少的物理资源的类型标识,所述物理资源的类型标识用于区分所述物理资源为处理器核资源、物理内存资源还是外部设备资源;
所述资源配置模块,还用于根据所述资源减少请求消息中的所述需要减少的物理资源的类型标识,对所述资源池可用物理资源列表中的物理资源的标识对应的所述物理资源池中的可用物理资源进行第二次划分,减少所述第一负载操作系统的物理资源,其中,所述减少的物理资源是所述需要减少的物理资源的类型标识所对应的物理资源。
44.根据权利要求40所述的管理操作系统,其特征在于,还包括:
第二接收模块,用于在所述指示模块指示所述启动处理器核执行预先为所述第一负载操作系统建立的启动镜像之后,接收所述第一负载操作系统发送的资源增加请求消息,所述资源增加请求消息包括需要增加的物理资源的类型标识,所述物理资源的类型标识用于区分所述物理资源为处理器核资源、物理内存资源还是外部设备资源;
所述资源配置模块,还用于根据所述资源增加请求消息中的所述需要增加的物理资源的类型标识,对所述资源池可用物理资源列表中的物理资源的标识对应的所述物理资源池中的可用物理资源进行第二次划分,增加所述第一负载操作系统的物理资源,其中,所述增加的物理资源是所述需要增加的物理资源的类型标识所对应的物理资源。
45.根据权利要求42或44所述的管理操作系统,其特征在于,若所述需要增加的物理资源为处理器核,则所述资源配置模块,还具体用于:
将需要为所述第一负载操作系统增加的处理器核标记为归属于所述第一负载操作系统的物理资源,向所述第一负载操作系统发送资源增加消息,所述资源增加消息中包括需要增加的处理器核的标识;
向所述增加的处理器核发送跳转指示,所述跳转指示用于指示所述增加的处理器核执行所述第一负载操作系统的内核程序,指示所述增加的处理器核从所述内核程序中读取所述第一负载操作系统的执行所需的全部虚拟内存地址到物理内存地址的映射关系。
46.根据权利要求41或43所述的管理操作系统,其特征在于,若所述需要减少的物理资源为处理器核,则所述资源配置模块,还具体用于:
向所述第一负载操作系统发送资源减少消息,所述资源减少消息中包括需要释放的处理器核的标识;
获取所述第一负载操作系统释放的处理器核的标识,将所述释放的处理器核的标识添加到所述资源池可用物理资源列表中,所述释放的处理器核为与所述需要减少的处理核的标识对应的处理器核。
47.根据权利要求42或44所述的管理操作系统,其特征在于,若所述需要增加的物理资源为物理内存资源,则所述资源配置模块,还具体用于:将需要为所述第一负载操作系统增加的物理内存地址标记为归属于所述第一负载操作系统的物理资源,向所述第一负载操作系统发送资源增加消息,所述资源增加消息包括需要增加的物理内存地址的标识。
48.根据权利要求41或43所述的管理操作系统,其特征在于,若所述需要减少的物理资源为物理内存资源,则所述资源配置模块,还具体用于:向所述第一负载操作系统发送资源减少消息,所述资源减少消息包括需要释放的物理内存地址的标识;
获取所述第一负载操作系统释放的物理内存地址的标识,将所述释放的物理内存地址的标识添加到所述资源池可用物理资源列表中,所述释放的物理内存地址为与所述需要释放的物理内存地址的标识对应的物理内存地址。
49.根据权利要求42或44所述的管理操作系统,其特征在于,若所述需要增加的物理资源为外部设备资源,则所述资源配置模块,还具体用于:将需要为所述第一负载操作系统增加的外部设备标记为归属于所述第一负载操作系统的物理资源,向所述第一负载操作系统发送热插消息,所述热插消息用于指示所述第一负载操作系统获取需要增加的外部设备的标识以及与所述增加的外部设备对应的设备描述信息表。
50.根据权利要求41或43所述的管理操作系统,其特征在于,若所述需要减少的物理资源为外部设备资源,则所述资源配置模块,还具体用于:向所述第一负载操作系统发送热拔消息,所述热拔消息包括需要减少的外部设备的标识;
获取所述第一负载操作系统减少的外部设备的标识,将所述减少的外部设备的标识添加到所述资源池可用物理资源列表中,所述减少的外部设备为与所述需要减少的外部设备的标识对应的外部设备。
51.一种负载操作系统,其特征在于,应用于多内核操作系统,所述多内核操作系统包括运行在宿主机的管理操作系统、多个所述负载操作系统、物理资源池,所述物理资源池包括所述宿主机的处理器核和物理内存,所述每个负载操作系统独占使用所述管理操作系统分配的物理资源集合,每个所述物理资源集合包括:所述宿主机的部分处理器核,所述宿主机的部分物理内存;所述管理操作系统预先为每个负载操作系统构建启动镜像,为每个负载操作系统设置所述启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系;所述负载操作系统包括:
映射关系获取模块,用于读取所述第一负载操作系统的启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系,所述映射关系用于使所述第一负载操作系统的启动处理器核访问所述物理内存地址;其中,所述第一负载操作系统为所述多内核操作系统中任一负载操作系统;
指令执行模块,用于按照所述管理操作系统设置的执行启动镜像跳转的指令,跳转到所述第一负载操作系统对应的启动镜像在物理内存地址的位置,根据所述映射关系执行所述第一负载操作系统对应的启动镜像;
启动参数获取模块,用于在所述指令执行模块执行所述第一负载操作系统的启动镜像的过程中,从所述第一负载操作系统的启动镜像中获取所述第一负载操作系统的启动参数,所述启动参数包括分配给所述第一负载操作系统的处理器核的标识,分配给所述第一负载操作系统的物理内存地址的标识;
物理资源集合获取模块,用于根据所述处理器核的标识、所述第一负载操作系统的物理内存地址的标识,确定所述管理操作系统分配给所述第一负载操作系统独占使用的物理资源集合。
52.根据权利要求51所述的负载操作系统,其特征在于,所述映射关系获取模块具体用于:
接收所述管理操作系统发送的核间中断消息,按照所述核间中断消息的指示,所述启动处理器核执行用于对所述启动处理器核初始化的所述第一负载操作系统对应的初始化程序;
执行所述初始化程序,从所述初始化程序中读取所述管理操作系统预先给所述第一负载操作系统建立的所述启动镜像的执行所需的至少虚拟内存地址到物理内存地址的映射关系;
所述指令执行模块具体用于:执行所述初始化程序,从所述初始化程序中读取所述管理操作系统预先设置在所述初始化程序中的跳转指令,跳转到所述第一负载操作系统对应的启动镜像在物理内存地址的位置。
53.根据权利要求51所述的负载操作系统,其特征在于,所述第一负载操做系统的启动处理器为所述管理操作系统确定的已经完成启动的处理器核,所述第一负载操作系统的启动处理器核上运行有守护程序,所述守护程序为所述管理操作系统为所述第一负载操作系统预先设置的,所述守护程序中设置有所述第一负载操作系统对应的启动镜像在物理内存地址的位置和所述启动镜像的执行所需的至少部分虚拟内存地址到物理内存地址的映射关系;
所述映射关系获取模块具体用于,在所述启动处理器核上运行的守护程序接收所述管理操作系统发送的核间中断消息后,按照所述核间中断消息的指示,从所述守护程序中读取所述管理操作系统预先给所述第一负载操作系统建立的所述启动镜像的执行所需的虚拟内存地址到物理内存地址的映射关系;
所述指令执行模块具体用于:读取所述管理操作系统预先在所述守护程序中设置的跳转指令,跳转到所述第一负载操作系统对应的启动镜像在物理内存地址的位置。
54.根据权利要求51至53任一项所述的负载操作系统,其特征在于,每个所述物理资源集合还包括:所述宿主机的部分外部设备;
所述启动参数还包括:所述管理操作系统分配给所述第一负载操作系统的外部设备的标识,以及与所述外部设备对应的设备描述信息表。
55.根据权利要求54所述的负载操作系统,其特征在于,还包括:
映射关系建立模块,用于在所述物理资源集合获取模块确定所述管理操作系统分配给所述第一负载操作系统独占使用的物理资源集合之后,建立所述第一负载操作系统的执行所需的全部虚拟内存地址到物理内存地址的映射关系;
根据所述第一负载操作系统的执行所需的全部虚拟内存地址到物理内存地址的映射关系,访问物理内存地址。
56.根据权利要求54所述的负载操作系统,其特征在于,所述指令执行模块还用于在所述物理资源集合获取模块确定所述管理操作系统分配给所述第一负载操作系统独占使用的物理资源集合之后,通过分配给所述第一负载操作系统的处理器核执行所述管理操作系统下发的特权指令。
57.根据权利要求55或56所述的负载操作系统,其特征在于,还包括:
第一监控模块,用于在所述物理资源集合获取模块确定所述管理操作系统分配给所述第一负载操作系统独占使用的物理资源集合之后,对所述第一负载操作系统的物理资源进行监控;
第一发送模块,用于若所述第一监控模块的监控结果为所述管理操作系统分配给所述第一负载操作系统的物理资源的使用率小于第一预设阈值,向所述管理操作系统发送资源减少请求消息,所述资源减少请求消息中包括需要减少的物理资源的类型标识,所述物理资源的类型标识用于区分所述需要减少的物理资源为处理器核资源、物理内存资源还是外部设备资源。
58.根据权利要求55或56所述的负载操作系统,其特征在于,还包括:
第二监控模块,用于在所述物理资源集合获取模块确定所述管理操作系统分配给所述第一负载操作系统独占使用的物理资源集合之后,对所述第一负载操作系统的物理资源进行监控;
第二发送模块,用于若所述第一监控模块的监控结果为所述管理操作系统分配给所述第一负载操作系统的物理资源的使用率大于第一预设阈值,则向所述管理操作系统发送资源增加请求消息,所述资源增加请求消息中包括需要增加的物理资源的类型标识,所述物理资源的类型标识用于区分所述需要增加的物理资源为处理器核资源还是物理内存资源。
59.根据权利要求58所述的负载操作系统,其特征在于,若所述需要增加的物理资源为处理器核,则所述物理资源集合获取模块还具体用于:在所述第二发送模块向所述管理操作系统发送资源增加请求消息之后,
接收所述管理操作系统发送的资源增加消息,所述资源增加消息中包括需要增加的处理器核的标识;
根据所述需要增加的处理器核的标识确定所述管理操作系统为所述第一负载操作系统增加的处理器核;
在所述第一负载操作系统的增加的处理器核接收所述管理操作系统发送的跳转指示时,根据所述跳转指示执行所述第一负载操作系统的内核程序,并从所述内核程序中读取所述第一负载操作系统的执行所需的全部虚拟内存地址到物理内存地址的映射关系,所述第一负载操作系统在所述内核程序中预先设置所述第一负载操作系统的执行所需的全部虚拟内存地址到物理内存地址的映射关系。
60.根据权利要求57所述的负载操作系统,其特征在于,若所述需要减少的物理资源为处理器核,则所述物理资源集合获取模块还具体用于:在所述第一发送模块向所述管理操作系统发送资源减少请求消息之后,
接收所述管理操作系统发送的资源减少消息,所述资源减少消息中包括需要释放的处理器核的标识;
根据所述需要释放的处理器核的标识确定所述第一负载操作系统需要释放的处理器核;
释放处理器核,所述释放的处理器核为与所述需要减少的处理核的标识对应的处理器核。
61.根据权利要求58所述的负载操作系统,其特征在于,若所述需要增加的物理资源为物理内存资源,则所述物理资源集合获取模块还具体用于:在所述第二发送模块向所述管理操作系统发送资源增加请求消息之后,
接收所述管理操作系统发送的资源增加消息,所述资源增加消息包括需要增加的物理内存地址的标识;
根据所述需要增加的物理内存地址的标识确定所述管理操作系统为所述第一负载操作系统增加的物理内存地址。
62.根据权利要求57所述的负载操作系统,其特征在于,若所述需要减少的物理资源为物理内存资源,则所述物理资源集合获取模块还具体用于:在所述第一发送模块向所述管理操作系统发送资源减少请求消息之后,还包括:
接收所述管理操作系统发送的资源减少消息,所述资源减少消息包括需要释放的物理内存地址的标识;
根据所述需要释放的物理内存地址的标识确定所述第一负载操作系统需要释放的物理内存地址;
释放物理内存地址,所述释放的物理内存地址为与所述需要释放的物理内存地址的标识对应的物理内存地址。
63.根据权利要求58所述的负载操作系统,其特征在于,若所述需要增加的物理资源为外部设备资源,则所述物理资源集合获取模块还具体用于:在所述第二发送模块向所述管理操作系统发送资源增加请求消息之后,还包括:
接收管理操作系统发送的热插消息,所述热插消息用于指示所述第一负载操作系统获取需要增加的外部设备的标识以及与所述增加的外部设备对应的设备描述信息表;
根据所述需要增加的外部设备的标识以及与所述增加的外部设备对应的设备描述信息表,对与所述需要增加的外部设备的标识对应的外部设备执行热插操作。
64.根据权利要求57所述的负载操作系统,其特征在于,若所述需要减少的物理资源为物理内存资源,则所述物理资源集合获取模块还具体用于:在所述第一发送模块向所述管理操作系统发送资源减少请求消息之后,
接收管理操作系统发送的热拔消息,所述热拔消息包括需要减少的外部设备的标识;
根据所述需要减少的外部设备的标识,对与所述需要减少的外部设备的标识对应的外部设备执行热拔操作。
65.一种多内核操作系统,其特征在于,包括:
运行在宿主机的如权利要求33所述的管理操作系统;
多个如权利要求51所述的负载操作系统;
物理资源池,所述物理资源池包括所述宿主机的处理器核、物理内存和外部设备。
66.一种宿主机,其特征在于,包括处理器和存储器,所述存储器存储执行指令,当所述宿主机运行时,所述处理器与所述存储器之间通信,所述处理器执行所述执行指令使得所述宿主机执行如权利要求1~32中任一项所述的方法。
Priority Applications (13)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310695461.0A CN104714846B (zh) | 2013-12-17 | 2013-12-17 | 资源处理方法、操作系统及设备 |
AU2014366097A AU2014366097B2 (en) | 2013-12-17 | 2014-12-17 | Resource processing method, operating system, and device |
PCT/CN2014/094053 WO2015090197A1 (zh) | 2013-12-17 | 2014-12-17 | 资源处理方法、操作系统及设备 |
CA2933712A CA2933712C (en) | 2013-12-17 | 2014-12-17 | Resource processing method, operating system, and device |
KR1020167018877A KR101952795B1 (ko) | 2013-12-17 | 2014-12-17 | 자원 프로세싱 방법, 운영체제, 및 장치 |
MX2016007844A MX2016007844A (es) | 2013-12-17 | 2014-12-17 | Metodo de procesamiento de recursos, sistema operativo y dispositivo. |
SG11201604827PA SG11201604827PA (en) | 2013-12-17 | 2014-12-17 | Resource processing method, operating system, and device |
RU2016128727A RU2639693C1 (ru) | 2013-12-17 | 2014-12-17 | Способ обработки ресурса, операционная система и устройство |
JP2016540538A JP6355114B2 (ja) | 2013-12-17 | 2014-12-17 | リソース処理方法、オペレーティング・システム、およびデバイス |
BR112016014367-1A BR112016014367B1 (pt) | 2013-12-17 | 2014-12-17 | Método de processamento de recurso, sistema operacional, e dispositivo |
EP14870974.4A EP3086228B1 (en) | 2013-12-17 | 2014-12-17 | Resource processing method, operating system, and device |
US15/175,742 US10180843B2 (en) | 2013-12-17 | 2016-06-07 | Resource processing method and device for a multi-core operating system |
ZA2016/04030A ZA201604030B (en) | 2013-12-17 | 2016-06-14 | Resource processing method, operating system, and device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310695461.0A CN104714846B (zh) | 2013-12-17 | 2013-12-17 | 资源处理方法、操作系统及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104714846A true CN104714846A (zh) | 2015-06-17 |
CN104714846B CN104714846B (zh) | 2018-06-05 |
Family
ID=53402110
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310695461.0A Active CN104714846B (zh) | 2013-12-17 | 2013-12-17 | 资源处理方法、操作系统及设备 |
Country Status (13)
Country | Link |
---|---|
US (1) | US10180843B2 (zh) |
EP (1) | EP3086228B1 (zh) |
JP (1) | JP6355114B2 (zh) |
KR (1) | KR101952795B1 (zh) |
CN (1) | CN104714846B (zh) |
AU (1) | AU2014366097B2 (zh) |
BR (1) | BR112016014367B1 (zh) |
CA (1) | CA2933712C (zh) |
MX (1) | MX2016007844A (zh) |
RU (1) | RU2639693C1 (zh) |
SG (1) | SG11201604827PA (zh) |
WO (1) | WO2015090197A1 (zh) |
ZA (1) | ZA201604030B (zh) |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017020572A1 (zh) * | 2015-08-05 | 2017-02-09 | 华为技术有限公司 | 一种中断处理方法、ioapic及计算机系统 |
CN106789298A (zh) * | 2016-12-29 | 2017-05-31 | 中国建设银行股份有限公司 | 一种动态扩展Web层服务器的方法的装置 |
CN107748677A (zh) * | 2017-10-17 | 2018-03-02 | 岳西县天鹅电子科技有限公司 | 一种计算机快速启动及执行程序的方法 |
CN109324838A (zh) * | 2018-08-31 | 2019-02-12 | 深圳市元征科技股份有限公司 | 单片机程序的执行方法、执行装置及终端 |
CN110162389A (zh) * | 2019-05-15 | 2019-08-23 | 广州视源电子科技股份有限公司 | 应用程序的启动方法、装置和智能交互设备 |
CN110245019A (zh) * | 2019-06-17 | 2019-09-17 | 广东金赋科技股份有限公司 | 一种自适应系统资源的线程并发方法及装置 |
CN110389812A (zh) * | 2018-04-20 | 2019-10-29 | 伊姆西Ip控股有限责任公司 | 用于管理虚拟机的方法、设备和计算机可读存储介质 |
CN110998523A (zh) * | 2017-06-08 | 2020-04-10 | 思科技术公司 | 用于服务器虚拟化的计算资源的物理划分 |
CN112527205A (zh) * | 2020-12-16 | 2021-03-19 | 江苏国科微电子有限公司 | 一种数据安全防护方法、装置、设备及介质 |
CN112698871A (zh) * | 2019-10-23 | 2021-04-23 | 迈络思科技有限公司 | 在多cpu设备中使用option-rom的网络适配器配置 |
CN113419993A (zh) * | 2021-05-19 | 2021-09-21 | 北京达佳互联信息技术有限公司 | 读写请求处理方法、装置、电子设备及存储介质 |
CN114090097A (zh) * | 2020-06-30 | 2022-02-25 | 中国航发商用航空发动机有限责任公司 | 发动机控制系统和控制软件启动方法 |
CN114138346A (zh) * | 2021-11-02 | 2022-03-04 | 北京安天网络安全技术有限公司 | 一种终端取证方法、装置、电子设备及存储介质 |
CN115437717A (zh) * | 2021-06-01 | 2022-12-06 | 北京小米移动软件有限公司 | 跨操作系统的调用方法、装置及电子设备 |
CN117093508A (zh) * | 2023-10-17 | 2023-11-21 | 苏州元脑智能科技有限公司 | 一种内存资源管理方法、装置、电子设备及存储介质 |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9378560B2 (en) | 2011-06-17 | 2016-06-28 | Advanced Micro Devices, Inc. | Real time on-chip texture decompression using shader processors |
CN106528287B (zh) | 2015-09-09 | 2019-10-29 | 阿里巴巴集团控股有限公司 | 计算机系统资源分配方法和装置 |
KR101936461B1 (ko) | 2016-07-29 | 2019-01-08 | 현대자동차주식회사 | 합판 유리용 수지 필름, 이를 포함하는 합판 유리 및 이를 포함하는 자동차 |
CN108958884B (zh) * | 2018-06-22 | 2022-02-18 | 郑州云海信息技术有限公司 | 一种虚拟机管理的方法及相关装置 |
RU2690415C1 (ru) * | 2018-08-20 | 2019-06-03 | Акционерное Общество "Нппкт" | Технология автоматического запуска операционной системы на аппаратной платформе с элементами, не поддерживаемыми модулями операционной системы, при включении компьютера |
US10884845B2 (en) | 2018-11-08 | 2021-01-05 | International Business Machines Corporation | Increasing processing capacity of processor cores during initial program load processing |
US10944581B2 (en) * | 2018-11-08 | 2021-03-09 | International Business Machines Corporation | Increasing processing capacity of processor cores during initial program load processing |
US10884818B2 (en) | 2018-11-08 | 2021-01-05 | International Business Machines Corporation | Increasing processing capacity of virtual machines |
US11327767B2 (en) | 2019-04-05 | 2022-05-10 | International Business Machines Corporation | Increasing resources for partition to compensate for input/output (I/O) recovery event |
CN112395071A (zh) * | 2019-08-12 | 2021-02-23 | 北京百度网讯科技有限公司 | 用于资源管理的方法、装置、电子设备和存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101169731A (zh) * | 2007-12-05 | 2008-04-30 | 华为技术有限公司 | 多路多核服务器及其cpu的虚拟化处理方法 |
CN101246431A (zh) * | 2008-03-10 | 2008-08-20 | 中兴通讯股份有限公司 | 加载多核不同操作系统映像的管理方法 |
CN101561769A (zh) * | 2009-05-25 | 2009-10-21 | 北京航空航天大学 | 一种基于多核平台虚拟机的进程迁移跟踪方法 |
US7797512B1 (en) * | 2007-07-23 | 2010-09-14 | Oracle America, Inc. | Virtual core management |
CN102929719A (zh) * | 2012-09-18 | 2013-02-13 | 中标软件有限公司 | 一种多核计算机上多操作系统的控制方法及多核计算机 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002132741A (ja) * | 2000-10-20 | 2002-05-10 | Hitachi Ltd | プロセッサ追加方法、計算機及び記録媒体 |
US20070271560A1 (en) | 2006-05-18 | 2007-11-22 | Microsoft Corporation | Deploying virtual machine to host based on workload characterizations |
US8214828B2 (en) * | 2006-06-30 | 2012-07-03 | Microsoft Corporation | Module state management in a virtual machine environment |
JP4756603B2 (ja) * | 2006-10-10 | 2011-08-24 | ルネサスエレクトロニクス株式会社 | データプロセッサ |
JP4476307B2 (ja) * | 2007-03-26 | 2010-06-09 | 株式会社日立製作所 | 仮想計算機システム及びプログラム |
JP5146174B2 (ja) | 2008-07-28 | 2013-02-20 | 富士通株式会社 | 仮想マシンモニタ装置およびプログラム,ならびに仮想マシン間メモリ共有管理方法 |
CN102053869B (zh) | 2009-10-29 | 2013-11-06 | 杭州华三通信技术有限公司 | 一种多操作系统的资源分配方法和装置 |
JP5466768B2 (ja) * | 2010-11-02 | 2014-04-09 | インターナショナル・ビジネス・マシーンズ・コーポレーション | メモリ・アクセスを制御する装置およびコンピュータ |
JP5611060B2 (ja) * | 2011-01-07 | 2014-10-22 | 三菱電機株式会社 | 計算機システム及び割込み制御方法及びプログラム |
WO2013162523A1 (en) * | 2012-04-24 | 2013-10-31 | Intel Corporation | Dynamic interrupt reconfiguration for effective power management |
US8615766B2 (en) | 2012-05-01 | 2013-12-24 | Concurix Corporation | Hybrid operating system |
-
2013
- 2013-12-17 CN CN201310695461.0A patent/CN104714846B/zh active Active
-
2014
- 2014-12-17 WO PCT/CN2014/094053 patent/WO2015090197A1/zh active Application Filing
- 2014-12-17 BR BR112016014367-1A patent/BR112016014367B1/pt active IP Right Grant
- 2014-12-17 AU AU2014366097A patent/AU2014366097B2/en active Active
- 2014-12-17 CA CA2933712A patent/CA2933712C/en active Active
- 2014-12-17 MX MX2016007844A patent/MX2016007844A/es unknown
- 2014-12-17 EP EP14870974.4A patent/EP3086228B1/en active Active
- 2014-12-17 KR KR1020167018877A patent/KR101952795B1/ko active IP Right Grant
- 2014-12-17 JP JP2016540538A patent/JP6355114B2/ja active Active
- 2014-12-17 SG SG11201604827PA patent/SG11201604827PA/en unknown
- 2014-12-17 RU RU2016128727A patent/RU2639693C1/ru active
-
2016
- 2016-06-07 US US15/175,742 patent/US10180843B2/en active Active
- 2016-06-14 ZA ZA2016/04030A patent/ZA201604030B/en unknown
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7797512B1 (en) * | 2007-07-23 | 2010-09-14 | Oracle America, Inc. | Virtual core management |
CN101169731A (zh) * | 2007-12-05 | 2008-04-30 | 华为技术有限公司 | 多路多核服务器及其cpu的虚拟化处理方法 |
CN101246431A (zh) * | 2008-03-10 | 2008-08-20 | 中兴通讯股份有限公司 | 加载多核不同操作系统映像的管理方法 |
CN101561769A (zh) * | 2009-05-25 | 2009-10-21 | 北京航空航天大学 | 一种基于多核平台虚拟机的进程迁移跟踪方法 |
CN102929719A (zh) * | 2012-09-18 | 2013-02-13 | 中标软件有限公司 | 一种多核计算机上多操作系统的控制方法及多核计算机 |
Non-Patent Citations (1)
Title |
---|
JUAN A. COLMENARES ET AL: "Tessellation: Refactoring the OS around Explicit Resource Containers with Continuous Adaptation", 《DAC"13 PROCEEDINGS OF THE 50TH ANNUAL DESIGN AUTOMATION CONFERENCE》 * |
Cited By (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017020572A1 (zh) * | 2015-08-05 | 2017-02-09 | 华为技术有限公司 | 一种中断处理方法、ioapic及计算机系统 |
CN106789298A (zh) * | 2016-12-29 | 2017-05-31 | 中国建设银行股份有限公司 | 一种动态扩展Web层服务器的方法的装置 |
CN110998523B (zh) * | 2017-06-08 | 2024-05-17 | 思科技术公司 | 用于服务器虚拟化的计算资源的物理划分 |
CN110998523A (zh) * | 2017-06-08 | 2020-04-10 | 思科技术公司 | 用于服务器虚拟化的计算资源的物理划分 |
CN107748677A (zh) * | 2017-10-17 | 2018-03-02 | 岳西县天鹅电子科技有限公司 | 一种计算机快速启动及执行程序的方法 |
CN110389812A (zh) * | 2018-04-20 | 2019-10-29 | 伊姆西Ip控股有限责任公司 | 用于管理虚拟机的方法、设备和计算机可读存储介质 |
CN110389812B (zh) * | 2018-04-20 | 2023-05-12 | 伊姆西Ip控股有限责任公司 | 用于管理虚拟机的方法、设备和计算机可读存储介质 |
CN109324838A (zh) * | 2018-08-31 | 2019-02-12 | 深圳市元征科技股份有限公司 | 单片机程序的执行方法、执行装置及终端 |
CN110162389A (zh) * | 2019-05-15 | 2019-08-23 | 广州视源电子科技股份有限公司 | 应用程序的启动方法、装置和智能交互设备 |
CN110162389B (zh) * | 2019-05-15 | 2022-05-13 | 广州视源电子科技股份有限公司 | 应用程序的启动方法、装置和智能交互设备 |
CN110245019B (zh) * | 2019-06-17 | 2021-07-06 | 广东金赋科技股份有限公司 | 一种自适应系统资源的线程并发方法及装置 |
CN110245019A (zh) * | 2019-06-17 | 2019-09-17 | 广东金赋科技股份有限公司 | 一种自适应系统资源的线程并发方法及装置 |
CN112698871A (zh) * | 2019-10-23 | 2021-04-23 | 迈络思科技有限公司 | 在多cpu设备中使用option-rom的网络适配器配置 |
CN114090097A (zh) * | 2020-06-30 | 2022-02-25 | 中国航发商用航空发动机有限责任公司 | 发动机控制系统和控制软件启动方法 |
CN112527205A (zh) * | 2020-12-16 | 2021-03-19 | 江苏国科微电子有限公司 | 一种数据安全防护方法、装置、设备及介质 |
CN113419993A (zh) * | 2021-05-19 | 2021-09-21 | 北京达佳互联信息技术有限公司 | 读写请求处理方法、装置、电子设备及存储介质 |
CN113419993B (zh) * | 2021-05-19 | 2024-06-04 | 北京达佳互联信息技术有限公司 | 读写请求处理方法、装置、电子设备及存储介质 |
CN115437717A (zh) * | 2021-06-01 | 2022-12-06 | 北京小米移动软件有限公司 | 跨操作系统的调用方法、装置及电子设备 |
CN114138346A (zh) * | 2021-11-02 | 2022-03-04 | 北京安天网络安全技术有限公司 | 一种终端取证方法、装置、电子设备及存储介质 |
CN117093508A (zh) * | 2023-10-17 | 2023-11-21 | 苏州元脑智能科技有限公司 | 一种内存资源管理方法、装置、电子设备及存储介质 |
CN117093508B (zh) * | 2023-10-17 | 2024-01-23 | 苏州元脑智能科技有限公司 | 一种内存资源管理方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
EP3086228A4 (en) | 2017-03-15 |
CN104714846B (zh) | 2018-06-05 |
WO2015090197A1 (zh) | 2015-06-25 |
US20160291984A1 (en) | 2016-10-06 |
BR112016014367A2 (zh) | 2017-08-08 |
CA2933712A1 (en) | 2015-06-25 |
SG11201604827PA (en) | 2016-10-28 |
EP3086228B1 (en) | 2024-03-20 |
MX2016007844A (es) | 2016-10-07 |
EP3086228A1 (en) | 2016-10-26 |
US10180843B2 (en) | 2019-01-15 |
BR112016014367B1 (pt) | 2022-10-11 |
JP2016541072A (ja) | 2016-12-28 |
AU2014366097B2 (en) | 2017-01-12 |
ZA201604030B (en) | 2017-09-27 |
KR20160097363A (ko) | 2016-08-17 |
KR101952795B1 (ko) | 2019-05-17 |
CA2933712C (en) | 2019-04-23 |
RU2639693C1 (ru) | 2017-12-21 |
AU2014366097A1 (en) | 2016-07-07 |
JP6355114B2 (ja) | 2018-07-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104714846A (zh) | 资源处理方法、操作系统及设备 | |
US10951458B2 (en) | Computer cluster arrangement for processing a computation task and method for operation thereof | |
JP2016541072A5 (zh) | ||
CN103034524A (zh) | 半虚拟化的虚拟gpu | |
CN101751284A (zh) | 一种分布式虚拟机监控器的i/o资源调度方法 | |
CN112286645A (zh) | 一种gpu资源池调度系统及方法 | |
CN103744716A (zh) | 一种基于当前vcpu调度状态的动态中断均衡映射方法 | |
US20190205259A1 (en) | Exitless extended page table switching for nested hypervisors | |
CN113568734A (zh) | 基于多核处理器的虚拟化方法、系统、多核处理器和电子设备 | |
CN113326118A (zh) | 基于多核处理器的虚拟化方法、系统、多核处理器和电子设备 | |
CN104714821B (zh) | 操作系统实例创建方法及装置 | |
KR101435772B1 (ko) | Gpu 가상화 시스템 | |
US8402191B2 (en) | Computing element virtualization | |
EP2645245B1 (en) | Information processing apparatus, apparatus mangement method, and apparatus management program | |
CN116069451B (zh) | 一种虚拟化方法、装置、设备、介质、加速器及系统 | |
KR20090054780A (ko) | 다중 프로세서를 구비한 시스템 온 칩 시스템 내의프로세서간 통신 장치 및 방법 | |
CN118210634A (zh) | 服务器系统、服务器系统的资源调度方法、芯片及芯粒 | |
Misawa et al. | Dynamic Reconfiguration of Computer Platforms at the Hardware Device Level for High Performance Computing Infrastructure as a Service | |
CN117234674A (zh) | 用于执行任务调度的方法及其相关产品 | |
CN117785387A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |