CN101420635A - 管理在列表中存储潜在可配置条目的存储器的方法和装置 - Google Patents

管理在列表中存储潜在可配置条目的存储器的方法和装置 Download PDF

Info

Publication number
CN101420635A
CN101420635A CNA2008101750616A CN200810175061A CN101420635A CN 101420635 A CN101420635 A CN 101420635A CN A2008101750616 A CNA2008101750616 A CN A2008101750616A CN 200810175061 A CN200810175061 A CN 200810175061A CN 101420635 A CN101420635 A CN 101420635A
Authority
CN
China
Prior art keywords
memory
resource
data
ppk
tabulation
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
CNA2008101750616A
Other languages
English (en)
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.)
Mitel Networks Corp
Original Assignee
Mitel Networks Corp
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 Mitel Networks Corp filed Critical Mitel Networks Corp
Publication of CN101420635A publication Critical patent/CN101420635A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供了一种用于管理在列表中存储潜在可配置条目的存储器的方法和装置。具体讲,提供了一种用于管理存储与耦合到中央资源管理器的资源相关联的列表中的潜在地可配置条目的存储器的方法和装置。确定列表中的潜在地可配置条目的数目。从该存储器分配用于存储与各个潜在地可配置条目相关联的数据的存储器块。如果该存储器块不足以存储该数据,则从该存储器分配至少一个扩展存储器块用于存储该数据。

Description

管理在列表中存储潜在可配置条目的存储器的方法和装置
技术领域
本说明一般地涉及电子资源的集中管理,并更具体地涉及用于管理用于在列表中存储潜在可配置条目的存储器的方法和装置。
背景技术
在例如针对大楼、公司、学校的,包括主机托管服务(例如,CENTREX)等的集中管理的电话系统中,包括虚拟电话设备的电话设备经由服务器而被管理,服务器例如是PBX(专用交换机),其存储与各个设备相关联的数据。不管各个设备的实际配置如何,对具有大量的可编程键的设备的部署都会消耗大量的系统资源,其中,与键相关联的配置数据被例如集中存储在服务器上。这些键可能是在设备上物理地可用的、通过页面调度而虚拟地可用的,或者可能是虚拟设备上的虚拟键。作为一般部署的普通设备配置模型的结果,分配给各个设备用于存储数据的存储器的量是相同的,从而使得用于各个设备的系统存储器的分配必须类似于系统中最复杂设备所需的存储器容量。例如,仅有一个可编程键的设备被分配了与具有48个可编程键的设备相同的系统存储器容量。另外,不管被配置的键的实际数目如何,具有48个可编程键的设备都被分配以允许所有48个键被配置的系统存储器容量。虽然当系统规模扩大到更大数目的设备时,这种方法允许在所有可用设备上利用要被配置的所有可用的可编程键实现完全填充(populated)的部署,并且引入了支持设备上更多的可编程键,但是所需要的相当大的系统存储器影响了系统的总性能。
而且,热桌(hot desk)用户的引入增加了分配给可编程键的系统存储器,因为无论用户正在其上进行热桌办公的设备如何,各个热桌用户都要利用最大数目的对任何设备均可用的可编程键而被配置。
虽然可以在部署上施加工程指导以保证足够的系统资源可用,但是这可能导致具有大量键的设备被可能被配置的键的数目所限制。或者,灵活的系统尺寸变化(dimensioning)允许根据系统中的一些特性来解除分配存储器,其随后可被用于设备配置。在任何情况下,都降低了系统或设备的性能。
发明内容
实施例的第一广泛方面寻求提供用于管理潜在地存储列表中可配置条目的方法,该条目与被耦合到中央资源管理器的资源相关联。该方法包括:确定列表中潜在可配置条目的数目;分配用于存储与每个潜在可配置条目相关联的数据的存储器块,所述存储器块是从所述存储器分配的;以及如果所述存储器块不足以存储所述数据,则从所述存储器分配至少一个扩展存储器块来存储所述数据。在这些实施例的一些中,该方法还包括如果潜在可配置条目的总数减少,并且因此不再需要所述至少一个扩展存储器块存储所述数据,则解除所述存储器中的所述至少一个扩展存储器块的分配。在其它实施例中,该方法还包括如果潜在可配置条目的总数增加,并且因此所述至少一个扩展存储器块不再足够用来存储所述数据,则从所述存储器分配至少一个额外的扩展存储器块用来存储数据。
在第一广泛方面的一些实施例中,该方法还包括配置所述潜在可配置条目中的至少一个。在这些实施例的一些中,配置至少一个潜在可配置条目包括与所述至少一个潜在可配置条目相关联地存储编程数据的指示。在一些实施例中,所述编程数据的指示包括所述编程数据。在其它实施例中,所述编程数据的指示包括标号,所述标号被与所述编程数据相关联地进行存储。在这些实施例的一些中,该方法还包括利用所述标号检索所述编程数据。
在一些实施例中,该方法还包括响应于接收到与列表中的条目相关联的键已在资源处被激活的通知,检索所述编程数据并且处理所述编程数据。在这些实施例的一些中,处理编程数据包括向所述资源发送所述编程数据用于处理。
实施例的第二广泛方面寻求提供一种用于管理列表中的潜在可配置条目的中央资源管理器,所述列表与耦合到所述中央资源管理器的资源相关联。该中央资源管理器包括用于存储列表中的所述潜在可配置条目的存储器。该中央资源管理器还包括处理单元,该处理单元被使能用来:确定列表中的潜在可配置条目的数目;分配用于存储与每个潜在可配置条目相关联的数据的存储器块,所述存储器块是从所述存储器分配的;以及如果所述存储器块不足以存储所述数据,则从所述存储器分配至少一个扩展存储器块用来存储所述数据。在一些实施例中,处理器还被使能用于:如果潜在可配置条目的总数减少,并且因此不再需要所述至少一个扩展存储器块存储所述数据,则解除所述存储器中的所述至少一个扩展存储器块的分配。在其它实施例中,处理器还被使能用于:如果潜在可配置条目的总数增加,并且因此所述至少一个扩展存储器块不再足够用来存储所述数据,则从所述存储器分配至少一个额外的扩展存储器块用来存储数据。在另外的实施例中,所述处理器还被使能用来配置所述潜在可配置条目中的至少一个。在这些实施例的一些中,配置所述潜在可配置条目中的至少一个包括将编程数据的指示与所述至少一个潜在可配置条目相关联地存储在所述存储器中。在一些实施例中,所述编程数据的指示包括所述编程数据。在其它实施例中,所述编程数据的指示包括标号,所述标号被与所述编程数据相关联地进行存储。在这些实施例的一些中,所述处理器还被使能用于利用所述标号检索所述编程数据。
在一些实施例中,所述处理器还被使能用于响应于接收到与列表中的条目相关联的键已在资源处被激活的通知,检索所述编程数据并且处理所述编程数据。在这些实施例的一些中,处理编程数据包括向所述资源发送所述编程数据用于处理。
附图说明
将参考下面的附图来描述实施例,在附图中:
图1示出了根据非限制性实施例的一种用于管理用于以列表存储潜在可配置条目的存储器的系统;
图2A示出了根据非限制性实施例的资源的人机界面的部件的框图;
图2B示出了根据非限制性实施例的资源的通信和处理部件的框图;
图3示出了根据非限制性实施例的一种用于管理用于以列表存储潜在可配置条目的存储器的方法;
图4示出了根据非限制性实施例的用来管理用于以列表存储潜在可配置条目的存储器的各种列表;以及
图5示出了根据非限制性实施例的用来管理用于以列表存储潜在可配置条目的存储器的一个列表。
具体实施方式
现在参考图1,集中管理的电话系统被总地标为50。系统50的特征在于耦合到位于通信网络120中的中央资源管理器110的多个用户可访问资源100-1,100-2...100-6(一般地为一个资源100,总地为多个资源100)的特性。一般地,中央资源管理器110被配置为经由处理单元140管理用于在列表130中存储与资源100相关联的潜在可配置条目的存储器125。中央资源管理器110经由接口150与资源100通信,其可按需要被配置为有线通信或无线通信。
中央资源管理器110通常与通信网络120兼容。类似地,资源100适合通过通信网络120通信。例如,如果通信网络120包括基于分组的网络(例如因特网),则中央资源管理器110和资源100适合经由分组通信。类似地,如果通信网络120包括PSTN,则中央资源管理器110和资源100能够经由电路交换通信。在一些实施例中,通信网络120可以包括基于分组的网络和PSTN的组合,并且按照需要,一些资源100可能能够经由PSTN通信,而其它资源100可能能够经由分组通信,中央资源管理器110能够经由分组和PSTN两者通信。并且,按照需求,通信网络120可以为有线或无线网络;相应地,资源100和中央资源管理器110可以按需要被使能来以有线或无线方式通信。
在一个非限制性的实施例中,中央资源管理器110包括PBX,并且资源100包括电话设备,下面参考图2A和图2B更详细地进行了描述,该PBX被配置用于管理电话设备并使能它们之间的通信,该PBX还被配置用于使能与集中管理的电话系统50外部的电话设备之间的通信,如本领域技术人员已知的。在一个具体的非限制性示例中,PBX包括来自350Legget drive,Kanata,Ontario,CANADA,K2K 2W7的Mitel网络公司的Mitel 3300 IP通信平台,其致力于管理经由基于IP的通信网络传送的资源。在这些实施例中,通信网络120包括基于分组的网络,并且资源100能够经由基于分组的网络通信。
在一些实施例中,资源100可以包括电话,例如资源100-1至100-5,而在其它实施例中,资源100可以包括作为通信应用而被安装在计算设备上的软电话,例如资源100-6。在任何情况下,资源100具有一些共同特性,现在将描述与图2A和图2B有关的这些特性。
图2A示出了根据非限制性实施例的资源100的人机界面的组件的框图。在此实施例中,资源100包括电话设备,但在其它实施例中,资源100可以包括安装在计算设备上的软电话应用(例如,资源100-6)。在任何情况下,资源100包括键盘210,潜在可编程键(PPK)220,扬声器230、麦克风240和可选显示屏250。用户(未示出)经由键盘210将信息输入到资源100中。在一些实施例中,用户将信息输入到资源100中以登陆到资源100,或者中央资源管理器110,例如在热桌办公的情形中(在下面描述)。在另外的实施例中,用户将信息输入到资源100中以配置PPK 200。在其它实施例中,用户将信息输入到资源100中以启动与以下资源的通信:通信网络120中的其它资源100,或者经由通信网络120或者其它通信网络(即用户打电话)可获得的其它资源。如本领域技术人员已知的,用户经由麦克风240与其它资源的用户讲话,并经由扬声器230监听回复。扬声器230和麦克风240可以按需要在资源100内部或外部。在资源100处发送或接收的数据可以在可选显示屏250上显示,例如液晶显示屏(LCD)。
PPK 220包括当被用户激活时可以被潜在地配置以执行某些功能的键。在资源100包括电话设备的实施例中,每个PPK 220可以对应于位于电话设备上的物理键,该物理键可以由用户经由物理交互(例如,用户按物理键)而被驱动。在资源100包括软电话应用的实施例中,每个PPK220可以对应于与软电话应用相关联的软键,该软键可以由用户经由与耦合到运行软电话应用的计算设备的用户接口设备之间的交互而被驱动(例如,用户使用鼠标通过软键移动光标,并通过与鼠标按钮交互来激活用户)。或者,在这些实施例中,每个软键可以关联于类似于上述计算设备上的物理键。
每个PPK 220可以被潜在地配置为在其被激活时触发系统50或资源100的特性的激活。在一些实施例中,每个PPK 220与一个特性相关联,而在其它实施例中,仅一部分PPK 220与一个特性相关联。下面将更仔细地讨论PPK 220的实施例、PPK 220的配置以及关联特性,但是每个PPK220的配置数据通常存储在中央资源管理器110的存储器125中,例如下面所描述的在列表130中。通常,资源100被配置来检测PPK何时被激活并且作为响应向中央资源管理器110发送通知102(如图1中所示),该通知102包括资源100的标识符和被激活的PPK220的标识符。通知102被使能以触发系统50或资源100的特性。
在一些实施例中,资源100还包括至少一个页键(page key)225。在这些实施例中,每个PPK 220可以与多于一个特性相关联,每个特性可通过激活页键115而被访问。例如,PPK 220,或者其一部分可以被配置为触发第一组特性的激活;当页键225被激活一次时,PPK 220或者其一部分随后可以被配置为触发第二组特性的激活。在一些实施例中,页键225可以被激活第三次、第四次、第五次等,在每次激活页键225时,PPK220可以被配置为激活不同组的特性。在最大数目次激活之后,PPK 220循环回第一组特性。可以由PPK 220触发的每组特性都是本领域技术人员公知的“页面”,并且在特性组之间的循环是本领域技术人员公知的访问各种键的页面。
在一些实施例中,每个PPK 220还可以与显示屏(例如LCD显示屏)(未示出)相关联,用于显示指示每个PPK 220在被激活时被配置为执行的功能的标签,下面将描述标签。
现在来关注图2B,图2B显示了根据非限制性实施例的资源100的通信和处理部件的框图。通常,图2B中的部件使能图2A中示出的人机界面的部件,并且还使能资源100的用户与其它资源的用户通信。
因此,资源100还包括用于使能资源100与通信网络120、中央资源管理器110与其它资源之间的通信的接口260。接口260经由键盘210、PPK 220、页键225(如果存在)以及麦克风240接受来自用户的将传达给通信网络120、中央资源管理器110和/或其它资源的数据,包括通知102。接口还接受来自通信网络120的数据用于传达给扬声器230和/或显示屏250和/或与PPK 220相关联的显示屏,如果存在的话。按照需求,接口260可以是有线或无线的,并且通常与通信网络120兼容。在一些非限制性示例中,接口260是用于通过诸如因特网之类的基于分组的网络通信的基于分组的接口。在另一个非限制性示例中,接口260是用于通过PSTN通信的PSTN接口。
在一些实施例中,资源100还包括用于处理在资源100和通信网络120之间交换的数据的处理单元270。在其它实施例中,资源100还包括用于存储在资源100和通信网络120之间交换的数据的存储器280,数据例如是要在与每个PPK 220相关联的可选显示器上显示的标签,或者用户优选数据(例如优选铃声等)。
如上所述,在一些实施例中,资源100包括电话设备,而在其它实施例中,资源100包括安装在计算设备上的软电话应用。在任何情况下,各个资源100可以包括不同数目的PPK 220。例如,一些资源100可以包括单个PPK 220,而其它资源100可以包括数百个PPK 220。在资源100包括电话设备的实施例中,通过激活PPK 220可访问的功能的数目仅限于物理地存在于电话设备上的PPK 220的数目,以及与可选页键225相关联的特性的页面数目。在资源100包括安装在计算设备上的软电话应用的实施例中,通过激活PPK 220可访问的功能的数目仅限于软电话应用利用其来被配置的PPK 220的数目。另外,每个资源100可以仅仅使可获得的PPK220的一部分被配置以执行功能。因此,存储每个资源100的配置数据所需的存储器可能随着资源不同而显著不同。
通过实施已知的热桌办公将会使情形进一步复杂,其中,各个资源100可以具有多个用户,并且每个用户可以与很多虚拟PPK相关联,在可能时,当每个用户登入资源100时,各个资源100的配置数据被指定给PPK 220。
现在转到图4,图4示出了列表130的非限制性实施例,以及可以被存储在存储器125中的其它列表的实施例,列表130包括多个条目,每个条目与资源100相关联。在示出的实施例中,每个条目被存储在单独的行中,一行包括多个列,每列用于潜在地存储与资源100相关联的数据,并且更具体而言用于潜在地存储资源100的PPK 220的配置数据。另外,每行对应于已经被分配来潜在地存储资源100的PPK 220的配置数据的存储器125的一部分,下面参考图3来描述存储器的分配。在此实施例中,列表130中的每行包括标有标识符“1”至“12”的列,标有1至12的每列用于潜在地存储与资源100的特定PPK 220相关联的配置数据。用于潜在地存储与特定PPK 220相关联的配置数据的列一般地为已知的PPK阵列(PPKA),PPKA中的各个列用于存储与对应于该列的PPK 220相关联的配置数据。PPKA的列一般被标有资源100的PPK 220的标识符;因此,在此实施例中,标识符1至12对应于资源100上的PPK 220 1至PPK 22012的标识符,但是其它标识符数目可以被用在其它实施例中。PPKA阵列包括被分配来潜在地存储资源100的PPK 220的配置数据的存储器125的初始块块(initial block)。
如现在将描述的,在非限制性实施例中,配置数据可以包括对与PPK220相关联的编程数据的指示,和/或对与PPK 220相关联的管理员和/或用户优选项的指示。在一些实施例中,对缺少与PPK 220相关联的编程数据的指示也可以存储在列中(即,PPK 220还未被配置),但是,还未被配置的PPK 220随后可以被潜在地配置。
在一些实施例中,列表130中的PPKA中的一个或多个列可以包括指示被保留而避免被编程的PPK 220的条目(“Rsvd”)。在示出的实施例中,每个资源100的对应于标有“1”的列的各个PPK 220已经被保留。可以由系统50的管理员来设置保留PPK 220避免被编程,例如以使得系统50的管理员可以在后来临时给该PPK 220分配一个功能,或者由中央资源管理器110动态地管理该PPK 220。在另一个非限制性示例中,资源100上的PPK 220(例如,图2A中的PPK 220-1)可以被指定作为资源100的主线(prime line)(具有资源100的关联电话服务)。被保留的PPK 220的另一非限制性实施例是指定直接使用资源100上的PPK 220的语音优先视频(Voice First Video Conferencing)会议应用,而不管相关的系统配置如何。PPK 220被设为“Rsvd”以阻止用户或管理员的配置(其应当是无效的)。这可以在适当的时候由系统软件来设置。
在其它实施例中,PPKA中的一个或多个列可以包括指示还未被资源100的用户或者系统50的管理员配置的PPK 220的条目(“Nil”),但是该PPK 220可以在后来被配置。在示出的实施例中,对应于标有“3”以及“7”至“12”的列的、具有PPK ID“5”的资源100的PPK 220未被配置(即,“Nil”)。
在其它实施例中,PPKA中的一个或多个列可以包括对关联于与该列相关联的PPK 220的编程数据的指示。在一些实施例中,对编程数据的指示可以包括编程数据。在一个非限制性示例中,编程数据可以包括命令或功能(即“特性”),该命令或功能可以在中央资源管理器110接收到来自资源100的已经激活了特定PPK 220的通知之后,例如,通过分别执行该命令或调用该功能而被中央资源管理器110所处理。在其它实施例中,该命令(或功能)可以被发送到资源100来由处理单元270进行处理。
在其它实施例中,对编程数据的指示可以包括与该编程数据相关联的标号,该编程数据与标号相关联地存储在列表420中,如在示出的实施例中所示的。例如,在示出的实施例中,对应于标有“2”至“8”以及“10”至“11”的列的具有PPK ID“6”的资源100的PPK 220分别包括标号7,12,13,14,27,28,29,15和16,这些标号与存储在列表420中的编程数据相关联。
列表420包括多个条目,每个条目与不同的标号相关联。在示出的实施例中,每个条目存储在包括多个列的单独的行中,各列用于存储关联于与该行相关联的标号的数据。在一些实施例中,列表420可以包括包含系统50中的各个资源100上的各个PPK 220的编程数据的系统宽的列表。在其它实施例中,列表420包括特定资源100的编程数据,存储在类似于列表420的不同列表中的、系统50中的各个资源100的编程数据。图5示出了列表420的特定非限制性示例,现在将参考示出了特定资源100的编程数据的图5。
图5中示出的列表420的实施例中的每行包括与该行相关联的标号(在所示出的非限制性实施例中,列用于存储标有“PKCR ID”(可编程键配置资源标识)的标号)。列表420中的每行还包括对与列表130中的标号相关联的PPK 220的编程数据的指示(在所示出的非限制性实施例中,列用于存储标有“线型”的编程数据),例如,如上所述,该编程数据是可以被中央资源管理器110或资源100处理的命令或功能。在特定非限制性示例中,特性(即命令或功能)可以包括“用户快速呼叫”、“系统快速呼叫”、“快速呼叫”、“键系统”“单线”和/或“DND(勿扰)特性”。仅仅由使得系统50可用的特性来限制可用特性,例如由系统50的管理员来限制。例如,特性还可以包括前向特性、保持特性、铃声特性、转移特性、会议特性、超级键特性(例如,用于获得对菜单结构的方位以访问另外的特性)、菜单特性、用于激活与资源100组合的免提麦克风/扬声器的免提特性、咨询消息特性以及允许资源100的用户对PPK220进行编程的编程特性。在一些实施例中,特性还可以包括不是由系统50提供的命令和功能(例如,通过与系统50外部的、经由通信网络120与系统50通信的服务(未示出)通信而被支持的应用特性)。对于本领域技术人员,也可以出现其它命令或功能。
在一些实施例中,“线型”列存储了编程数据的一部分。例如,编程数据可以包括使得资源100与另一个资源通信的特性,另一个特性具有特定电话薄号码(“DN”),例如,“用户快速呼叫”、“系统快速呼叫”、“快速呼叫”、“键系统”“单线”特性。在所示出的非限制性实施例中,电话薄号码存储在标有“DN”的列中。在这些实施例中,电话薄号码可以是系统50内部的资源100的电话薄号码,或者该系统外部的资源的电话薄号码。字啊一些实施例中,PPK 220可以被编程来潜在地使得资源100与另外的资源通信,但是最初电话薄号码可能未被配置(例如,在“DN”列中存储了“空白”)。
在一些实施例中,存储在列表130中的标号可以与指示PPK 220还未被配置的列表420中的数据相关联,以代替在列表130中存储“Nil”,该PPK 220由资源100的用户或者系统50的管理员来配置。
在一些实施例中,列表420还包括与标号相关联的标签(“标签”),如上所述,其可以被发送给资源100以在与各个PPK 220相关联的可选显示屏上显示,例如当资源100注册到中央资源管理器110时,当PPK 220被配置时,或者当用户登入资源100时。例如,该标签可以包括存储在“线型”列中的特性名称。在特性使得资源100与具有特定电话薄号码的另外的资源通信的实施例中,该标签可以包括特定电话薄号码、与资源和/或特定电话薄号码相关联的人名,或者与资源和/或特定电话薄号码相关联的人的职位/工作功能。对于本领域技术人员,也可以出现其它标签,并且不具体限制标签
现在回到图4所示的列表420,列表420还可以包括与标号相关联的铃声类型,例如触发与特定电话薄号码相关联的资源来以特定方式响铃,或者可选地,当被与特定电话薄号码相关联的资源联系时,触发资源100来以特定方式响铃。在其它实施例中,列表420还可以包括与电话薄号码相关联的URL,以使得当与标号相关联的PPK 220经由列表130被激活时,资源100被触发以从URL获取数据。对于本领域技术人员,也可以出现存储在列表420中的其它编程数据。
在一些实施例中,列表130被链接到列表420,列表420也可能被存储在存储器125中的,或者被存储在与中央资源管理器110通信的通信设备中(例如,被配置来存储系统数据的服务器,或者还可以被配置作为服务器来存储系统数据的资源100)。列表410包括多个条目,每个条目包括与系统50中的资源100相关联的设备数据。在示出的实施例中,每个条目存储在单独的行中,每行包括多个列,每列用于存储与资源100相关联的设备数据。
在示例性的非限制性实施例中,列表410中的每个条目包括系统50中的各个资源100的设备ID,例如设备100-1至100-6,关联的设备类型以及指向列表130中的PPKA的关联指针,指针通常对于本领域技术人员是已知的。在此实施例中,列表410中的PPKA的关联指针中的每个指向列表130中的对应行(即,列表410的第一行中的指针指向列表130的第一行,等等)。在一些实施例中,列表410还可以包括关于与资源100相关联的PPK 220的数目的数据。在其它实施例中,列表410还可以包括如下所述的将在最初分配给资源100的存储器125的块的大小。在另外的实施例中,列表410还可以包括与资源100相关联的电话薄号码(例如,电话号码和/或IP地址)。在另外的实施例中,列表410还可以包括与资源100相关联的用户名。但是,在资源100包括热桌(即,与用户相关联的虚拟资源)的实施例中,可以结合设备类型将用户名存储为“热桌用户”,例如“热桌用户Bob Smith”或“Bob Smith”。
回到列表130,列表130中的每个条目还可以包括可选PPK ID,其在一些实施例中可以类似于上述的、参考列表410的设备ID,而在其它实施例中,PPK ID可以类似于列表410的设备类型、电话薄号码和/或用户名。列表130中的每个条目还可以包括与资源100相关联的最大数目的PPK 220(“Max”),例如最大数目的物理键和/或最大数目的软键。列表130中的每个条目还可以包括与资源100相关联的可用PPK 220的数目(“Avail”),例如管理员使用户可用的PPK 220的子集。
列表130中的每个条目还可以包括已经被编程的最高级PPK 220的标识符(“最高级”)。例如,如上所述,标有1至12的各列对应于并且标识资源100上的PPK 220。因此,如果对应于列11的PPK 220被编程,但对应于标有12(或更高)的列未被编程,则“最高级”应当包括“11”。在这些实施例中,按照需要,对应于标有10或更小标号的PPK220中的一些、全部或没有PPK 220可以被编程。如下所述,值“最高级”不被列表130中的列数限制。在包括已被编程的最高级PPK220的标识符的实施例中,如下所述,“最高级”可以在PPK220被配置时动态地确定。一般地,“最高级”告诉中央资源管理器11在列表130中有多少列需要被处理,以确定特定资源110的状态。
列表130中的每列还包括至少一个字段用于存储指向所存储的至少一个扩展可编程键阵列(EPPKA)的指针,例如图4所示的列表130'中。在一些实施例中,被分配来潜在地存储配置数据(即PPKA)的存储器125的块可能不够用于存储特定资源100的PPK 220的配置数据,例如如果资源100具有很大数量的PPK 220或者具有许多页。在这些实施例中,如后面参考图3所描述的,存储器125的扩展块可以被分配来潜在地存储附加的配置数据。附加的配置数据被潜在地存储在EPPKA中,在一个特定的非限制性示例中,该EPPKA包括标有标识符“1”至“12”的列,类似于上面所描述的,每列对应于潜在地存储附加的配置数据的、与资源100相关联的PPK 220。或者,EPPKA中的列的标识符可以被连续地标上PPKA的列的标识符(例如,13至24)。换言之,如果列表130被配置以存储每个资源130的十二个PPK 220的配置数据,并且一个资源100包括多于十二个PPK 220,或者多于十二个被配置的PPK 220,那么针对下一十二个PPK 220的配置数据可以被存储在列表130'的行中。列表130'的附加行,或者类似的列表(即,存储125的附加扩展块)可以被分配来按需存储附加配置数据。在这些实施例中,每个条目还可以包括指向存储器125的下一扩展块(例如,列表130'的另一行或者另一列表的一行)的指针(“下一EPPKA”)。
列表130'还可以包括可选EPPKA ID,类似于上述的PPK ID。
因此,当用户激活资源100处的PPK 220时,资源100向中央资源管理器110发送通知102,中央资源管理器110随后处理通知102以提取已经被激活的PPK 220的标识符,以及资源100的标识符。在包括列表410的实施例中,将资源100的标识符与设备ID或者电话薄号码相比较,以确定指向与该资源100相关联的PPKA的指针。或者,将资源100的标识符与列表130中的可选PPK ID比较。在任何情况下,与资源100相关联的PPKA位于存储器125中,并且将已被激活的PPK 220的标识符与PPKA中的列的标识符比较。如果PPKA中的列的标识符包括被激活PPK220的标识符,则通过经由将被激活PPK 220的标识符与PPKA中列的标识符匹配来定位PPKA中的配置数据的指示,而标识关联的特性。编程数据的指示随后被处理以标识与被激活PPK 220相关联的特性(或其缺少的特性)。在包括列表420的实施例中,标号可以被用来标识列表420中的特性。在任何情况下,随后通过在处理单元140处处理关联的编程数据(即功能或命令),或者通过将编程数据发送到资源用于在处理单元270处处理,来实现特性。
如果PPKA中的列的标识符不包括被激活PPK 220的标识符,(即,在所示出的实施例中,被激活PPK 220的标识符高于12),列表130'随后通过处理指向第一EPPKA的指针而被考虑,以确定列表130'中第一EPPKA的位置。在示出的实施例中,如果第一EPPKA中的列的标识被连续地标上PPKA的列的标识符,并且被激活PPK 220的标识符在13和24之间,则通过经由将被激活PPK 220的标识符与第一PPKA中列的标识符匹配来定位第一PPKA中的配置数据的指示,而标识关联的特性。或者,如果第一EPPKA中的列的标识未被连续地标上PPKA的列的标识符(即,第一EEPKA列从“1”开始标注),则被激活PPK 220的标识符被处理以提取PPKA中列的最高标识符来使标识符在第一EPPKA中列的标识符范围内(即,提取12)。但是,如果第一EPPKA中的列的标识符不包括被激活PPK 220的标识符,(即,在所示出的实施例中,被激活PPK220的标识符高于12),则随后下一EPPKA经由指向存储在列表130'中的下一EPPKA的指针而被定位。如上所述,这种处理继续到直到与被激活PPK 220相关联的编程数据被定位,并且随后被处理为止。
随着各个PPK 220的配置经由中央资源管理器被处理,最好提供一种用于挂你存储器125的方法以保证存储器125的不必要的量未被分配来存储PPK的配置数据,这些PPK不存在于资源100上或者还未被配置。因此,现在来关注图3,图3示出了用于管理中央资源管理器110的存储器125的方法,存储器125用于潜在地存储关联于耦合到中央资源管理器110的资源100的列表130中的可配置条目。图3的方法可以在与存储器125通信的处理单元140处被执行。步骤305至325表示设置处理,而步骤330至360表示监控和更新处理。还将参考上述的图4和图5来说明图3的方法。
在步骤305,确定了要被潜在地配置的列表130中的条目数。在一些实施例中,当资源100最初经由通信网络120与中央资源管理器110通信时,资源100被使能以注册到中央资源管理器110,并且与资源100相关联的列表130中的PPKA被初步构成。在这些实施例中,与资源100相关联的PPK 220的数目通过标识包括关联设备数据的设备类型列表(例如,列表410可以是一般的设备类型列表或者是组合列表)中的资源100而被确定。利用此数据可以构成列表130中的“Max”列。另外,系统50的管理员可以设置针对相同列表中的可用PPK 220的数目,并且利用此数据可以构成“Avail”列。在一些实施例中,管理员还可以记录针对相同列表中的设备类型的PPK 220的优选配置(即,由管理员来配置PPK 220),处理单元140利用管理员的优选项来判定如何配置资源100的各个PPK220。
在其它实施例中,当资源最初被耦合到中央资源管理器110时,可以由用户通过与键盘210和PPK 220交互来初始设置资源110的PPK 220,用户向至少PPK 220的一部分指定特性(即,由用户配置)。在这些实施例中,通过已经经由工厂设置存储在存储器280中的特性选择(或者可选地,在向用户提供资源100之前由系统50的管理员设置),或者通过从中央资源管理器110请求可用特性列表,来使能资源100以向用户提供特性选择。可以在显示屏250上显示可用特性。在此设置处理期间,将被指定给至少一部分PPK 220的用户优选特性被发送到中央资源管理器110。
在任何情况下,中央资源处理器110判定多少PPK 220与资源100相关联。中央资源处理器110还确定初始管理员优选项和/或初始用户优选项。随后,初始管理员和/或用户优选项以及与资源100相关联的PPK 220的数目,被用来确定最初被用在资源100上的PPK 220的数目。还确定了可以被用户和/或管理员潜在地配置的PPK 220的数目。例如,如果资源100包括X数目的PPK 220,则PPK Y可以被最初配置,1<Y≤X。随后可能被潜在地配置的PPK 220的最初数目不是1,因此而是Y。换言之,必须分配一部分存储器125用于保存与Y PPK相关联的配置数据。对于一些资源100,这部分可能很大,而对于其它资源这部分可能很小。
在步骤310,用于存储与列表130中的每个条目相关联的数据的存储器125的初始块被分配,以潜在地存储Y PPK 220的配置数据,而不管资源100上的PPK 220的数目如何,也不管已经在资源100上配置的PPK220的数目如何。但是,最初被分配给资源100的存储器125的块的大小未被特定限制,并且另外,最初被分配给资源100的存储器125的块的大小可以取决于资源100而变化。例如,最初被分配给资源100的存储器125的块的大小取决于资源100上的物理键的数目和/或资源100的可用页数而变化。被分配给资源100的存储器125的初始块的大小可以由系统50的管理员例如在设备类型列表中进行设置。如上所述,存储器125的初始块被嵌入在列表130内的PPKA中。
在步骤315,判定被分配的存储器125的初始块是否足够。如果被存储器125的初始块不够用于潜在地存储与PPK 220相关联的配置数据,则在步骤320,存储器125的扩展块被分配来潜在地存储配置数据。如上所述,存储器125的扩展块被嵌入在列表130'内的第一EPPKA中。随后重复步骤315以判定被分配来潜在地存储与PPK 220相关联的配置数据的存储器125的初始块和存储器125的扩展块是否足够。如果不够,则在步骤320,额外的存储器125的扩展块被分配,同样被嵌入在下一EPPKA中,如上所述。
这种处理继续到直到所分配的存储器足够,此时,利用存储在设备类型列表中的用户优选项和/或管理员优选项和/或初始配置数据来构成列表130(以及列表130',如果需要)中的条目。或者,列表130中的条目的构成可以在存储器125的新的块被分配来潜在地存储配置数据时发生。在构成处理期间,列表130的“最高级”列被构成,如果列表420中存在“最高级”列也同样地被构成。标号和特性之间的联合由中央资源管理器110动态地执行。
在步骤330,中央资源管理器110监控用户优选项和/或管理员优选项的变化以判定列表130和/或列表130'中的潜在地被配置的条目数目是否要改变。这可以经由以下处理而发生:资源100的用户向至少一部分PPK220指定特性或从至少一部分PPK 220移除特性。在一些实施例中,这可以经由资源100的用户创建或移除键的页面而发生。作为响应,资源100将向中央资源管理器110发送改变用于处理。或者,系统50的管理员也可以向至少一部分PPK 220指定特性或从至少一部分PPK 220移除特性,至少一部分PPK 220是针对特定资源100、针对所有资源100或者针对特定设备类型的所有资源100的。
如果条目数目改变,则随后在步骤340,中央资源管理器判定当前被分配的存储器是否仍然足够。如果被分配的存储器不够(即,已经与PPK220相关联的特性具有比当前为其分配了存储器的最高PPK 220更高的标识数目),则在步骤347存储器125的扩展块被分配。在步骤340,再次判定现在被分配的存储器是否足够,并且如果需要,在步骤347额外的存储器125的扩展块可以被分配。这种处理继续到直到被分配的存储器足够为止。
另一方面,如果被分配的存储器过多(例如,已经从PPK 220移除了特性并且不再需要当前被分配的存储器来存储所有配置数据),则在步骤345从存储配置数据释放存储器125的扩展块。存储器125的扩展块随后被转回存储器125的普通池(pool)由中央资源管理器110在其它处理中使用。换言之,如果不再需要存储器125的扩展块来存储配置数据,则存储器125的扩展块不再被分配用来存储配置数据。在步骤340,再次判定当前被分配的存储器是否过多,并且在步骤345额外的存储器125的扩展块可以被释放。这种处理继续直到被分配的存储器足够。
在一些实施例中,可以直接执行对存储器125的扩展块的分配(在步骤347)以及解除分配(在步骤345)。例如,可以由处理单元140跟踪正被分配以及被解除分配的各个存储器125的扩展块的地址。但是,在其它实施例中,可以不直接执行对存储器125的扩展块的分配(在步骤347)以及解除分配(在步骤345)。例如,例如,通过在存储器125的预定被分配池中将存储器125的块标记为被分配或被解除分配。在此实施例中,不是直接跟踪各个存储器125的扩展块的地址,而是更新表格(例如)来记录和反映来自预定被分配池的存储器125的哪些块被分配或被解除分配。
在步骤350,判定是否至少一个条目要被配置。在一些实施例中,如果在步骤330判定被潜在地配置的条目数目要增加,则被添加PPK 220或者已存在PPK 220的至少一个可以与特性相关联,并且新的配置数据应当存储在PPKA或EPPKA中。如果条目数减少,则保留的PPK 220的至少一个可以与改变条目数目同时被配置(包括重新被配置)。如果是这样,在在步骤360,至少一个条目被配置,类似于上面参考步骤325所述的条目的构成。如果不是这样,则在步骤330,中央资源管理器110继续监控潜在地被配置的条目的数目。
以这种方式,中央资源管理器110能够分配刚好足够的存储器125给各个资源110,其足够用来潜在地存储与该资源的PPK 220相关联的配置数据,空出存储器125用于发生在中央资源管理器110处的其它处理。
虽然参考诸如电话系统之类的集中管理系统来描述了实施例,但是参考图3所述的管理存储器125的方法可以被应用到其它系统中,这些系统包括潜在可配置条目的潜在地且稀疏地被构成的列表,其中潜在地且稀疏地被构成的列表的条目数具有设备的物理特征/用户优选项/虚拟表示等的特性。
本领域技术人员将会理解,在一些实施例中,可以使用预先编程的硬件或固件元件(例如,专用集成电路(ASIC)、电可擦除可编程只读存储器(EEPROM)等)或其它相关部件来实现中央资源管理器110和资源100的功能。在其它实施例中,可以使用已经接入了存储用于处理计算装置的计算机可读程序代码的代码存储器(未示出)的计算装置来实现中央资源管理器110和资源100的功能。计算机可读程序代码可以被存储在固定的、有形的、由这些部件直接可读的介质中,(例如,可移除磁盘、CD-ROM、ROM、固定盘、USB驱动),或者计算机可读程序代码可以被远程地存储,但是可经由调制解调器或其它连接到网络(包括、不限于因特网)的接口设备、通过传输介质发送到这些部件。传输介质可以是非无线介质(例如,光纤或模拟通信线路)或者无线介质(例如微波、红外线、自由空间光纤或其它传输机制)或它们的组合。
本领域技术人员将会理解,还存在可以实现本实施例的更多可选实现方式和修改,并且上述实现方式和示例只说明了一个或多个实施例。因此,仅由所附权利要求来限制本发明的范围。

Claims (20)

1.一种用于管理用于在列表中存储潜在可配置条目的存储器的方法,所述列表与耦合到中央资源管理器的资源相关联,该方法包括:
确定所述列表中的潜在可配置条目的数目;
分配用于存储与每个潜在可配置条目相关联的数据的存储器块,所述存储器块是从所述存储器分配的;以及
如果所述存储器块不足以存储所述数据,则从所述存储器分配至少一个扩展存储器块来存储所述数据。
2.如权利要求1所述的方法,还包括如果潜在可配置条目的总数减少,并且因此不再需要所述至少一个扩展存储器块存储所述数据,则解除所述存储器中的所述至少一个扩展存储器块的分配。
3.如权利要求1所述的方法,还包括如果潜在可配置条目的总数增加,并且因此所述至少一个扩展存储器块不再足够用来存储所述数据,则从所述存储器分配至少一个额外的扩展存储器块来用于存储所述数据。
4.如权利要求1所述的方法,还包括配置所述潜在可配置条目中的至少一个。
5.如权利要求4所述的方法,其中,配置至少一个潜在可配置条目包括与所述至少一个潜在可配置条目相关联地存储编程数据的指示。
6.如权利要求5所述的方法,其中,所述编程数据的指示包括所述编程数据。
7.如权利要求5所述的方法,其中,所述编程数据的指示包括标号,所述标号被与所述编程数据相关联地进行存储。
8.如权利要求7所述的方法,还包括利用所述标号检索所述编程数据。
9.如权利要求5所述的方法,还包括响应于接收到与列表中的条目相关联的键已在资源处被激活的通知,检索所述编程数据并且处理所述编程数据。
10.如权利要求9所述的方法,其中,处理编程数据包括向所述资源发送所述编程数据用于处理。
11.一种用于管理列表中的潜在可配置条目的中央资源管理器,所述列表与耦合到所述中央资源管理器的资源相关联,包括:
存储器,该存储器用于存储所述列表中的所述潜在可配置条目;
处理单元,该处理单元被使能用于:
确定所述列表中的潜在可配置条目的数目;
分配用于存储与每个潜在可配置条目相关联的数据的存储器块,所述存储器块是从所述存储器分配的;以及
如果所述存储器块不足以存储所述数据,则从所述存储器分配至少一个扩展存储器块用来存储所述数据。
12.如权利要求11所述的中央资源管理器,所述处理器还被使能用于:如果潜在可配置条目的总数减少,并且因此不再需要所述至少一个扩展存储器块存储所述数据,则解除所述存储器中的所述至少一个扩展存储器块的分配。
13.如权利要求11所述的中央资源管理器,所述处理器还被使能用于:如果潜在可配置条目的总数增加,并且因此所述至少一个扩展存储器块不再足够用来存储所述数据,则从所述存储器分配至少一个额外的扩展存储器块。
14.如权利要求11所述的中央资源管理器,所述处理器还被使能用于配置所述潜在可配置条目中的至少一个。
15.如权利要求14所述的中央资源管理器,其中,配置所述潜在可配置条目中的至少一个包括将编程数据的指示与所述至少一个潜在可配置条目相关联地存储在所述存储器中。
16.如权利要求15所述的中央资源管理器,其中,所述编程数据的指示包括所述编程数据。
17.如权利要求15所述的中央资源管理器,其中,所述编程数据的指示包括标号,所述标号被与所述编程数据相关联地进行存储。
18.如权利要求17所述的中央资源管理器,所述处理器还被使能用于利用所述标号检索所述编程数据。
19.如权利要求15所述的中央资源管理器,所述处理器还被使能用于响应于接收到与所述列表中的条目相关联的键已在资源处被激活的通知,检索所述编程数据并且处理所述编程数据。
20.如权利要求19所述的中央资源管理器,其中,处理编程数据包括向所述资源发送所述编程数据用于处理。
CNA2008101750616A 2007-10-25 2008-10-27 管理在列表中存储潜在可配置条目的存储器的方法和装置 Pending CN101420635A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/978,101 US20090113163A1 (en) 2007-10-25 2007-10-25 Method and apparatus for managing a memory for storing potentially configurable entries in a list
US11/978,101 2007-10-25

Publications (1)

Publication Number Publication Date
CN101420635A true CN101420635A (zh) 2009-04-29

Family

ID=40451165

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA2008101750616A Pending CN101420635A (zh) 2007-10-25 2008-10-27 管理在列表中存储潜在可配置条目的存储器的方法和装置

Country Status (4)

Country Link
US (1) US20090113163A1 (zh)
EP (1) EP2053517A3 (zh)
CN (1) CN101420635A (zh)
CA (1) CA2630184A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10922145B2 (en) * 2018-09-04 2021-02-16 Target Brands, Inc. Scheduling software jobs having dependencies

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1581188A (zh) * 2004-05-18 2005-02-16 中兴通讯股份有限公司 一种大容量电子邮件的存储管理方法及其系统
US20050147100A1 (en) * 2004-01-07 2005-07-07 International Business Machines Corporation Dynamic management of TCP reassembly buffers
CN1714360A (zh) * 2002-12-03 2005-12-28 捷讯研究有限公司 用于针对消息预先选择文件夹的方法、系统和计算机软件产品
CN1790297A (zh) * 2004-12-14 2006-06-21 国际商业机器公司 用于管理存储器页请求的方法和系统
CN101009726A (zh) * 2006-12-28 2007-08-01 上海柯斯软件有限公司 大容量sim卡上电话簿的数据结构协同使用的方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6175900B1 (en) * 1998-02-09 2001-01-16 Microsoft Corporation Hierarchical bitmap-based memory manager
ATE475139T1 (de) * 1999-06-10 2010-08-15 Belle Gate Invest B V Vorrichtung zum speichern unterschiedlicher versionen von datensätzen in getrennten datenbereichen und verfahren zur aktualisierung eines datensatzes in einem speicher
US6584185B1 (en) * 2000-01-31 2003-06-24 Microsoft Corporation Telephone abstraction layer and system in a computer telephony system
US7444171B2 (en) * 2005-10-28 2008-10-28 Sbc Knowledge Ventures, L.P. Method and system for sharing speed dial lists amongst multiple telecommunications services

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1714360A (zh) * 2002-12-03 2005-12-28 捷讯研究有限公司 用于针对消息预先选择文件夹的方法、系统和计算机软件产品
US20050147100A1 (en) * 2004-01-07 2005-07-07 International Business Machines Corporation Dynamic management of TCP reassembly buffers
CN1581188A (zh) * 2004-05-18 2005-02-16 中兴通讯股份有限公司 一种大容量电子邮件的存储管理方法及其系统
CN1790297A (zh) * 2004-12-14 2006-06-21 国际商业机器公司 用于管理存储器页请求的方法和系统
CN101009726A (zh) * 2006-12-28 2007-08-01 上海柯斯软件有限公司 大容量sim卡上电话簿的数据结构协同使用的方法

Also Published As

Publication number Publication date
CA2630184A1 (en) 2009-04-25
EP2053517A2 (en) 2009-04-29
EP2053517A3 (en) 2010-03-31
US20090113163A1 (en) 2009-04-30

Similar Documents

Publication Publication Date Title
CN101299754B (zh) 具有动态用户界面的终端用户控制配置系统
CN101188644A (zh) 银行语音服务方法与系统
CN103250402A (zh) 语音屏幕ars业务系统、方法和计算机可读记录介质
CN102037679B (zh) 通过不同的通信网络建立并行组服务的方法
AU2003242152B2 (en) Communication system, data processing control method, server, and data processing control program
US20130290213A1 (en) System and method for managing events for a facility
CN100442897C (zh) 终端与服务器通信的方法、系统和装置
CN102281302A (zh) 资源访问处理方法及系统
CN107454274A (zh) 用于分配座席的方法和装置
CN100579138C (zh) 建立呼叫的方法
CN101420635A (zh) 管理在列表中存储潜在可配置条目的存储器的方法和装置
JP2003229957A (ja) 端末情報管理方法
KR100683569B1 (ko) 단말 어플리케이션과 조직관리 서버를 연동한 기업형메시지 그룹발송 서비스 방법
CN101300819A (zh) 编程通信终端设备的按键的方法、终端设备和通信系统
CN101141295A (zh) 策略管理方法
CN114710784A (zh) 北斗rdss无线资源动态分配方法、系统及存储介质
CN100502438C (zh) 一种基于被叫用户的彩铃业务实现装置
JP2008048089A (ja) コールセンタシステム
RU2008145509A (ru) Способ для ограничения доступа к данным членов группы и компьютер управления группами
JP4379240B2 (ja) Ip電話端末設定装置およびプログラム
CN101310510B (zh) 用于在连接建立的范围内显示分配给呼叫号码的显示名的方法、通信终端设备和通信系统
JP2003030770A (ja) 通信指令システム
KR100697058B1 (ko) 자료 공유를 위한 이동 통신 단말 및 자료 공유 방법
JP4272101B2 (ja) 通信方法及び通信システム
JP2011109262A (ja) コールセンタサーバ、帯域制御プログラム、及びコールセンタシステム

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: 20090429