当前位置: 首页 > 专利查询>苹果公司专利>正文

机会性的多任务处理制造技术

技术编号:7025854 阅读:222 留言:0更新日期:2012-04-11 18:40
本公开涉及机会性的多任务处理。提供用于个人电子设备的服务,通过这些服务支持后台处理或多任务处理的形式。所公开的服务允许用户应用利用后台处理而对前台进程的用户体验或个人电子设备的功率资源没有显著负面结果。为了实现所公开的多任务处理,许多操作约束中的一个或多个可以被强制实施。这些约束的一个结果可能是,进程将不能在后台进行其如果在前台则可能能够做的工作。所公开的服务的实施对执行中的用户应用可以是基本上透明的,并且在某些情况下,可以无需用户应用的明确协作而执行。

【技术实现步骤摘要】
机会性的多任务处理当Apple的iPhone 4的样机在2010年3月25日从Apple的一个工程师处被窃取时,本申请中要揭示和主张的专利技术被提前且未经Apple授权地向公众公开了。在该明显盗窃之前,尚未提交本申请所基于的美国优先权申请。相关申请的交叉引用这是基于2010年4月7日提交的名为“Opportunistic Multitasking”、序列号为 61/321,616的美国临时申请的国际申请,在此通过引用结合该美国临时申请的全部内容。
技术介绍
本公开一般涉及计算机科学领域。更具体地,本公开涉及一种用于改进个人电子设备中的用户体验和功率管理的技术。功率限制的手持设备(例如移动电话、个人娱乐设备和电子板(pad)计算机)相对于更大型的固定系统(例如台式机、工作站和笔记本计算机)是资源有限的。在这样的系统中,可用的计算能力确实不能支持大量并发进程/线程(process/thread)的执行而不显著地劣化用户体验和消耗设备有限的功率资源。按照这种认知,这些类型的设备的系统设计者传统上不支持用户应用级别的多任务处理。虽然这种方式具有将设备的有限功率资源消耗降到最低的好处,但它也限制了(通过用户应用)向用户提供交互式环境的能力。
技术实现思路
提供用于个人电子设备的服务,通过这些服务支持后台处理或多任务处理的形式。所公开的服务允许用户应用利用后台处理而对前台进程的用户体验或个人电子设备的功率资源没有显著负面结果。所公开的服务的实施对执行中的用户应用可以是基本上透明的,并且在某些情况下,可以无需用户应用的明确协作而执行。为了实现所公开的多任务处理,许多操作约束可以被强制实施。这些约束的一个结果可能是,进程将不能在后台进行其如果在前台则可能能够做的工作。在一种服务中,前台用户应用在其从前台状态迁出的时候,被转换成非执行状态。 在另一种服务中,后台进程在其被转换为非执行状态之前,被赋予最大的时间量来完成任务。在另一种服务中,音频应用(例如生成或记录音频信号的用户应用)被允许在后台执行,直到和除非其被用户暂停。在另一种服务中,针对用户应用被实例化(instantiate)的通信套接字(socket)即使在实例化它们的用户应用处于非执行状态时,也可以维持。能够利用这种服务的一种例示类型的应用是互联网协议电话(VOIP)用户应用。在一些其他的实施例中,用户应用在处于非执行状态时,被允许接收通知(例如位置事件)。每种被公开的服务依赖或使用一个或多个在实施时能干扰或阻止全时多任务处理操作的约束。也就是说,所公开的服务仅仅在不会明显干扰前台进程或过度使用个人电子设备的功率的时候, 才允许多任务处理。附图说明图1示出根据一个实施例的说明性线程调度方案。图2以流程图形式示出根据一个实施例的任务完成服务操作。图3以流程图形式示出根据一个实施例的音频服务操作。图4以流程图形式示出根据一个实施例的网络服务操作。图5以框图形式示出根据一个实施例的个人电子设备。图6以框图形式示出根据另一个实施例的个人电子设备。图7以框图形式示出根据一个实施例的无线通信和位置处理单元。图8以框图形式示出根据一个实施例的个人电子设备。具体实施例方式提供用于个人电子设备的服务,通过这些服务支持受限形式的后台处理或多任务处理。利用一种或多种所公开的服务结合所公开的操作约束,允许用户应用在后台执行,以便向用户提供对设备功率资源影响很小的鲁棒的交互式环境。在某些实施例中,后台处理可被限制为完成某个具体任务、规定的时间量(例如5-30分钟)、或特定的任务类型(例如音频操作)。在其他实施例中,用户应用可以在通知操作系统其可能会在一个或多个指定事件发生时复活(reanimate)之后,停止操作。一旦复活,该应用可以在后台执行附加的操作。这些公开的服务的实施对执行中的用户应用可以是基本上透明的,并且在某些情况下, 可以无需用户应用的明确协作而执行。如此处所用,短语“个人电子设备”是便携式数字设备,诸如移动电话、个人数字助理、手持娱乐设备、电子板(pad)或平板(tablet)计算机系统或机顶盒(例如Apple χγ .或有线转换盒)。(APPLE TV是苹果公司的注册商标。)如此处所用,术语“服务”指的是执行某种用于调用进程的任务的应用程序、函数或程序代码模块,其没有用户接口,并且通过诸如应用编程接口(API)等调用接口以程序方式被访问。在接下来的描述中,出于解释的目的,许多特定细节被阐述以便提供对本专利技术的详尽理解。然而,对本领域技术人员而言显而易见的是,本专利技术可以无需这些特定细节而实现。在其他情况下,为了避免模糊本专利技术,结构和设备以框图形式表示。对不带下标的数字的引用被理解为引用对应于该被引用数字的所有带下标的实例。此外,本公开中使用的语言主要是为了可读性和指导的目的而被原理性选择的,并且可能未被选择为描绘或限制创造性主题,有必要借助权利要求来确定这样的创造性主题。说明书中对“一个实施例”或“实施例”的提及意味着,结合实施例描述的特定属性、结构或特征被包括在专利技术的至少一个实施例中,并且对“一个实施例”或“实施例”的多次提及不应当被理解为一定都指同一个实施例。将理解的是,在任何实际实施方式的开发中,必须使用大量的编程和元件决策来完成开发者的特定目的(例如顺应与系统和商业相关的约束),并且这些目的从一种实施方式到另一实施方式将是不同的。同样将理解,这种开发工作可能是复杂和耗时的,但是对具有本公开优点的个人计算设备开发领域的普通技术人员而言,不过是一个常规工作。为了实现后台处理或多任务处理,而不给前台进程的用户体验或个人电子设备的功率资源带来显著的负面结果,可能会强制实施许多操作约束。这些约束的一个结果可能是,进程将不能在后台进行其如果在前台则可能能够做的工作。如此处所用,短语“前台进程”表示当前可以访问系统资源(例如平台的中央处理单元和图形处理单元)并且向用户呈现用户界面(UI)或图形用户界面(GUI)的进程。(相应地,“前台”是前台进程执行时所处的状态。)相对地,“后台进程”是可被调度为访问系统资源但是不把UI/GUI当即呈现给用户的进程。(相应地,“后台”是后台进程执行时所处的状态。)如此处所用,术语“进程”表示用户应用。而用户应用是能够呈现UI/GUI的可执行的代码模块。操作约束接下来的操作约束的说明性列表可以被强制实行,以限制后台进程可能会对前台进程产生的有害影响。1处理器调度(Processor Scheduling) 0以后台进程不干扰前台进程的方式,向前台和后台进程分配不同的处理器调度“优先级”。本领域的普通技术人员会认识到,在像 UNIX 和Mach这样的操作环境中,不是调度进程,而是调度线程。(UNIX是美国电话电报公司的注册商标)。进一步可以理解的是,线程是程序、应用或进程的一部分,这部分可以与该程序、应用或进程的其他部分独立地和并行地运行。参照图1,在一个实施例中,后台线程可以从与分配给前台线程的那些优先级别部分重叠的优先级范围(band)中,被指定一个优先级。该重叠的优先级范围增加了后台进程 /线程取得进展(即,执行)的可能性,即便此时有前台进程/线程正在运行。在该实施例中,为了提高线程的响应度,对使用它们的整个时间片(quantum)而未阻断本文档来自技高网...

【技术保护点】
1.一种多任务处理方法,包括:识别以前台状态执行的第一用户应用;接收指示第二用户应用将被置于前台状态的用户输入;只有当第一用户应用已经将自身识别为能够以后台状态执行的用户应用时,才响应于所接收的用户输入将第一用户应用置于后台状态;和将第二用户应用置于前台状态。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:E·阿尔博特L·巴拉德G·R·查普曼N·G·克兰小T·B·达菲S·福斯塔G·J·弗里德曼D·W·古德温J·亚罗西D·利津格C·玛塞林诺H·G·马森C·玛斯普特D·梅斯泽维斯基G·诺威克C·罗赛特R·施赖尔小J·索科尔D·索里索C·斯苏瓦纳努科恩M·范米利甘M·G·沃特森
申请(专利权)人:苹果公司
类型:发明
国别省市:US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1