集中式任务调度的制作方法_4

文档序号:9438884阅读:来源:国知局
满足该任务的执行标准,则后台任务调度器可能未自动运行该任 务。相反,后台任务调度器将任务重要性与可用设备余量进行比较以确定是否运行该任务。 图5为将任务重要性与可用设备余量进行比较的进程500的一个实施例的流程图。在一个 实施例中,进程500由上面图3中的框312处的进程300执行以将任务重要性与可用设备 余量进行比较。在图5中,过程500通过在框502处接收可用设备余量而开始。在一个实 施例中,通过评估如上参考图1所述的设备的一个或多个因数来确定可用设备余量。在框 504处,进程500确定任务重要性。在一个实施例中,进程500通过使用任务重要性曲线诸 如上面图2中所述的任务重要性曲线206来确定任务重要性。在该实施例中,进程500确定 自最初满足任务的标准以来所经过的时间。使用该时间,进程500可使用所经过的时间利 用上面参考图2所述的任务重要性曲线来确定任务重要性。例如并且在一个实施例中,任 务重要性在满足任务标准的初始点相对低。该任务重要性增大直到该任务的宽限期截止。 在该点,任务重要性大幅升高,因为后台任务调度器将更积极地尝试运行该任务。在另一实 施例中,进程500基于自最初满足任务标准以来所经过的时间使用与任务重要性有关的公 式来计算任务重要性。
[0052] 在框506处,进程500确定该任务的任务重要性是否小于(或等于)可用设备余 量。如果任务重要性小于(或等于)可用设备余量,则系统可运行该任务并且在框508处 返回是。如果不是,则系统延期任务的执行,直到稍晚时间并且在框510处返回否。
[0053] 图6为调度和管理任务的后台任务调度器108的一个实施例的框图。在一个实施 例中,后台任务调度器108包括接收任务模块602、调度任务模块604、监测系统模块606、系 统标准模块608、确定可用设备余量模块610、任务重要性模块612、执行任务模块614、延期 任务确定模块616、延期任务模块618、重启任务模块620、任务完成确定模块622、任务完成 模块624、任务再现模块626和任务结束模块628。在一个实施例中,接收任务模块602在 上面的框302如图3中所述来接收任务。调度任务模块604在上面的框304如图3中所述 来调度任务。监测系统模块606在上面的框306如图3中所述针对任务标准来监测系统。 系统标准模块608在上面的框308如图3中所述来确定该任务的标准是否得到满足。确定 可用设备余量模块610在上面的框310如图3中所述来确定可用设备余量。任务重要性模 块612在上面的框312如图3中所述来将任务重要性和系统成本进行比较。执行任务模块 614在上面的框314如图3中所述来运行任务。延期任务确定模块616在上面的框316如图 3中所述来确定是否延期任务。延期任务模块618在上面的框326如图3中所述来延期任 务的执行。重启任务模块620在上面的框328如图3中所述来重启任务的执行。任务完成 确定模块622在上面的框318如图3中所述来确定任务执行是否完成。任务完成模块624 在上面的框320如图3中所述来将任务标记为完成。任务再现模块626在上面的框322如 图3中所述来确定该任务是否为再现任务。任务结束模块628在上面的框324如图3中所 述来将任务的执行标记为结束。
[0054] 图7为将任务重要性与可用设备余量进行比较的任务重要性模块612的一个实施 例的框图。在一个实施例中,任务重要性模块612包括接收可用设备余量模块702、计算任 务重要性模块704、比较重要性和余量模块706和返回结果模块708。在一个实施例中,接 收可用设备余量模块702在框502如图5中所述来接收可用设备余量。计算任务重要性模 块704在框504如图5中所述来确定该任务重要性。比较重要性和余量模块706在框506 如图5中所述来确定任务重要性是否大于任务的系统成本。返回结果模块708如在上面的 图5的框508和510中所述来返回比较的结果。
[0055] 图8示出了可与本发明的一个实施例一起使用的数据处理系统800的一个实例。 例如,系统800可被实现为包括如图1所示的设备100。需注意,虽然图8示出了计算机系 统的各种部件,但它并不旨在表示将这些部件互连的任何特定架构或方式,因此此类细节 与本发明并无密切关系。还应理解,具有较少部件或可能较多部件的网络计算机以及其他 数据处理系统或其他消费电子设备也可用于本发明。
[0056] 如图8所示,数据处理系统形式的计算机系统800包括耦接到一个或多个微处理 器805、ROM(只读存储器)807、易失性RAM809和非易失性存储器811的总线803。微处理 器805可从存储器807, 809, 811检索指令并执行指令以执行上述操作。总线803与这些各 种部件互连在一起,并且还将这些部件805, 807, 809和811互连至显示控制器和显示设备 813,并且互连至外围设备诸如输入/输出(I/O)设备,该输入/输出(I/O)设备可以是鼠 标、键盘、调制解调器、网络接口、打印机和本领域熟知的其他设备。通常,输入/输出设备 815通过输入/输出控制器813耦接到系统。易失性RAM(随机存取存储器)809通常被实 现为动态RAM(DRAM),该DRAM需要连续供电以刷新或维持存储器中的数据。
[0057] 大容量存储装置811通常为磁盘驱动器或磁性光驱或光驱或DVD RAM或闪存存储 器或者即使在系统断电后也保持数据(例如,大量数据)的其他类型的存储器系统。通常, 大容量存储装置811也可以是随机存取存储器,虽然这并非必需。虽然图8显示,大容量存 储装置811是直接耦接到数据处理系统中的其余部件的本地设备,但应当理解,本发明可 利用远离系统的非易失性存储器,诸如网络存储设备,该网络存储设备通过网络接口诸如 调制解调器或以太网接口或无线网络耦接到数据处理系统。总线803可包括通过本领域熟 知的各种桥接器、控制器和/或适配器相互连接的一条或多条总线。
[0058] 图9示出了可与本发明的一个实施例一起使用的另一数据处理系统900的实例。 例如,系统900可被实现为图1所示的设备100。图9所示的数据处理系统900包括处理系 统911,该处理系统911可为一个或多个微处理器,或者可为芯片集成电路上的系统,并且 该系统还包括用于存储由处理系统执行的数据和程序的存储器901。系统900还包括音频 输入/输出子系统905,该音频输入/输出子系统可包括用于例如回放音乐或通过扬声器和 麦克风提供电话功能的麦克风和/或扬声器。
[0059] 显示控制器和显示设备909为用户提供可视用户界面,该数字界面可包括图形用 户界面,该图形用户界面类似于在运行OS X操作系统软件时在麦金塔计算机(Macintosh computer)或者在运行iOS操作系统时在Apple iPhone上所示的图形用户界面等。系统 900还包括一个或多个无线收发器903以与另外数据处理系统诸如图9的系统900进行通 信。无线收发器可为WLAN收发器、红外收发器、蓝牙收发器和/或无线蜂窝电话收发器。 应当理解,未示出的附加部件在某些实施例中也可以是系统900的一部分,并且在某些实 施例中,也可在数据处理系统中使用比图9中所示更少的部件。系统900进一步包括一个 或多个无线端口 917以与另外数据处理系统诸如图8的系统800进行通信。通信端口可为 USB端口、火线端口、蓝牙接口等。
[0060] 数据处理系统900还包括用于允许用户提供对系统的输入的一个或多个输入设 备913。这些输入设备可为小键盘或键盘或触摸面板或多点触摸面板。数据处理系统900 还包括可为用于坞站的连接器的可选的输入/输出设备915。应当理解,如本领域所熟知 的,可使用未示出的一条或多条总线来互连各种部件。图9中示出的数据处理系统可为手 持式计算机或个人数字助手(PDA)、或具有类似PDA功能的蜂窝电话、或包括蜂窝电话的手 持式计算机、或媒体播放器诸如iPod、或组合这些设备的各个方面或功能的设备诸如在一 个设备或嵌入式设备中结合PDA和蜂窝电话的媒体播放器或其他消费电子设备。在其他实 施例中,数据处理系统900可为网络计算机或另外的设备中的嵌入式处理设备、或比图9中 所示具有较少部件或者可能更多部件的其他类型的数据处理系统。
[0061] 本发明的至少某些实施例可以是数字媒体播放器的一部分,例如便携式音乐和/ 或视频媒体播放器,该数字媒体播放器可包括呈现媒体的媒体处理系统、存储媒体的存储 设备,并且可进一步包括与天线系统和媒体处理系统耦接的射频(RF)收发器(例如,用于 蜂窝电话的RF收发器)。在某些实施例中,存储在远程存储设备上的媒体可通过RF收发器 传输到媒体播放器。例如,媒体可以是音乐或其他音频、静态图片或运动图片中的一者或多 者。
[0062] 便携式媒体播放器可包括媒体选择设备,诸如得自Apple Inc. (Cupertino, CA)的 iPod?或iP〇d Nano1'·媒体播放器上的点击轮输入设备、触摸屏输入设备、按钮设备、可移 动指示输入设备或其他输入设备。可使用媒体选择设备来选择存储在存储设备和/或远 程存储设备上的媒体。在至少某些实施例中,便携式媒体播放器可包括显示设备,该显示 设备耦接到媒体处理系统以显示通过输入设备选择的并且通过扬声器或一个或多个耳机 或者在显示设备上、或者在显示设备上和扬声器或耳机两者上呈现的媒体的标题或其他指 示符。便携式媒体播放器的实例在所公开的美国专利号7, 345, 671以及美国公开专利号 2004/0224638中有所描述,这两个专利文件以引用方式并入本文。
[0063] 上述内容的多个部分可利用逻辑电路诸如专用逻辑电路来实现,或利用微控制器 或执行程序代码指令的其他形式的处理核心来实现。从而,可利用程序代码诸如机器可执 行指令
当前第4页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1