云计算操作系统中资源管理方法及系统的制作方法

文档序号:6353809阅读:96来源:国知局
专利名称:云计算操作系统中资源管理方法及系统的制作方法
技术领域
本发明涉及云计算操作系统,尤其涉及一种云计算操作系统中资源管理方法及系 统。
背景技术
当前,业界已在云计算按需分配、资源流转、按量计费、支持异构、节能降耗等诸多 核心理念上达成了共识。然而,在云计算IaaS领域,云计算的工程化仍困难重重,相关IT技术人员未找到 可操作的系统架构与实现方案。为此,大多数计算机厂商,特别是单机操作系统、服务器、互 联网厂商,提出了一系列云计算基础设施解决方案,但云计算操作系统这一云计算基础设 施还有待于进一步完善。资源调度是云计算操作系统中最为核心的技术之一,调度的有效性直接影响到系 统的应用性等多方面性能,因此有必要对资源进行高效管理以防止资源盲目流转的出现。图1是现有技术中单机操作系统进行资源管理的流程示意图。如图1所示,其主 要包括如下步骤步骤S110,拟执行一任务时,调用该任务所需的资源;步骤S120,对该资源进行加锁处理;步骤S130,判断对该资源加锁是否成功,成功则转步骤S150,否则转步骤S140 ;步骤S140,等待其它任务释放能满足本任务需求的资源、为该任务重新请求其他 资源或者抛弃该任务;步骤S150,利用所锁定资源执行该任务;步骤S160,在任务执行完毕后,对任务所占用的(锁定的)资源进行解锁处理,资 源回收完成。本发明的发明人分析发现,通过图1所示的流程可知单机操作系统中资源解锁之 后即可投入后续的使用,其是因为单机操作系统中,资源基本都配置在本地,系统内的通信 一般也可认为是实时可靠的。因此,控制功能所掌握的资源所处的加锁或未加锁状态,应该 是资源状态的真实反映。但是,对于云计算操作系统而言,由于其资源分布在整个网络中,多用户多任务环 境下的并发操作,经常容易导致资源(物理资源和虚拟资源)被多任务所调用,又加上网络 延迟或者通信中断等原因,容易导致系统的控制功能所掌握的资源的加锁或未加锁状态, 并不一定都是资源状态的真实反映,由此可能产生不同任务对同一资源进行重复加锁,从 而导致误操作(资源误调度)的情形出现。

发明内容
本发明所要解决的技术问题是需要提供一种云计算操作系统资源锁管理技术,克 服现有技术中云计算操作系统在多用户多任务环境下对资源并发操作可能引起的误操作的缺陷。为了解决上述技术问题,本发明提供了一种云计算操作系统中资源管理方法,包 括如下步骤一任务请求使用某资源时,判断系统中该资源的记载状态是否与该资源的真实状 态相一致;该资源的记载状态与真实状态相一致,则判断该资源是否处于未加锁状态;该资源处于未加锁状态,对该资源进行加锁处理形成一资源锁,以提供给该任务 执行时使用;在该任务执行完毕后,对该资源锁进行解锁处理;其中,该资源的记载状态包括该加锁状态或未加锁状态,该资源的真实状态包括 该加锁状态或未加锁状态。优选地,该方法包括判断出该资源的记载状态与真实状态不一致,则利用该资源的真实状态对该资源 的记载状态进行同步。优选地,该方法包括在该资源锁等待该任务使用的过程中,监视该资源锁可能出现的异常情形,并在 监视到该资源出现异常情形时,对该资源锁进行解锁处理。优选地,该方法包括对该资源进行所述加锁处理后,进一步将该资源的记载状态更新为加锁状态;对该资源锁进行所述解锁处理后,进一步将该资源的记载状态更新为未加锁状 态。优选地,该方法包括定时利用该资源的真实状态对该资源的记载状态进行同步。本发明还提供了一种云计算操作系统中资源管理系统,包括第一判断模块,用于一任务请求使用某资源时,判断该资源的记载状态是否与该 资源的真实状态相一致;第二判断模块,用于该第一判断模块判断出该资源的记载状态与真实状态相一致 时,判断该资源是否处于未加锁状态;加锁模块,用于该第二判断模块判断出该资源处于未加锁状态时,对该资源进行 加锁处理形成一资源锁,以提供给该任务执行时使用;解锁模块,用于在该任务执行完毕后,对该资源锁进行解锁处理;其中,该资源的记载状态包括该加锁状态或未加锁状态,该资源的真实状态包括 该加锁状态或未加锁状态。优选地,该系统包括第一同步模块,用于该第一判断模块判断出该资源的记载状态与真实状态不一致 时,利用该资源的真实状态对该资源的记载状态进行同步。优选地,该系统包括监视模块,用于在该资源锁等待该任务使用的过程中,监视该资源锁可能出现的 异常情形;
其中,该解锁模块进一步用于该监视模块监视到该资源出现异常情形时,对该资 源锁进行解锁处理。优选地,该系统包括第二同步模块,用于该加锁模块对该资源进行该加锁处理后,将该资源的记载状 态更新为加锁状态;还用于该解锁模块对该资源锁进行该解锁处理后,将该资源的记载状 态更新为未加锁状态。优选地,该系统包括第三同步模块,用于定时利用该资源的真实状态对该资源的记载状态进行同步。与现有技术相比,本发明的技术方案的一实施例,通过任务调用资源之前首先确 认资源当前确实处于未加锁状态,然后再对资源进行加锁调用,保证了任务使用的资源确 实是当前未被锁定的资源,避免了一任务在使用资源时锁定的是其他任务已锁定的资源这 一情形的出现,有效解决了对用户多任务环境下并发操作可能引起的误操作问题。本发明 技术方案的另一实施例,还通过对资源的状态进行实时和定时同步,保证资源的记录状态 与实际状态相一致,进一步保证了资源不会被重复加锁。本发明的技术方案,还通过对资源 锁进行及时的清理,有效提高了资源的利用率。本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变 得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利 要求书以及附图中所特别指出的结构来实现和获得。


附图用来提供对本发明技术方案的进一步理解,并且构成说明书的一部分,与本 发明的实施例一起用于解释本发明的技术方案,并不构成对本发明技术方案的限制。在附 图中图1是现有技术中单机操作系统资源锁管理方法的流程示意图;图2是本实施例云计算操作系统中资源管理方法的流程示意图;图3是本实施例云计算操作系统中资源管理系统的组成示意图。
具体实施例方式以下将结合附图及实施例来详细说明本发明的实施方式,借此对本发明如何应用 技术手段来解决技术问题,并达成技术效果的实现过程能充分理解并据以实施。首先,如果不冲突,本发明实施例以及实施例中的各个特征的相互结合,均在本发 明的保护范围之内。另外,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令 的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以 不同于此处的顺序执行所示出或描述的步骤。实施例一、云计算操作系统中资源管理方法图2为本实施例云计算操作系统中资源管理方法的流程示意图。如图2所示,本 实施例主要包括如下步骤步骤S210,一任务请求使用某资源时,检查该资源是否已经完成初始化处理,以判 断系统中该资源的记载状态是否与该资源当前所处的真实状态相一致;是则转步骤S230,否则转步骤S220 ;其中该资源的记载状态包括加锁状态或者未加锁状态,该资源当前所处的真实状 态包括加锁状态或者未加锁状态;在本实施例中,采用在系统中设置一信息中心来记录资源的状态,也即该资源的 记载状态表示在该信息中心中;步骤S220,该资源还未完成初始化,说明该资源的真实状态还未反馈至系统中,因 此该资源当前还不可用;对处于待初始化状态的该资源进行初始化处理,也即将信息中心 中该资源的记载状态修改为与该资源当前真实状态相一致;转步骤S230 ;步骤S230,该资源已完成初始化处理,也即信息中心中该资源的记载状态已经与 该资源当前真实状态保持一致;则判断已完成初始化处理的该资源是否处于未加锁状态, 是则转步骤S250,否则转步骤S240 ;步骤S240,该资源当前处于加锁状态,则说明之前可能已有其他任务占用了该资 源并且当前还处于正在使用该资源的阶段,此时或者等待该资源解锁之后进行利用,此时 可以转步骤S280(图中未示出),或者重新请求使用其他资源(更换资源),此时可以转步 骤S210(图中未示出)以对重新请求到的资源进行处理,或者也可以直接抛弃该任务,结 束;步骤S250,对该资源进行加锁处理形成一资源锁,以提供给该任务执行时使用,也 即该资源当前处于加锁状态;步骤S260,在该资源锁等待该任务使用的过程中,监视该资源锁可能出现的死锁、 锁失步等异常情形;如果监视到死锁或者锁失步等异常情形的出现,则转步骤S280,否则 转步骤S270 ;步骤S270,该任务使用该资源锁并执行完毕,转步骤S280 ;步骤S280,对该资源锁进行解锁处理,该资源当前又处于未加锁状态;步骤S290,后续若有相应的任务继续请求使用该任务,则返回步骤S210执行即 可,否则直接结束。上述步骤S260中,引发死锁的异常情形比如包括程序异常、通信异常或者外界环 境突然变化等等,此时需要对资源锁进行及时的解锁处理以避免对资源的不合理占用;如 果发现与该资源锁对应的任务已不存在,此时也应该进行解锁处理以及时释放资源;如果 发现资源锁已存在较长时间,此时也可以进行解锁处理以及时释放资源。如此,提高了资源 的利用率。本发明提供的技术方案中,采用信息中心来记录资源当前所处的加锁或者未加锁 状态,并且采用实时同步的方式,使得信息中心中资源的状态能够及时地与资源真实状态 保持一致。比如上述实施例,步骤S220中,在对该资源进行初始化处理之后,信息中心中该 资源的状态就与该资源当前的真实状态相一致;在步骤S250中,在对该资源进行加锁处理 并形成一资源锁之后,将信息中心中将该资源的状态更新为加锁状态;而在步骤S280中, 对该资源进行解锁处理后,将信息中心中将该资源的状态更新为未加锁状态。考虑到网络通信可能中断等原因,本发明通过实时同步和定时同步两种方式,可 以更进一步地保证资源的记录状态与实际状态一致。这两种同步方式,可以同时应用在本 发明的技术方案中。如此,信息中心中记录的资源的状态可以真实无误地表示资源当前的真实状态,避免出现不同任务同时使用同一资源的情形出现。实施例二、云计算操作系统中资源管理系统图3为本实施例云计算操作系统中资源管理系统的组成示意图。结合图2所示的 方法实施例,本实施例主要包括第一判断模块310、第二判断模块320、加锁模块330以及解 锁模块340,其中第一判断模块310,用于一任务请求使用某资源时,判断该资源的记载状态是否与 该资源的真实状态相一致;第二判断模块320,与该第一判断模块310相连,用于该第一判断模块310判断出 该资源的记载状态与真实状态相一致时,判断该资源是否处于未加锁状态;加锁模块330,与该第二判断模块320相连,用于该第二判断模块320判断出该 资源处于未加锁状态时,对该资源进行加锁处理形成一资源锁,以提供给该任务执行时使 用;解锁模块340,用于在该任务执行完毕后,对该资源锁进行解锁处理;其中,该资源的记载状态包括该加锁状态或未加锁状态,该资源的真实状态包括 该加锁状态或未加锁状态。如图3所示,该系统可以包括第一同步模块350,与该第一判断模块310相连,用于该第一判断模块310判断出 该资源的记载状态与真实状态不一致时,利用该资源的真实状态对该资源的记载状态进行 同步。如图3所示,该系统可以包括监视模块360,与该解锁模块340相连,用于在该资源锁等待该任务使用的过程 中,监视该资源锁可能出现的异常情形;其中,该解锁模块340进一步用于该监视模块360监视到该资源出现异常情形时, 对该资源锁进行解锁处理。如图3所示,该系统可以包括第二同步模块370,与该加锁模块330及解锁模块340相连,用于该加锁模块330 对该资源进行该加锁处理后,将该资源的记载状态更新为加锁状态;还用于该解锁模块 340对该资源锁进行该解锁处理后,将该资源的记载状态更新为未加锁状态。本发明的该系统,还可以包括第三同步模块,用于定时利用该资源的真实状态对该资源的记载状态进行同步。对于云计算操作系统而言,其资源分布在整个网络中,系统的控制功能所掌握的 资源的加锁或未加锁状态并不一定都是资源状态的真实反映,但是通过本发明提供的技术 方案,资源在调用之前可以保证其处于能够调用(未加锁)的状态才能够被任务所调用,从 而不会产生不同任务对同一资源进行重复加锁的情形出现。本发明提供的技术方案中,还 可以地对信息中心中资源所记载的状态与资源当前所处的真实状态进行周期或非周期的 定时同步,保证了不会因通信中断等原因导致资源真实状态不能及时更新到信息中心等类 似情形的出现。由此可见,本发明的技术方案支持多用户多任务并发操作,对云计算操作系 统推广应用有着十分重要的意义。本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络 上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储 装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多 个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和 软件结合。 虽然本发明所揭露的实施方式如上,但所述的内容只是为了便于理解本发明而采 用的实施方式,并非用以限定本发明。任何本发明所属技术领域内的技术人员,在不脱离本 发明所揭露的精神和范围的前提下,可以在实施的形式上及细节上作任何的修改与变化, 但本发明的专利保护范围,仍须以所附的权利要求书所界定的范围为准。
权利要求
1.一种云计算操作系统中资源管理方法,其特征在于,包括如下步骤一任务请求使用某资源时,判断系统中该资源的记载状态是否与该资源的真实状态相一致;该资源的记载状态与真实状态相一致,则判断该资源是否处于未加锁状态; 该资源处于未加锁状态,对该资源进行加锁处理形成一资源锁,以提供给该任务执行 时使用;在该任务执行完毕后,对该资源锁进行解锁处理;其中,该资源的记载状态包括该加锁状态或未加锁状态,该资源的真实状态包括该加 锁状态或未加锁状态。
2.根据权利要求1所述的方法,其特征在于,该方法包括判断出该资源的记载状态与真实状态不一致,则利用该资源的真实状态对该资源的记 载状态进行同步。
3.根据权利要求1所述的方法,其特征在于,该方法包括在该资源锁等待该任务使用的过程中,监视该资源锁可能出现的异常情形,并在监视 到该资源出现异常情形时,对该资源锁进行解锁处理。
4.根据权利要求1或3所述的方法,其特征在于,该方法包括对该资源进行所述加锁处理后,进一步将该资源的记载状态更新为加锁状态; 对该资源锁进行所述解锁处理后,进一步将该资源的记载状态更新为未加锁状态。
5.根据权利要求4所述的方法,其特征在于,该方法包括 定时利用该资源的真实状态对该资源的记载状态进行同步。
6.一种云计算操作系统中资源管理系统,其特征在于,包括第一判断模块,用于一任务请求使用某资源时,判断该资源的记载状态是否与该资源 的真实状态相一致;第二判断模块,用于该第一判断模块判断出该资源的记载状态与真实状态相一致时, 判断该资源是否处于未加锁状态;加锁模块,用于该第二判断模块判断出该资源处于未加锁状态时,对该资源进行加锁 处理形成一资源锁,以提供给该任务执行时使用;解锁模块,用于在该任务执行完毕后,对该资源锁进行解锁处理; 其中,该资源的记载状态包括该加锁状态或未加锁状态,该资源的真实状态包括该加 锁状态或未加锁状态。
7.根据权利要求6所述的系统,其特征在于,该系统包括第一同步模块,用于该第一判断模块判断出该资源的记载状态与真实状态不一致时, 利用该资源的真实状态对该资源的记载状态进行同步。
8.根据权利要求6所述的系统,其特征在于,该系统包括监视模块,用于在该资源锁等待该任务使用的过程中,监视该资源锁可能出现的异常 情形;其中,该解锁模块进一步用于该监视模块监视到该资源出现异常情形时,对该资源锁 进行解锁处理。
9.根据权利要求6或8所述的系统,其特征在于,该系统包括第二同步模块,用于该加锁模块对该资源进行该加锁处理后,将该资源的记载状态更 新为加锁状态;还用于该解锁模块对该资源锁进行该解锁处理后,将该资源的记载状态更 新为未加锁状态。
10.根据权利要求9所述的系统,其特征在于,该系统包括第三同步模块,用于定时利用该资源的真实状态对该资源的记载状态进行同步。
全文摘要
本发明公开了一种云计算操作系统中资源管理方法及系统,克服现有技术中云计算操作系统在多用户多任务环境下对资源并发操作可能引起的误操作的缺陷,其包括一任务请求使用某资源时,判断系统中该资源的记载状态是否与该资源的真实状态相一致;一致则判断该资源是否处于未加锁状态;该资源处于未加锁状态,对该资源进行加锁处理形成一资源锁,以提供给该任务执行时使用;在该任务执行完毕后,对该资源锁进行解锁处理;其中,该资源的记载状态和真实状态均包括加锁状态或未加锁状态。本发明通过任务调用资源之前首先确认资源当前确实处于未加锁状态,然后再对资源进行加锁调用,保证了任务使用的资源确实是当前未被锁定的资源。
文档编号G06F11/00GK102081557SQ20111002953
公开日2011年6月1日 申请日期2011年1月27日 优先权日2011年1月27日
发明者张东, 朱锦雷, 王洪亮 申请人:浪潮(北京)电子信息产业有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1