CN101385000A - 用于多处理器应用程序支持的系统及方法 - Google Patents

用于多处理器应用程序支持的系统及方法 Download PDF

Info

Publication number
CN101385000A
CN101385000A CNA2007800053350A CN200780005335A CN101385000A CN 101385000 A CN101385000 A CN 101385000A CN A2007800053350 A CNA2007800053350 A CN A2007800053350A CN 200780005335 A CN200780005335 A CN 200780005335A CN 101385000 A CN101385000 A CN 101385000A
Authority
CN
China
Prior art keywords
application program
processor
described application
computer
attribute
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.)
Pending
Application number
CNA2007800053350A
Other languages
English (en)
Inventor
保罗·E·雅各布斯
斯蒂芬·A·斯普里格
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.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
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 Qualcomm Inc filed Critical Qualcomm Inc
Publication of CN101385000A publication Critical patent/CN101385000A/zh
Pending legal-status Critical Current

Links

Images

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]
    • 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/5044Allocation 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 hardware capabilities
    • 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
    • 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/3293Power saving characterised by the action undertaken by switching to a less power-consuming processor, e.g. sub-CPU
    • 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/5094Allocation of resources, e.g. of the central processing unit [CPU] where the allocation takes into account power or heat criteria
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Stored Programmes (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Multi Processors (AREA)

Abstract

本发明描述用于在多处理器系统中提供应用程序支持的方法及机构,其包含接收执行应用程序的请求;识别与所述应用程序相关联的属性,所述属性指定利用多个处理器中的哪一处理器来执行所述应用程序;基于所述识别的属性来调度所述应用程序以供在所述指定的处理器上执行;响应于所述应用程序的所述调度加载所述应用程序;及利用所述指定的处理器执行所述应用程序。

Description

用于多处理器应用程序支持的系统及方法
相关申请交叉参考案
本申请案主张2006年2月17日申请的第80/774,938号临时申请案的优选权。
技术领域
本发明通常涉及计算装置的功率管理领域,且更明确地说,涉及多处理器移动装置上的功率管理。
背景技术
当今,消费者使用移动装置(例如,手持蜂窝式电话)来执行许多不同的事情。常规移动装置可执行各种类型的软件应用程序,且经常包含添加或安装新软件产品的能力。这些软件产品的每一者需要不同水平的系统功率以部分地基于计算要求的量来执行置于处理器上的软件产品,所述处理器执行所述软件产品。例如,本机用户接口(“U1”)应用程序比多媒体应用程序或高速游戏需要的计算工作少得多。
一些移动装置尝试通过使用包含低功率处理器及高功率处理器的双处理器设计来解决此问题。使用此设计,移动装置的功能被分离,从而使得某些功能始终使用低功率处理器(例如,操作调制解调器的代码)而其它功能始终使用高功率处理器(例如,任一所安装的应用程序)。尽管此设计为用户确保高水平的性能,但其也导致电池寿命变短,因为需要向高功率处理器供电以处置应用程序而无论所需的计算工作的程度如何。
直到现在,用于支持移动装置中的多处理器平台的适当系统一直困扰着所属领域的技术人员。
发明内容
本发明针对一种用于在多处理器系统中执行应用程序的系统及方法。简单地说,提供包含至少一低功率处理器及高功率处理器的多处理器(例如,双处理器)专用集成电路(ASIC)。所述ASIC由经配置以支持应用程序的执行的操作系统控制。当加载应用程序时,操作系统评估与所述应用程序相关联的属性以确定在多个处理器的哪一处理器上执行应用程序。接着调度所述应用程序以在适当的处理器上执行。
在一个方面,一种用于在多处理器系统中执行应用程序的方法包含接收执行应用程序的请求及识别与所述应用程序相关联的属性。所述属性指定利用多个处理器中的哪一处理器来执行应用程序。所述方法进一步包含基于所述识别的属性调度所述应用程序以供在所述指定的处理器上执行。另外,所述方法包含在所述指定的处理器上执行应用程序。
在另一方面,一种移动装置包含:第一处理器;第二处理器;至少一个存储器存储装置,其与所述处理器通信;及至少一个计算机可读存储器装置,其可由所述处理器读取。所述计算机可读存储器包含经配置以致使处理器执行以下操作的一系列计算机可执行步骤:在操作系统处接收执行应用程序的请求;识别与所述应用程序相关联的属性,所述属性指定利用多个处理器中的哪一处理器来执行应用程序;基于所述识别的属性调度所述应用程序以供在所述指定的处理器上执行;及利用所述指定的处理器执行应用程序。
在又一方面,一种存储用于在多处理器系统中执行应用程序的计算机程序的计算机可读媒体包含:用以接收执行应用程序的请求的计算机可读代码;用以识别与所述应用程序相关联的属性的计算机可读代码,所述属性指定利用多个处理器中的哪一处理器来执行应用程序;用以基于所述识别的属性调度所述应用程序以供在所述指定的处理器上执行的计算机可读代码;及用以致使使用所述指定的处理器执行应用程序的计算机可读代码。
在另一方面,一种用于在多处理器系统中执行应用程序的系统包含:用于接收执行应用程序的请求的装置;用于识别与所述应用程序相关联的属性的装置,所述属性指定利用多个处理器中的哪一处理器来执行应用程序;用于基于所述识别的属性调度所述应用程序以供在所述指定的处理器上执行的装置;及用于利用所述指定的处理器执行应用程序的装置。
在另一方面,一种用于在多处理器环境中处理应用程序的方法包含:接收处理应用程序的请求;识别与所述应用程序相关联的属性,所述属性指定利用多个处理器中的哪一处理器来处理应用程序及处理所述应用程序。在一个方面,所述应用程序可以是内容数据。
在另一方面,一种移动装置包含:第一处理器;第二处理器;至少一个存储器存储装置,其与所述处理器通信;及至少一个计算机可读存储器装置,其可由所述处理器读取。所述计算机可读存储器包含经配置以致使处理器执行以下操作的一系列计算机可执行步骤:在操作系统处接收执行应用程序的请求;识别与所述应用程序相关联的属性,所述属性指定利用多个处理器中的哪一处理器来处理应用程序;及利用所述指定的处理器处理所述应用程序。在一个实施例中,所述应用程序可以是内容数据。
附图说明
图1是大体图解说明其中特别适用本发明实施方案的移动装置的功能框图。
图2是大体图解说明根据本发明的实施例用于提供多处理器应用程序支持的系统的功能框图。
图3是根据本发明的实施例提供多处理器应用程序支持的操作系统的概念图解。
图4是大体图解说明用于提供多处理器应用程序支持的过程的操作流程图。
具体实施方式
以下详细描述用于移动装置中的功率管理的各种技术及机制。大概来说,本发明针对基于应用程序的属性确定在多个处理器的哪一处理器上执行应用程序。应注意,在整个说明中,使用“应用程序”仅出于方便目的,而不打算用于进行限制。例如,所属领域的技术人员将认识到本文中所用的“应用程序”包含任何功能、任务、内容或发送到处理器供处理的其它数据。
图1是大体图解说明其中特别适用本发明实施方案的样本移动装置101的功能框图。移动装置101可以是任一手持式计算装置,例如蜂窝式电话、个人数字助理、便携式音乐播放器、全球定位卫星(GPS)装置或类似装置。虽然本文是在手持式计算装置的上下文中进行描述,但应了解,本发明的实施方案可在其它领域(例如,膝上型、桌上型或可能甚至服务器计算装置)中具有同等的应用性。
在此实例中,移动装置101包含全部经由系统总线107耦合的多处理器装置102、存储器108、存储媒体113及通信模块121。多处理器装置102可以是专用集成电路(“ASIC”),其包含囊封成单个单元的第一处理器单元104及第二处理器单元106,在另一实施例(未显示)中,每一处理器实施为离散单元。
根据本发明的一个实施例,一个处理器单元(例如,处理器单元1104)比另一处理器单元(例如,处理器单元2106)功能更强大。当需要更多处理通量时选择功能更强大的处理器,例如,其可更适合于处理器密集型应用程序。然而,功能较不强大的处理器消耗较少功率,且因此导致更慷慨的电池寿命并可更为处理较不密集的应用程序(包含任务)接受。处理器单元的每一者(处理器单元104及106)是微处理器或专用处理器(例如,数字信号处理器(DSP)),但在替代方案中其可以是任何常规形式的处理器、控制器、微控制器或状态机。在一个实施例中,第一处理器单元104实施为高功率微处理器,且第二处理器单元106实施为低功率DSP。移动装置101还可包含所属领域的技术人员已知的额外组件。
多处理器装置102耦合到存储器108,存储器108可实施为保持由处理器单元104及106执行的软件指令的RAM。在此实施例中,存储于存储器108中的软件指令包含一个或一个以上应用程序112及操作系统110,重要的是应注意:存储器108可实施为独立的RAM,或其可集成到具有处理器单元104及106的多处理器装置102中,以实现改进的效率。存储器108可由固件或快闪存储器(例如,智能媒体卡)组成。在另一实施例中,操作系统110包含使操作系统110能够确定使用哪一处理器单元来执行来自应用程序112的一个或一个以上应用程序的软件指令。
储存媒体113可实施为任一非易失性存储器,例如ROM存储器、快闪存储器或磁盘驱动器,此仅是几个实例。存储媒体113还可实施为那些或其它技术的任一组合,例如,磁盘驱动器与高速缓冲(RAM)存储器等等。在此特定实施例中,存储媒体113用于在移动装置101可能被断电或没有电时的周期期间存储数据。
通信模块121使移动装置101与一个或一个以上其它计算装置之间能够进行双向通信。通信模组121可包含能够实现RF或其它无线通信的组件,例如蜂窝式电话网络、蓝芽连接、无线局域网络或可能无线广域网络。另一选择是,通信模块121可包含能实现陆线或硬线网络通信的组件,例如因特网连接、通用串行总线连接、IEEE 1394(火线(Firewire))连接等等。本文打算将这些实例作为非排他性列举,且可能存在许多其它替代方案。
图2是以略微更详细的方式图解说明其中特别适用本发明实施方案的系统存储器108的功能框图。如上所述,系统存储器108包含操作系统210及一个或一个以上应用程序,例如第一应用程序240及第二应用程序250。此处,将在本发明的上下文中描述所述组件的每一者,
为图解说明本发明的原理,第一应用程序240需要更多处理功率以可接受地执行(例如)多媒体应用程序或高速游戏。第二应用程序250需要较少处理功率以可接受地执行(例如)本机用户接口模块或类似模块。所述应用程序的每一者具有例如模块信息文件(“MIF”)的相关联元信息,其包含关于应用程序(例如其图标、标题)的突出细节以及其为了操作而需要的特权的列举。因此,第一应用程序240具有相关联的MIF文件241,且第二应用程序250具有相关联的MIF文件251。
每一相应MIF文件进一步包含识别符或属性,其直接识别在多个处理器的哪一处理器上执行应用程序或包含可用于确定在哪一处理器上执行应用程序的识别信息(“proc属性”)。例如,第一应用程序240具有MIF文件241,其包含指示第一应用程序240需要较大处理功率的proc属性242。类似地,第二应用程序250具有MIF文件251,其包含指示第二应用程序需要较少处理功率且可在低功率处理器上起到充分作用的proc属性252。应注意数据在属性中的实际形式可采取许多形式。例如,设想可通过处理器的计算性能、通过功率消耗或两者来大体分类处理器来形成处理器的类别。以此方式,所述proc属性可仅识别最小需要的处理器而非直接识别在其上执行应用程序的特定处理器。
操作系统(O/S)210经配置以组织及控制移动装置的硬件及软件。在此特定实施例中,操作系统210包含调度器232及加载器235。调度器232管理可能正在移动装置上执行的过程,且调度用于每一过程或线程的处理器时间。另外,调度器232经配置以通过参考特定应用程序的proc属性来确定在哪一处理器上执行所述应用程序。为此,调度器232经配置以直接或间接地从与所述应用程序相关联的MIF文件读取元信息,以确定在哪一处理器上执行应用程序。加载器235经配置以将应用程序加载到过程中并在调度器232的控制下开始在特定处理器上执行所述应用程序。在一个实施例中,调度器232及加载器235以核执行模式或受保护执行模式操作。
在操作中,操作系统210例如经由系统呼叫从外壳(shell)接收执行第一应用程序240的指令。此指令可能已由用户通过选择及启动用户接口或类似接口中的图标而起始。在此特定实施例中,操作系统210接着询问本地存储装置以确定应用程序240的位置。操作系统210读取应用程序240的MIF文件241,以识别应用程序240的执行环境,例如当执行相关联应用程序时将在多处理器环境中使用哪一处理器。操作系统210可从MIF文件241中提取proc属性242并将其与执行应用程序240的指令一起传递到调度器232。
调度器接着根据应用程序的proc属性调度待加载到系统存储器180中并在特定处理器上执行的应用程序。加载器接着将应用程序加载到所识别的存储器位置中。调度器232及操作系统210使应用程序与处理器匹配的能力增加总系统功率利用效率。
在其它实施例中,当调度器232分别从应用程序(例如,第一应用程序240及第二应用程序250)读取属性(例如,属性242及252)时,调度器232可不使应用程序与处理器匹配,例如,在单处理器配置中,调度器232可简单地忽略proc属性且以常规方式调度对应用程序的执行。类似地,在多处理器配置中,当通过属性识别的处理器不可用时,调度器232基于其它准则(例如,对系统处理器的最有效使用)调度应用程序。在又一实例中,在多处理器配置中,当应用程序未识别优选处理器时,调度器232可以常规方式(例如,对系统处理器的最有效使用)调度应用程序。
图3是根据本发明的操作系统310的图形图解,操作系统310基于四个应用程序的每一者的属性调度所述应用程序在两个处理器的每一者上的执行。如上所述,图3中所示的实例性应用程序加载系统300可实施于移动装置101上。应用程序加载系统300用于增加计算系统的总效率,应用程序加载系统300在所述计算系统内操作。这通过识别及读取与应用程序相关联的属性(以上图2中所描述)来进行,所述属性指令操作系统310在指定的处理器上执行应用程序。
在图3中,应用程序加载系统300包含第一处理器304、第二处理器306、操作系统310、第一应用程序320、第二应用程序330、第三应用程序340及第四应用程序350。第一处理器304(其可以是ASIC上的处理器核心)是性能及功率相对高的处理单元。相反,第二处理器306(其可以是与第一处理器304相同ASIC上的另一处理器)是比第一处理器304消耗较少功率的相对低性能处理单元。
在此实例中,第一应用程序320是本机用户接口(U/I)应用程序,第二应用程序330是(例如)用于观看.mpeg文件或播放.wav文件的多媒体应用程序,第三应用程序340是本机蜂窝式传输及/或接收应用程序及第四应用程序350是例如游戏等高速娱乐应用程序。因此,已提前确定第一应用程序320及第三应用程序340将使用低功率处理器实现可接受的性能水平。相反,也已确定第二应用程序330及第四应用程序350需要高功率处理器来实现可接受的性能水平。因此,第一应用程序320及第三应用程序340两者包含将第二处理器306识别为在其上执行所述应用程序的优选处理器的属性。类似地,第二应用程序330及第四应用程序350两者包含将第一处理器304识别为在其上执行所述应用程序的优选处理器的属性。
另外,如果由应用程序内的属性指定的处理器不可用,那么操作系统310基于其它准则调度应用程序的执行。例如,为在低功率处理器的利用程度高时的周期期间实现充足性能,操作系统310可调度其它低功率应用程序在高功率处理器上执行。然而,应用程序内的属性未指定处理器时,操作系统310可基于其它准则(例如,常规负载平衡或功率考虑)来调度应用程序,
图4是大体图解说明方法400的操作流程图,方法400用于为引导应用程序在多处理器系统中的哪一处理器上执行提供支持。在一个实施例中,以图1-3的实例性操作环境的组件实施方法400。优选地,方法400的一个或一个以上步骤体现于含有计算机可读代码的计算机可读媒体中,以使得当计算机可读代码在计算装置上执行时实施一系列步骤。在一些实施例中,同时或以不同次序组合、执行方法400的某些步骤,此并不背离方法400的目标。
在步骤处410处,在操作系统处接收在多处理器系统内执行应用程序的请求。在一个实施例中,操作系统例如经由系统呼叫从外壳接收执行应用程序的指令。在实例中且参照以上图1,操作系统110经由媒体控制组件111从外壳接收执行应用程序112中的一应用程序的指令,例如系统呼叫。
在步骤处420处,识别与应用程序相关联的属性。所述属性提供用于确定在多处理器系统内的哪一处理器上执行应用程序的信息。在一个实施例中,通过操作系统的组件来识别与应用程序相关联的属性。在实例中且参照以上图2,操作系统210识别与第一应用程序240相关联的第一proc属性242并将所识别属性的内容传递到调度器232。
在步骤430处,基于所识别的属性调度应用程序以在所指定的处理器上执行。在一个实施例中,调度器确定所识别的处理器当前是否正以可接受的利用率操作以支持应用程序的执行。在实例中且参照以上图1及2,调度器232(在操作系统210及110内)创建执行应用程序240的过程且接着调度所述过程以在第一处理器104上执行。
在步骤440处,响应于应用程序的调度加载应用程序。在一个实施例中,加载器响应于调度器调度待加载的应用程序而将所述应用程序加载到存储器中。在实例中且参照以上图1及2,加载器235响应于调度器232调度待加载的应用程序240而将应用程序240加载到存储器108。
在步骤450处,使用所指定的处理器执行应用程序。在一个实施例中,调度器将先前所识别的处理器的堆栈指针设定为含有应用程序的多部分的存储器位置。
有利地,上述系统及技术使移动装置能够在单个ASIC上具有两个处理器核心,其中一个处理器核心的功率消耗要求低于另一处理器核心的功率消耗要求,且其中两个处理器核心共享资源,例如RAM及操作系统组件。另外,安装在移动装置上的应用程序可经调度而在将产生适当的功率及性能平衡的处理器上执行,而非基于调控哪些应用程序在哪些处理器上运行的硬性规则。所述系统及技术在未必牺牲应用程序可用性的情况下产生改进的电池寿命。
尽管已参照特定实施例及实施方案描述了本发明,但应理解,所述实施例仅是说明性且本发明的范围并不限于所述实施例。可对上述实施例作出很多变化、修改、添加及改进。本发明预期:这些改变、修改、添加及改进均归属于在如下权利要求书中所详细阐述的本发明范围内。

Claims (16)

1、一种用于在多处理器系统中执行应用程序的方法,其包括:
接收执行所述应用程序的请求;
识别与所述应用程序相关联的属性,所述属性指定利用多个处理器中的哪一处理器来执行所述应用程序;
基于所述识别的属性调度所述应用程序以供在所述指定的处理器上执行;及
利用所述指定的处理器来执行所述应用程序。
2、如权利要求1所述的方法,其中所述多个处理器包含高通量处理器及低通量处理器。
3、如权利要求2所述的方法,其进一步包括:基于应用程序的通量处理需要,指派与所述应用程序相关联的属性的步骤。
4、一种用于在多处理器系统中处理应用程序的方法,其包括:
接收处理所述应用程序的请求;
识别与所述应用程序相关联的属性,所述属性指定利用多个处理器中的哪一处理器来处理所述应用程序;及,
利用所述指定的处理器来处理所述应用程序。
5、如权利要求4所述的方法,其中所述多个处理器包含高通量处理器及低通量处理器。
6、如权利要求4所述的方法,其中所述应用程序是内容数据。
7、一种移动装置,其包括:
通信总线;
第一处理器;
第二处理器;
至少一个存储器存储装置,其与所述处理器通信;及
至少一个计算机可读存储器装置,其可由所述处理器读取,所述计算机可读存储器装置包含经配置以致使所述处理器执行以下操作的一系列计算机可执行步骤:
在操作系统处接收执行应用程序的请求;
识别与所述应用程序相关联的属性,所述属性识别在多个处理器中的哪一处理器上执行所述应用程序;
基于所述识别的属性调度所述应用程序以供在所述指定的处理器上执行;及
在所述指定的处理器上执行所述应用程序。
8、一种移动装置,其包括:
通信总线;
第一处理器;
第二处理器;
至少一个存储器存储装置,其与所述处理器通信;及
至少一个计算机可读存储器装置,其可由所述处理器读取,所述计算机可读存储器装置包含经配置以致使所述处理器执行以下操作的一系列计算机可执行步骤:
在操作系统处接收处理应用程序的请求;
识别与所述应用程序相关联的属性,所述属性识别在多个处理器中的哪一处理器上处理所述应用程序;及
在所述指定的处理器上处理所述应用程序。
9、如权利要求8所述的移动装置,其中所述第一处理器具有与所述第二处理器不同的处理通量。
10、如权利要求8所述的移动装置,其中所述应用程序是内容数据。
11、一种计算机可读媒体,其存储用以在多处理器系统中执行应用程序的计算机程序,其包括:
用以接收执行所述应用程序的请求的计算机可读代码;
用以识别与所述应用程序相关联的属性的计算机可读代码,所述属性指定使用多个处理器中的哪一处理器来执行所述应用程序;
用以基于所述识别的属性调度所述应用程序以供在所述指定的处理器上执行的计算机可读代码;
用以响应于所述应用程序的所述调度加载所述应用程序的计算机可读代码;及
用以响应于所述应用程序的所述加载而利用所述指定的处理器执行所述应用程序的计算机可读代码。
12、一种计算机可读媒体,其存储用以在多处理器系统中处理应用程序的计算机程序,其包括:
用以接收处理所述应用程序的请求的计算机可读代码;
用以识别与所述应用程序相关联的属性的计算机可读代码,所述属性指定使用多个处理器中的哪一处理器来执行所述应用程序;
用以基于所述识别的属性调度所述应用程序以供在所述指定的处理器上处理的计算机可读代码。
13、如权利要求12所述的计算机可读媒体,其中所述应用程序是内容数据。
14、一种用于在多处理器系统中执行应用程序的装置,其包括:
用于接收执行所述应用程序的请求的装置;
用于识别与所述应用程序相关联的属性的装置,所述属性指定利用多个处理器中的哪一处理器来执行所述应用程序;
用于基于所述识别的属性调度所述应用程序以供在所述指定的处理器上执行的装置;及
用于在所述指定的处理器上执行所述应用程序的装置。
15、一种用于在多处理器系统中处理应用程序的装置,其包括:
用于接收处理所述应用程序的请求的装置;
用于识别与所述应用程序相关联的属性的装置,所述属性指定利用多个处理器中的哪一处理器来执行所述应用程序;
用于在所述指定的处理器上处理所述应用程序的装置。
16、如权利要求15所述的装置,其中所述应用程序是内容数据。
CNA2007800053350A 2006-02-17 2007-02-16 用于多处理器应用程序支持的系统及方法 Pending CN101385000A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US77493806P 2006-02-17 2006-02-17
US60/774,938 2006-02-17

Publications (1)

Publication Number Publication Date
CN101385000A true CN101385000A (zh) 2009-03-11

Family

ID=38330454

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA2007800053350A Pending CN101385000A (zh) 2006-02-17 2007-02-16 用于多处理器应用程序支持的系统及方法

Country Status (6)

Country Link
US (1) US20070198981A1 (zh)
EP (1) EP1989623A2 (zh)
JP (1) JP2009527828A (zh)
KR (1) KR101131852B1 (zh)
CN (1) CN101385000A (zh)
WO (1) WO2007098424A2 (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103189853A (zh) * 2010-10-29 2013-07-03 诺基亚公司 用于提供高效情境分类的方法和装置
CN104603724A (zh) * 2012-08-17 2015-05-06 高通股份有限公司 具有非对称处理内核之间实时角色协商的可调节的触摸屏处理
WO2015089780A1 (zh) * 2013-12-19 2015-06-25 华为技术有限公司 一种应用进程调度方法和装置
CN105487918A (zh) * 2014-10-08 2016-04-13 展讯通信(上海)有限公司 一种信息独立处理系统
WO2019201340A1 (zh) * 2018-04-20 2019-10-24 Oppo广东移动通信有限公司 处理器核心调度方法、装置、终端及存储介质

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8914786B2 (en) * 2007-03-23 2014-12-16 Zumobi, Inc. Systems and methods for controlling application updates across a wireless interface
US8286196B2 (en) * 2007-05-03 2012-10-09 Apple Inc. Parallel runtime execution on multiple processors
EP2135163B1 (en) 2007-04-11 2018-08-08 Apple Inc. Data parallel computing on multiple processors
US8276164B2 (en) 2007-05-03 2012-09-25 Apple Inc. Data parallel computing on multiple processors
US8341611B2 (en) 2007-04-11 2012-12-25 Apple Inc. Application interface on multiple processors
US11836506B2 (en) 2007-04-11 2023-12-05 Apple Inc. Parallel runtime execution on multiple processors
GB2452316B (en) * 2007-08-31 2009-08-19 Toshiba Res Europ Ltd Method of Allocating Resources in a Computer.
US8127296B2 (en) * 2007-09-06 2012-02-28 Dell Products L.P. Virtual machine migration between processors having VM migration registers controlled by firmware to modify the reporting of common processor feature sets to support the migration
JP2009075827A (ja) * 2007-09-20 2009-04-09 Panasonic Corp プログラム実行装置
EP2071351A1 (en) * 2007-12-11 2009-06-17 Telefonaktiebolaget LM Ericsson (publ) Method and device for providing location services
US20090184866A1 (en) * 2008-01-18 2009-07-23 Simon Lethbridge Method and device for providing location services
EP2141593A1 (en) * 2008-07-02 2010-01-06 Telefonaktiebolaget L M Ericsson (Publ) Requirement dependent allocation of hardware units to applications
JP2011180816A (ja) * 2010-03-01 2011-09-15 Nec Corp 情報処理装置、情報処理システム、情報処理方法および情報処理プログラム
US8453150B2 (en) * 2010-06-08 2013-05-28 Advanced Micro Devices, Inc. Multithread application-aware memory scheduling scheme for multi-core processors
JP5345990B2 (ja) * 2010-08-27 2013-11-20 レノボ・シンガポール・プライベート・リミテッド 特定のプロセスを短時間で処理する方法およびコンピュータ
US9268611B2 (en) 2010-09-25 2016-02-23 Intel Corporation Application scheduling in heterogeneous multiprocessor computing platform based on a ratio of predicted performance of processor cores
US8789065B2 (en) 2012-06-08 2014-07-22 Throughputer, Inc. System and method for input data load adaptive parallel processing
US9026047B2 (en) 2011-06-29 2015-05-05 Broadcom Corporation Systems and methods for providing NFC secure application support in battery-off mode when no nonvolatile memory write access is available
US9448847B2 (en) 2011-07-15 2016-09-20 Throughputer, Inc. Concurrent program execution optimization
US9229526B1 (en) * 2012-09-10 2016-01-05 Amazon Technologies, Inc. Dedicated image processor
KR102060703B1 (ko) * 2013-03-11 2020-02-11 삼성전자주식회사 모바일 시스템의 최적화 방법
CN103885800A (zh) * 2014-03-11 2014-06-25 深圳市道通科技有限公司 嵌入式处理器动态加载执行代码的实现方法及装置
US9419905B2 (en) * 2014-04-04 2016-08-16 International Business Machines Corporation Data streaming scheduler for dual chipset architectures that includes a high performance chipset and a low performance chipset
CN106663217B (zh) * 2014-09-01 2019-11-05 电子监控有限公司 非接触式信息通信终端装置、卡型设备、携带电话机以及可穿戴式设备
KR102247742B1 (ko) * 2015-04-21 2021-05-04 삼성전자주식회사 애플리케이션 프로세서와 시스템 온 칩
US11063645B2 (en) 2018-12-18 2021-07-13 XCOM Labs, Inc. Methods of wirelessly communicating with a group of devices
US10756795B2 (en) 2018-12-18 2020-08-25 XCOM Labs, Inc. User equipment with cellular link and peer-to-peer link
US11330649B2 (en) 2019-01-25 2022-05-10 XCOM Labs, Inc. Methods and systems of multi-link peer-to-peer communications
US10756767B1 (en) 2019-02-05 2020-08-25 XCOM Labs, Inc. User equipment for wirelessly communicating cellular signal with another user equipment

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3019317B2 (ja) * 1989-03-13 2000-03-13 株式会社日立製作所 プロセススケジューリング方法
JP2972232B2 (ja) * 1989-08-30 1999-11-08 株式会社日立製作所 計算機ネツトワーク・システムの制御方式
US6513057B1 (en) * 1996-10-28 2003-01-28 Unisys Corporation Heterogeneous symmetric multi-processing system
JP3733402B2 (ja) * 1998-12-16 2006-01-11 富士通株式会社 プロセッサ資源選択方法ならびにそのためのプロセッサ資源選択システムおよびコンピュ−タ読み取り可能なプログラム記録媒体
JP2001022599A (ja) * 1999-07-06 2001-01-26 Fujitsu Ltd フォールトトレラント・システム,フォールトトレラント処理方法およびフォールトトレラント制御用プログラム記録媒体
US6501999B1 (en) * 1999-12-22 2002-12-31 Intel Corporation Multi-processor mobile computer system having one processor integrated with a chipset
JP2002175187A (ja) * 2000-12-05 2002-06-21 Nippon Telegr & Teleph Corp <Ntt> コンテンツカプセルの実行管理方法、コンピュータシステム及びコンテンツカプセルを記録した記録媒体
US6986066B2 (en) * 2001-01-05 2006-01-10 International Business Machines Corporation Computer system having low energy consumption
JP2002215597A (ja) * 2001-01-15 2002-08-02 Mitsubishi Electric Corp マルチプロセッサ装置
JP2002288150A (ja) * 2001-03-28 2002-10-04 Matsushita Electric Ind Co Ltd 半導体集積回路装置
JP2002297556A (ja) * 2001-03-29 2002-10-11 Fujitsu Ltd マルチプロセッサシステム,マルチプロセッサ制御方法,マルチプロセッサ制御プログラムおよび同プログラムを記録したコンピュータ読取可能な記録媒体
JP2003274010A (ja) * 2002-03-14 2003-09-26 Hitachi Ltd 携帯電話機
US8032891B2 (en) * 2002-05-20 2011-10-04 Texas Instruments Incorporated Energy-aware scheduling of application execution
US20040064829A1 (en) * 2002-09-30 2004-04-01 Kim Pallister Method for identifying processor affinity and improving software execution
JP2004310549A (ja) * 2003-04-08 2004-11-04 Nec Corp マルチプロセッサおよび携帯端末
US20050022173A1 (en) * 2003-05-30 2005-01-27 Codito Technologies Private Limited Method and system for allocation of special purpose computing resources in a multiprocessor system
US7389508B2 (en) * 2003-09-25 2008-06-17 International Business Machines Corporation System and method for grouping processors and assigning shared memory space to a group in heterogeneous computer environment
US20050097248A1 (en) * 2003-10-29 2005-05-05 Kelley Brian H. System and method for establishing a communication between a peripheral device and a wireless device
JP2005148901A (ja) * 2003-11-12 2005-06-09 Hitachi Ltd ジョブスケジューリングシステム
US20050132239A1 (en) * 2003-12-16 2005-06-16 Athas William C. Almost-symmetric multiprocessor that supports high-performance and energy-efficient execution
US7552437B2 (en) * 2004-01-14 2009-06-23 International Business Machines Corporation Maintaining application operations within a suboptimal grid environment
JP4051462B2 (ja) * 2004-01-22 2008-02-27 日本電信電話株式会社 グリッドシステムにおけるデータ配布方法、グリッドシステム、グリッド仲介装置、グリッド仲介プログラム
US7412411B2 (en) * 2004-04-26 2008-08-12 Qualcomm Inc Methods and apparatus for gifting over a data network
WO2006011189A1 (ja) * 2004-07-26 2006-02-02 Mitsubishi Denki Kabushiki Kaisha 並列計算機
CN100474214C (zh) * 2004-08-05 2009-04-01 松下电器产业株式会社 信息处理装置
US20060294401A1 (en) * 2005-06-24 2006-12-28 Dell Products L.P. Power management of multiple processors

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103189853A (zh) * 2010-10-29 2013-07-03 诺基亚公司 用于提供高效情境分类的方法和装置
CN103189853B (zh) * 2010-10-29 2016-06-29 诺基亚技术有限公司 用于提供高效情境分类的方法和装置
CN104603724A (zh) * 2012-08-17 2015-05-06 高通股份有限公司 具有非对称处理内核之间实时角色协商的可调节的触摸屏处理
WO2015089780A1 (zh) * 2013-12-19 2015-06-25 华为技术有限公司 一种应用进程调度方法和装置
CN105009083A (zh) * 2013-12-19 2015-10-28 华为技术有限公司 一种应用进程调度方法和装置
CN105487918A (zh) * 2014-10-08 2016-04-13 展讯通信(上海)有限公司 一种信息独立处理系统
WO2019201340A1 (zh) * 2018-04-20 2019-10-24 Oppo广东移动通信有限公司 处理器核心调度方法、装置、终端及存储介质
US11782756B2 (en) 2018-04-20 2023-10-10 Guangdong Oppo Mobile Telecommunications Corp., Ltd. Method and apparatus for scheduling processor core, and storage medium

Also Published As

Publication number Publication date
EP1989623A2 (en) 2008-11-12
US20070198981A1 (en) 2007-08-23
KR20080098416A (ko) 2008-11-07
WO2007098424A3 (en) 2007-11-29
JP2009527828A (ja) 2009-07-30
WO2007098424A2 (en) 2007-08-30
KR101131852B1 (ko) 2012-03-30

Similar Documents

Publication Publication Date Title
CN101385000A (zh) 用于多处理器应用程序支持的系统及方法
US8904399B2 (en) System and method of executing threads at a processor
US9858115B2 (en) Task scheduling method for dispatching tasks based on computing power of different processor cores in heterogeneous multi-core processor system and related non-transitory computer readable medium
US9477296B2 (en) Apparatus and method for controlling power of electronic device having multi-core
US20130014131A1 (en) Method and device for managing application program
CN105589783A (zh) 应用程序卡顿问题数据获取方法及装置
EP3198429A1 (en) Heterogeneous thread scheduling
US20150121387A1 (en) Task scheduling method for dispatching tasks based on computing power of different processor cores in heterogeneous multi-core system and related non-transitory computer readable medium
CN102855216A (zh) 改进多处理器计算机系统的性能
CN103092645B (zh) 一种基于微内核技术的地理空间信息应用系统及其实现方法
CN102541661B (zh) 实现等待地址同步接口的方法和设备
CN111831411B (zh) 任务处理方法、装置、存储介质及电子设备
CN111052083B (zh) 用于在启动期间管理服务的调度的方法和装置
CN102455932B (zh) 一种任务实例串行执行方法、装置及系统
CN102622274B (zh) 计算机装置及其中断任务分配方法
CN103268262A (zh) 一种多基带访问单用户识别卡的方法以及一种处理器
CN108446141B (zh) 一种Web前端插件及基于Web前端插件进行调度和通信的方法
CN101349975B (zh) 一种在嵌入式操作系统上实现中断底半部机制的方法及装置
CN116302558A (zh) 线程调度方法、装置及电子设备
CN102467410B (zh) 一种通用流程调度引擎的控制方法、装置及终端
EP3646139A1 (en) Target based power management
CN114390104A (zh) 过程取证系统、方法、装置、计算机设备及介质
CN111444001A (zh) 一种云平台任务调度方法及系统
JP5598319B2 (ja) アプリケーションプログラムの動作管理方法、動作管理装置及び動作管理プログラム
CN114461053B (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
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20090311