CN105320570B - 资源管理方法和*** - Google Patents

资源管理方法和*** Download PDF

Info

Publication number
CN105320570B
CN105320570B CN201510756289.4A CN201510756289A CN105320570B CN 105320570 B CN105320570 B CN 105320570B CN 201510756289 A CN201510756289 A CN 201510756289A CN 105320570 B CN105320570 B CN 105320570B
Authority
CN
China
Prior art keywords
task
group
time
task group
resource
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
Application number
CN201510756289.4A
Other languages
English (en)
Other versions
CN105320570A (zh
Inventor
林庚佑
张文彦
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Oneplus Technology Shenzhen Co Ltd
Original Assignee
Oneplus Technology Shenzhen Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Oneplus Technology Shenzhen Co Ltd filed Critical Oneplus Technology Shenzhen Co Ltd
Priority to CN201510756289.4A priority Critical patent/CN105320570B/zh
Publication of CN105320570A publication Critical patent/CN105320570A/zh
Priority to PCT/CN2016/095906 priority patent/WO2017080276A1/zh
Priority to EP16863454.1A priority patent/EP3376381A4/en
Priority to US15/774,282 priority patent/US10467054B2/en
Application granted granted Critical
Publication of CN105320570B publication Critical patent/CN105320570B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/329Power saving characterised by the action undertaken by task scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • G06F9/4887Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues involving deadlines, e.g. rate based, periodic
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5038Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Telephonic Communication Services (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

本发明涉及一种资源管理方法和***。上述方法包括以下步骤:确定任务群组内的任务及与任务群组内的每个任务对应的预设的任务时间;判断任务群组内所有任务对应的预设的任务时间之和是否小于预设的时间阈值;若是,则确定任务群组的资源使用时间额度为任务群组内所有任务对应的预设的任务时间之和;若否,则确定任务群组的资源使用时间额度为所述时间阈值;确定任务群组的各个任务在单位时间内所允许的运行时间;在单位时间内,当任务群组的各个任务在对应的运行时段之外时,使任务群组的各个任务分别进入等待状态。上述资源管理方法和***,既能保证群组内的工作完成,又能减少与群组外的任务资源竞争,使群组外的任务拥有更佳的资源使用效率。

Description

资源管理方法和***
技术领域
本发明涉及操作***技术领域,特别是涉及一种资源管理方法和***。
背景技术
目前,很多计算设备(例如智能手机、平板电脑等)均支持多任务***,即同一时间内设备可运行多个应用程序,一个应用程序中可能有一个或多个线程,每个线程上运行一个任务。而多任务中任务之间会竞争资源,例如前台任务与后台任务,后台任务会抢占前台任务资源,有时会妨碍前台任务的运行。资源可以是CPU(Central Processing Unit,中央处理器)、GPU(Graphics Processing Unit,图形处理器)、内存等。为解决该问题,传统做法是将那些会妨碍主要任务运行的任务完全暂停,但有些被暂停的任务需要实时与服务器进行沟通,例如讯息传递或邮件服务等,若是将这些任务完全暂停,会造成信息无法及时反馈或是产生其它预期外的行为等问题。
发明内容
基于此,有必要提供一种资源管理方法,能够确保群组内的每个任务正常运行,也能减少群组内的任务与群组外的其它任务的资源竞争,节约资源。
此外,还有必要提供一种资源管理***,能够确保群组内的每个任务正常运行,也能减少群组内的任务与群组外的其它任务的资源竞争,节约资源。
一种资源管理方法,包括以下步骤:
确定任务群组内的任务及与所述任务群组内的每个任务对应的预设的任务时间;
判断所述任务群组内所有任务对应的预设的任务时间之和是否小于预设的时间阈值;
若是,则确定所述任务群组的资源使用时间额度为所述任务群组内所有任务对应的预设的任务时间之和;
若否,则确定所述任务群组的资源使用时间额度为所述时间阈值;
确定所述任务群组的各个任务在单位时间内所允许的运行时间,所述任务群组的所有任务在单位时间内所允许的运行时间之和小于或等于所述任务群组的资源使用时间额度;
在单位时间内,当所述任务群组的各个任务在对应的运行时段之外时,使所述任务群组的各个任务分别进入等待状态。
在其中一个实施例中,在所述确定任务群组内的任务及与所述任务群组内的每个任务对应的预设的任务时间的步骤之前,还包括以下步骤:
建立任务群组,并根据预定的规则将特定的任务添加入所述任务群组。
在其中一个实施例中,所述确定所述任务群组的各个任务在单位时间内所允许的运行时间具体包括:
获取所述任务群组内的任务的优先级;
判断所述任务群组内的任务的优先级是否相同;
若所述任务群组内的任务的优先级相同且没有任务群组外的任务正在执行,则确定所述任务群组内的各个任务在单位时间内所允许的运行时间为所述任务群组的资源使用时间额度除以所述任务群组内的任务数量;
若否,则基于所述任务群组内的任务的优先级高低并按照预定的算法确定所述任务群组内的各个任务在单位时间内所允许的运行时间。
在其中一个实施例中,所述确定所述任务群组的各个任务在单位时间内所允许的运行时间具体包括:
获取正在执行的任务群组外的任务与所述任务群组内的任务的优先级;
判断所述任务群组外的任务与所述任务群组内的任务的优先级是否相同;
若是,则确定所述任务群组内的各个任务在单位时间内所允许的运行时间为所述任务群组的资源使用时间额度除以所述任务群组外的任务与所述任务群组内的任务的数量之和;
若否,则基于所述任务群组外的任务与所述任务群组内的任务的优先级高低,并按照预定的算法确定所述任务群组内的各个任务在单位时间内所允许的运行时间。
在其中一个实施例中,在所述在单位时间内,当所述任务群组的各个任务在对应的运行时段之外时,使所述任务群组的各个任务分别进入等待状态的步骤之后,还包括:
判断当所述任务群组的各个任务均进入等待状态时是否有任务群组外的任务正在执行;
若是,则确定所述任务群组外的任务获得全部的资源使用时间;
若否,则进入休眠状态。
一种资源管理***,包括:
任务确定模块,用于确定任务群组内的任务及与所述任务群组内的每个任务对应的预设的任务时间;
第一判断模块,用于判断所述任务群组内所有任务对应的预设的任务时间之和是否小于预设的时间阈值;
群组时间确定模块,用于当所述任务群组内所有任务对应的预设的任务时间之和小于预设的时间阈值时,则确定所述任务群组的资源使用时间额度为所述任务群组内所有任务对应的预设的任务时间之和;
所述群组时间确定模块还用于当所述任务群组内所有任务对应的预设的任务时间之和不小于预设的时间阈值时,则确定所述任务群组的资源使用时间额度为所述时间阈值;
运行时间确定模块,用于确定所述任务群组的各个任务在单位时间内所允许的运行时间,所述任务群组的所有任务在单位时间内所允许的运行时间之和小于或等于所述任务群组的资源使用时间额度;
等待模块,用于在单位时间内,当所述任务群组的各个任务在对应的运行时段之外时,使所述任务群组的各个任务分别进入等待状态。
在其中一个实施例中,所述***还包括:
建立模块,用于建立模块,用于建立任务群组,并根据预定的规则将特定的任务添加入所述任务群组。
在其中一个实施例中,所述运行时间确定模块包括:
获取单元,用于获取所述任务群组内的任务的优先级;
判断单元,用于判断所述任务群组内的任务的优先级是否相同;
确定单元,用于当所述任务群组内的任务的优先级相同且没有任务群组外的任务正在执行,则确定所述任务群组内的各个任务在单位时间内所允许的运行时间为所述任务群组的资源使用时间额度除以所述任务群组内的任务数量;
所述确定单元还用于当所述任务群组内的任务的优先级不同,则基于所述任务群组内的任务的优先级高低,并按照预定的算法确定所述任务群组内的各个任务在单位时间内所允许的运行时间。
在其中一个实施例中,所述获取单元还用于获取正在执行的任务群组外的任务与所述任务群组内的任务的优先级;
所述判断单元还用于判断所述任务群组外的任务与所述任务群组内的任务的优先级是否相同;
所述确定单元还用于当所述任务群组外的任务与所述任务群组内的任务的优先级相同时,则确定所述任务群组内的各个任务在单位时间内所允许的运行时间为所述任务群组的资源使用时间额度除以所述任务群组外的任务与所述任务群组内的任务的数量之和;
所述确定单元还用于当所述任务群组外的任务与所述任务群组内的任务的优先级不同时,则基于所述任务群组外的任务与所述任务群组内的任务的优先级高低,并按照预定的算法确定所述任务群组内的各个任务在单位时间内所允许的运行时间。
在其中一个实施例中,所述***还包括:
第二判断模块,用于判断当所述任务群组的各个任务均进入等待状态时是否有任务群组外的任务正在执行;
所述运行时间确定还用于当所述任务群组的各个任务均进入等待状态时有任务群组外的任务正在执行,将确定所述任务群组外的任务获得全部的资源使用时间;
休眠模块,用于当所述任务群组的各个任务均进入等待状态时没有任务群组外的任务正在执行,进入休眠状态。
上述资源管理方法和***,通过比较该任务群组内所有任务对应的预设的任务时间之和及预设的时间阈值大小,以此决定群组的资源使用时间额度,能够根据群组内的每个任务对应的预设的任务时间动态控制群组内的任务所能使用的资源,确保群组内每个任务所获得的资源使用时间在合理范围内,提高资源使用效率,节约资源。此外,群组内的各个任务在单位时间内只在其对应的运行时段内运行,既能保证群组内的工作完成,又能减少与群组外的任务资源竞争,使群组外的任务拥有更佳的资源使用效率。
当群组内的所有任务均进入等待状态且无群组外的任务执行时,进入休眠状态,可减少设备电力消耗。
附图说明
图1为一个实施例中资源管理方法的流程示意图;
图2为一个实施例中确定任务群组的资源使用时间额度示意图;
图3为一个实施例中任务群组的任务运行时的时间示意图;
图4为一个实施例中在单位时间内确定任务群组内各个任务所允许的运行时间的流程示意图;
图5为另一个实施例中任务群组的任务运行时的时间示意图;
图6为一个实施例中在单位时间内当任务群组内的所有任务均进入等待状态时的流程示意;
图7为另一个实施例中任务群组的任务运行时的时间示意图;
图8为一个实施例中资源管理***的结构示意图;
图9为一个实施例中运行时间确定模块的内部结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
如图1所示,一种资源管理方法,包括以下步骤:
步骤S110,确定任务群组内的任务及与任务群组内的每个任务对应的预设的任务时间。
具体的,预设的任务时间为预设的任务群组内的任务在单位时间内可获得的资源使用时间上限,即任务群组内的每一项任务在单位时间内的运行时间不超过与之对应的任务时间,在本实施方式中,可设定任务群组内所有任务对应的预设的任务时间是相同的。例如,假设单位时间为2T,任务时间为L,L可为T/2、T/4等。每2T单位时间内,任务群组内的每一项任务最多只能使用L时间的资源。T可以为10s(秒)、15s、20s等时间较短的数值。资源可为CPU、GPU、内存等。可以理解地,任务群组内的每个任务对应的预设的任务时间可以根据实际需要进行设定,不一定完全相同。
在一个实施例中,在步骤确定任务群组内的任务及与任务群组内的每个任务对应的预设的任务时间之前,还包括:建立任务群组,并根据预定的规则将特定的任务添加入该任务群组。
具体的,建立任务群组对任务进行管理,只有在该任务群组中的任务,才受任务群组的资源使用时间额度的限制。任务群组中的任务可为不需与用户进行交互的后台任务,例如邮件服务、讯息传递、自动保存等后台任务。将某些任务添加入任务群组中并进行资源使用限制,既可保证任务群组内的任务正常执行,也可避免任务群组内的任务无限制地与任务群组外的其它任务抢占资源,造成资源浪费。可以理解地,还可以根据需要设定其它的规则,然后将符合规则的特定任务添加到任务群组中。
步骤S120,判断任务群组内所有任务对应的预设的任务时间之和是否小于预设的时间阈值,若是,则执行步骤S130,若否,则执行步骤S140。
具体的,时间阈值为预先设定的任务群组在每单位时间内的资源使用时间上限。单位时间、时间阈值、任务时间需可根据需求进行设定,三者的关系为单位时间大于时间阈值,时间阈值大于任务时间。比较任务群组内所有任务对应的预设的任务时间之和与时间阈值的大小,若任务群组内所有任务对应的预设的任务时间之和小于时间阈值,则确定任务群组在单位时间内的资源使用时间额度为任务群组内所有任务对应的预设的任务时间之和,若任务群组内所有任务对应的预设的任务时间之和不小于时间阈值,则确定任务群组在单位时间内的资源使用时间额度为时间阈值。如图2所示,包括任务群组外的任务20及任务群组10。其中,设定任务群组10内任务D、E对应的预设的任务时间均为L,时间阈值为T,在第一个2T单位时间内,任务群组10内的任务D、E对应的预设的任务时间之和为2L,小于预设的时间阈值T,则任务群组10的资源使用时间额度为2L。在第二个2T单位时间内,任务群组10包括任务D、E、F,设定任务群组10内任务D、E、F对应的预设的任务时间均为L,则任务群组10内的任务D、E、F对应的预设的任务时间之和为3L,大于时间阈值T,则任务群组10的资源使用时间额度为T。在单位时间内,任务群组内的所有任务所允许的运行时间之和小于或等于任务群组的资源使用时间额度。
步骤S130,确定任务群组的资源使用时间额度为任务群组内所有任务对应的预设的任务时间之和。
具体的,通过比较任务群组内所有任务对应的预设的任务时间之和和时间阈值来确定任务群组的资源使用时间额度,可避免当任务群组内的任务数量太少时造成的资源浪费,将任务群组中的每个任务所获得的资源使用时间控制在合理范围内。例如,设定单位时间为2T,时间阈值为T,任务群组中只有一个任务,且该任务对应的预设的任务时间为T/4,若不通过比较任务群组内所有任务对应的预设的任务时间之和和时间阈值来确定任务群组的资源使用时间额度,则该任务在2T单位时间内可使用T时间的资源,此时可能会造成资源使用效率低等问题,而通过比较再确定任务群组的资源使用时间额度后,该任务在2T单位时间内最多只可使用T/4时间的资源,能提高资源的使用效率。
步骤S140,确定任务群组的资源使用时间额度为该时间阈值。
步骤S150,确定任务群组的各个任务在单位时间内所允许的运行时间。
具体的,将时间划分为连续的多个单位时间进行监测,任务群组的任务只在单位时间中的部分时段内才拥有资源使用权,即任务群组中的每个任务仅在与其对应的部分时段被运行,该部分时段的时长等于前述确定的所允许的运行时间。任务群组内的所有任务在单位时间内所允许的运行时间之和小于或等于前述确定的任务群组的资源使用时间额度。
步骤S160,在单位时间内,当任务群组的各个任务在对应的运行时段之外时,使任务群组的各个任务分别进入等待状态。
具体的,在单位时间内,只有在任务群组的各个任务对应的运行时段内时,才执行该任务,该运行时段的时长等于该任务在单位时间内所允许的运行时间。图3为一个实施例中任务群组的任务执行时的示意图,如图3所示,在第二个2T单位时间内时,假定任务群组10的资源使用时间额度为2L,任务E、F所允许的运行时间均为2L/3,在任务E、F各自对应的运行时段内,执行该任务,当在各自对应的运行时段之外时,任务E、F则分别处于等待状态。等待状态指该任务不会使用任何资源。任务E、F所允许的运行时间之和小于任务群组10的资源使用时间额度2L。在第三个2T单位时间内,假定任务群组10的资源使用时间额度为T,任务E、F、G所允许的运行时间均为T/3,在任务E、F、G各自对应的运行时段内,执行该任务,当在各自对应的运行时段之外时,任务E、F、G则分别处于等待状态。任务E、F、G所允许的运行时间之和等于任务群组10的资源使用时间额度T。只需保证在单位时间内任务群组内所有的任务所允许的运行时间之和小于或等于任务群组的资源使用时间额度即可,而任务群组内的各个任务在单位时间的什么时段内运行则由操作***的任务调度器的算法决定。在其它实施例中,任务群组内的任务在单位时间内,可先进入等待状态,再进行执行,例如2T单位时间内,任务群组内的所有任务先进入等待状态,T时间后,再按照任务群组内的各个任务所允许的运行时间执行各个任务,可以理解,其本质上与图3的资源管理方法是一致的。
上述资源管理方法,通过比较该任务群组内所有任务对应的预设的任务时间之和及预设的时间阈值大小,以此决定群组的资源使用时间额度,能够根据群组内的每个任务对应的预设的任务时间动态控制群组内的任务所能使用的资源,确保群组内每个任务所获得的资源使用时间在合理范围内,提高资源使用效率,节约资源。此外,群组内的各个任务在单位时间内只在其对应的运行时段内运行,既能保证群组内的工作完成,又能减少与群组外的任务资源竞争,使群组外的任务拥有更佳的资源使用效率。
如图4所示,在一个实施例中,步骤确定任务群组的各个任务在单位时间内所允许的运行时间,具体包括:
步骤S410,获取任务群组内的任务的优先级。
具体的,在单位时间内,任务群组内的任务可最多获得任务群组的资源使用时间额度的资源。若此时,无任务群组外的任务在执行,任务群组内的任务无需与任务群组外的其它任务竞争资源,任务群组内的任务所允许的运行时间可根据任务的优先级高低并按照预定的算法进行确定。通常,任务群组内优先级高的任务比优先级低的任务会获得更多的所允许的运行时间。
步骤S420,判断任务群组内的任务的优先级是否相同,若任务群组内的任务的优先级相同且没有任务群组外的任务正在执行,则执行步骤S430,若否,则执行步骤S440。
具体的,若任务群组内的任务的优先级相同,则任务群组内的各个任务在单位时间内所允许的运行时间为任务群组的资源使用时间额度除以任务群组内的任务数量,若任务群组内的任务的优先级不同,则根据任务的优先级高低并按照预定的算法确定任务群组内各个任务在单位时间内所允许的运行时间。
步骤S430,确定任务群组内的各个任务在单位时间内所允许的运行时间为任务群组的资源使用时间额度除以任务群组内的任务数量。
具体的,例如,如图5所示,在第一个2T单位时间内,无任务群组外的任务正在执行,假定任务群组10的资源使用时间额度为2L,任务群组10内包括任务D和任务E,任务数量为2,则任务D和任务E各分得L的资源使用时间;在第二个2T单位时间内,无任务群组外的任务正在执行,假定任务群组的资源使用时间额度为T,任务群组10内包括任务D、E、F,则任务D、任务E和任务F各分得T/3的资源使用时间。在其它的实施例中,若还有任务群组外的任务正在执行,则任务群组内的任务所允许的运行时间将小于本实施例中获得的资源使用时间。
步骤S440,基于任务群组内的任务的优先级高低并按照预定的算法确定任务群组内的各个任务在单位时间内所允许的运行时间。
具体的,在单位时间内,若任务群组内的任务的优先级不同,则将任务群组内的任务按照优先级高低顺序进行排序,优先级高的任务排在优先级低的任务前面,任务群组内的任务的资源使用时间可根据任务优先级高低并按照预定的算法进行确定。例如,2T单位时间内,无任务群组外的任务正在执行,假定任务群组的资源使用时间额度为2L,任务群组内包括任务D、E,任务D的优先级高于任务E,则任务D可分得4L/3的资源使用时间,任务E分得2L/3的资源使用时间。当任务群组内的任务不在对应的运行时段时,任务群组内的任务分别立即进入等待状态。
上述资源管理方法,群组内的各个任务在单位时间内只在其对应的运行时段内运行,且根据任务群组内的任务的优先级高低确定资源使用时间,能更好地运行任务,既能保证群组内的工作完成,又能减少与群组外的任务资源竞争,使群组外的任务拥有更佳的资源使用效率。
在另一个实施例中,步骤确定任务群组的各个任务在单位时间内所允许的运行时间,还包括以下步骤:
(1)获取正在执行的任务群组外的任务与任务群组内的任务的优先级。
具体的,若单位时间内,除任务群组内的任务,还有任务群组外的任务正在执行,则任务群组外的任务将与任务群组内的任务形成资源竞争。获取正在执行的任务群组外的任务及任务群组内的每个任务的优先级,并根据优先级的高低确定各个任务的资源使用时间。通常,优先级高的任务比优先级低的任务会获得更多的所允许的运行时间。
(2)判断任务群组外的任务与任务群组内的任务的优先级是否相同,若是,则执行(3),若否,则执行(4)。
(3)确定任务群组内的各个任务在单位时间内所允许的运行时间为任务群组的资源使用时间额度除以任务群组外的任务与任务群组内的任务的数量之和。
具体的,在单位时间内,若任务群组外的任务与任务群组内的任务的优先级相同,则任务群组内的各个任务在单位时间内所允许的运行时间为任务群组的资源使用时间额度除以任务群组外的任务与任务群组内的任务的数量之和。例如,在图3中,第四个2T单位时间内,假定任务群组10的资源使用时间额度为T,共有一个任务群组外的任务C和三个任务群组内的任务E、H、I,则平均每个任务获得T/4的资源使用时间。而任务群组外的任务C还能获得单位时间内任务群组的资源使用时间额度外的时间T,则在单位时间内,任务群组外的任务C共能分到T+T/4的资源使用时间。在其它的实施例中,当任务群组外的任务与任务群组内的任务的优先级相同时,任务群组外的任务与任务群组内的任务可各分得一半的任务群组的资源使用时间额度,任务群组内的各个任务所允许的运行时间为一半的任务群组的资源使用时间额度除以任务群组内的任务数量。例如,在单位时间内,任务群组的资源使用时间为T,任务群组中包括任务E、F、G,则任务E、F、G总共获得T/2的资源使用时间,每个任务各获得T/6的资源使用时间,而任务群组外的任务则获得T+T/2的资源使用时间,分配方式与操作***中的任务调度器算法相关。
(4)基于任务群组外的任务与任务群组内的任务的优先级高低并按照预定的算法确定任务群组内的各个任务在单位时间内所允许的运行时间。
具体的,在单位时间的资源使用时间内,若任务群组外的任务与任务群组内的任务的优先级高低不同,任务群组内的任务所允许的运行时间可根据任务群组外的任务和任务群组内的任务优先级高低并按照预定的算法进行确定。
上述资源管理方法,群组内的各个任务在单位时间内只在其对应的运行时段内运行,且根据任务优先级确定任务的资源使用时间,可以更好地进行资源调度,完成工作,当群组内的各个任务在对应的运行时段之外时,使各个任务分别进入等待状态,且群组内所有任务的所允许的运行时间之和不超过群组的资源使用时间额度,既能保证群组内的工作完成,又能减少与群组外的任务资源竞争,使群组外的任务拥有更佳的资源使用效率。
如图6所示,在一个实施例中,在步骤在单位时间内,当任务群组的各个任务在对应的运行时段之外时,使任务群组的各个任务分别进入等待状态,还包括:
步骤S610,判断当任务群组的各个任务均进入等待状态时是否有任务群组外的任务正在执行,若是,则执行步骤S620,若否,则执行步骤S630。
具体的,单位时间内,当任务群组内的任务全部进入等待状态时,若有任务群组外的任务正在执行,则确定该正在执行的任务群组外的任务获得全部的资源使用时间,若无任务群组外的任务正在执行,则可进入休眠状态,其中,进入休眠状态指执行上述资源管理方法的设备进入休眠状态已达到省电的目的。例如,如图7所示,在第一个2T单位时间内,当任务群组10内的任务E运行达L时间后,其进入等待状态,而在此之前,任务群组10内的任务D已进入等待状态。在任务E进入等待状态后,只有任务群组外的任务A在执行,则任务A获得全部的资源使用时间,可以使任务群组外的任务有更佳的资源使用效率。在第二个2T单位时间内,当任务群组10内的任务D、E、F均进入等待状态后,且无任务群组外的任务正在执行,正进入休眠状态。
步骤S620,将确定任务群组外的任务获得全部的资源使用时间。
步骤S630,进入休眠状态。
上述资源管理方法,当群组内的所有任务均进入等待状态且无群组外的任务执行时,进入休眠状态,可减少设备电力消耗。
如图8所示,一种资源管理***,包括任务确定模块810、第一判断模块820、群组时间确定模块830、运行时间确定模块840和等待模块850。
任务确定模块810,用于确定任务群组内的任务及与任务群组内的每个任务对应的预设的任务时间。
具体的,预设的任务时间为预设的任务群组内的任务在单位时间内可获得的资源使用时间上限,即任务群组内的每一项任务在单位时间内的运行时间不超过与之对应的任务时间,在本实施方式中,可设定任务群组内所有任务对应的预设的任务时间是相同的。例如,假设单位时间为2T,任务时间为L,L可为T/2、T/4等。每2T单位时间内,任务群组内的每一项任务最多只能使用L时间的资源。T可以为10s(秒)、15s、20s等时间较短的数值。资源可为CPU、GPU、内存等。可以理解地,任务群组内的每个任务对应的预设的任务时间可以根据实际需要进行设定,不一定完全相同。
第一判断模块820,用于判断任务群组内所有任务对应的预设的任务时间之和是否小于预设的时间阈值。
具体的,时间阈值为预先设定的任务群组在每单位时间内的资源使用时间上限。单位时间、时间阈值、任务时间需可根据需求进行设定,三者的关系为单位时间大于时间阈值,时间阈值大于任务时间。比较任务群组内所有任务对应的预设的任务时间之和与时间阈值的大小,若任务群组内所有任务对应的预设的任务时间之和小于时间阈值,则确定任务群组在单位时间内的资源使用时间额度为任务群组内所有任务对应的预设的任务时间之和,若任务群组内所有任务对应的预设的任务时间之和不小于时间阈值,则确定任务群组在单位时间内的资源使用时间额度为时间阈值。如图2所示,包括任务群组外的任务20及任务群组10。其中,设定任务群组10内任务D、E对应的预设的任务时间均为L,时间阈值为T,在第一个2T单位时间内,任务群组10内的任务D、E对应的预设的任务时间之和为2L,小于预设的时间阈值T,则任务群组10的资源使用时间额度为2L。在第二个2T单位时间内,任务群组10包括任务D、E、F,设定任务群组10内任务D、E、F对应的预设的任务时间均为L,则任务群组10内的任务D、E、F对应的预设的任务时间之和为3L,大于时间阈值T,则任务群组10的资源使用时间额度为T。在单位时间内,任务群组内的所有任务所允许的运行时间之和小于或等于任务群组的资源使用时间额度。
群组时间确定模块830,用于当任务群组内所有任务对应的预设的任务时间之和小于预设的时间阈值时,则确定任务群组的资源使用时间额度为任务群组内所有任务对应的预设的任务时间之和。
具体的,通过比较任务群组内所有任务对应的预设的任务时间之和和时间阈值来确定任务群组的资源使用时间额度,可避免当任务群组内的任务数量太少时造成的资源浪费,将任务群组中的每个任务所获得的资源使用时间控制在合理范围内。例如,设定单位时间为2T,时间阈值为T,任务群组中只有一个任务,且该任务对应的预设的任务时间为T/4,若不通过比较任务群组内所有任务对应的预设的任务时间之和和时间阈值来确定任务群组的资源使用时间额度,则该任务在2T单位时间内可使用T时间的资源,此时可能会造成资源使用效率低等问题,而通过比较再确定任务群组的资源使用时间额度后,该任务在2T单位时间内最多只可使用T/4时间的资源,能提高资源的使用效率。
群组时间确定模块830还用于当任务群组内所有任务对应的预设的任务时间之和不小于预设的时间阈值时,则确定任务群组的资源使用时间额度为该时间阈值。
运行时间确定模块840,用于确定任务群组的各个任务在单位时间内所允许的运行时间。
具体的,将时间划分为连续的多个单位时间进行监测,任务群组的任务只在单位时间中的部分时段内才拥有资源使用权,即任务群组中的每个任务仅在与其对应的部分时段被运行,该部分时段的时长等于前述确定的所允许的运行时间。任务群组内的所有任务在单位时间内所允许的运行时间之和小于或等于前述确定的任务群组的资源使用时间额度。
等待模块850,用于在单位时间内,当任务群组的各个任务在对应的运行时段之外时,使任务群组的各个任务分别进入等待状态。
具体的,在单位时间内,只有在任务群组的各个任务对应的运行时段内时,才执行该任务,该运行时段的时长等于该任务在单位时间内所允许的运行时间。图3为一个实施例中任务群组的任务执行时的示意图,如图3所示,在第二个2T单位时间内时,假定任务群组10的资源使用时间额度为2L,任务E、F所允许的运行时间均为2L/3,在任务E、F各自对应的运行时段内,执行该任务,当在各自对应的运行时段之外时,任务E、F则分别处于等待状态。等待状态指该任务不会使用任何资源。任务E、F所允许的运行时间之和小于任务群组10的资源使用时间额度2L。在第三个2T单位时间内,假定任务群组10的资源使用时间额度为T,任务E、F、G所允许的运行时间均为T/3,在任务E、F、G各自对应的运行时段内,执行该任务,当在各自对应的运行时段之外时,任务E、F、G则分别处于等待状态。任务E、F、G所允许的运行时间之和等于任务群组10的资源使用时间额度T。只需保证在单位时间内任务群组内所有的任务所允许的运行时间之和小于或等于任务群组的资源使用时间额度即可,而任务群组内的各个任务在单位时间的什么时段内运行则由操作***的任务调度器的算法决定。在其它实施例中,任务群组内的任务在单位时间内,可先进入等待状态,再进行执行,例如2T单位时间内,任务群组内的所有任务先进入等待状态,T时间后,再按照任务群组内的各个任务所允许的运行时间执行各个任务,可以理解,其本质上与图3的资源管理***是一致的。
在一个实施例中,上述资源管理***还包括建立模块。
建立模块,用于建立任务群组,并根据预定的规则将特定的任务添加入该任务群组。
具体的,建立任务群组对任务进行管理,只有在该任务群组中的任务,才受任务群组的资源使用时间额度的限制。任务群组中的任务可为不需与用户进行交互的后台任务,例如邮件服务、讯息传递、自动保存等后台任务。将某些任务添加入任务群组中并进行资源使用限制,既可保证任务群组内的任务正常执行,也可避免任务群组内的任务无限制地与任务群组外的其它任务抢占资源,造成资源浪费。可以理解地,还可以根据需要设定其它的规则,然后将符合规则的特定任务添加到任务群组中。
上述资源管理***,通过比较该任务群组内所有任务对应的预设的任务时间之和及预设的时间阈值大小,以此决定群组的资源使用时间额度,能够根据群组内的每个任务对应的预设的任务时间动态控制群组内的任务所能使用的资源,确保群组内每个任务所获得的资源使用时间在合理范围内,提高资源使用效率,节约资源。此外,群组内的各个任务在单位时间内只在其对应的运行时段内运行,既能保证群组内的工作完成,又能减少与群组外的任务资源竞争,使群组外的任务拥有更佳的资源使用效率。
如图9所示,在一个实施例中,运行时间确定模块840包括获取单元842、判断单元844和确定单元846。
获取单元842,用于获取任务群组内的任务的优先级。
具体的,在单位时间内,任务群组内的任务可最多获得任务群组的资源使用时间额度的资源。若此时,无任务群组外的任务在执行,任务群组内的任务无需与任务群组外的其它任务竞争资源,任务群组内的任务所允许的运行时间可根据任务的优先级高低并按照预定的算法进行确定。通常,任务群组内优先级高的任务比优先级低的任务会获得更多的所允许的运行时间。
判断单元844,用于判断任务群组内的任务的优先级是否相同。
具体的,若任务群组内的任务的优先级相同,则任务群组内的各个任务在单位时间内所允许的运行时间为任务群组的资源使用时间额度除以任务群组内的任务数量,若任务群组内的任务的优先级不同,则根据任务的优先级高低并按照预定的算法确定任务群组内各个任务在单位时间内所允许的运行时间。
确定单元846,用于当任务群组内的任务的优先级相同且没有任务群组外的任务正在执行,则确定任务群组内的各个任务在单位时间内所允许的运行时间为任务群组的资源使用时间额度除以任务群组内的任务数量。
具体的,例如,如图5所示,在第一个2T单位时间内,无任务群组外的任务正在执行,假定任务群组10的资源使用时间额度为2L,任务群组10内包括任务D和任务E,任务数量为2,则任务D和任务E各分得L的资源使用时间;在第二个2T单位时间内,无任务群组外的任务正在执行,假定任务群组的资源使用时间额度为T,任务群组10内包括任务D、E、F,则任务D、任务E和任务F各分得T/3的资源使用时间。在其它的实施例中,若还有任务群组外的任务正在执行,则任务群组内的任务所允许的运行时间将小于本实施例中获得的资源使用时间。
确定单元846还用于当任务群组内的任务的优先级不同,则基于任务群组内的任务的优先级高低并按照预定的算法确定任务群组内的各个任务在单位时间内所允许的运行时间。
具体的,在单位时间内,若任务群组内的任务的优先级不同,则将任务群组内的任务按照优先级高低顺序进行排序,优先级高的任务排在优先级低的任务前面,任务群组内的任务的资源使用时间可根据任务优先级高低并按照预定的算法进行确定。例如,2T单位时间内,无任务群组外的任务正在执行,假定任务群组的资源使用时间额度为2L,任务群组内包括任务D、E,任务D的优先级高于任务E,则任务D可分得4L/3的资源使用时间,任务E分得2L/3的资源使用时间。当任务群组内的任务不在对应的运行时段时,任务群组内的任务分别立即进入等待状态。
上述资源管理***,群组内的各个任务在单位时间内只在其对应的运行时段内运行,且根据任务群组内的任务的优先级高低确定资源使用时间,能更好地运行任务,既能保证群组内的工作完成,又能减少与群组外的任务资源竞争,使群组外的任务拥有更佳的资源使用效率。
在另一个实施例中,获取单元842还用于获取正在执行的任务群组外的任务与任务群组内的任务的优先级。
具体的,若单位时间内,除任务群组内的任务,还有任务群组外的任务正在执行,则任务群组外的任务将与任务群组内的任务形成资源竞争。获取正在执行的任务群组外的任务及任务群组内的每个任务的优先级,并根据优先级的高低确定各个任务的资源使用时间。通常,优先级高的任务比优先级低的任务会获得更多的所允许的运行时间。
判断单元844还用于判断任务群组外的任务与任务群组内的任务的优先级是否相同。
确定单元846还用于当任务群组外的任务与任务群组内的任务的优先级相同时,则确定任务群组内的各个任务在单位时间内所允许的运行时间为任务群组的资源使用时间额度除以任务群组外的任务与任务群组内的任务的数量之和。
具体的,在单位时间内,若任务群组外的任务与任务群组内的任务的优先级相同,则任务群组内的各个任务在单位时间内所允许的运行时间为任务群组的资源使用时间额度除以任务群组外的任务与任务群组内的任务的数量之和。例如,在图3中,第四个2T单位时间内,假定任务群组10的资源使用时间额度为T,共有一个任务群组外的任务C和三个任务群组内的任务E、H、I,则平均每个任务获得T/4的资源使用时间。而任务群组外的任务C还能获得单位时间内任务群组的资源使用时间额度外的时间T,则在单位时间内,任务群组外的任务C共能分到T+T/4的资源使用时间。在其它的实施例中,当任务群组外的任务与任务群组内的任务的优先级相同时,任务群组外的任务与任务群组内的任务可各分得一半的任务群组的资源使用时间额度,任务群组内的各个任务所允许的运行时间为一半的任务群组的资源使用时间额度除以任务群组内的任务数量。例如,在单位时间内,任务群组的资源使用时间为T,任务群组中包括任务E、F、G,则任务E、F、G总共获得T/2的资源使用时间,每个任务各获得T/6的资源使用时间,而任务群组外的任务则获得T+T/2的资源使用时间,分配方式与操作***中的任务调度器算法相关。
确定单元846还用于当任务群组外的任务与任务群组内的任务的优先级不同时,则基于任务群组外的任务与任务群组内的任务的优先级高低并按照预定的算法确定任务群组内的各个任务在单位时间内所允许的运行时间。
具体的,在单位时间的资源使用时间内,若任务群组外的任务与任务群组内的任务的优先级高低不同,任务群组内的任务所允许的运行时间可根据任务群组外的任务和任务群组内的任务优先级高低并按照预定的算法进行确定。
上述资源管理***,群组内的各个任务在单位时间内只在其对应的运行时段内运行,且根据任务优先级确定任务的资源使用时间,可以更好地进行资源调度,完成工作,当群组内的各个任务在对应的运行时段之外时,使各个任务分别进入等待状态,且群组内所有任务的所允许的运行时间之和不超过群组的资源使用时间额度,既能保证群组内的工作完成,又能减少与群组外的任务资源竞争,使群组外的任务拥有更佳的资源使用效率。
在一个实施例中,上述资源管理***,除了包括任务确定模块810、第一判断模块820、群组时间确定模块830,运行时间确定模块840及等待模块850,还包括第二判断模块和休眠模块。
第二判断模块,用于判断当任务群组的各个任务均进入等待状态时是否有任务群组外的任务正在执行。
具体的,单位时间内,当任务群组内的任务全部进入等待状态时,若有任务群组外的任务正在执行,则确定该正在执行的任务群组外的任务获得全部的资源使用时间,若无任务群组外的任务正在执行,则可进入休眠状态,其中,进入休眠状态指执行上述资源管理方法的设备进入休眠状态已达到省电的目的。例如,如图7所示,在第一个2T单位时间内,当任务群组10内的任务E运行达L时间后,其进入等待状态,而在此之前,任务群组10内的任务D已进入等待状态。在任务E进入等待状态后,只有任务群组外的任务A在执行,则任务A获得全部的资源使用时间,可以使任务群组外的任务有更佳的资源使用效率。在第二个2T单位时间内,当任务群组10内的任务D、E、F均进入等待状态后,且无任务群组外的任务正在执行,正进入休眠状态。
运行时间确定模块840还用于当任务群组的各个任务均进入等待状态时有任务群组外的任务正在执行,将确定该任务群组外的任务获得全部的资源使用时间。
休眠模块,用于当任务群组的各个任务均进入等待状态时没有任务群组外的任务正在执行,进入休眠状态。
上述资源管理***,当群组内的所有任务均进入等待状态且无群组外的任务执行时,进入休眠状态,可减少设备电力消耗。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

Claims (10)

1.一种资源管理方法,其特征在于,包括以下步骤:
确定任务群组内的任务及与所述任务群组内的每个任务对应的预设的任务时间;
判断所述任务群组内所有任务对应的预设的任务时间之和是否小于预设的时间阈值,所述时间阈值为预先设定的任务群组在每单位时间内的资源使用时间上限;
若是,则确定所述任务群组的资源使用时间额度为所述任务群组内所有任务对应的预设的任务时间之和;
若否,则确定所述任务群组的资源使用时间额度为所述时间阈值;
确定所述任务群组的各个任务在单位时间内所允许的运行时间,所述任务群组的所有任务在单位时间内所允许的运行时间之和小于或等于所述任务群组的资源使用时间额度;
在单位时间内,当所述任务群组的各个任务在对应的运行时段之外时,使所述任务群组的各个任务分别进入等待状态。
2.根据权利要求1所述的资源管理方法,其特征在于,在所述确定任务群组内的任务及与所述任务群组内的每个任务对应的预设的任务时间的步骤之前,还包括以下步骤:
建立任务群组,并根据预定的规则将特定的任务添加入所述任务群组。
3.根据权利要求1或2所述的资源管理方法,其特征在于,所述确定所述任务群组的各个任务在单位时间内所允许的运行时间具体包括:
获取所述任务群组内的任务的优先级;
判断所述任务群组内的任务的优先级是否相同;
若所述任务群组内的任务的优先级相同且没有任务群组外的任务正在执行,则确定所述任务群组内的各个任务在单位时间内所允许的运行时间为所述任务群组的资源使用时间额度除以所述任务群组内的任务数量;
若否,则基于所述任务群组内的任务的优先级高低并按照预定的算法确定所述任务群组内的各个任务在单位时间内所允许的运行时间。
4.根据权利要求1或2所述的资源管理方法,其特征在于,所述确定所述任务群组的各个任务在单位时间内所允许的运行时间具体包括:
获取正在执行的任务群组外的任务与所述任务群组内的任务的优先级;
判断所述任务群组外的任务与所述任务群组内的任务的优先级是否相同;
若是,则确定所述任务群组内的各个任务在单位时间内所允许的运行时间为所述任务群组的资源使用时间额度除以所述任务群组外的任务与所述任务群组内的任务的数量之和;
若否,则基于所述任务群组外的任务与所述任务群组内的任务的优先级高低并按照预定的算法确定所述任务群组内的各个任务在单位时间内所允许的运行时间。
5.根据权利要求4所述的资源管理方法,其特征在于,在所述在单位时间内,当所述任务群组的各个任务在对应的运行时段之外时,使所述任务群组的各个任务分别进入等待状态的步骤之后,还包括:
判断当所述任务群组的各个任务均进入等待状态时是否有任务群组外的任务正在执行;
若是,则确定所述任务群组外的任务获得全部的资源使用时间;
若否,则进入休眠状态。
6.一种资源管理***,其特征在于,包括:
任务确定模块,用于确定任务群组内的任务及与所述任务群组内的每个任务对应的预设的任务时间;
第一判断模块,用于判断所述任务群组内所有任务对应的预设的任务时间之和是否小于预设的时间阈值,所述时间阈值为预先设定的任务群组在每单位时间内的资源使用时间上限;
群组时间确定模块,用于当所述任务群组内所有任务对应的预设的任务时间之和小于预设的时间阈值时,则确定所述任务群组的资源使用时间额度为所述任务群组内所有任务对应的预设的任务时间之和;
所述群组时间确定模块还用于当所述任务群组内所有任务对应的预设的任务时间之和不小于预设的时间阈值时,则确定所述任务群组的资源使用时间额度为所述时间阈值;
运行时间确定模块,用于确定所述任务群组的各个任务在单位时间内所允许的运行时间,所述任务群组的所有任务在单位时间内所允许的运行时间之和小于或等于所述任务群组的资源使用时间额度;
等待模块,用于在单位时间内,当所述任务群组的各个任务在对应的运行时段之外时,使所述任务群组的各个任务分别进入等待状态。
7.根据权利要求6所述的资源管理***,其特征在于,所述***还包括:
建立模块,用于建立任务群组,并根据预定的规则将特定的任务添加入所述任务群组。
8.根据权利要求6或7所述的资源管理***,其特征在于,所述运行时间确定模块包括:
获取单元,用于获取所述任务群组内的任务的优先级;
判断单元,用于判断所述任务群组内的任务的优先级是否相同;
确定单元,用于当所述任务群组内的任务的优先级相同且没有任务群组外的任务正在执行,则确定所述任务群组内的各个任务在单位时间内所允许的运行时间为所述任务群组的资源使用时间额度除以所述任务群组内的任务数量;
所述确定单元还用于当所述任务群组内的任务的优先级不同,则基于所述任务群组内的任务的优先级高低并按照预定的算法确定所述任务群组内的各个任务在单位时间内所允许的运行时间。
9.根据权利要求8所述的资源管理***,其特征在于,所述获取单元还用于获取正在执行的任务群组外的任务与所述任务群组内的任务的优先级;
所述判断单元还用于判断所述任务群组外的任务与所述任务群组内的任务的优先级是否相同;
所述确定单元还用于当所述任务群组外的任务与所述任务群组内的任务的优先级相同时,则确定所述任务群组内的各个任务在单位时间内所允许的运行时间为所述任务群组的资源使用时间额度除以所述任务群组外的任务与所述任务群组内的任务的数量之和;
所述确定单元还用于当所述任务群组外的任务与所述任务群组内的任务的优先级不同时,则基于所述任务群组外的任务与所述任务群组内的任务的优先级高低并按照预定的算法确定所述任务群组内的各个任务在单位时间内所允许的运行时间。
10.根据权利要求9所述的资源管理***,其特征在于,所述***还包括:
第二判断模块,用于判断当所述任务群组的各个任务均进入等待状态时是否有任务群组外的任务正在执行;
所述运行时间确定模块还用于当所述任务群组的各个任务均进入等待状态时有任务群组外的任务正在执行,则确定所述任务群组外的任务获得全部的资源使用时间;
休眠模块,用于当所述任务群组的各个任务均进入等待状态时没有任务群组外的任务正在执行,进入休眠状态。
CN201510756289.4A 2015-11-09 2015-11-09 资源管理方法和*** Active CN105320570B (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN201510756289.4A CN105320570B (zh) 2015-11-09 2015-11-09 资源管理方法和***
PCT/CN2016/095906 WO2017080276A1 (zh) 2015-11-09 2016-08-18 资源管理方法和***、计算机存储介质
EP16863454.1A EP3376381A4 (en) 2015-11-09 2016-08-18 Resource management method and system, and computer storage medium
US15/774,282 US10467054B2 (en) 2015-11-09 2016-08-18 Resource management method and system, and computer storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510756289.4A CN105320570B (zh) 2015-11-09 2015-11-09 资源管理方法和***

Publications (2)

Publication Number Publication Date
CN105320570A CN105320570A (zh) 2016-02-10
CN105320570B true CN105320570B (zh) 2019-01-29

Family

ID=55247991

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510756289.4A Active CN105320570B (zh) 2015-11-09 2015-11-09 资源管理方法和***

Country Status (4)

Country Link
US (1) US10467054B2 (zh)
EP (1) EP3376381A4 (zh)
CN (1) CN105320570B (zh)
WO (1) WO2017080276A1 (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105320570B (zh) * 2015-11-09 2019-01-29 深圳市万普拉斯科技有限公司 资源管理方法和***
CN105320561B (zh) * 2015-11-09 2019-03-08 深圳市万普拉斯科技有限公司 任务管理方法和***
CN108270837B (zh) * 2017-01-04 2021-04-30 北京京东尚科信息技术有限公司 一种利用闲置资源的分布式任务调度方法及***
CN106843047A (zh) * 2017-01-24 2017-06-13 苏州咖博士咖啡***科技有限公司 一种咖啡机执行器控制方法
US10802880B2 (en) * 2017-09-19 2020-10-13 Huawei Technologies Co., Ltd. System and method for distributed resource requirement and allocation
CN110022337A (zh) * 2018-01-09 2019-07-16 阿里巴巴集团控股有限公司 资源调度方法、装置、设备和***
CN109886548B (zh) * 2019-01-18 2024-05-07 平安科技(深圳)有限公司 派单方法、***、装置及存储介质
US11972267B2 (en) * 2022-10-04 2024-04-30 International Business Machines Corporation Hibernation of computing device with faulty batteries

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1287282C (zh) * 2003-07-22 2006-11-29 株式会社东芝 执行实时操作的方法和***
CN100543682C (zh) * 2005-08-24 2009-09-23 松下电器产业株式会社 任务执行装置及方法
CN102662743A (zh) * 2012-04-13 2012-09-12 南京信息工程大学 一种启发式粗粒度并行网格任务调度方法
CN103077086A (zh) * 2013-01-09 2013-05-01 苏州亿倍信息技术有限公司 一种任务分配控制的方法及***

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3610930B2 (ja) * 2001-07-12 2005-01-19 株式会社デンソー オペレーティングシステム、プログラム、車両用電子制御装置
US7360216B2 (en) 2002-07-03 2008-04-15 Nvidia Corporation Method and system for real-time multitasking
EP2449849A4 (en) 2009-06-29 2013-01-16 Nokia Corp RESOURCES ALLOCATION
US9602779B2 (en) * 2012-07-10 2017-03-21 Christopher DeJuliis System for passenger monitoring
US9201693B2 (en) 2012-09-04 2015-12-01 Microsoft Technology Licensing, Llc Quota-based resource management
CN103902364B (zh) 2012-12-25 2018-10-30 腾讯科技(深圳)有限公司 一种物理资源管理方法、装置及智能终端设备
CN105320570B (zh) 2015-11-09 2019-01-29 深圳市万普拉斯科技有限公司 资源管理方法和***
CN105320561B (zh) * 2015-11-09 2019-03-08 深圳市万普拉斯科技有限公司 任务管理方法和***

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1287282C (zh) * 2003-07-22 2006-11-29 株式会社东芝 执行实时操作的方法和***
CN100543682C (zh) * 2005-08-24 2009-09-23 松下电器产业株式会社 任务执行装置及方法
CN102662743A (zh) * 2012-04-13 2012-09-12 南京信息工程大学 一种启发式粗粒度并行网格任务调度方法
CN103077086A (zh) * 2013-01-09 2013-05-01 苏州亿倍信息技术有限公司 一种任务分配控制的方法及***

Also Published As

Publication number Publication date
US10467054B2 (en) 2019-11-05
WO2017080276A1 (zh) 2017-05-18
CN105320570A (zh) 2016-02-10
EP3376381A1 (en) 2018-09-19
EP3376381A4 (en) 2018-11-14
US20180329750A1 (en) 2018-11-15

Similar Documents

Publication Publication Date Title
CN105320570B (zh) 资源管理方法和***
US10802877B2 (en) Task management methods and system, and computer storage medium
CN106293950B (zh) 一种面向集群***的资源优化管理方法
EP3129880B1 (en) Method and device for augmenting and releasing capacity of computing resources in real-time stream computing system
TW201837733A (zh) 一種區塊鏈共識方法、設備及系統
CN101452404B (zh) 一种嵌入式操作***的任务调度装置及方法
CN110362407A (zh) 计算资源调度方法及装置
EP4383074A1 (en) Service processing method and apparatus, server, storage medium, and computer program product
CN103197968A (zh) 一种融合同步异步特点的线程池处理方法及***
CN105378668B (zh) 多处理器***中的操作***管理的中断引导
CN105160570A (zh) 一种可水平扩展的并发在线交易处理方法
CN110300959B (zh) 用于动态运行时任务管理的方法、***、设备、装置和介质
CN105389206A (zh) 一种云计算数据中心虚拟机资源快速配置方法
CN112783659A (zh) 一种资源分配方法、装置、计算机设备及存储介质
CN108170417B (zh) 一种在mesos集群中集成高性能的作业调度框架的方法和装置
CN115658311A (zh) 一种资源的调度方法、装置、设备和介质
CN111459622A (zh) 调度虚拟cpu的方法、装置、计算机设备和存储介质
CN114579323A (zh) 一种线程处理方法、装置、设备及介质
CN114816709A (zh) 任务调度方法、装置、服务器及可读存储介质
CN103823712A (zh) 一种多cpu虚拟机***的数据流处理方法和装置
CN112860401A (zh) 任务调度方法、装置、电子设备和存储介质
CN115951974B (zh) Gpu虚拟机的管理方法、***、设备和介质
US8875144B2 (en) Using a yield indicator in a hierarchical scheduler
CN109189581B (zh) 一种作业调度方法和装置
Yang et al. Study on static task scheduling based on heterogeneous multi-core processor

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