CN102455918B - 通信装置及其固件补丁方法 - Google Patents

通信装置及其固件补丁方法 Download PDF

Info

Publication number
CN102455918B
CN102455918B CN201010520280.0A CN201010520280A CN102455918B CN 102455918 B CN102455918 B CN 102455918B CN 201010520280 A CN201010520280 A CN 201010520280A CN 102455918 B CN102455918 B CN 102455918B
Authority
CN
China
Prior art keywords
service broker
initialization
close
agent
closed
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.)
Expired - Fee Related
Application number
CN201010520280.0A
Other languages
English (en)
Other versions
CN102455918A (zh
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.)
Information and Telecommunication Branch of State Grid Ningxia Electric Power Co Ltd
Original Assignee
Hongfujin Precision Industry Shenzhen Co Ltd
Hon Hai Precision Industry Co Ltd
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 Hongfujin Precision Industry Shenzhen Co Ltd, Hon Hai Precision Industry Co Ltd filed Critical Hongfujin Precision Industry Shenzhen Co Ltd
Priority to CN201010520280.0A priority Critical patent/CN102455918B/zh
Priority to US12/981,459 priority patent/US20120102475A1/en
Publication of CN102455918A publication Critical patent/CN102455918A/zh
Application granted granted Critical
Publication of CN102455918B publication Critical patent/CN102455918B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/66Updates of program code stored in read-only memory [ROM]

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Telephonic Communication Services (AREA)

Abstract

一种通信装置,与外部装置通信连接,并从所述外部装置接收并执行疏耦合服务代理器(loosely coupled service agent,LCSA)作为软件程序,以取代已存在应用程序的线程(thread)。所述通信装置执行所述应用程序时,所述应用程序为一个软件程序的形式,且包括多个线程,称为密耦合服务代理器(tightly coupled serviceagent,TCSA),其中第一TCSA的第一功能被所述LCSA的第二功能取代。所述通信装置将所述第一TCSA的数据对象结合至所述LCSA。利用此装置可以随时对其固件补丁。

Description

通信装置及其固件补丁方法
技术领域
本发明涉及计算机技术,尤其涉及一种通信装置及其固件补丁方法。
背景技术
路由器(router)、以太网络交换器(Ethernet switch)、个人数字助理(personaldigital assistant,简称PDA)、或智能手机等通信装置其主要的执行程序如:开机程序、硬件组态设定数据等皆包括在其固件,它的功能及效率影响了装置的整体表现。因此,软件工程尽相当大的努力在固件的开发与除错。
在一种产品上市后的一段时间,软件工程师通常仍会持续地对固件做修改。此修改通常包括执行效率的改进、程序代码的除错、新功能的加入、及针对客户需求所做的更动。每次释出新版的固件程序就需要耗时的验证流程,而延迟了软件程序设计师对固件问题反应的时间。另外,在下载及安装新的固件后,通信装置重新开机以启动新的固件,但是在企业环境中应避免重新启动以太网络交换机。
发明内容
为了解决所述问题,本发明提出了一种通信装置,包括内存、通信单元及处理器。所述内存,储存所述通信装置作为一个软件程序执行的管理层服务。所述软件程序包括多个密耦合服务代理器(tightly coupled service agent,TCSA)。所述多个密耦合服务代理器中的每个密耦合服务代理器作为所述管理层服务的线程,所述管理层服务还包括称为系统初始化管理器的线程,用于管理所述多个密耦合服务代理器的初始化。所述通信单元用于通信连接外部装置,并从所述外部装置接收疏耦合服务代理器(loosely coupled service agent,LCSA)以取代所述多个密耦合服务代理器的其中第一代理器,其中所述疏耦合服务代理器提供第二功能以取代所述第一代理器的第一功能。所述处理器执行所述疏耦合服务代理器时,所述疏耦合服务代理器作为一个软件程序用于取代所述第一代理器,禁能所述第一代理器,并结合所述第一代理器的数据对象至所述疏耦合服务代理器。
本发明提出了一种通信装置固件补丁方法,执行于通信装置,所述通信装置包括内存、通信单元及处理器,其特征在于所述方法包括下列步骤:储存所述通信装置作为一个软件程序执行的管理层服务于所述内存,所述软件程序包括多个密耦合服务代理器,所述多个密耦合服务代理器中的每个密耦合服务代理器作为所述管理层服务的线程,所述管理层服务还包括称为系统初始化管理器的线程,用于管理所述多个密耦合服务代理器的初始化。所述通信单元用于通信连接外部装置,并从所述外部装置接收疏耦合服务代理器以取代所述多个密耦合服务代理器的其中第一代理器,其中所述疏耦合服务代理器提供第二功能以取代所述第一代理器的第一功能。所述处理器执行所述疏耦合服务代理器时,所述疏耦合服务代理器作为一个软件程序用于取代所述第一代理器,禁能所述第一代理器,并结合所述第一代理器的数据对象至所述疏耦合服务代理器。
本发明的通信装置中的所述通信单元从所述外部装置接收疏耦合服务代理器(LCSA)以取代所述密耦合服务代理器(TCSA)。利用此装置可以随时对其固件打补丁。
附图说明
图1显示客户端装置结构方块图;
图2显示管理层服务的实施方式的示意图;
图3显示服务代理器的状态及状态切换示意图;
图4显示服务代理器的数据对象的示意图;
图5显示系统初始化管理器的数据对象的示意图;
图6显示客户端装置在接收补丁数据以前的操作流程图;
图7显示客户端装置在接收补丁数据之后的操作流程图;
图8显示关联于另一个服务代理器的数据对象的示意图;
图9显示客户端装置在接收补丁数据之后的初始化流程图。
主要元件符号说明
通信装置            100
处理器              151
主存储器            152
非易失性内存        153
大量储存装置            154
通信单元                156
电源供应器              158
石英振荡器              159
输入输出装置            160
端口                    164
控制器                  165
管理层服务(MLS)         200
系统初始化管理器(SIM)   210
数据对象实例            220a,220b
存取类别                2201
服务代理器能力          2202
初始化相依关系清单      2203
名称                    2206
执行相依关系清单        2208
服务代理器状态          2209
服务代理器类别          2210
数据库                  230
SIM的数据对象           2301
数据对象实例            240a,240b
存取类别                2401
回呼函式                2402
服务代理器ID            2403
名称                    2406
版本                    2407
外部装置                300
定时器                  50
定时器                  60
密耦合服务代理器(TCSA)  Al-An,Ai,Aj,Ak,Am,An
疏耦合服务代理器(LCSA)              B
具体实施方式
参照图1,本发明所揭露的通信装置100可以包括客户端装置(customerpremises equipment,CPE),例如:以太网络交换器(Ethernet switch)、路由器(router)、调制解调器(modem),例如:缆线调制解调器(cable modem)或高位率数字用户线(very-high-bit rate digital subscriber line,VDSL)调制解调器。所述客户端装置100可以实作成单独一台装置,或整合于各种不同的电子装置中,诸如机顶盒、个人计算机。
1.1通信装置之实施方式
参照图1,处理器151为通信装置100的中央处理器,可以由集成电路(Integrated Circuit,简称IC)组成,用于处理数据及执行计算机程序。通信装置100的组件连接方式如图1所示,可用串行或并行总线、或无线通信信道构成。无线通信单元156建立通信信道,使通信装置100通过所述通信信道以连接至因特网(Internet)。另外,无线通信单元156可以建立无线通信信道,使移动设备,例如笔记本计算机或移动装置(例如移动电话、遥控器、膝上型计算机),通过所述无线通信信道以连接至通信装置100并交换数据。所述通信单元156可以包括天线、基频(base band)及射频(radio frequency,简称RF)芯片组用于进行无线局域网络(wireless local area network,简称wireless LAN)通信、红外线通信及/或蜂巢式通信系统通信,例如宽带分码多重接取(Wideband Code Division Multiple Access,简称W-CDMA)及高速下行封包存取(High Speed Downlink Packet Access,简称HSDPA)。通过所述建立的无线通信信道,所述通信装置100可以作为无线局域网络的接入点(access point),使移动设备可以通过所述接入点以连接因特网(Internet)。
处理器151可以是由单颗封装的IC所组成,或连接多颗相同功能或不同功能的封装IC而组成。举例来说,处理器151可以仅包括中央处理器(Central ProcessingUnit,简称CPU),或者是CPU、数字信号处理器(digital signal processor,简称DSP)、及通信控制器(例如通信单元156)的控制芯片的组合。所述通信控制器可以包括蜂窝式通信系统、红外线、蓝芽(Bluetooth)或无线局域网络的通信控制装置。所述通信控制器用于控制通信装置100中的各组件的通信,或通信装置100与外部装置的通信。
电源供应器158供给电力予通信装置100中的各组件。石英振荡器159提供频率信号给处理器151与通信装置100中的其它组件。定时器50及60可以是由电路、计算机程序或其组合所构成,分别用于计时固定长度的期间。定时器50或60满期(expiration)时产生信号,用于告知所计时的期间结束。输入输出装置160包括控制按钮、字母数字键盘、触控面板、触控屏幕以及多个发光二极管(lightemitting diodes,简称LEDs)。控制器165侦测并控制输入输出装置160的操作及运作,并将所侦测的操作传送至所述处理器151。所述处理器151可以通过控制器165控制输入输出装置160。端口164可以连接到各种计算机化的接口,例如一台外部的计算机装置或外围装置。端口164可以是符合通用总线(universal serial bus,简称USB)或电机电子工程师学会(Institute of Electrical and Electronics Engineers,IEEE)1394等标准的实体端口、美国电子工业协会(Electronic IndustriesAssociation,简称EIA)所制定的第232号推荐标准(Recommended Standard-232,简称RS-232)及/或第11号推荐标准(Recommended Standard-11,简称RS-11)的实体连接端口、串行ATA(Serial ATA,简称SATA)及/或高清晰度多媒体接口(High Definition Multimedia Interface,简称HDMI)。
非易失性内存(nonvolatile memory)153储存固件程序,包括所述处理器151所执行的操作系统190及应用程序。所述处理器151可以从非易失性内存153加载固件程序至主存储器152并以软件程序(process)的形式执行于主存储器152。所述处理器151储存数据于大容量储存装置154。所述主存储器152可以包括随机存取内存(random access memory,简称RAM),例如,例如静态随机存取内存(StaticRAM,简称SRAM)或是动态随机存取内存(Dynamic RAM,简称DRAM)。该非易失性内存153可以是电子可抹除可规划只读存储器(Electrically ErasableProgrammable Read-Only Memory,简称EEPROM)或闪存(flash memory),例如反或(NOR)闪存或是反及(NAND)闪存。
当所述处理器151完成所述操作系统190的初始化,则所述操作系统190初始化并启动所述应用程序中的第一个应用程序作为一个软件程序,称为管理层服务(management layer services,MLS)200。所述通信装置100可以从无线通信信号取得MLS 200的补丁数据,例如通过所述天线、调谐器及解调器取得。或者,所述通信装置100可以从信息网络取得MLS 200的补丁数据,例如通过网络接口从因特网取得。所述补丁数据包括疏耦合服务代理器(loosely coupled service agent,LCSA),用来取代所述通信装置100的密耦合服务代理器(tightly coupled serviceagent,TCSA)。
2.补丁方法实施方式
所述通信装置100中的所述处理器151执行所述MLS 200作为一个软件程序。参照图2,MLS 200包括系统初始化管理器(system initialization manager,SIM)210及多个密耦合服务代理器(tightly coupled service agent,TCSA)A1-An,其中n是大于1的整数。当TCSA A1-An的其中每一个TCSA由所述处理器151执行时,指导所述通信装置100提供功能,例如网络时间协议(network time protocol,NTP)、桥接器(bridge)、防火墙(firewall)、或动态主机组态协议(dynamic host configurationprotocol,简称DHCP)。所述处理器151执行MLS 200软件程序时以线程(thread)的形式执行每一个所述SIM 210及TCSA A1-An。如图3所示,所述TCSA A1-An的其中每一个TCSA具有多个状态可以由SIM 210管理,包括初始状态、已注册状态、等待状态、自行设定状态、已设定状态、启动状态、执行状态、禁能状态及结束状态。在图3中,每个服务代理器的状态以节点表示,其状态切换以连接二节点的线表示。疏耦合服务代理器(loosely coupled service agent,LCSA)的状态及状态切换与图3所示的TCSA状态及状态切换相同。LCSA是补丁数据中携带的服务代理器程序并由所述处理器151以软件程序的形式执行。所述SIM 210控制并管理TCSA A1-An及LCSA的初始化及执行。所述SIM 210利用所述TCSA A1-An及LCSA其中的每个服务代理器的程序呼叫(procedure call)以切换所述服务代理器至所述多个状态的其中一个状态。服务代理器,例如TCSA或LCSA,在初始状态下注册相关的信息于所述SIM 210,并且当完成所述注册时,从所述初始状态切换至已注册状态。所述服务代理器通知所述SIM 210与所述服务代理器相关联的相依关系,并从所述已注册状态切换至所述等待状态。所述相依关系包括所述服务代理器的初始化相依关系及执行相依关系。所述SIM 210根据所述初始化相依关系以控制所述多个TCSA A1-An及LCSA的初始化作业。举例来说,所述SIM 210初始化正处于等待状态的特定服务代理器时,驱动所述特定服务代理器执行自行设定(self-configuraion),并从所述等待状态进入所述自行设定状态。当完成自行设定时,所述特定服务代理器从所述自行设定状态进入所述已设定状态。所述SIM210在驱动所述特定服务代理器自行设定以前,可以驱动所述特定服务代理器所依附的所有TCSA及LCSA进入所述已设定状态。当所述处理器151执行一个服务代理器相关的多个驱动程序时,所述服务代理器切换至所述执行状态。所述SIM210在驱动所述特定服务代理器所依附的所有TCSA及LCSA进入所述执行状态以后,驱动所述特定服务代理器进入启动状态。所述处理器151执行在启动状态的所述特定服务代理器使其进入所述执行状态。当所述处理器151停止执行一个服务代理器相关的多个驱动程序时,所述服务代理器切换至所述禁能状态,并且当所述服务代理器的相关数据被释放而不再与所述服务代理器相关时,所述服务代理器进入所述结束状态。
2.1初始化相依关系数据库及执行相依关系数据库
所述装置100利用技术回报069(Technical Report 069,TR069)中定义的SetParameterValues函式及应用程序接口(application programming interfaced,API)以设定所述数据库230中的值,以及通知多个TCSA及LCSA有关所述数据库230中的值改变的事件。
所述主存储器152储存所述MLS 200及其数据对象和设定文件。所述数据对象包括用于储存所述多个TCSA A1-An及LCSA的初始化相依关系的初始化相依关系数据库,以及用于储存所述多个TCSA A1-An及LCSA的执行相依关系的执行相依关系数据库。所述SIM 210根据所述初始化相依关系对所述TCSA A1-An进行初始化,并根据所述执行相依关系以启动所述TCSA A1-An的执行作业。
图4显示所述对象数据库230中数据对象的实例240a及240b。所述实例240a及240b其中的每个实例关联于一个服务代理器,并且包括下例数据对象:存取类别、回呼函式(callback functions)、服务代理器识别码(agent identification,ID)、名称及版本。举例来说,关联于TCSA Ai的所述实例240a包括存取类别2401、回呼函式2402、服务代理器ID 2403、名称2406及版本2407。其中的变量i是整数,且1≤i≤n。所述存取类别2401数据对象识别其关联的服务代理器TCSA Ai是TCSA或LCSA。所述回呼函式2402包括指向其关联的服务代理器TCSA Ai的回呼函式的参照地址。所述服务代理器ID 2403、名称2406及版本2407分别包括服务代理器TCSA Ai的ID、名称及版本。
图5显示在所述数据库230中的所述SIM 210的数据对象2301。所述SIM 210的数据对象2301包括用于控制服务代理器的数据对象,例如实例220a及220b。每个用于控制服务代理器的数据对象包括存取类别、服务代理器能力、初始化相依关系清单、名称、执行相依关系清单、服务代理器状态及服务代理器类别。举例来说,关联于所述服务代理器TCSA Ai的数据对象实例220a包括存取类别2201、服务代理器能力2202、初始化相依关系清单2203、名称2206、执行相依关系清单2208、服务代理器状态2209及服务代理器类别2210。所述SIM 210记录所述服务代理器TCSA Ai的能力于对象2202、其初始化相依关系清单及执行相依关系清单于对象2203及2208,所述服务代理器TCSA Ai的状态于对象对象2209。所述初始化相依关系清单及执行相依关系清单分别代表所述服务代理器TCSA Ai的初始化相依关系及执行相依关系。所述初始化相依关系清单及执行相依关系清单分别包括所述服务代理器TCSA Ai在初始化时及执行时所依附的多个服务代理器。包括在所述初始化及执行相依关系清单中的服务代理器称为所述服务代理器TCSAAi的基础服务代理器。在图5中,所述初始化相依关系清单仅包括基础服务代理器Aj,而所述执行相依关系清单包括基础服务代理器Ak,Am,及An
2.2原始运作流程
所述MLS 200指导所述处理器151执行以下的作业:
参照图6,所述SIM 210使所述TCSA A1-An其中的每个TCSA从初始状态切换至下个状态(步骤S100)。所述TCSA A1-An其中的每个TCSA起初都在初始状态(步骤S102),并开始在所述SIM 210注册(步骤S104)。当一个TCSA(例如TCSA Ai)完成注册时,所述SIM 210控制所述TCSA从所述初始状态切换至已注册状态(步骤S106)。所述TCSA A1-An其中的每个TCSA在所述SIM 210的注册作业包括注册其服务代理器能力。参照图5,TCSA Ai的服务代理器能力储存在所述数据库230中所述SIM 210的数据对象2202。以下说明以所述TCSA Ai为例,需要了解的是其中的步骤可以适用于所述TCSA A1-An其中的每个TCSA。
所述已注册的TCSA Ai通知SIM 210关于所述TCSA Ai的相依关系(步骤S108)。所述TCSA Ai的相依关系包括初始化相依关系及执行相依关系。所述已注册的TCSA Ai关联所述数据库230中的数据对象(步骤S110)并从所述已注册状态切换至所述等待状态(步骤S112)。在所述步骤S110中的关联作业称为数据绑定。在所述步骤S110中的数据绑定包括储存所述TCSA Ai的ID于服务代理器ID数据对象2403。所述SIM 210根据所述初始化相依关系以驱动所述TCSA Ai的初始化作业,并根据所述执行相依关系以执行所述TCSA Ai(步骤S114)。举例来说,在所述初始化相依关系数据库中的初始化相依关系包括在所述数据库230中的第一关系,用于表示所述TCSA Ai依附于TCSA Aj,换言之,所述TCSA Ai的初始化跟随在所述TCSA Aj的初始化之后。所述变量j是整数,且1≤j≤n,并且j≠i。在所述步骤S114,所述SIM 210依序地驱动所述TCSA Aj及所述TCSA Ai的初始化。在所述TCSA Aj的初始化过程中,所述SIM 210控制所述TCSA Aj进行自行设定,并从所述等待状态切换至所述自行设定状态。在所述TCSA Aj的初始化完成后,所述SIM 210驱动(步骤S116)所述TCSA Ai的初始化,其中所述SIM 210控制所述TCSA Ai进行自行设定,并从所述等待状态切换至所述自行设定状态(步骤S118)。所述TCSA A1-An其中的每个TCSA的初始化,举例来说,可以包括设定所述TCSA的一个或一个以上功能的驱动程序。所述TCSA Ai根据图3进行状态切换。
2.3程序执行期间的补丁运作流程
所述通信单元156与外部装置300通信,并从所述外部装置300接收LCSA B用于取代所述TCSA Ai。所述LCSA B称为所述TCSA Ai的补丁,用于提供第二功能以取代所述TCSA Ai的第一功能。举例来说,所述第一功能及第二功能可以包括例如NTP、桥接器、防火墙、或DHCP功能。
所述处理器151以一个软件程序的形式执行所述LCSA B以取代所述TCSAAi,在所述取代的手段中包括禁能所述TCSA Ai,并将所述TCSA Ai的数据对象关联于所述LCSA B。如图3所示,LCSA B的状态及状态切换如同TCSA。因此,所述装置100可以接收一个或一个以上的LCSA以取代一个或一个以上的TCSA。
参照图7,TCSA Ai起初在初始状态(步骤S200)。所述SIM 210使所述LCSA B从初始状态切换至下个状态(步骤S202)。所述LCSA B开始在所述SIM 210注册(步骤S204)。所述LCSA B在所述SIM 210的注册作业包括注册其服务代理器能力。当LCSA B完成注册时,所述SIM 210控制所述LCSA B从所述初始状态切换至已注册状态(步骤S206)。
所述已注册的LCSA B通知所述SIM 210关于所述LCSA B的相依关系(步骤S208)。所述LCSA B的相依关系包括初始化相依关系及执行相依关系。所述LCSAB及SIM 210指导所述处理器151增加所述LCSA B的相依关系至所述数据库230。所述LCSA B从所述已注册状态切换至所述等待状态(步骤S212)。所述SIM 210根据所述初始化相依关系以驱动所述TCSA A1-An及LCSA B的初始化作业,并根据所述执行相依关系以执行所述所述TCSA A1-An及LCSA B(步骤S214)。举例来说,所述LCSA B的初始化相依关系包括在所述数据库230中的第二关系,用于表示所述LCSA B依附于TCSA Aj。换言之,在步骤S214中,所述LCSA B的初始化跟随在所述TCSA Aj的初始化之后。在所述TCSA Aj的初始化过程中,所述SIM 210控制所述TCSA Aj进行自行设定,并从所述等待状态切换至所述自行设定状态。在所述TCSA Aj的初始化完成后,所述SIM 210驱动所述LCSA B的初始化,其中所述SIM 210控制所述LCSA B进行自行设定,并从所述等待状态切换至所述自行设定状态(步骤S216)。所述LCSA B的初始化,举例来说,可以包括设定所述LCSA B的一个或一个以上功能的驱动程序。
所述LCSA B的自行设定作业包括驱使所述TCSA Ai禁能。举例来说,所述LCSA B请求所述TCSA Ai从所述执行状态切换至禁能状态(步骤S218)。所述TCSA Ai通知所述SIM 210有关其状态已切换至禁能状态(步骤S220)。所述SIM210响应所述通知时,驱使依附于所述TCSA Ai的所有TCSA及LCSA进入等待状态(步骤S222)。所述SIM 210驱使所述TCSA Ai切换至所述结束状态(步骤S224)。
所述LCSA B关联所述数据库230中所述TCSA Ai的数据对象,以完成数据绑定(步骤S226)并从所述自行设定状态切换至所述等待状态(步骤S228)。如图8所示,在所述步骤S226中的数据绑定包括储存所述LCSA B的ID于服务代理器ID数据对象2403。在完成步骤S226之后,所述SIM 210驱动所述LCSA B的初始化(步骤S230),所述LCSA B的初始化过程中,其中所述SIM 210控制所述LCSAB进行自行设定(步骤S230),并从所述等待状态切换至所述自行设定状态(步骤S232)。所述LCSA B的初始化,举例来说,可以包括设定所述LCSA B的一个或一个以上功能的驱动程序。
在所述步骤S208中,所述LCSA B可以于所述数据库230中增加执行相依关系,用于表示所述LCSA B的执行跟随在一个或一个以上的TCSA执行作业之后。所述SIM 210根据所述新增的执行相依关系,在所述一个或一个以上的TCSA已执行之后,才驱动执行所述LCSA B。
2.4系统初始化期间取代作业
参照图9,所述SIM 210使所述TCSA Ai从初始状态切换至下个状态(步骤S300)。所述TCSA Ai开始在所述SIM 210注册(步骤S304)。当TCSA Ai完成注册时,所述SIM 210控制所述TCSA Ai从所述初始状态切换至已注册状态(步骤S306)。
所述已注册的TCSA Ai建立并通知关于所述TCSA Ai的相依关系至SIM 210(步骤S308)。所述TCSA Ai的相依关系包括初始化相依关系及执行相依关系。所述已注册的TCSA Ai关联所述数据库230中的数据对象(步骤S310)并从所述已注册状态切换至所述等待状态(步骤S312)。
所述SIM 210使所述LCSA B从初始状态切换至下个状态(步骤S313)。所述LCSA B开始在所述SIM 210注册(步骤S314)。当LCSA B完成注册时,所述SIM210控制所述LCSA B从所述初始状态切换至已注册状态(步骤S316)。
所述已注册的LCSA B建位并通知关于所述LCSA B的相依关系至所述SIM210(步骤S318)。所述LCSA B的相依关系包括初始化相依关系及执行相依关系。其中所述LCSA B的初始化相依关系表示所述LCSA B的初始化优先于全部的TCSA。步骤S318称为第一次相依关系建立步骤。所述已注册的LCSA B从所述已注册状态切换至所述等待状态(步骤S322)。所述SIM 210根据所述LCSA B的所述初始化相依关系以驱动所述TCSA A1-An及LCSA B的初始化作业(步骤S324)。在所述步骤S324中,所述SIM 210驱动所述LCSA B的所述初始化,优先于包括TCSA Ai的全部TCSA。在所述已注册的LCSA B的初始化中,所述SIM210控制所述LCSA B进行自行设定,并从所述等待状态切换至所述自行设定状态(步骤S326)。
所述LCSA B的自行设定作业包括驱使所述TCSA Ai禁能。举例来说,所述LCSA B请求所述TCSA Ai从所述执行状态切换至禁能状态(步骤S332)。所述TCSA Ai通知所述SIM 210有关其状态已切换至禁能状态。所述SIM 210驱使所述TCSA Ai切换至所述结束状态。
所述LCSA B关联所述数据库230中所述TCSA Ai的数据对象,以完成数据绑定(步骤S334),通知有关所述LCSA B的新相依关系至所述SIM 210(步骤S336),并从所述自行设定状态切换至所述等待状态(步骤S338)。所述LCSA B的新相依关系用于取代在所述第一次相依关系建立步骤中的相依关系。所述LCSA B的新相依关系中的其中一个相依关系表示所述LCSA B的初始化跟随在所述TCSA Aj的初始化之后。在步骤S340中,所述SIM 210驱动所述TCSA Aj的初始化,优先于所述LCSA B的初始化。在所述步骤S340完成后,所述SIM 210驱动所述LCSAB的初始化,其中所述SIM 210控制所述LCSA B进行自行设定(步骤S342),并从所述等待状态切换至所述自行设定状态。所述LCSA B的初始化,举例来说,可以包括设定所述LCSA B的一个或一个以上功能的驱动程序。
3.结论
总之,所述装置100以单独的软件程序形式执行所述MLS 200,并以线程的形式执行多个TCSA以作为所述软件程序中的线程,并接收LCSA以取代错误的TCSA。所述装置100以另个软件程序形式执行所述LCSA。所述SIM 210则标准化管理所述多个TCSA及LCSA的状态。

Claims (8)

1.一种通信装置,其特征在于包括:
内存,储存所述通信装置作为一个软件程序执行的管理层服务,所述软件程序包括多个密耦合服务代理器(tightly coupled service agent,TCSA),所述多个密耦合服务代理器中的每个密耦合服务代理器作为所述管理层服务的线程,所述管理层服务还包括称为系统初始化管理器的线程,用于管理所述多个密耦合服务代理器的初始化,所述内存包括初始化相依数据库,用于储存所述多个密耦合服务代理器的初始化相依关系,以及所述系统初始化管理器根据所述初始化相依关系以初始化所述多个密耦合服务代理器;
通信单元,用于通信连接外部装置,并从所述外部装置接收疏耦合服务代理器(loosely coupled service agent,LCSA)以取代所述多个密耦合服务代理器的其中第一代理器,其中所述疏耦合服务代理器提供第二功能以取代所述第一代理器的第一功能;
处理器,执行所述疏耦合服务代理器时,所述疏耦合服务代理器作为一个软件程序用于取代所述第一代理器,禁能所述第一代理器,并结合所述第一代理器的数据对象至所述疏耦合服务代理器。
2.如权利要求1所述的通信装置,其特征在于,所述初始化相依关系包括第一关系,所述第一关系用于表示所述第一代理器的初始化跟随在所述多个密耦合服务代理器的其中第二代理器的初始化之后;
所述疏耦合服务代理器指导所述处理器增加第二相依关系至所述初始化相依关系,所述第二关系表示所述疏耦合服务代理器的初始化跟随在所述第二代理器的初始化之后;
所述系统初始化管理器指导所述处理器根据所述第二相依关系在所述第二代理器的初始化之后,启动所述疏耦合服务代理器的初始化;以及
所述疏耦合服务代理器使所述第一代理器被禁能。
3.如权利要求2所述的通信装置,其特征在于,所述通信装置还包括:
在所述通信装置初始化期间,所述疏耦合服务代理器增加第三相依关系至所述初始化相依关系,所述第三相依关系表示所述疏耦合服务代理器的初始化先于所述多个密耦合服务代理器的初始化;
在根据所述第三相依关系进行的所述疏耦合服务代理器初始化期间,所述疏耦合服务代理器使所述第一代理器被禁能,并增加所述第二相依关系至所述初始化相依关系以取代所述第三关系。
4.如权利要求2所述的通信装置,其特征在于,所述第一代理器具有多个状态,且所述系统初始化管理器利用所述第一代理器的程序呼叫以切换所述第一代理器至所述多个状态的其中一个状态。
5.如权利要求4所述的通信装置,其特征在于,所述内存包括执行相依数据库,用于储存所述多个密耦合服务代理器的执行相依关系,以及所述系统初始化管理器根据所述执行相依关系以启动所述多个密耦合服务代理器的执行作业。
6.如权利要求5所述的通信装置,其特征在于,所述执行相依关系包括第四相依关系,所述第四相依关系用于表示所述第一代理器的执行作业跟随在所述多个密耦合服务代理器的其中第三代理器的执行作业之后;
在所述通信装置接收所述疏耦合服务代理器之后,所述处理器注册所述疏耦合服务代理器于所述系统初始化管理器;
所述疏耦合服务代理器增加第五相依关系至所述执行相依关系,所述第五关系表示所述疏耦合服务代理器的执行作业跟随在所述第三代理器的执行作业之后;以及
所述系统初始化管理器根据所述第五相依关系在所述第三代理器的执行作业之后,启动所述疏耦合服务代理器的执行作业。
7.一种通信装置固件补丁方法,执行于通信装置,所述通信装置包括内存、通信单元及处理器,其特征在于所述方法包括:
储存所述通信装置作为一个软件程序执行的管理层服务于所述内存,所述软件程序包括多个密耦合服务代理器,所述多个密耦合服务代理器中的每个密耦合服务代理器作为所述管理层服务的线程,所述管理层服务还包括称为系统初始化管理器的线程,用于管理所述多个密耦合服务代理器的初始化,所述内存包括初始化相依数据库,用于储存所述多个密耦合服务代理器的初始化相依关系,以及所述系统初始化管理器根据所述初始化相依关系以初始化所述多个密耦合服务代理器;
所述通信单元用于通信连接外部装置,并从所述外部装置接收疏耦合服务代理器以取代所述多个密耦合服务代理器的其中第一代理器,其中所述疏耦合服务代理器提供第二功能以取代所述第一代理器的第一功能;
所述处理器执行所述疏耦合服务代理器时,所述疏耦合服务代理器作为一个软件程序用于取代所述第一代理器,禁能所述第一代理器,并结合所述第一代理器的数据对象至所述疏耦合服务代理器。
8.如权利要求7所述的通信装置固件补丁方法,其特征在于,所述初始化相依关系包括第一关系,所述第一关系用于表示所述第一代理器的初始化跟随在所述多个密耦合服务代理器的其中第二代理器的初始化之后;
所述疏耦合服务代理器指导所述处理器增加第二相依关系至所述初始化相依关系,所述第二关系表示所述疏耦合服务代理器的初始化跟随在所述第二代理器的初始化之后;
所述系统初始化管理器指导所述处理器根据所述第二相依关系在所述第二代理器的初始化之后,启动所述疏耦合服务代理器的初始化;以及
所述疏耦合服务代理器使所述第一代理器被禁能。
CN201010520280.0A 2010-10-26 2010-10-26 通信装置及其固件补丁方法 Expired - Fee Related CN102455918B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201010520280.0A CN102455918B (zh) 2010-10-26 2010-10-26 通信装置及其固件补丁方法
US12/981,459 US20120102475A1 (en) 2010-10-26 2010-12-29 Communication device and firmware patching method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201010520280.0A CN102455918B (zh) 2010-10-26 2010-10-26 通信装置及其固件补丁方法

Publications (2)

Publication Number Publication Date
CN102455918A CN102455918A (zh) 2012-05-16
CN102455918B true CN102455918B (zh) 2014-04-30

Family

ID=45974084

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201010520280.0A Expired - Fee Related CN102455918B (zh) 2010-10-26 2010-10-26 通信装置及其固件补丁方法

Country Status (2)

Country Link
US (1) US20120102475A1 (zh)
CN (1) CN102455918B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5669433B2 (ja) * 2010-05-06 2015-02-12 キヤノン株式会社 部品結合装置及び部品結合方法
US10846076B2 (en) * 2016-10-11 2020-11-24 Barfield, Inc. Remote application update of measurement device field firmware

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6098158A (en) * 1997-12-18 2000-08-01 International Business Machines Corporation Software-enabled fast boot
US7055146B1 (en) * 2001-03-08 2006-05-30 Microsoft Corporation Method and system for dynamically inserting modifications for identified programs
CN101416441A (zh) * 2006-03-31 2009-04-22 英特尔公司 基于分层信任的姿态报告和策略实施

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7472380B1 (en) * 2002-09-23 2008-12-30 Hewlett-Packard Development Company, L.P. Processing system with component architecture platform support
US7784044B2 (en) * 2002-12-02 2010-08-24 Microsoft Corporation Patching of in-use functions on a running computer system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6098158A (en) * 1997-12-18 2000-08-01 International Business Machines Corporation Software-enabled fast boot
US7055146B1 (en) * 2001-03-08 2006-05-30 Microsoft Corporation Method and system for dynamically inserting modifications for identified programs
CN101416441A (zh) * 2006-03-31 2009-04-22 英特尔公司 基于分层信任的姿态报告和策略实施

Also Published As

Publication number Publication date
CN102455918A (zh) 2012-05-16
US20120102475A1 (en) 2012-04-26

Similar Documents

Publication Publication Date Title
CN102855152B (zh) 升级应用程序中资源文件的方法及系统
CN105704234A (zh) 智能设备的控制方法及装置
CN103716390A (zh) 一种数据分享方法及终端
CN101814036A (zh) 一种rf远程升级方法及系统
JP2007241989A (ja) 移動体電子装置
CN105049502A (zh) 一种云端网络管理系统中设备软件更新的方法和装置
CN104025715A (zh) 用来服务移动蜂窝用户的增强的照明网络及其操作的方法
CN102301760A (zh) 用于跟踪设备管理数据改变的方法和设备
CN104462328A (zh) 一种基于哈希表与双循环链表的混合数据管理方法及装置
CN106020901A (zh) 一种应用程序入口配置方法及终端
CN102455918B (zh) 通信装置及其固件补丁方法
CN101656975B (zh) 无线传感器网络节点现场无线程序更新装置及其更新方法
CN101521600B (zh) 一种网关设备中业务控制方法和网关设备
CN105262890A (zh) 便携式电子装置应用程序的信息更新控制系统与方法
CN105824660A (zh) 一种应用程序的更新方法及终端
CN104158709A (zh) 一种光模块识别的方法及端口扩展设备
US10523508B2 (en) Monitoring management systems and methods
CN101127000A (zh) 促进灾难恢复的装置和方法
CN101950272A (zh) 一种嵌入式系统中内存管理的方法和装置
CN112333295A (zh) 一种多路径连接方法、装置及电子设备和存储介质
CN102946564A (zh) 视频服务系统自动升级的方法
CN104578418A (zh) 基于101规约配电自动化设备的配置方法和系统及设备
US20200244782A1 (en) Communication device, method of communication device, and non-transitory computer readable storage medium
US9674774B2 (en) Method and device for binding information
CN106528246A (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
C14 Grant of patent or utility model
GR01 Patent grant
C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20160114

Address after: 541000 No. 98, Liuhe Road, Guilin, the Guangxi Zhuang Autonomous Region

Patentee after: GUILIN XINTONG TECHNOLOGY CO., LTD.

Address before: 518109 Guangdong city of Shenzhen province Baoan District Longhua Town Industrial Zone tabulaeformis tenth East Ring Road No. 2 two

Patentee before: Hongfujin Precise Industry (Shenzhen) Co., Ltd.

Patentee before: Hon Hai Precision Industry Co., Ltd.

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20160309

Address after: 750000 No. 288, east the Great Wall Road, the Ningxia Hui Autonomous Region, Yinchuan

Patentee after: INFORMATION COMMUNICATION COMPANY, STATE GRID NINGXIA ELECTRIC POWER CO., LTD.

Address before: 541000 No. 98, Liuhe Road, Guilin, the Guangxi Zhuang Autonomous Region

Patentee before: GUILIN XINTONG TECHNOLOGY CO., LTD.

CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20140430

Termination date: 20181026

CF01 Termination of patent right due to non-payment of annual fee