CN106708619B - 资源管理方法及装置 - Google Patents
资源管理方法及装置 Download PDFInfo
- Publication number
- CN106708619B CN106708619B CN201510429902.1A CN201510429902A CN106708619B CN 106708619 B CN106708619 B CN 106708619B CN 201510429902 A CN201510429902 A CN 201510429902A CN 106708619 B CN106708619 B CN 106708619B
- Authority
- CN
- China
- Prior art keywords
- application
- physical resource
- physical
- kernel
- allocating
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
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]
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明实施例提供一种资源管理方法及装置,该方法包括:获取物理资源使用信息,所述物理资源使用信息用于指示应用运行所需要的物理资源;根据所述物理资源使用信息为所述应用分配独立的物理资源,并为所述应用分配用于直接访问所述物理资源的接口,以使所述应用直接访问所述物理资源;从而减少了不同应用对操作***内核的资源争用,提升了***性能。
Description
技术领域
本发明实施例涉及计算机技术,尤其涉及一种资源管理方法及装置。
背景技术
目前通用的操作***中,应用无法感知和/或控制物理资源,即当任意所述应用需要访问资源时,都需要陷入所述操作***的内核,通过所述内核访问资源。因此,当所述操作***的多个应用都需要访问资源时,会引起内核资源争用,导致***性能下降。
发明内容
本发明实施例提供一种资源管理方法及装置,提升了***性能。
第一方面,本发明实施例提供一种资源管理方法,包括:
获取物理资源使用信息,所述物理资源使用信息用于指示应用运行所需要的物理资源;
根据所述物理资源使用信息为所述应用分配独立的物理资源,并为所述应用分配用于直接访问所述物理资源的接口,以使所述应用直接访问所述物理资源。
结合第一方面,在第一方面的第一种可能的实现方式中,所述获取物理资源使用信息,包括:
获取预设的所述物理资源使用信息;或者,
根据所述应用发送的硬件控制数据结构获取所述物理资源使用信息;其中,所述硬件控制数据结构包括所述物理资源使用信息。
结合第一方面或第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,所述为所述应用分配用于直接访问所述物理资源的接口,包括:
为所述应用建立用户空间***服务功能库,并将所述应用所需的内核的管理数据结构复制到所述用户空间***服务功能库中,其中,所述管理数据结构用于直接访问所述物理资源。
结合第一方面的第二种可能的实现方式,在第一方面的第三种可能的实现方式中,还包括:为所述应用分配用于管理所述物理资源的管理策略;其中,所述用户空间***服务功能库包括:所述管理策略。
结合第一方面、第一方面的第一种至第三种任一种可能的实现方式,在第一方面的第四种可能的实现方式中,所述根据所述物理资源使用信息为所述应用分配独立的物理资源,并为所述应用分配用于直接访问所述物理资源的接口之后,还包括:
动态更新所述独立的物理资源,并同步更新操作***内核和所述用户空间***服务功能库中的内核管理数据结构。
结合第一方面、第一方面的第一种至第四种任一种可能的实现方式,在第一方面的第五种可能的实现方式中,所述根据所述物理资源使用信息为所述应用分配独立的物理资源,并为所述应用分配用于直接访问所述物理资源的接口之后,还包括:
设置异常处理函数,所述异常处理函数用于当所述应用触发异常时,所述应用根据所述异常处理函数进行异常处理。
结合第一方面、第一方面的第一种至第五种任一种可能的实现方式,在第一方面的第六种可能的实现方式中,所述物理资源使用信息包括以下至少一种:物理内存信息、中央处理器CPU信息、寄存器访问控制权限、输入/输出设备读写权限及特权指令执行权限。
第二方面,本发明实施例提供一种资源管理装置,包括:
获取模块,用于获取物理资源使用信息,所述物理资源使用信息用于指示应用运行所需要的物理资源;
分配模块,用于根据所述物理资源使用信息为所述应用分配独立的物理资源,并为所述应用分配用于直接访问所述物理资源的接口,以使所述应用直接访问所述物理资源。
结合第二方面,在第二方面的第一种可能的实现方式中,所述获取模块具体用于:
获取预设的所述物理资源使用信息;或者,
根据所述应用发送的硬件控制数据结构获取所述物理资源使用信息;其中,所述硬件控制数据结构包括所述物理资源使用信息。
结合第二方面或第二方面的第一种可能的实现方式,在第二方面的第二种可能的实现方式中,所述分配模块具体用于:
为所述应用建立用户空间***服务功能库,并将所述应用所需的内核的管理数据结构复制到所述用户空间***服务功能库中,其中,所述管理数据结构用于直接访问所述物理资源。
结合第二方面的第二种可能的实现方式,在第二方面的第三种可能的实现方式中,所述分配模块还用于:为所述应用分配用于管理所述物理资源的管理策略;其中,所述用户空间***服务功能库包括:所述管理策略。
结合第二方面、第二方面的第一种至第三种任一种可能的实现方式,在第二方面的第四种可能的实现方式中,所述装置还包括:
更新模块,用于动态更新所述独立的物理资源,并同步更新操作***内核和所述用户空间***服务功能库中的内核管理数据结构。
结合第二方面、第二方面的第一种至第四种任一种可能的实现方式,在第二方面的第五种可能的实现方式中,所述装置还包括:
异常处理模块,用于设置异常处理函数,所述异常处理函数用于当所述应用触发异常时,所述应用根据所述异常处理函数进行异常处理。
结合第二方面、第二方面的第一种至第五种任一种可能的实现方式,在第二方面的第六种可能的实现方式中,所述物理资源使用信息包括以下至少一种:物理内存信息、中央处理器CPU信息、寄存器访问控制权限、输入/输出设备读写权限及特权指令执行权限。
本发明中,通过获取物理资源使用信息,所述物理资源使用信息用于指示应用运行所需要的物理资源;进一步地,根据所述物理资源使用信息为所述应用分配独立的物理资源,并为所述应用分配用于直接访问所述物理资源的接口,以使所述应用直接访问所述物理资源;从而减少了不同应用对操作***内核的资源争用,提升了***性能。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1A为本发明资源管理方法的操作***架构图一;
图1B为本发明资源管理方法实施例一的流程示意图;
图2A为本发明资源管理方法的操作***架构图二;
图2B为本发明资源管理方法实施例三的示意图;
图2C为本发明资源管理方法实施例四的示意图;
图3为本发明资源管理装置实施例一的结构示意图;
图4为本发明资源管理装置实施例二的结构示意图;
图5为本发明资源管理装置实施例三的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1A为本发明资源管理方法的操作***架构图一,图1B为本发明资源管理方法实施例一的流程示意图。本实施例的执行主体为配置在操作***内核中的资源管理装置,该装置可以通过软件和/或硬件实现。本实施例的方案应用于通用的操作***中,实现了用户态应用可以绕过操作***内核直接访问和管理为所述应用分配的物理资源。如图1B所示,本实施例的方法可以包括:
S101、获取物理资源使用信息,所述物理资源使用信息用于指示应用运行所需要的物理资源。
如图1A所示,操作***至少包括:硬件资源、操作***内核和应用;其中,所述操作***内核中设置有资源管理装置。本发明实施例中,获取用于指示应用运行所需要的物理资源的物理资源使用信息;可选地,所述物理资源使用信息包括以下至少一种:物理内存信息、中央处理器CPU信息、寄存器访问控制权限、输入/输出设备读写权限及特权指令执行权限;可选地,所述物理资源使用信息还可包括其它物理资源信息,本发明对此并不作限制。
可选地,步骤S101包括:获取预设的所述物理资源使用信息;或者,根据所述应用发送的硬件控制数据结构获取所述物理资源使用信息;其中,所述硬件控制数据结构包括所述物理资源使用信息。
本发明实施例中,所述物理资源使用信息可为预设的物理资源使用信息,或者为根据所述应用发送的包括所述物理资源使用信息的硬件控制数据结构获取所述物理资源使用信息。
S102、根据所述物理资源使用信息为所述应用分配独立的物理资源,并为所述应用分配用于直接访问所述物理资源的接口,以使所述应用直接访问所述物理资源。
本发明实施例中,在获取到用于指示应用运行所需要的物理资源的物理资源使用信息后,根据所述物理资源使用信息为所述应用分配独立的物理资源(即其它应用不可使用的物理资源)(如CPU、物理内存、I/O设备及特权指令执行权限等),并为所述应用分配用于直接访问所述物理资源的接口,以使所述应用通过所述接口直接访问所述物理资源,即所述应用升级为可绕过操作***内核直接访问所述物理资源(如直接执行特权指令、直接管理CPU、直接管理物理内存和直接访问I/O设备等)的提权应用;从而减少了不同应用对操作***内核的资源争用,提升了***性能。
可选地,为所述应用分配用于直接访问所述物理资源的接口包括:为所述应用建立用户空间***服务功能库,并将所述应用所需的内核的管理数据结构复制到所述用户空间***服务功能库中,其中,所述管理数据结构用于直接访问所述物理资源。
本发明实施例中为了保证营养兼容性,通过为所述应用建立用户空间***服务功能库,并将所述应用所需的内核的管理数据结构复制到所述用户空间***服务功能库中的方式为所述应用提供用于直接访问所述物理资源的接口;可选地,根据所述物理资源初始化处理器虚拟化硬件,并由用户空间***服务功能库初始化所述独立的物理资源,以便于通过所述用户空间***服务功能库向所述应用提供接口(可选地,所述用户空间***服务功能库中包括所述独立的物理资源对应的服务管理函数例程,所述应用执行时直接调用所述用户空间***服务功能库中的服务管理函数例程即可访问或管理所述物理资源,无需陷入操作***内核);即提权后的应用可直接通过管理、更新所述用户空间***服务功能库中的所述管理数据结构的操作来维持应用的正常运行。
可选地,本发明资源管理方法还包括:为所述应用分配用于管理所述物理资源的管理策略;其中,所述用户空间***服务功能库包括:所述管理策略;以便于所述应用通过所述用户空间***服务功能库中的接口和/或管理策略直接访问或管理所述物理资源。
在本发明实施方式中,所述操作***可以是开源的Linux操作***,Microsoft公司开发的Windows操作***,Google公司的Android***、或Apple公司开发的iOS***等操作***,或者是Vxworks这类的嵌入式操作***。所述操作***包括用于控制和管理常规***任务,例如内存管理、存储设备控制、电源管理等,以及有助于各种软硬件之间通信的各种组件和/或驱动器。
本发明实施例中,通过获取物理资源使用信息,所述物理资源使用信息用于指示应用运行所需要的物理资源;进一步地,根据所述物理资源使用信息为所述应用分配独立的物理资源,并为所述应用分配用于直接访问所述物理资源的接口,以使所述应用直接访问所述物理资源;即所述应用可绕过操作***内核直接访问所述物理资源,从而减少了不同应用对操作***内核的资源争用,提升了***性能。
当所述I/O设备为共享设备时,为了保证所述应用访问I/O设备的安全性,可选地,通过消息式***调用与其它应用共享所述I/O设备,如通过所述应用对应的用户空间***服务功能库提供的接口,向操作***内核发送请求所述I/O设备的消息。
可选地,步骤S102之后还包括:动态更新所述独立的物理资源,并同步更新操作***内核和所述用户空间***服务功能库中的内核管理数据结构。
本发明实施例中,可选地,当所述提权应用在运行过程中需要更改物理资源(如更改控制权限或者申请物理内存、CPU、I/O设备等)时,所述提权应用可通过调用所述用户空间***服务功能库中包含的用于与操作***内核交互的接口,向所述操作***内核中的所述资源管理装置发送请求消息(所述请求消息中包含所述提权应用需要更新的物理资源信息),以使所述资源管理装置根据所述请求消息动态更新所述独立的物理资源;可选地,根据所述需要更新的物理资源信息更新用户空间***服务功能库(即用户态指定内存)和操作***内核中的管理数据结构。
可选地,当所述提权应用在运行过程中需要更改物理资源(如释放物理内存、CPU、I/O设备等)时,所述提权应用可直接通过所述用户空间***服务功能库动态更新独立的物理资源,进一步地,可通过所述用户空间***服务功能库更新用户空间***服务功能库(即用户态指定内存)中的管理数据结构,并将修改信息发送给所述操作***内核中的所述资源管理装置,以使所述资源管理装置同步更新操作***内核中的内核管理数据结构。
可选地,动态更新所述独立的物理资源还包含以下三种情景:
情景1:当所述应用(即提权应用)每次访问所述资源管理装置时,所述资源管理装置根据预设的资源分配策略和调用参数(可选地,所述调用参数可包括所述独立的物理资源的资源类型和资源大小等参数)判断是否需要更新为所述应用分配的独立的物理资源;
情景2:当所述应用(即提权应用)因触发异常陷入到操作***内核态时,操作***内核判断是否需要更新为所述应用分配的独立的物理资源;
情景3:操作***内核周期性地判断是否需要更新为所述应用分配的独立的物理资源;若硬件支持,则直接修改任务权限,直接更新设置CPU及寄存器,并动态调整其执行权限,如通过设置虚拟机控制块(Virtual machine control block,简称VMCS)提供的数据结构来改变其对CPU硬件的部分访问管理权限;若硬件不支持,则触发中断使所述应用(提权应用)陷入内核态,并更新为所述应用分配的独立的物理资源。
可选地,步骤S102之后还包括:设置异常处理函数,所述异常处理函数用于当所述应用触发异常时,所述应用根据所述异常处理函数进行异常处理。
本发明实施例中,通过设置异常处理函数,以便当所述应用(即提权应用)触发异常时,所述应用根据所述异常处理函数进行异常处理。可选地,异常处理过程分为两类:第一类为所述用户空间***服务功能库中包含已定制的异常处理函数,第二类为需要通过操作***内核的处理过程;当所述应用中发生除零异常、页缺失异常或者无效操作码(invalid opcode)等时,所述应用通过所述用户空间***服务功能库中的异常处理函数进行异常处理;当所述应用在执行过程中违反了所述应用对应的所述物理资源权限范围信息时,如读写了无读写权限的寄存器、硬件触发异常或者状态切换,则所述应用保存当前的执行环境,加载操作***内核的执行环境,并根据所述异常处理函数进行异常处理;可选地,当所述异常处理完成后,所述资源管理装置再次将所述应用恢复为提权应用(即重新执行步骤S101和步骤S102的过程),以使得所述提权应用继续正常执行。
结合图1A所示,本发明资源管理方法实施例二中可以包括如下步骤:
1)应用通过操作***内核提供的接口,将用于指示所述应用运行所需要的物理资源的物理资源使用信息发送给所述资源管理装置,可选地,通过硬件控制数据结构的形式发送给所述资源管理装置;可选地,所述物理资源使用信息包括以下至少一种:物理内存信息、中央处理器CPU信息、寄存器访问控制权限、输入/输出设备读写权限、特权指令执行权限及中断指向。
2)所述操作***内核的资源管理装置根据所述应用发送的所述物理资源使用信息为所述应用分配独立的物理资源,并为所述应用分配用于直接访问所述物理资源的接口,如对所述应用的物理内存进行初始化、对所述应用所需的CPU上的寄存器进行保存和初始化及构建新的中断向量表等数据结构;可选地,根据为所述应用分配的所述物理资源初始化处理器虚拟化硬件,并由用户空间***服务功能库初始化所述物理资源,以便于通过所述用户空间***服务功能库向所述应用提供用于直接访问所述物理资源的接口。
3)所述资源管理装置保存所述应用当前的执行环境,如寄存器值、寄存器状态及段寄存器等;并加载所述应用升级后的特权应用对应的执行上下文(即为所述应用分配的独立的物理资源,如物理内存信息、中央处理器CPU信息及CPU寄存器设置等),以使所述特权应用根据所述用户空间***服务功能库,直接访问或管理所述物理资源;其中,所述用户空间***服务功能库用于为所述特权应用提供管理所述物理资源的管理策略和用于直接访问所述物理资源的接口。
4)所述资源管理装置设置执行入口点,并设置异常处理函数;当所述提权应用在执行过程中触发异常时,保存上下文(如CPU寄存器信息等),切换到下一个进程,并根据所述异常处理函数进行异常处理。
综上所述,本实施例中,通过为所述应用分配独立的物理资源,并为所述应用分配用于直接访问所述物理资源的接口,以使所述应用根据用户空间***服务功能库直接管理或访问所述物理资源,而无需通过操作***内核管理物理资源,从而减少了不同应用对操作***内核的资源争用,提升了***性能。
图2A为本发明资源管理方法的操作***架构图二。如图2A所示,管理核(core)用于设置应用核(core)的指令执行权限、寄存器读写权限及I/O设备等;提权应用通过定制的用户空间***服务功能库(LibXOS)直接访问或管理所述提权应用对应的独立的物理资源;所述资源管理装置用于进程提权(即将普通应用升级为提权应用,具体地,通过管理核来设置应用核上执行进程的资源权限范围;其中,普通应用每次需要通过操作***内核访问或操作物理资源,提权应用可直接根据其对应的用户空间***服务功能库直接访问或操作其对应的物理资源);所述所述资源管理装置还用于对所述提权应用超出执行权限时的异常处理;用户空间***服务功能库通过消息式***调用来获取远端的I/O服务;另外,当提权应用不能通过用户空间***服务功能库实现的某内核功能时,可通过请求队列写到指定内存,并由服务线程读取响应。
图2B为本发明资源管理方法实施例三的示意图,如图2B所示,具体地描述了在用户态空间进行页表管理的方法。可选地,在对普通应用进行提权时,将所述普通应用在操作***内核中的页表数据结构拷贝到指定物理内存中,并由用户态空间***服务功能库里的页表管理模块进行管理,包括对页表的读写和/或更新等操作。当所述应用从非根(non-root)模式陷入到根(root)模式时,即因为主动或被动(如异常)等原因陷入操作***内核时,需要将所述页表数据结构同步到原来内核管理的页表结构。由于页表里面是对虚拟内存和物理内存进行离散的映射,因此,在拷贝页表数据结构的时,对于已经映射在内核页表里的物理内存,需要在内核里进行锁定,不让换出;而对于页表里面还未填充的项,则是由用户态***服务功能库根据应用请求、执行过程状态和预留物理内存等信息来进行管理的。
图2C为本发明资源管理方法实施例四的示意图。如图2C所示,具体描述了通过用户空间***服务功能库(LibXOS)进行管理、申请、分配和释放内存的内容。LibXOS中的内存管理主要提供两部分功能,其中,1)第一部分功能为:对于应用所需的申请和释放内存的函数例程,LibXOS只管理在对应用提权时资源管理装置分配的物理内存,因此所有申请和释放操作都只针对预留的所述物理内存;但当所述物理内存耗尽时,就需要通过主动与操作***内核交互的方式向操作***内核申请新的物理内存,以增加为所述应用预留的物理内存,申请新的物理内存的过程即为主动陷入操作***方式,即通过vmcall陷入操作***内核,然后根据传递的参数,由操作***内核中的异常处理函数来响应,并分配物理内存,最后返回;2)第二部分功能为:用户态缺页异常处理,其中,缺页异常是指页表中的映射项不存在时,访问该虚拟地址所触发的硬件异常;现有Linux和大部分其它操作***都通过内核的异常处理函数来完成的,但本发明实施例中在对普通应用提权时更新初始化了现有硬件异常处理函数,并设置了VMCS数据结构,使得在发生缺页异常时,硬件会将缺页异常抛到用户态,并由用户空间***服务功能库中的用户态缺页异常处理函数进行处理,具体地,可按照现有操作***中按需调页的方式来编写用户态缺页异常处理函数,也可采用提前调页的方式来编写用户态缺页异常处理函数,因此,提升了不同内存使用需求的应用的***性能。
图3为本发明资源管理装置实施例一的结构示意图,如图3所示,本实施例提供的资源管理装置30可以包括:获取模块301及分配模块302。
其中,获取模块301用于获取物理资源使用信息,所述物理资源使用信息用于指示应用运行所需要的物理资源;
分配模块302用于根据所述物理资源使用信息为所述应用分配独立的物理资源,并为所述应用分配用于直接访问所述物理资源的接口,以使所述应用直接访问所述物理资源。
本实施例的资源管理装置可以用于执行本发明上述资源管理方法实施例一中的技术方案,其实现原理和技术效果类似,此处不再赘述。
可选地,作为一种可实施的方式,在图3所示的实施方式的基础上,所述获取模块301具体用于:
获取预设的所述物理资源使用信息;或者,
根据所述应用发送的硬件控制数据结构获取所述物理资源使用信息;其中,所述硬件控制数据结构包括所述物理资源使用信息。
可选地,作为另一种可实施的方式,在图3所示的实施方式的基础上,所述分配模块302具体用于:为所述应用建立用户空间***服务功能库,并将所述应用所需的内核的管理数据结构复制到所述用户空间***服务功能库中,其中,所述管理数据结构用于直接访问所述物理资源。
可选地,所述分配模块还用于:为所述应用分配用于管理所述物理资源的管理策略;其中,所述用户空间***服务功能库包括:所述管理策略。
可选地,作为另一种可实施的方式,如图4所示,图4为本发明资源管理装置实施例二的结构示意图,在图3所示的实施方式的基础上,资源管理装置30还包括:更新模块303用于动态更新所述独立的物理资源,并同步更新操作***内核和所述用户空间***服务功能库中的内核管理数据结构;
可选地,还包括:异常处理模块304用于设置异常处理函数,所述异常处理函数用于当所述应用触发异常时,所述应用根据所述异常处理函数进行异常处理。
可选地,所述物理资源使用信息包括以下至少一种:物理内存信息、中央处理器CPU信息、寄存器访问控制权限、输入/输出设备读写权限及特权指令执行权限。
本实施例的资源管理装置可以用于执行本发明上述资源管理方法实施例中的技术方案,其实现原理和技术效果类似,此处不再赘述。
图5为本发明资源管理装置实施例三的结构示意图,如图5所示,本实施例提供的资源管理装置50可以包括处理器501和存储器502。资源管理装置50还可以包括数据接口单元503,该数据接口单元503可以和处理器501相连。其中,数据接口单元503用于输入/输出数据信息,存储器502用于存储执行指令。当资源管理装置50运行时,处理器501与存储器502之间通信,处理器501调用存储器502中的执行指令,用以执行上述资源管理方法实施例中的操作。
本实施例的资源管理装置可以用于执行本发明上述资源管理方法实施例中的技术方案,其实现原理和技术效果类似,此处不再赘述。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (12)
1.一种资源管理方法,其特征在于,包括:
获取物理资源使用信息,所述物理资源使用信息用于指示应用运行所需要的物理资源;
根据所述物理资源使用信息为所述应用分配独立的物理资源,并为所述应用分配用于直接访问所述物理资源的接口,以使所述应用直接访问所述物理资源;
其中,所述为所述应用分配用于直接访问所述物理资源的接口,包括:
为所述应用建立用户空间***服务功能库,并由所述用户空间***服务功能库初始化所述物理资源,以及将所述应用所需的内核的管理数据结构复制到所述用户空间***服务功能库中,其中,所述管理数据结构用于直接访问所述物理资源。
2.根据权利要求1所述的方法,其特征在于,所述获取物理资源使用信息,包括:
获取预设的所述物理资源使用信息;或者,
根据所述应用发送的硬件控制数据结构获取所述物理资源使用信息;其中,所述硬件控制数据结构包括所述物理资源使用信息。
3.根据权利要求1所述的方法,其特征在于,还包括:为所述应用分配用于管理所述物理资源的管理策略;其中,所述用户空间***服务功能库包括:所述管理策略。
4.根据权利要求1-3中任一项所述的方法,其特征在于,所述根据所述物理资源使用信息为所述应用分配独立的物理资源,并为所述应用分配用于直接访问所述物理资源的接口之后,还包括:
动态更新所述独立的物理资源,并同步更新操作***内核和所述用户空间***服务功能库中的内核管理数据结构。
5.根据权利要求1-3中任一项所述的方法,其特征在于,所述根据所述物理资源使用信息为所述应用分配独立的物理资源,并为所述应用分配用于直接访问所述物理资源的接口之后,还包括:
设置异常处理函数,所述异常处理函数用于当所述应用触发异常时,所述应用根据所述异常处理函数进行异常处理。
6.根据权利要求1-3中任一项所述的方法,其特征在于,所述物理资源使用信息包括以下至少一种:物理内存信息、中央处理器CPU信息、寄存器访问控制权限、输入/输出设备读写权限及特权指令执行权限。
7.一种资源管理装置,其特征在于,包括:
获取模块,用于获取物理资源使用信息,所述物理资源使用信息用于指示应用运行所需要的物理资源;
分配模块,用于根据所述物理资源使用信息为所述应用分配独立的物理资源,并为所述应用分配用于直接访问所述物理资源的接口,以使所述应用直接访问所述物理资源;
其中,所述分配模块具体用于:
为所述应用建立用户空间***服务功能库,并由所述用户空间***服务功能库初始化所述物理资源,以及将所述应用所需的内核的管理数据结构复制到所述用户空间***服务功能库中,其中,所述管理数据结构用于直接访问所述物理资源。
8.根据权利要求7所述的装置,其特征在于,所述获取模块具体用于:
获取预设的所述物理资源使用信息;或者,
根据所述应用发送的硬件控制数据结构获取所述物理资源使用信息;其中,所述硬件控制数据结构包括所述物理资源使用信息。
9.根据权利要求7所述的装置,其特征在于,所述分配模块还用于:为所述应用分配用于管理所述物理资源的管理策略;其中,所述用户空间***服务功能库包括:所述管理策略。
10.根据权利要求7-9中任一项所述的装置,其特征在于,还包括:
更新模块,用于动态更新所述独立的物理资源,并同步更新操作***内核和所述用户空间***服务功能库中的内核管理数据结构。
11.根据权利要求7-9中任一项所述的装置,其特征在于,还包括:
异常处理模块,用于设置异常处理函数,所述异常处理函数用于当所述应用触发异常时,所述应用根据所述异常处理函数进行异常处理。
12.根据权利要求7-9中任一项所述的装置,其特征在于,所述物理资源使用信息包括以下至少一种:物理内存信息、中央处理器CPU信息、寄存器访问控制权限、输入/输出设备读写权限及特权指令执行权限。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510429902.1A CN106708619B (zh) | 2015-07-21 | 2015-07-21 | 资源管理方法及装置 |
PCT/CN2016/073940 WO2017012339A1 (zh) | 2015-07-21 | 2016-02-17 | 资源管理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510429902.1A CN106708619B (zh) | 2015-07-21 | 2015-07-21 | 资源管理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106708619A CN106708619A (zh) | 2017-05-24 |
CN106708619B true CN106708619B (zh) | 2021-01-15 |
Family
ID=57834837
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510429902.1A Active CN106708619B (zh) | 2015-07-21 | 2015-07-21 | 资源管理方法及装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN106708619B (zh) |
WO (1) | WO2017012339A1 (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109144714A (zh) * | 2017-06-19 | 2019-01-04 | 中兴通讯股份有限公司 | 内存管理方法及装置 |
CN109901935B (zh) * | 2017-12-11 | 2021-12-17 | 航天信息股份有限公司 | 一种与USB Key进行通信的方法及设备 |
CN109976886B (zh) * | 2017-12-28 | 2021-10-22 | 深圳中电长城信息安全***有限公司 | 内核远程切换方法及装置 |
CN114611849A (zh) * | 2020-11-25 | 2022-06-10 | 北京秦淮数据有限公司 | 一种idc资源管理***及方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103995731A (zh) * | 2014-05-09 | 2014-08-20 | 华为技术有限公司 | 一种管理中心部署方法和虚拟装置 |
CN104391949A (zh) * | 2014-11-26 | 2015-03-04 | 国家电网公司 | 一种基于数据字典的广域数据资源管理方法 |
CN104424034A (zh) * | 2013-09-04 | 2015-03-18 | 华为技术有限公司 | 硬件资源访问方法及装置 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101488098B (zh) * | 2009-02-13 | 2011-11-30 | 华中科技大学 | 基于虚拟计算技术的多核计算资源管理*** |
CN102117113B (zh) * | 2009-12-31 | 2015-03-04 | 联想(北京)有限公司 | 计算机***及其中央处理器的电源管理的方法 |
US9146785B2 (en) * | 2011-09-14 | 2015-09-29 | Microsoft Technology Licensing, Llc | Application acceleration in a virtualized environment |
CN102385532A (zh) * | 2011-12-02 | 2012-03-21 | 浪潮集团有限公司 | 一种通过非透明cache提高云应用性能的方法 |
US9672071B2 (en) * | 2013-09-10 | 2017-06-06 | Vmware, Inc. | Method and system for distributed processing of HTTP requests |
-
2015
- 2015-07-21 CN CN201510429902.1A patent/CN106708619B/zh active Active
-
2016
- 2016-02-17 WO PCT/CN2016/073940 patent/WO2017012339A1/zh active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104424034A (zh) * | 2013-09-04 | 2015-03-18 | 华为技术有限公司 | 硬件资源访问方法及装置 |
CN103995731A (zh) * | 2014-05-09 | 2014-08-20 | 华为技术有限公司 | 一种管理中心部署方法和虚拟装置 |
CN104391949A (zh) * | 2014-11-26 | 2015-03-04 | 国家电网公司 | 一种基于数据字典的广域数据资源管理方法 |
Also Published As
Publication number | Publication date |
---|---|
CN106708619A (zh) | 2017-05-24 |
WO2017012339A1 (zh) | 2017-01-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109155782B (zh) | 容器之间的进程间通信 | |
US7421533B2 (en) | Method to manage memory in a platform with virtual machines | |
US9529650B2 (en) | Method and apparatus for accessing hardware resource | |
JP5510556B2 (ja) | 仮想マシンのストレージスペースおよび物理ホストを管理するための方法およびシステム | |
US9081612B2 (en) | Virtual machine control method and virtual machine | |
CN110192182B (zh) | 动态和专用的虚拟化图形处理 | |
US9218042B2 (en) | Cooperatively managing enforcement of energy related policies between virtual machine and application runtime | |
US20160277310A1 (en) | Dynamic management of computing platform resources | |
US20140137244A1 (en) | Runtime Based Application Security and Regulatory Compliance in Cloud Environment | |
CN106708619B (zh) | 资源管理方法及装置 | |
US10289564B2 (en) | Computer and memory region management method | |
US10846251B1 (en) | Scratchpad-based operating system for multi-core embedded systems | |
JP2014520346A5 (zh) | ||
US10228978B2 (en) | Dynamic management of computing platform resources | |
CN112148422A (zh) | 一种io处理的方法和装置 | |
US10666572B2 (en) | Dynamic management of computing platform resources | |
CN104516769A (zh) | 动态逻辑分区的验证 | |
CN113010265A (zh) | Pod的调度方法、调度器、存储插件及*** | |
CN114691300A (zh) | 一种虚拟机实例的热迁移方法 | |
CN113377545B (zh) | 用于分配gpu物理内存的方法及装置 | |
CN117234729B (zh) | 动态内存保护方法、装置、计算机设备及存储介质 | |
US20200201691A1 (en) | Enhanced message control banks | |
US9558364B2 (en) | Computing machine, access management method, and access management program | |
US9405470B2 (en) | Data processing system and data processing method | |
US10891226B1 (en) | Virtual address space dump in a computer system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |