通过几个应用程序、相应的计算机程序和内存件来管理处理器的使用的方法和装置的制作方法

文档序号:6476875阅读:167来源:国知局

专利名称::通过几个应用程序、相应的计算机程序和内存件来管理处理器的使用的方法和装置的制作方法
技术领域
:本发明领域涉及的是包括单一处理器(也称为单处理器计算机)和允许几个应用程序(也称为程序)被这种处理器执行的操作系统的计算机。对于计算机,其指的是允许根据一系列的指令或程序来处理信息的任何机器,其尤其包括诸如PDA(个人数码助手)、无线电通讯装置、无线电通讯电路或独立电子设备(空间探针,机器人,车辆计算机,等等)的紧凑型机器。各应用程序包括一个或多个进程,并允许执行一个或几个任务。实际上,各进程包括需要用来执行该任务的一系列基本指令(称为线程)。在其中应用程序允许执行几个任务的情况下,各任务可以联结到该应用程序中的优先级水平上。更精确来说,本发明涉及通过操作系统来管理由至少两个应用程序所使用的单一处理器的时间的技术。在以下描述中,使用术语“处理器时间”来指处理器所使用的时间。本发明尤其但不专门地应用于该情况,即其中,操作系统是实时操作系统(RTOS),也就是说在其中必须实时地执行至少一个应用程序。现有技术在单一处理器计算机上平行地执行几个进程(以及因此的几个任务)是普遍的,然后该操作系统被称为多任务。实际上,从使用者的角度而言,操作系统(更精确来说是操作系统核心程序机)的一个作用就是允许执行几个进程和最佳地使用处理器。通常来说,为了提供同时处理几个进程的错觉,程序机使用上下文和安排转换观念。实时操作系统的两种类型是可以区分的其使用优先级安排的那些和其使用时间分配安排或时间分段安排的那些。在其中实时操作系统使用优先级安排的情况下,各任务被分配有优先级,并可以处于以下五个状态中的一个状态下休眠的(无预定的),可执行的(准备执行但当时不使用处理器),活跃的(目前通过处理器正在执行其指令),阻塞的(暂时中止其执行,直到其收到信号或资源的可用性),以及中断的(其执行由使用者编制的中断例行程序)。程序机总将处理器分配到非休眠的或阻塞的且其具有最高优先级的任务上。如果具有相同优先级的几个任务变成活跃的是可能的,那么可以设想几个策略交替执行限制序列的所有这些任务的指令(如各任务的所谓的时间分段具有连续的时间分段),或者处理器任意地被分配有这些任务中的一个任务,或者通过禁止相同的优先级被分配到两个独特的任务上来避免这种情况。当任务T2比从阻塞状态积极转变为可执行状态的任务Tl具有更高的优先级时,有可以使用的两个机理--任务T2保持了暂时中止状态(可执行状态)直到Tl完成,在这种情况下,程序机不是优先获得的,缺点是任务的响应时间受具有更低优先级的任务的行为所影响;-或者,操作系统将任务Tl切换到可执行状态,并将处理器分配到任务T2上,在这种情况下,程序机是优先获得的。在其中实时操作系统使用时间分段来安排任务的情况下,使用总循环(Round-Robin)类型的调度算法其以相同的比例将时间分段分配到各进程上,而不将任何优先级分配到该进程上。不幸地,从以上所提出的现有技术中的两个任务安排技术(优先级或时间分段)都没有通过几个应用程序向管理单一处理器的时间使用的问题提供最优的解决方案。对于两种这些技术来说是普遍的一个缺点就是它们不允许有所给出的应用程序可以使用处理器来精确限定的时间。任务优先级安排技术具有起因于其以任务水平而不是以应用程序水平来进行管理的事实的其它的缺点。-第一应用程序的任务可以总被停止(其然后切换到可执行状态),因为具有第二应用程序的更高的优先级的任务可以转变成可执行状态,因此,这第一应用程序不具有最少的保证的处理器时间。调和所有应用程序的任务的优先级显得困难,尤其是因为在相同的处理器上执行的应用程序来自于不同的供应者是普遍的;-如果具有最高优先级的任务(包括所有的应用程序)导致了系统崩溃,那么所有的应用程序(不仅仅指导致该崩溃的任务所属于的那个)就被阻塞,且不可以使用该处理器。当前建议来解决这一问题的解决方案包括提供监视机构,该监视机构设计为确保应用程序在处理过程中不在特定的步骤中阻塞。如果限定的动作不在所给定的时间内执行,那么这种机构是设计来重新启动该系统的保护。时间分段任务安排技术还具有起因于其以任务水平而不以应用程序水平来进行管理的事实的缺点。每个任务都保证有最少的处理器时间是可能的,但对于给定的应用程序,要保证有最小的处理器时间是不可能的。实际上,可用于各应用程序的处理器时间依赖于由处理器执行的全部数量的应用程序(此外,所有的应用程序不具有相同数量的任务)。然而,某些应用程序比其它的应用程序还需要更多的处理器时间,尤其需要最少的处理器时间(例如万一有事故时的紧急呼叫应用程序的情况)。时间分段任务安排技术的另外一个缺点就是,其没有最佳地使用处理器时间。实际上,其是不使用已经分配到其上的整个时间分段的任务,这种时间分段的不使用部分不能被分配到另外的任务上,因此其被丢失。本发明的目的在至少一个实施例中,本发明尤其具有克服现有技术的这些不同的缺点的目的。更精确来说,在至少一个实施例中,本发明的一个目的是为了提供由操作系统所使用且通过至少两个应用程序用于管理单一处理器的使用时间的技术,其中,即使如果一个应用程序被阻塞,这种技术还允许确保最少处理器时间用于各应用程序。在至少一个实施例中,本发明的另一个目的是提供这种允许优化使用处理器时间的技术。在至少一个实施例中,本发明的另一个目的是提供这种使用简单且不昂贵的技术。在至少一个实施例中,本发明的另一个目的是提供这种对于执行时的应用程序是未察觉的技术。
发明内容在本发明的一个具体的实施例中,提出一种通过操作系统以及通过至少两个应用程序用于管理单一处理器的使用时间的方法。所述使用时间被称为处理器时间,所述方法包括以下步骤—将所述处理器的分段联结到各应用程序上,所述处理器时间分段可以是零;一将两个以下的类别中的一个联结到各应用程序上*第一类别,其如此联结到所述应用程序上的处理器时间分段被保留到所述应用程序上,即使所述的应用程序没有整个地使用它,所述应用程序不能使用比联结到其上的更多的处理器时间;*第二类别,其如此所述应用程序在联结到其上的处理器时间分段期间具有用于处理器的优先级,如果联结到所述应用程序上的处理器时间分段部分没有被所述应用程序所使用,那么所述不使用的部分可以被所述第二类别的另外的应用程序所使用,通过使用联结到所述第二类别的另外的应用程序上的处理器时间分段的不使用部分或没有联结到任何应用程序上的时间分段的一部分,所述应用程序可以使用比联结到其上的更多的处理器时间分段;以及一以联结到该应用程序上的处理器时间分段和类别的功能管理所述处理器时间。因此,这种实施例的一般原理由以应用程序自己的水平(其中,各应用程序可以包括一个或几个进程,其中,各进程执行一个任务)而不是以任务水平来管理处理器时间组成。不管联结到其上的类别,各应用程序都具有最少保证处理器时间,因为处理器时间分段(可以为零)联结到其上。此外,优化处理器时间的使用,因为在第二类别的应用程序之间,没有被某些应用程序所使用的处理器时间分段的部分被其它应用程序再次使用了。还应该注意到,对于所执行的应用程序,这种技术是未察觉的。管理处理器的使用的是操作系统,应用程序不具有任何公布使用该处理器的请求。优选地,所述处理器时间被分解成周期,各周期包括时间间隔的数量N,以及联结到各应用程序上的处理器时间分段包括在各周期内的时间间隔的数量Ki,其中,KKi<N,i是关于该应用程序的指数。各时间间隔的持续时间限定了在应用程序之间的上下文的切换的间隔尺寸,短的持续时间的风险减慢了潜在地具有在应用程序之间的大数量的上下文切换的系统的操作,长的持续时间不允许在应用程序之间的处理器时间的精细分布。优选地,所述方法包括以下步骤如果在运行周期期间,因为其在所述的Ki时间间隔的X期间不需要处理器但最后需要使用大于保留用于所述第二类别的应用程序的时间间隔的数量Y的一些时间间隔的事实(其中,Y=Ki-X),第二类别的应用程序不使用其Ki时间间隔的整个持续时间,那么在至少一个以下的周期期间,时间间隔Ki的数量就动态地被修改。以这种方式,提出了第一补偿机构,其允许在几个周期中的已给出的应用程序使用处理器,用于等同于或接近于实际联结到这个应用程序上的时间间隔的数量的一些时间间隔。根据一个最佳的特点,所述方法包括以下步骤如果在运行周期期间,因为在所述Ki时间间隔的X期间不需要处理器但最后需要使用大于保留用于所述第二类别应用程序的时间间隔的数量Y的一些时间间隔的事实(其中,Y=Ki-X),第二类别的应用程序不使用其Ki时间间隔的整个持续时间,那么至少一个以下的时间周期的持续时间就动态地被修改。因此,提出了第二补偿机构,其允许在几个周期内的给出的应用程序使用处理器,用于等同于或接近于实际联结到这个应用程序上的时间间隔的数量的一些时间间隔。优选地,所述方法包括以下步骤,用于至少一个所述的应用程序用于联结到所述应用程序上的处理器时间分段的启动瞬时的联结,或者用于在联结到所述应用程序上的处理器时间分段内的各时间间隔的启动瞬时的联结。因此,确保应用程序在某些精确的时间内进行控制是可能的,当某些应用程序需要与其它应用程序同时进行时,这尤其是非常重要的。优选地,所述方法包括以下步骤,用于至少一个第二类别的应用程序与允许做出决定的优先级水平的所述应用程序的联结,关于其,在其中几个第二类别的应用程序是合格的而使用该处理器的情况下,第二类别的应用程序可以使用处理器。因此,事先做出决定,关于其,第二类别的应用程序具有可用的处理器时间的使用的优先级,因为第二类别的应用程序不使用联结到其上的所有处理器时间分段的事实。根据一个变型,使用总循环(Round-Robin)类型的算法来确定在其中第二类别的应用程序是合格的而使用处理器的情况下哪个第二类别的应用程序可以使用处理器。换句话说,因为第二类别的应用程序没有使用所有的联结到其上的处理器时间分段的事实,所以可用的处理器时间在第二类别的应用程序之间相等地被分配。优选地,所述方法包括证实所有应用程序的处理器时间分段的总量少于或等同于应用程序的处理器时间的100%的步骤,该步骤限定为所述处理器时间和由所述操作系统所使用的一部分处理器时间之间的差别。以这种方式,其也就是说,如果各应用程序使用联结到其上的所有的处理器时间分段(因为在应用程序使用一些处理器时间的情况下或者如果在循环程序的情况下有缺陷其实际上需要其的事实。),那么对系统正确地被配置以便在最差的情况下运行进行核实。在应用程序的一个具体的实施例中,所述操作系统是实时的操作系统。本发明特别适用于满足实时限制,联结到必须实时地执行的各应用程序上的时间分段仅仅需要适当地选择。优选地,称为第一类型的中断的至少一个中断没有联结到任何所述应用程序上,且不考虑所述处理器时间的管理。各第一类型的中断因此被视为是系统噪声。优选地,称为第二类型的中断的至少一个中断没有联结到任何所述应用程序上,且在以下的方式中考虑所述处理器时间的管理为所有第二类型的中断保留一些时间,以使所有应用程序的处理器时间分段的总量少于或等同于少于被保留的某些时间的所述处理器时间的100%。因此,考虑在处理器时间的管理中的第二类型的中断,但单独考虑应用程序。根据一个最佳的特点,称为第三类型的中断的至少一个中断联结到至少一个所述应用程序上,且在以下方式中考虑所述处理器时间的管理一在联结到第三类型的中断上的应用程序的处理器时间分段中考虑需要用于第三类型的中断的一些处理器时间;以及-通过在至少一个其它的应用程序上的第三类型的中断而优先获得的处理器时间被退回到至少一个其它的应用程序上。因此,在处理器时间的管理中考虑第三类型的中断,而不是但关于联结到其上的应用程序。在本发明的一个具体的实施例中,所述处理器包括于无线通信电路,以及所述应用程序包括用于管理无线通信栈和至少一个用户应用程序的应用程序。本发明尤其地但不专门地应用在其中无线通信电路是设计来整合成无线通信装置的电子无线通信模块的情况下。通过无线通信装置(也称为无线通信终端或无线终端),其指的是可以通过使用无线通信系统来交换信号的任何装置或器件,其例如安装在机器或车辆上(M2M-机器对机器-以及汽车市场)。例如,电子无线通信模块是通过WAVEC0M(提交这一专利申请的一方)的WISM0(注册为商标)家族的模块。WAVEC0M实际上已经提交了方法一些年了,该方法克服了一定数量的这些缺点,其由将所有单一模块(称为电子无线通信模块)或数字无线通信装置的至少大部分功能一起分组组成。这种模块在单一壳体的形式下是优选地被屏蔽的,其中,该装置的制造商可以直接地安装,而不必须考虑大量的组件。通过一组在基底上的几个组件形成了这种模块,以使其可以安装为单一组件。其包括需要用于通过使用无线电频率而运行的无线通信装置的基本组件(尤其是处理器、内存和软件程序)。这些因此不再是任何复杂的设计步骤或设计的确认。保留该模块所需要的空间是足够的,这种模块因此可以简单地、快速地和最佳地将所有组件合并到无线终端中(移动电话,调制解调器或使用无线标准的任何其它的装置)。在本发明的应用程序的一个变型中,无线通信电路不是以上意义上的无线通信模块,而是印制电路,该印制电路是无线通信装置的一部分,且一套电子组件被安装在其上,其目的是为了提供从接收RF信号到产生可闻信号(在无线电话的情况下)的所需要的各种无线通信功能,反之亦然。在另外的实施例中,本发明涉及可以从通信网路中下载和/或存储到支持件中的计算机程序产品,该支持件可以由计算机读取或由处理器执行。其中,当所述程序在计算机上执行时,这种计算机程序产品包括用于执行以上所提的方法的程序代码指令。在另外的实施例中,本发明涉及可以全部地或部分地移动的内存件,该器件可以由计算机读取,并存储可以由所述计算机执行的一套指令,以便实施以上所提出的方法。在另外的实施例中,本发明涉及包括通过至少两个应用程序而允许单一处理器的使用的时间来被管理的操作系统的装置,所述使用时间称为处理器时间。这种装置包括一用于将所述处理器时间分段联结到各应用程序上的器件,所述处理器时间分段可以是零;一用于将以下两个类别中的一个类别联结到各应用程序上的器件*第一类别,其如此联结到所述应用程序上的处理器时间分段被保留到所述应用程序上,即使所述应用程序不使用其全部,所述应用程序不可以以使用比联结到其上的更多的处理器时间;*第二类别,其如此所述应用程序在联结到其上的处理器时间期间具有用于的处理器的优先级,如果联结到所述应用程序上的处理器时间分段没有被所述应用程序所使用,那么所述不使用的部分可以由所述的第二类别的另外的应用程序所使用。通过使用联结到所述第二类别的另外的应用程序上的处理器时间分段的不使用部分或没有联结到任何应用程序上的时间分段的一部分,所述应用程序可以使用更多的联结到其上的处理器时间分段;以及一用于以联结到该应用程序上的处理器时间分段和类别的功能管理所述处理器时间器件。更一般来说,该装置包括用于实施如以上所描述的处理器时间管理办法的器件(在任何其实施例中)。通过阅读以下的描述、所提供的实例和非限制性的描述以及附图(如果所有本发明的实施例不限制于以下所描述的实施例的特点和优点),本发明的实施例的其它特点和优点将更清楚,其中-图1显示了根据本发明的方法的具体实施例的组织图;—图2示例了根据本发明的一个具体实施例在联结到CTR类别上的三个应用程序之间的处理器时间的分配的第一实例;-图3示例了根据本发明的一个具体实施例在三个应用程序(其中一个联结到CTR类别上,另外两个联结到VTR类别上)之间的处理器时间的分配的第二实例;-图4示例了联结到三个应用程序上的任务和中断管理者的图表的实例,以及在这三个应用程序之间的处理器时间的分配;以及一图5示例了根据本发明的一个具体实施例在联结到VTR类别上的三个应用程序之间的处理器时间的分配的第三实例。发明详述现在参看图1,根据本发明的方法的具体实施例将显示通过操作系统且通过至少两个应用程序来管理单一处理器(以下称为处理器时间)的使用时间。在步骤1中,各应用程序联结到处理器时间分段(或CPU时间分段)上。为了获得这样,例如使用周期定时器,其将处理器时间划分为周期,其中各周期包括时间间隔的数量N(以下称为应用程序安排刻度(AST))。联结到各应用程序上的处理器时间分段包括在各周期中的时间间隔的数量Ki,其中1<&<N,i是关于应用程序的指数)。各时间分段因此由在周期结构中的一定数量的时间间隔的重复出现组成,该周期结构包括确定数量的时间间隔,例如,如果时间间隔具有20ms的持续时间以及如果周期包括5个时间间隔,那么应用程序可以联结到包括每100ms的2X20ms时间分段上。在步骤2中,各应用程序联结到两个以下的应用程序类别中的一个上-CTR(固定时间率)类别,其如此联结到CTR应用程序上的处理器时间分段被保留到这一应用程序上,即使其不整个地使用它(其也就是说即使其在这一时间分段期间不具有软件活动)。CTR应用程序不可以使用比联结到其上的更多的处理器时间分段,即使不使用该处理器;-VTR(可变时间率),其如此CTR应用程序具有优先级,以便在联结到其上的时间分段期间使用处理器。如果联结到VTR应用程序上的部分处理器时间分段没有被其所使用,那么其可以由另外的VTR应用程序所使用。通过使用联结到另外的VTR应用程序上的处理器时间分段的不使用部分或联结到非应用程序上的时间分段部分,VTR应用程序可以使用比联结到其上的更多的处理器时间分段。在步骤3中,执行启动瞬时可以联结到至少一个应用程序上。例如,这个启动瞬时由分配到这个应用程序上的第一时间间隔的数量(排列在如前所述的周期中)所限定。如果使用以上的实例(时间间隔为20ms以及周期为5个时间间隔),那么例如,包括每100ms的2X20ms的时间分段开始于在各周期并具有5个时间间隔中的第一时间间隔。在步骤4中,各VTR应用程序(或只是它们中的一些)联结到优先级水平上。使用这种优先级来确定在其中几个VTR应用程序是合格的来使用处理器(当后者空闲时)的情况下哪个VTR应用程序可以使用处理器。在这些步骤1到步骤4的最后,通过操作系统,例如通过以下面表格的形式(应用程序的数量记为M),联结到应用程序上的所有信息可以存储在内存中。这个表格以下称为ART(应用程序率表格)。应用程序类别AST数量优先级(如果是VTR应用程序)开始日期(AST数量)应用程序1!°1PiX...............应用程序n°MCMKmPMY通过这种方式,例如,应用程序n°1在处理器时间分段上通过Pi的优先级(如果其是VTR应用程序)联结到类别Q(CTR或VTR)上,处理器时间分段包括每周期的&时间间隔并在各周期的第X个时间间隔上开始。在步骤5中,操作系统证实所有应用程序的处理器时间分段的总量少于或等同于应用程序处理器的时间的100%,该操作系统限定为总的处理器时间和由操作系统所使用的这一总的处理器时间的一部分之间的差别。在以上所描述的实例中,这指的是证实联结到各应用程序上的时间间隔的总的累计数量不大于在一个周期中的时间间隔的数量。在步骤6中,操作系统以联结到应用程序上的所有信息的功能来管理处理器时间(其也就是说以以上所描述的ART的内容的功能)。图2示例了处理器时间分配的第一实例,其具有以下的ART10<table>tableseeoriginaldocumentpage11</column></row><table>据推测,各时间间隔(AST)具有20ms的持续时间(DAST),其周期包括5个时间间隔,其也就是说具有100ms的(D。y。le)的持续时间。从图2中可知,保留第一时间间隔,用于应用程序A1,其整个地使用它。保留第二和第三时间间隔,用于应用程序A2,其没有整体使用它们。然而,没有通过应用程序A2来使用的部分(标注20)可以不由另外的应用程序使用,因为应用程序A2是CTR类别的应用程序。保留第四时间间隔,用于应用程序A3,其整个地使用它。因为第五时间间隔(标注21)不能由应用程序A1、A2和A3(因为它们都是CTR类别)中的任何一个所使用,所以处理器可以切换到低的消费模式上。在修改一套分配处理器时间的应用程序的情况下,第五时间间隔是可用的。图3示例了处理器时间分配的第二实例,其具有以下的ART<table>tableseeoriginaldocumentpage11</column></row><table>再次推测,各时间间隔(AST)具有20ms的持续时间(DAST),其周期包括5个时间间隔,其就是说其具有100ms的(D。y。le)的持续时间。从图3中可知,保留第一时间间隔,用于应用程序A1,其整个地使用它。保留第二和第三时间间隔,用于应用程序A2,其没有整体地使用它们。从当前参数T1中,应用程序A2再也不需要处理器,假定这涉及VTR类别的应用程序,那么其可以将访问移交到另外的VTR类别的应用程序上在这种情况下的应用程序A3。在当前参数T2上,定位在第三时间间隔的末端之前的外部事件介入,用于退回作为第二和第三时间间隔的访问且保留用于它的应用程序A2。定位在第三时间间隔的末端之前的当前参数T3再次不再需要处理器,因此将访问移交到应用程序A3上。第四和第五时间间隔没有被保留到任何应用程序上,但可以由VTR类别的应用程序所使用,其也就是说应用程序A2和A3(在其中它们都希望同时使用处理器的情况下,应用程序A2相对于应用程序A3具有优先级)。在图3所示例出的实例中,不使用第四和第五时间间隔的部分(标注30)。图4显示了联结到三个应用程序上的任务和中断管理者的图表的实例,以及在这三个应用程序之间的处理器时间的分配。各应用程序(分别是Al、A2和A3)联结到—任务(分别是40”402和403)的图表包括*IDLE(空闲的)任务(分别是任务A1-空闲的,任务A2-空闲的,任务A3-空闲的),其允许涉及被检测的应用程序的不活跃,且使在应用程序之间的切换可能;*经典的任务(例如用于应用程序A1的任务A1-1、A1_2和A1-3);以及-中断程序机(分别是41”412和413)或ISR(中断服务程序)。现在描述本发明的具体实施例,各应用程序包括一套实时的任务,其中,这些任务各分配有优先级水平(例如在0和100之间)。实时操作系统配置时间间隔(例如20ms)的持续时间。ART存储联结到各应用程序上的信息这一应用程序(CTR或VTR)的类别,分配到这一应用程序上的时间间隔的数量,这一应用程序的优先级水平(只用于VTR应用程序)(在这一相同的应用程序内不与任务的优先级水平混淆),以及,可能地,在该周期中的这一应用程序的启动瞬时(其也就是说在该周期中分配到这一应用程序上的第一时间间隔的排列)当启动时,操作系统一通过其相应的任务(参看图4)创建用于各应用程序的任务图表;一开始第一时间间隔;一通过装载相应的任务图表来启动ART的第一应用程序;-以它们的状态和优先级的功能来安排任务。在各时间间隔的末端,实时操作系统证实分配到现行应用程序运行上的持续时间已经到达。在积极证实的情况下,其然后启动下一个应用程序(通过装载相应的任务图表)。当应用程序的运行进入到其IDLE任务中时一如果应用程序是属于CTR类别,那么没有应用程序的切换发生(时间分段不是优先获得的);—如果应用程序是属于VTR类别,那么操作系统*存储这一应用程序已经使用的其处理器时间分段的比例;*证实另外的VTR应用程序在等待处理器,如果几个VTR应用程序是合格的,那么选择具有最高优先级的那个);*如果发现应用程序,那么就启动它(通过装载任务的相应的图表)。12例如实施监视类型的机构以便检测在确定数量的周期后应用程序是否没有返回到空闲状态,实际上,这种情况可以是正常的(例如如果其是集中地使用处理器的应用程序)或不正常的(应用程序进入到无限循环中)。当检测这种情况时,实施至少一个以下的动作通知应用程序(提示),其在切换到IDLE任务之前就花费了更多的预确定数量的时间,重新初始化应用程序或重新初始化整个系统。如果在一个其时间间隔(其也就是说联结到其上的一个时间间隔)期间VTR类别的第一应用程序不需要处理器,那么处理器可以由另外的VTR类别的应用程序使用。如果在其时间间隔的末端之前第一应用程序最后需要处理器,那么其退回访问且可以使用处理器。然而,在周期运行的末端,第一应用程序在这一周期期间不可以具有被保留用于其的处理器时间。例如实施至少一个以下补偿机构一对于至少一个以下周期,时间间隔的数量的动态修改联结到第一应用程序上(例如以+10%或-10%的步骤);一至少一个以下的周期的持续时间进行动态修改(例如以+10%或-10%的步骤);现在关于图5,显示了处理器时间分配的第三实例,其具有以下的ART<table>tableseeoriginaldocumentpage13</column></row><table>再次推测,各时间间隔(AST)具有20ms的持续时间(DAST),且周期包括5个时间间隔,其也就是说具有100ms的(D。y。J的持续时间。还推测,将每100ms的20ms的时间间隔分配到应用程序上等同于将使用能力提供给20ms的处理器。应用程序A1是紧急呼叫应用程序,例如“eCall(紧急呼叫)”应用程序。在出现事故的情况下,执行“eCall(紧急呼叫)”应用程序且安装在车辆内部的无线通信装置将紧急呼叫发送到最适合的紧急呼叫中心,并同时将一定数量的关于车辆的数据项目(特别是其精确的位置)发送出去。紧急呼叫可以通过在车辆中的传感器由车辆的占有者手动触发或出现严重事故的情况下自动触发。“eCall(紧急呼叫),,应用程序的主要系统规定参数是一在正常模式中使用5MIPS,在紧急呼叫期间使用15MIPS;一在是相同的无线通信装置(其必须在所有情况下都可以执行)的一部分的其它应用程序中防止错误;以及—在少于1秒中内对事故做出反应。这些系统规定参数由每IOOms的20ms的时间间隔的分配所关注,其等同于20MIPS。应用程序A2是GPS(导航)应用程序,其例如通过蓝牙无线连接信息来发送,该蓝牙无线连接信息遵守NMEA-0183(国家海洋电子协会)应用程序,其主要系统规定参数是-在少于一秒钟(在IOOms期间)下执行;以及—使用至少IMIPS。这些系统规定参数由每IOOms的20ms的时间间隔的分配所遵守,其等同于20MIPS。此外,分配的时间间隔是第一周期的事实确保了NMEA信息可以每一秒都精确发送(其也就是说在每10个循环中)。应用程序A3是免提(KML)应用程序,其例如可以实施-语言自动识别(ASR)和语音合成(文本转语音,TTS);以及—建立GSM呼叫,其使用2MIPS。为了良好的与人互动,应用程序A3的主要系统规定参数是指ASR必须在少于2秒内翻译一个句子,为了这么做,当其执行时,必须处理至少60MIPS。这一系统规定参数由每IOOms(其等同于60MIPS)的三个时间间隔(即,总共60ms)的分配和最大优先级水平所遵守。以这种方式,语音识别(ASR)功能和语音合成(TTS)可以使用没有由其它应用程序所使用的所有处理器时间。在名义模式下,紧急呼叫(eCall)应用程序在紧急情况下使用15MIPS,以及导航(Nav)应用程序使用1MIPS。因此,有84MIPS保留用于ASR和TTS功能。在最差的情况下,紧急呼叫(eCall)应用程序和导航(Nav)应用程序进入到无限循环中,且各阻塞20MIPS。然而,仍然有60MIPS保留用于AST和TTS功能。此外,可以设想各种策略来管理中断,这些各种策略可以同时应用到不同的中断上。产生提示,其中,中断是称为ISR(中断服务程序)的特殊程序的呼叫。策略n°1第一类型的中断没有联结到任何程序上(因为其服务于几个应用程序,或者因为其使用非常少数量的时间,或者其甚至用于任何其它选择的设计),且不考虑处理器时间管理,其被视为系统噪音。策略n°2第二类型的中断没有联结到任何应用程序上(因为其服务于几个应用程序,或者因为其使用非常少数量的时间,或者其甚至用于任何其它选择的设计),但其不考虑处理器时间的管理。保留一些时间,用于这一第二类型的所有中断,以使所有应用程序的处理器时间分段的总量少于或等同于少于所保留的时间数量的处理器时间的100%。据推测,所保留的这些时间在所有应用程序之间相等地重新分布,因此,所有的应用程序统计上地分配有它们各自的时间分段。策略n°3第三类型的中断联结到一个或几个应用程序上,且以以下方式来考虑处理器时间的管理一需要用于第三类型的中断的一些处理器时间考虑联结到第三类型的中断上的应用程序的处理器时间分段;以及-由在至少一个其它的应用程序上的第三类型的这一中断所优先取得的处理器时间被转移到至少一个其它的应用程序上(除非这种至少一个其它应用程序是被第三类型的中断所联结)。在一个具体的实施例中,将处理器在用于管理无线通信通讯栈(例如GSM栈)的应用程序和至少一个用户应用程序之间进行分配。这尤其应用在其中处理器是无线通信电路的一部分的情况下,例如设计成被合并到无线通信装置上的电子无线通信电路。这一电子无线通信装置是例如通过WAVEC0M(提交这一专利申请的一方)的WISMO家族(注册为商标)的模块。在这种情况下,无线通信栈被视为应用程序,信息的各种项目可以联结到其上,诸如例如类别(VTR或CTR),时间间隔的数量,优先级的水平(只用于VTR应用程序),以及,可能地,在周期中的这一应用程序的启动瞬时。无线通信栈通常具有是处理器时间的重要用户的中断(ISR),使用三个所提出的策略中的一个来管理这一中断。在本发明的一个具体实施例中,采用策略n°3:中断自己与栈联结,由这一中断所消费的处理器时间被存储到应用程序上,这一时间优先获得到该应用程序上。权利要求一种通过操作系统和通过至少两个应用程序用于管理单一处理器的使用时间的方法,所述使用时间称为处理器时间,其特征在于,其包括以下步骤--将所述处理器时间的分段联结(1)到各应用程序上,所述处理器时间分段可以是零;--将两个以下类别中的一个联结(2)到各应用程序上*第一类别,其如此联结到所述应用程序上的所述处理器时间分段保留到所述应用程序上,即使所述应用程序没有整个地使用它,所述应用程序不可以使用联结到其上的更多的所述处理器时间分段;*第二类别,其如此所述应用程序在联结到其上的所述处理器时间分段期间具有用于所述处理器的优先级,如果联结到所述应用程序上的所述处理器时间分段的一部分没有由所述应用程序所使用,那么所述不使用的部分不可以由所述第二类别的另外的应用程序所使用,通过使用联结到所述第二类别的另外的应用程序上的所述处理器时间分段的不使用部分或没有联结到任何应用程序上的所述时间分段的一部分,所述应用程序可以使用联结到其上的更多的所述处理器时间分段;以及--以处理器时间的所述分段的功能管理(6)所述处理器时间和联结到所述应用程序上的类别。2.根据权利要求1所述的方法,其特征在于,所述处理器时间分解成周期,各周期包括时间间隔的数量N,其特征还在于,联结到各应用程序上的所述处理器时间分段包括在各周期中的时间间隔的数量K”其中,1<&<N,且i是关于所述应用程序的指数。3.根据权利要求2所述的方法,其特征在于,其包括以下步骤如果在运行周期期间,因为其在所述时间间隔&的X期间不需要所述处理器但最后需要使用大于保留用于所述第二类别应用程序的时间间隔的所述数量Y的一些时间间隔的事实,第二类别应用程序不使用其时间间隔&的整个持续时间(其中,Y=&-X),那么时间间隔&的数量在至少一个以下周期期间就动态地被修改。4.根据权利要求2或3所述的方法,其特征在于,其包括以下步骤如果在运行周期期间,因为其在所述时间间隔&的X期间不需要所述处理器但最后需要使用大于保留用于所述第二类别的应用程序的时间间隔的数量Y的一些时间间隔的事实(其中,Y=Ki-X),第二类别的应用程序没有使用其时间间隔&的整个持续时间,那么至少一个以下时间周期的持续时间动态地被修改。5.根据权利要求1到4所述的方法,其特征在于,其包括以下步骤,用于至少一个所述应用程序联结(3),用于所述处理器时间分段的启动瞬时联结到所述应用程序上,或者用于各时间分段的启动瞬时包括于联结到所述应用程序上的所述处理器时间分段。6.根据权利要求1到5中的任何一项所述的方法,其特征在于,其包括以下步骤,用于至少一个第二类别的应用程序将允许做出决策的优先级水平联结到所述应用程序上,关于其,第二类别的应用程序在其中几个第二类别应用程序是合格的来使用所述处理器的情况下可以使用所述处理器。7.根据权利要求2到6中的任何一项所述的方法,其特征在于,其包括步骤(5),以便证实所有的所述应用程序的处理器时间的所述分段的总量少于或等同于应用程序处理器时间的100%,其限定为在所述处理器时间和由所述操作系统所使用的所述处理器时间的一部分之间的差别。8.根据权利要求1到7中的任何一项所述的方法,其特征在于,所述操作系统是实时操作系统。9.根据权利要求1到8的任何一项中所述的方法,其特征在于,称为第一类别的中断的至少一个中断没有联结到任何所述应用程序上,且不考虑所述处理器时间的管理。10.根据权利要求1到9中任何一项所述的方法,其特征在于,称为第二类别的中断的至少一个中断没有联结到任何所述应用程序上,且以以下的方式考虑所述处理器时间的管理保留一些时间用于所述第二类别的所有所述中断,以使所有所述应用程序的处理器时间的分段的总量少于或等同于少于被保留的所述一些时间的所述处理器时间的100%。11.根据权利要求1到10中任何一项所述的方法,其特征在于,称为第三类别的中断的至少一个中断联结到至少一个所述应用程序上,且以以下的方式考虑所述处理器时间的管理--需要用于所述第三类型的所述中断的一些处理器时间考虑联结到所述第三类型的所述中断上的所述应用程序的所述处理器时间分段;以及--在至少一个其它应用程序上的由所述第三类型的所述中断优先获得的所述处理器时间被退回到至少一个其它的应用程序上。12.根据权利要求1到11中的任何一项所述的方法,其特征在于,所述处理器包括于无线通信电路,其特征还在于,所述应用程序包括用于管理无线通信栈和至少一个用户应用程序的应用程序。13.一种计算机程序产品,其可以从通信网路中下载和/或保存到支持件上,所述支持件可以有计算机读取和/或由处理器执行,其特征在于,当所述程序在计算机上执行时,根据权利要求1到12中的至少一项,其包括用于实施所述方法的程序代码指令。14.一种内存件,其可以是全部地或部分地可移动的,其可以由计算机读取,其存储由所述计算机执行的一套指令,以便根据权利要求1到12中的至少一项来实施所述方法。15.一种装置,其包括允许单一处理器的使用时间通过至少两个应用程序来管理的操作系统,所述使用时间称为处理器时间,其特征在于,其包括一用于将所述处理器时间的分段联结到各应用程序上的器件,所述处理器时间分段可以是零;一用于将两个以下类别中的一个联结到各应用程序上的器件*第一类别,其如此联结到所述应用程序上的所述处理器时间分段被保留到所述应用程序上,即使所述应用程序没有整个地使用它,所述应用程序不可以使用联结到其上的更多的所述处理器时间分段;*第二类别,其如此所述应用程序在联结到其上的所述处理器时间期间具有用于所述处理器的优先级,如果联结到所述应用程序上的所述处理器时间分段的一部分没有由所述应用程序所使用,那么所述不使用的部分可以由所述第二类别的另外的应用程序所使用,通过联结到所述第二类别的另外的应用程序上的处理器时间分段的不使用部分或没有联结到任何应用程序上的时间分段的一部分,所述应用程序可以使用联结到其上的更多的所述处理器时间分段;以及一用于以处理器时间的所述分段的功能管理所述处理器时间和联结到所述应用程序上的类别的器件。全文摘要提出一种通过操作系统和通过至少两个应用程序用于管理单一处理器的使用时间的方法,所述使用时间称为处理器时间,其特征在于,其包括以下步骤一将所述处理器时间的分段联结(1)到各应用程序上,所述处理器时间分段可以是零;一将两个以下可能的类别中的一个联结(2)到各应用程序上;以处理器时间的所述分段的功能管理(6)所述处理器时间和联结到所述应用程序上的类别。两个可能的类别是第一类别,其如此联结到所述应用程序上的所述处理器时间分段保留到所述应用程序上,即使所述应用程序没有整个地使用它,所述应用程序不可以使用联结到其上的更多的所述处理器时间分段;第二类别,其如此所述应用程序在联结到其上的所述处理器时间分段期间具有用于所述处理器的优先级,如果联结到所述应用程序上的所述应用程序处理器时间分段的一部分没有由所述应用程序所使用,那么所述不使用部分就由应用程序的所述第二类别的另外的应用程序所使用,通过使用联结到应用程序的所述第二类别的另外的应用程序上的应用程序处理器时间分段的不使用部分或没有联结到任何应用程序上的时间分段的一部分,所述应用程序可以使用联结到其上的更多的所述应用程序处理时间分段。文档编号G06F9/48GK101836189SQ200880011929公开日2010年9月15日申请日期2008年4月14日优先权日2007年4月13日发明者J·蒙帝斯,T·迪迪申请人:施克莱无线公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1