CN101073056A - 程序取得执行装置、程序取得执行方法、程序取得执行程序记录媒体及程序取得执行程序 - Google Patents
程序取得执行装置、程序取得执行方法、程序取得执行程序记录媒体及程序取得执行程序 Download PDFInfo
- Publication number
- CN101073056A CN101073056A CNA2005800422835A CN200580042283A CN101073056A CN 101073056 A CN101073056 A CN 101073056A CN A2005800422835 A CNA2005800422835 A CN A2005800422835A CN 200580042283 A CN200580042283 A CN 200580042283A CN 101073056 A CN101073056 A CN 101073056A
- Authority
- CN
- China
- Prior art keywords
- program
- communication mode
- execution
- acquisition
- obtains
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/541—Interprogram communication via adapters, e.g. between incompatible applications
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
- Information Transfer Between Computers (AREA)
- Telephonic Communication Services (AREA)
Abstract
在取得多个程序并执行时,若通信方式中存在不匹配,则在程序间不能通信。程序取得部(101)从程序存储装置(150)取得多个程序,程序执行部(102)执行取得的程序。若通信方式不匹配检测部(304)检测出这多个程序互相通信时的通信方式不匹配,则通过由通信方式转换部(203)转换这多个程序互相通信时的通信方式,或由程序取得部(102)再次取得程序,可使多个程序互相通信成为可能。
Description
技术领域
本发明涉及一种程序取得执行装置、程序取得执行方法、程序取得执行程序记录媒体及程序取得执行程序,特别涉及谋求改良经由网络或无线装置等通信媒体、利用下载、上载等从程序存储装置取得程序并予以执行的程序取得执行装置、程序取得执行方法、程序取得执行程序记录媒体及程序取得执行程序。
背景技术
作为现有的程序取得执行装置,存在如下装置:由于即便对由该装置取得、执行的程序的API(Application Programming Interface)生成新版本时,也可实现能在新版本的装置上执行旧版本程序的所谓上位互换性,所以决定以在新版本API中包含旧版本API的形式来规定新版本的API(例如,参照非专利文献1的2.8节“Versioning”)。
即,新版本API为了确保与旧的API的上位互换性,通过对于旧的API而言,完全不变更其标准地向其追加新的API组,来定义新的API。
这里,所谓API相当于从应用程序可利用的、在操作系统(OS)或编程语言处理系统(程序编制器等)中准备的程序库等的功能协约,大多作为用于确定具有文件控制、窗口控制、图像处理、文字控制等功能的命令或函数、或为了利用这些命令或函数的程序上的手续的协约而被提供。
通过使用API,计算机软件可在广义的含义下与其他软件互相通信。另外,API是用于使偏低级硬件的软件和偏高级人类的软件之间的关系更抽象化的一种方法。
API的目的之一是提供操作窗口或描绘图标等共用的功能(函数)。如果使用这种功能,则即便编程者每次不编码,也可得到文件控制函数或窗口控制函数等。
图18(a)示出所述非专利文献1中记载的现有的程序取得执行装置。
在图18(a)中,程序取得执行装置100具备程序取得部101和程序执行部102。
另外,程序存储装置150存储程序取得执行装置100取得并执行用的程序。
程序取得部101经由通信路径等通信媒体200从一个或多个程序存储装置150中取得一个或多个程序。
程序执行部102执行程序取得部101取得的一个或多个程序。
程序取得部101取得的程序基于预定的API而生成,另外,程序执行部102还被构成为执行基于与其相同的API的程序。因此,程序取得部101取得的程序可由程序执行部102执行。
图18(b)是表示该现有的程序取得执行装置的具体结构的一例的框图。
作为程序取得执行装置的计算机100a具有CPU1001、RAM1002、ROM1003及通信接口1004,这些部件通过总线1005互相连接。
另外,计算机100a与作为程序存储装置的文件服务器150a经由作为通信媒体的通信路径200a互相连接。
计算机100a中的CPU1001利用ROM1003中记录的程序来控制通信接口1004,将指令输出到文件服务器150a。
文件服务器150a检索由该指令指定的程序,并将检索出的程序送出到计算机100a。
计算机100a的通信接口1004接收该程序,并将其存储在作为作业区的RAM1002中。
CPU1001在记录于ROM1003中的OS(Operating System)等监视程序的控制基础上,执行从文件服务器取得的程序。
即,由CPU1001、ROM1003、通信接口1004构成的部分相当于图18(a)的程序取得部101。另外,由CPU1001、RAM1002、ROM1003构成的部分相当于程序执行部102。
可是,在使用了非专利文献1中公开的技术的现有程序取得执行装置中,决定以在新版本API中包含旧版本API的形式来规定新版本的API。因此,程序取得部101取得的程序的API版本即便是比程序执行部102所依据的版本还旧的版本,也可无问题地执行。
即,如果是单独的程序,则可通过使用非专利文献1中公开的技术来实现API版本的上位互换性。
图19以作为家庭网络的HAVi(Home Audio/Vidiointeroperability)为例,示出了取得并执行这种程序时的具体系统结构。
该现有例示出了作为程序取得执行装置的TV接收机100b和作为程序存储装置的VTR150b经由作为通信媒体的IEEE1394电缆200b而互相连接的状态。
即,该家庭网络是TV接收机100b和VTR150b互相协调动作、在TV接收机100b上显示由VTR150b再现的图像源的网络。
为了能够执行该协调动作,预先在VTR150b侧为每个机型准备TV接收机100b用的控制程序,在经IEEE1394电缆200b连接TV接收机100b和VTR150b的时刻互相交换信息,从VTR150b侧下载对应于TV接收机100b的类型的程序。
由此,TV接收机100b可执行最适于该机型的控制程序,与VTR协调动作。
非专利文献1:“The HAVIi Specification Version 1.1”、[联机]、平成13年5月15日、HAVi Inc.、[平成16年9月27日检索]、因特网<http://www.havi.org/memberarea/docs/05150IDocuments/release-May15-HAVi1.1(clean).pdf>
可是,在所述现有结构中,在取得多个程序、这些程序彼此边相互利用边执行时,在分别基于新的API和旧的API的程序混合存在等情况下,即便想从基于新版本API的程序利用基于旧版本API的程序所具有的功能,也只能利用旧版本的API。
即,通过使用非专利文献1中公开的技术,在程序执行部102依照新版本API时,可以执行基于新版本API的程序和基于旧版本API的程序两者。
可是,在某个程序利用其他的程序时,由于基于旧版本API的程序不对应于新版本的API,所以只能从基于新版本API的程序利用旧版本的API。
另外,利用对方的程序所依据的API是新版本API还是旧版本API,只有在执行程序时才可知。
因而,基于新版本的程序必须针对每个利用对方的程序检查对方程序使用哪种版本的API,并且使用对方所使用的API,以利用对方程序所具有的功能。
因此,在多个程序协调动作时,即便这些版本间存在不匹配,为了尽可能执行程序,任一程序在利用其他程序的功能的地方,还必需针对比各程序所使用的API还旧的全部版本的API中的每一个具有使用该API的代码,从而导致程序结构复杂化和尺寸巨大化等问题。
并且,相反地,即便基于旧版本的程序想利用基于新版本的程序,基于旧版本的程序也无法知道向基于新版本的程序追加怎样的功能,通常不可能准备与比自身还新的版本的API相对应的代码,所以,就比自身还新的版本的API而言,首先具有不能利用的问题。
发明内容
本发明鉴于上述问题作出,其目的在于提供一种程序取得执行装置、程序取得执行方法、程序取得执行程序记录媒体及程序取得执行程序,在取得多个程序并使其协调动作时,即便在这些程序的版本间存在不匹配的情况下,也无需为每个利用对方的程序版本准备不同的代码,即可利用对方程序,另外,基于旧版本的程序可利用基于新版本的程序。
另外,本发明的目的在于提供一种程序取得执行装置、程序取得执行方法、程序取得执行程序记录媒体及程序取得执行程序,不仅限于解决上述多个程序间的API版本的不匹配,还整体解决多个程序间的通信方式不匹配。
即,本发明的目的在于提供一种程序取得执行装置、程序取得执行方法、程序取得执行程序记录媒体级程序取得执行程序,在取得多个程序并使其协调动作时,即便在这些程序间的通信方式中存在不匹配的情况下,也无需按每个利用对方的程序可使用的通信方式的类型来准备不同的代码,即可利用对方的程序。
为了解决所述现有问题,本发明技术方案1的程序取得执行装置经由通信媒体从程序存储装置取得并执行程序,其特征在于,具备:从程序存储装置取得程序的程序取得部;执行该程序取得部取得的程序的程序执行部;和转换在该程序执行部执行的多个程序互相通信时的通信方式的通信方式转换部。
本发明技术方案2的程序取得执行装置经由通信媒体从程序存储装置取得并执行程序,其特征在于,具备:从程序存储装置取得程序的程序取得部;执行该程序取得部取得的程序的程序执行部;和检测在该程序执行部执行的多个程序互相通信时的通信方式不匹配的通信方式不匹配检测部。
本发明技术方案3的程序取得执行装置的特征在于:在技术方案2所述的程序取得执行装置中,在所述通信方式不匹配检测部检测出通信方式不匹配时,所述程序取得部再次取得程序。
本发明技术方案4的程序取得执行装置的特征在于:在技术方案2或技术方案3所述的程序取得执行装置中,还具备通信方式转换部,在所述通信方式不匹配检测部检测出通信方式不匹配时,转换所述程序执行部执行的多个程序互相通信时的通信方式。
本发明技术方案5的程序取得执行装置的特征在于:在技术方案3或技术方案4所述的程序取得执行装置中,还具备匹配通信方式确定部,确定所述程序取得部再次取得的程序应使用的、取得了匹配的通信方式,所述程序取得部再次取得使用所述匹配通信方式确定部确定的通信方式的程序。
本发明技术方案6的程序取得执行装置的特征在于:在技术方案5所述的程序取得执行装置中,所述匹配通信方式确定部从所述程序取得部已取得的程序使用的通信方式中,确定取得了匹配的通信方式。
本发明技术方案7的程序取得执行装置的特征在于:在技术方案5所述的程序取得执行装置中,所述匹配通信方式确定部从可从一个或多个所述程序存储装置中再次取得的程序使用的通信方式中,确定取得了匹配的通信方式。
本发明技术方案8的程序取得执行装置的特征在于:在技术方案5~7中任一所述的程序取得执行装置中,所述匹配通信方式确定部从取得了匹配的通信方式的候补中选择最新的通信方式,确定为取得了匹配的通信方式。
本发明技术方案9的程序取得执行装置的特征在于:在技术方案5~7中任一所述的程序取得执行装置中,所述匹配通信方式确定部从取得了匹配的通信方式的候补中,选择所述程序取得部再次取得程序时的成本为最廉价的通信方式,确定为取得了匹配的通信方式。
本发明技术方案10的程序取得执行装置的特征在于:在技术方案5~9中任一所述的程序取得执行装置中,在所述程序取得部取得使用所述匹配通信方式确定部确定的取得了匹配的通信方式的程序失败时,所述匹配通信方式确定部再确定取得了匹配的通信方式,所述程序取得部再次取得使用所述匹配通信方式确定部再确定的通信方式的程序。
本发明技术方案11的程序取得执行装置的特征在于:在技术方案5~10中任一所述的程序取得执行装置中,还具备通信方式确定方法指示部,指示所述通信方式确定部确定取得了匹配的通信方式的方法,所述通信方式确定部以所述通信方式确定方法指示部指示的方法确定取得了匹配的通信方式。
本发明技术方案12的程序取得执行装置的特征在于:在技术方案5~11中任一所述的程序取得执行装置中,所述程序取得部仅再次取得所述通信方式不匹配检测部检测出通信方式不匹配的程序。
本发明技术方案13的程序取得执行装置的特征在于:在技术方案5~11中任一所述的程序取得执行装置中,所述程序取得部再次取得所述程序执行部执行所需的全部程序。
本发明技术方案14的程序取得执行装置的特征在于:在技术方案5~13中任一所述的程序取得执行装置中,所述程序取得部仅再次取得程序中存在所述通信方式不匹配检测部检测出的通信方式不匹配的部分。
本发明技术方案15的程序取得执行装置的特征在于:在技术方案1或技术方案4~14中任一所述的程序取得执行装置中,所述通信方式转换部通过执行转换通信方式的转换程序来转换通信方式,所述程序取得部取得所述通信方式转换部执行的转换程序。
本发明技术方案16的程序取得执行装置的特征在于:在技术方案1或技术方案4~15中任一所述的程序取得执行装置中,具备指示所述通信方式转换部转换通信方式的方法的通信方式转换方法指示部,所述通信方式转换部以所述通信方式转换方法指示部指示的方法转换通信方式。
本发明技术方案17的程序取得执行装置的特征在于:在技术方案1~16中任一所述的程序取得执行装置中,具备指示所述程序取得部取得程序的方法的程序取得方法指示部,所述程序取得部以所述程序取得方法指示部指示的方法取得程序。
本发明技术方案18的程序取得执行装置的特征在于:在技术方案2~17中任一所述的程序取得执行装置中,所述通信方式不匹配检测部在所述程序执行部开始执行程序之前,检测通信方式的不匹配。
本发明技术方案19的程序取得执行装置的特征在于:在技术方案2~17中任一所述的程序取得执行装置中,所述通信方式不匹配检测部在所述程序执行部执行程序的过程中,逐次检测通信方式的不匹配。
本发明技术方案20的程序取得执行装置的特征在于:在技术方案3~19中任一所述的程序取得执行装置中,还具备程序存储部,存储成为所述程序取得部再次取得的对象的程序或程序的一部分,所述程序执行部在执行所述程序取得部再次取得的程序或程序的一部分之后,再次执行所述程序存储部存储的程序。
本发明技术方案21的经通信媒体从程序存储装置取得并执行程序的程序取得执行方法,其特征在于,包含:从程序存储装置取得程序的程序取得步骤;执行该程序取得步骤取得的程序的程序执行步骤;和通信方式转换步骤,转换该程序执行步骤执行的多个程序互相通信时的通信方式。
本发明技术方案22的经通信媒体从程序存储装置取得并执行程序的程序取得执行方法,其特征在于,包含:从程序存储装置取得程序的程序取得步骤;执行该程序取得步骤取得的程序的程序执行步骤;和通信方式不匹配检测步骤,检测该程序执行步骤执行的多个程序互相通信时的通信方式的不匹配。
本发明技术方案23的程序取得执行程序记录媒体记录了使计算机执行经通信媒体从程序存储装置取得并执行程序的程序取得执行方法的程序,其特征在于,所述程序取得执行方法包含:从程序存储装置取得程序的程序取得步骤;执行由该程序取得步骤取得的程序的程序执行步骤;和通信方式转换步骤,转换程序执行步骤执行的多个程序互相通信时的通信方式。
本发明技术方案24的程序取得执行程序记录媒体记录了使计算机执行经通信媒体从程序存储装置取得并执行程序的程序取得执行方法的程序,其特征在于,所述程序取得执行方法包含:从程序存储装置取得程序的程序取得步骤;执行由该程序取得步骤取得的程序的程序执行步骤;和通信方式不匹配检测步骤,检测该程序执行步骤执行的多个程序互相通信时的通信方式的不匹配。
本发明技术方案25的程序取得执行程序使计算机执行经通信媒体从程序存储装置取得并执行程序的程序取得执行方法,其特征在于,所述程序取得执行方法包含:从程序存储装置取得程序的程序取得步骤;执行由该程序取得步骤取得的程序的程序执行步骤;和通信方式转换步骤,转换该程序执行步骤执行的多个程序互相通信时的通信方式。
本发明技术方案26的程序取得执行程序使计算机执行经通信媒体从程序存储装置取得并执行程序的程序取得执行方法,其特征在于,所述程序取得执行方法包含:从程序存储装置取得程序的程序取得步骤;执行由该程序取得步骤取得的程序的程序执行步骤;和通信方式不匹配检测步骤,检测该程序执行步骤执行的多个程序互相通信时的通信方式的不匹配。
发明效果
根据技术方案1所述的程序取得执行装置,在取得多个程序并使其协调动作时,即便在所述多个程序可使用的通信方式中存在不匹配的情况下,也可通过转换所述多个程序互相通信时的通信方式,使所述多个程序互相通信成为可能。
根据技术方案2所述的程序取得执行装置,在取得多个程序并使其协调动作时,即便在所述多个程序可使用的通信方式中存在不匹配的情况下,也可通过检测所述不匹配,采取必要的措施。
根据技术方案3所述的程序取得执行装置,除技术方案2所述的程序取得执行装置产生的效果外,还可通过再次取得检测出所述不匹配的程序,以无不匹配的组合执行所述多个程序。
根据技术方案4所述的程序取得执行装置,除技术方案2或3所述的程序取得执行装置产生的效果外,还可通过转换检测出所述不匹配的程序的通信方式,使所述多个程序互相通信成为可能。
根据技术方案5所述的程序取得执行装置,除技术方案3或4所述的程序取得执行装置产生的效果外,就检测出所述不匹配的程序而言,还可通过再次取得使用取得了匹配的通信方式的程序,使所述多个程序互相通信成为可能。
根据技术方案6所述的程序取得执行装置,除技术方案5所述的程序取得执行装置产生的效果外,还可通过从所述多个程序可使用的通信方式中确定取得了匹配的通信方式,再次取得使用所述取得了匹配的通信方式的程序,使所述多个程序互相通信成为可能。
根据技术方案7所述的程序取得执行装置,除技术方案5所述的程序取得执行装置产生的效果外,还可通过从可从程序存储装置再次取得的程序所使用的通信方式中确定取得了匹配的通信方式,再次取得使用所述取得了匹配的通信方式的程序,使所述多个程序互相通信成为可能。
根据技术方案8所述的程序取得执行装置,除技术方案5~7中任一所述的程序取得执行装置产生的效果外,还可尽可能使用新的通信方式,使所述多个程序互相通信成为可能。
根据技术方案9所述的程序取得执行装置,除技术方案5~7中任一所述的程序取得执行装置产生的效果外,可使用于使所述多个程序互相通信的再次取得时的成本尽可能廉价。
根据技术方案10所述的程序取得执行装置,除技术方案5~9中任一所述的程序取得执行装置产生的效果外,即便在再次取得使用确定为取得了匹配的通信方式的通信方式的程序失败时,也可通过再确定取得了匹配的通信方式,再次取得使用所述再次确定的取得了匹配的通信方式的程序,使所述多个程序互相通信成为可能。
根据技术方案11所述的程序取得执行装置,除技术方案5~10中任一所述的程序取得执行装置产生的效果外,还可通过用户可选择确定取得了匹配的通信方式的方法,再次取得使用根据所述用户选择的方法确定的、取得了匹配的通信方式的程序,使所述多个程序互相通信成为可能。
根据技术方案12所述的程序取得执行装置,除技术方案5~11中任一所述的程序取得执行装置产生的效果外,还可通过仅再次取得检测出不匹配的程序而非所述多个程序的全部,实现对程序的高效再次取得。
根据技术方案13所述的程序取得执行装置,除技术方案5~11中任一所述的程序取得执行装置产生的效果外,还可通过再次取得所述多个程序的全部,避免产生仅取得所述多个程序的一部分所导致的更不匹配。
根据技术方案14所述的程序取得执行装置,除技术方案5~13中任一所述的程序取得执行装置产生的效果外,还可通过仅部分地再次取得程序中存在通信方式不匹配的部分,使再次取得的成本更小。
根据技术方案15所述的程序取得执行装置,除技术方案1或技术方案4~14中任一所述的程序取得执行装置产生的效果外,还可利用从程序存储装置取得的转换程序,通过转换所述多个程序互相通信时的通信方式,变更所述多个程序互相通信时的通信方式转换方法本身。
根据技术方案16所述的程序取得执行装置,除技术方案1或技术方案4~15中任一所述的程序取得执行装置产生的效果外,还可通过用户选择转换通信方式的方法,利用所述用户选择的方法,转换所述多个程序互相通信时的通信方式,使所述多个程序互相通信成为可能。
根据技术方案17所述的程序取得执行装置,除技术方案1~16中任一所述的程序取得执行装置产生的效果外,用户还可选择取得程序的方法,利用所述用户选择的方法,再次取得检测出不匹配的程序,使所述多个程序互相通信成为可能。
根据技术方案18所述的程序取得执行装置,除技术方案2~17中任一所述的程序取得执行装置产生的效果外,还通过在开始执行程序之前检测通信方式的不匹配,避免程序执行中再次取得或再次执行程序。
根据技术方案19所述的程序取得执行装置,除技术方案2~17中任一所述的程序取得执行装置产生的效果外,还可通过在程序执行中依次检测通信方式的不匹配,避免程序执行前的不匹配检测所导致的执行开始延迟。
根据技术方案20所述的程序取得执行装置,除技术方案3~19中任一所述的程序取得执行装置产生的效果外,还通过仍存储检测出不匹配的原程序,就该程序而言,再次取得并执行使用取得了匹配的通信方式的程序,可以在消除通信方式的不匹配后,执行原程序。
根据技术方案21所述的程序取得执行方法,在取得多个程序并使其协调动作时,即便在所述多个程序可使用的通信方式中存在不匹配的情况下,也可通过转换所述多个程序互相通信时的通信方式,使所述多个程序互相通信成为可能。
根据技术方案22所述的程序取得执行方法,在取得多个程序并使其协调动作时,即便在所述多个程序可使用的通信方式中存在不匹配的情况,也可通过检测所述不匹配,采取必要的处理。
根据技术方案23所述的程序取得执行程序记录媒体,在取得多个程序并使其协调动作时,即便在所述多个程序可使用的通信方式中存在不匹配的情况,也可通过转换所述多个程序互相通信时的通信方式,使所述多个程序互相通信成为可能。
根据技术方案24所述的程序取得执行程序记录媒体,在取得多个程序并使其协调动作时,即便是在所述多个程序可使用的通信方式中存在不匹配的情况,也可通过检测所述不匹配,采取必要的处理。
根据技术方案25所述的程序取得执行程序,在取得多个程序并使其协调动作时,即便是在所述多个程序可使用的通信方式中存在不匹配的情况,也可通过转换所述多个程序互相通信时的通信方式,使所述多个程序互相通信成为可能。
根据技术方案25所述的程序取得执行程序,在取得多个程序并使其协调动作时,即便是在所述多个程序可使用的通信方式中存在不匹配的情况,也可通过检测所述不匹配,采取必要的处理。
附图说明
图1(a)是本发明实施方式1中的程序取得执行装置的结构图。
图1(b)是表示本发明实施方式1中的程序取得执行装置的分层结构图。
图1(c)是表示本发明实施方式1中的程序取得执行装置的分层结构图。
图1(d)是表示本发明实施方式1中的程序取得执行装置的分层结构图。
图1(e)是表示本发明实施方式1中的程序取得执行装置的程序文件的结构图。
图1(f)是表示本发明实施方式1中的程序取得执行装置的API转换动作的流程图。
图1(g)是表示本发明实施方式1中检测程序取得执行装置的API版本不一致的动作的模式图。
图1(h)是表示包含本发明实施方式1中的程序取得执行装置的系统的结构例图。
图2(a)是表示作为本发明实施方式1的变形例的便携电话机的结构例图。
图2(b)是表示更新作为本发明实施方式1的变形例的便携电话机的程序的系统的结构例图。
图2(c)是表示图2(b)的服务器动作的流程图。
图2(d)是表示图2(b)的便携电话机的动作的流程图。
图2(e)是表示图2(b)的便携电话机显示更新用程序列表的状态图。
图2(f)是表示选择图2(b)的便携电话机的更新用程序列表的状态图。
图2(g)是表示图2(b)的便携电话机的希望更新列表的数据结构例图。
图2(h)是表示图2(b)的服务器动作的流程图。
图2(i)是表示图2(b)的便携电话机的动作的流程图。
图3(a)是表示本发明实施方式2中的程序取得执行装置的结构图。
图3(b)是表示本发明实施方式2中的程序文件的数据结构图。
图3(c)是表示本发明实施方式2中的数据文件的数据结构图。
图4是表示本发明实施方式3中的程序取得执行装置的结构图。
图5是表示本发明实施方式4中的程序取得执行装置的结构图。
图6是表示本发明实施方式5~10中的程序取得执行装置的结构图。
图7是表示本发明实施方式1中的程序取得执行装置的动作的示意流程图。
图8是表示本发明实施方式1中的程序取得执行装置中、由程序执行部执行的程序所使用的API的一例图。
图9(a)是表示本发明实施方式1中的程序取得执行装置中、由通信方式转换部执行的通信方式转换例的图。
图9(b)是表示本发明实施方式1中利用通信方式转换程序构成程序取得执行装置的通信方式转换部时的结构例图。
图9(c)是表示本发明实施方式1中利用通信方式转换程序构成程序取得执行装置的通信方式转换部时使用的转换表之一例图。
图10是表示本发明实施方式2中程序取得执行装置的动作的示意流程图。
图11(a)是表示本发明实施方式3中程序取得执行装置的动作的示意流程图。
图11(b)是表示图11(a)的步骤S26的更详细处理的一例的流程图。
图12是表示本发明实施方式4中程序取得执行装置的动作的示意流程图。
图13(a)是表示本发明实施方式5中程序取得执行装置的动作的示意流程图。
图13(b)是表示图13(a)的步骤S59的更详细处理的一例的流程图。
图13(c)是表示图13(a)的步骤S59中使用的通信方式上位互换性的表的一例图。
图13(d)是表示本发明实施方式6中的程序取得执行装置的处理的详细流程图。
图13(e)是表示本发明实施方式7中的程序取得执行装置的处理的详细流程图。
图13(f)是表示本发明实施方式8中的程序取得执行装置的处理的详细流程图。
图13(g)是表示本发明实施方式8中的程序取得执行装置使用的通信方式的新表的图。
图13(h)是表示本发明实施方式9中的程序取得执行装置的处理的详细流程图。
图13(i)是表示图13(h)的步骤S596c中使用的程序文件的数据结构的另一例图。
图13(j)是表示图13(h)的步骤S596c中使用的程序文件的数据结构的另一例图。
图13(k)是表示本发明实施方式10中的程序取得执行装置的动作的示意流程图。
图14(a)是本发明实施方式11~15中的程序取得执行装置的结构图。
图14(b)是表示本发明实施方式11中的程序取得执行装置的动作原理的流程图。
图14(c)是表示本发明实施方式12中的程序取得执行装置的动作原理的流程图。
图14(d)是表示本发明实施方式13中的程序取得执行装置的动作原理的流程图。
图14(e)是表示本发明实施方式14中的程序取得执行装置的动作原理的流程图。
图14(f)是表示本发明实施方式15中的程序取得执行装置的动作原理的流程图。
图15(a)是本发明实施方式16中的程序取得执行装置的结构图。
图15(b)是表示本发明实施方式16中的程序取得执行装置的动作原理的流程图。
图16(a)是本发明实施方式17~19中的程序取得执行装置的结构图。
图16(b)是表示本发明实施方式17中的程序取得执行装置的动作原理的流程图。
图16(c)是表示本发明实施方式18中的程序取得执行装置的动作原理的流程图。
图16(d)是表示本发明实施方式19中的程序取得执行装置的动作原理的流程图。
图17(a)是表示本发明实施方式20中的程序取得执行装置的结构图。
图17(b)是表示本发明实施方式20中的程序取得执行装置的动作原理的流程图。
图18(a)是表示现有程序取得执行装置的结构图。
图18(b)是表示现有程序取得执行装置的更具体的结构图。
图19是表示将现有程序取得执行装置应用于家庭网络时的结构例图。
符号说明
100程序取得执行装置
101程序取得部
102程序执行部
150程序存储装置
203通信方式转换部
304通信方式不匹配检测部
605匹配通信方式确定部
1406通信方式确定方法指示部
1507通信方式转换方法指示部
1608程序取得方法指示部
1709程序存储部
具体实施方式
下面,参照附图来说明本发明的实施方式。
(实施方式1)
图1(a)是本发明实施方式1中的程序取得执行装置的结构图。在图1中,对与图18(a)相同的结构要素使用相同的符号,省略其说明。
在图1(a)中,程序取得执行装置100除图18(a)中的结构外,还具备通信方式转换部203。
该通信方式转换部203由记录在ROM1003中的通信方式转换程序、CPU1001和成为其作业区的RAM1002构成。
通信方式转换部203转换在程序执行部102执行的多个程序互相通信时的通信方式。
这里,通信方式不仅包含通信协议的转换,还包含API的转换。另外,程序的通信包含程序间的函数调用或程序间的数据交换。
图1(b)~图1(d)是表示图1(a)的程序取得执行装置的分层结构。
硬件层L1如图18(b)所示,具有CPU1001、RAM1002、ROM1003及通信接口1004,这些部件经总路线1005互相连接。
在硬件层L1上安装实时OS或多任务OS等OS层L2,在其上安装Java(注册商标)虚拟机(Virtual Machine:VM)等解释程序(interpreter)层L3。在解释程序层L3上安装应用程序层L4。如图1(c)所示,OS层L2和解释程序层L3这两层也可颠倒。另外,如图1(d)所示,在解释程序层L3和应用程序层L4之间安装中间件(middle ware)层L5。
作为中间件,例如通信处理或数据库管理用的程序等与其对应,是提供在通信处理或数据库管理等特定领域中必需的基本功能的部件。
而且,硬件层L1由以CPU1001、RAM1002、ROM1003及通信1004构成的整个硬件构成。
另外,OS层L2、解释程序层L3、应用程序层L4、中间件层L5分别由记录在ROM1003中的OS等监视程序、Java(注册商标)虚拟机等解释程序、应用程序、中间件程序构成。
程序取得部101由记录在ROM1003中的监视程序、CPU1001和由其控制的通信接口1004构成。
另外,程序执行部102由记录在ROM1003中的监视程序、CPU1001和成为其作业区的RAM1002构成。
参照图7的流程图,说明上述程序取得执行装置100的动作概要。
处理开始(步骤S1)后,程序取得部101从一个或多个程序存储装置150中取得一个或多个程序(步骤S2)。
另外,程序存储装置150和程序取得执行装置100之间的通信媒体200或程序取得方法与本发明的保护范围无关,本发明的保护范围不受程序存储装置150和程序取得执行装置100之间的通信媒体或程序取得方法的限制。
例如,作为具体的通信媒体,如果是有线系统,则可以是LAN(Local Area Network)、CATV(Cable TV)网、FTTH(Fiber To TheHome)网、固定电话通信网等,如果是无线系统,则可以是红外线通信接口、蓝牙(商标)、移动体通信网、卫星通信网等,而不管其种类。
程序执行部102执行程序取得部取得的一个或多个程序(步骤S3)。
通信方式转换部203转换在程序执行部102执行的多个程序互相通信时的通信方式(步骤S4)。
如果程序执行部102执行的一个或多个程序全部执行结束,则结束处理(步骤S6)。否则,重复步骤S4(步骤S5)。
另外,在本实施方式中,记述了通信方式转换部203重复执行通信方式的转换直至程序执行全部结束的例子,但通信方式转换部203转换通信方式的定时不仅限于本例的情况,本发明的保护范围不受通信方式转换部203转换通信方式的定时的限制。
用图8及图9说明基于通信方式转换部203的通信方式转换的一例。
图8中示出由程序执行部102执行的程序所使用的API的一例。
在本例中,在由程序执行部102执行的程序所使用的API中存在「版本1(Version1)」及「版本2(Version2)」两个版本。「Version2」是比「Version1」新的程序,「Version2」对「Version1」具有上位互换性。
即,「Version2」扩展了「Version1」的功能,且与「Version1」具有互换性。例如,具有「multiply」和「add」这二个API,其中所谓的「multiply」API是从「Version2」追加的。
图8中示出使用图7中示出的API示例时的、由通信方式转换部203执行的通信方式转换的例子。
在本例中,作为程序执行部102执行的程序,存在「程序A」及「程序B」二个。「程序A」使用图7中示出的API例中「Version2」的API生成,「程序B」使用「Version1」的API生成。
如本例那样,使用「Version2」API的「程序A」在向「程序B」发出对仅存在于「Version2」API中的被称为「multiply」的API请求时,使用「Version1」API的「程序B」不能原样解释执行该请求。
因此,通信方式转换部203将称为「multiply」的API请求转换成作为「Version1」API的、被称为「add」的API请求的组合,向「程序B」请求该转换后的API请求。因此,能够实现在使用不同版本的API而生成的「程序A」和「程序B」之间的通信。
通信方式转换部203例如如图9(b)所示,解析从程序执行部102发送来的API请求,划分其函数(图9(a)例中的multiply)和参量(图9(a)例中的(5,3))(步骤S4a)。接着,根据该函数,通过检索如图9(c)所示的API转换表,获得可将其转换成的下位版本的API(图9(a)例中的add)(步骤S4b)。而且,使用转换后的下位版本的API和图9(b)的步骤S4a中得到的参量,生成下位版本的API请求,并将其作为转换结果返回到程序执行部102(步骤S4c)。
这样,通信方式转换部203中的转换执行部虽然具有被记述为使用API转换表来进行转换的API转换程序等实现方法,但本发明的保护范围并不受转换执行方法的限制。
另外,在本例中,作为API请求内容的表现方法使用了类似于C语言的表现方式,但API请求内容的表现方法并不仅限于这里例示的表现,另外,本发明的保护范围不受API请求的表现方法的限制。
另外,在本例中,举例说明了API的版本不匹配、即API的新、旧版本进行通信的情况,但本发明不仅限于多个程序间的API版本不匹配,还解决了多个程序间的通信方式不匹配的全部。
即,本发明可提供一种程序取得执行装置,在取得多个程序并使其协调动作时,即便是这些程序间的通信方式存在不匹配的情况,无需为利用对方的程序可使用的通信方式的每个类型准备不同的代码,也能利用对方的程序。
图8的API的转换例如如图1(e)所示,只要在根据包含在程序标题中的程序版本号来检测API不匹配等情况下执行即可。
即,如图1(f)、图1(g)所示,从互相通信的程序文件PF的标题PHD中取得版本号PVN(步骤S101),比较版本号彼此,研究其是否一致(步骤S102),检测是否调用在低版本的API中未准备的API(步骤S103),调用时将高版本的API转换成低版本的API(步骤S104)。
图1(h)表示这种计算机在下载程序后执行的系统的结构例,作为程序取得执行装置的计算机100a经由作为通信媒体的通信路径100a访问作为程序存储装置的文件服务器150a,文件服务器150a检索计算机100a指定的期望程序,将该检索出的程序作为数据经由通信路径200a返回到计算机100a,计算机100a执行该程序。
而且,在存在多个这样下载的程序,且这些程序彼此利用程序间通信来调用彼此的API时其API版本不同的情况下执行上述的通信方式转换。
由此,如果为原来那样,则不能执行程序间的通信,不可能进行程序彼此的协调动作或数据交换等,但在API的版本互不相同时,也可不必预先准备低版本的API,防止程序的复杂化或程序尺寸的巨大化。
另外,这种情况也如上所述,在通信协议不同时,也可通过转换该通信协议,来执行程序间的通信。
另外,不仅这样的计算机或以HAVi为首的家庭内网络对应家电设备,在可连接因特网的家电设备或以便携电话机为首的可连接于有线/无线通信网的设备、以电视接收机或无线电收音机为首的可连接于广播网的设备等中,即便在自动更新该程序等情况下,也可应用本实施方式。
(实施方式1的变形例1)
图2(a)示出依据实施方式1的变形例1的、可连接因特网的便携电话机的块结构。
该便携电话机100c具有:执行各种信号处理的信号处理部1102;和无线通信部,以天线1101接收到的无线信号N为接收信号,将其输出到信号处理部1102,同时,以信号处理部1102生成的发送信号为无线信号N,并将其从天线1101发送。
另外,上述便携电话机100c具有:进行图像显示的液晶面板(LCD)等显示部1106;用于输入声音的麦克风1108;再现声音信号的扬声器1107;显示控制部1104,接收由上述信号处理部1102处理后的图像信号,根据图像信号,控制上述显示部1106,使其执行图像显示;和声音输入输出部1105,向信号处理部1102输出来自麦克风1108的输入声音信号,同时,将由信号处理部1112处理后的声音信号输出到扬声器1107。
并且,该便携电话机100c具有邮件处理部1113,利用由键盘等输入的邮件地址,可在与其他因特网连接对应的便携电话机和个人电脑等之间交换电子邮件,可发送接收包含从键盘输入的消息或必要时由照相机部1111拍摄的图像文件作为附加文件的电子邮件。这可通过控制部1109控制各部分,以便利用无线通信部1103将邮件处理部1113生成的电子邮件数据作为电波送出,将无线通信部1103接收到的电子邮件数据经信号处理部1102,利用显示控制部1104在显示部1106上映出电子邮件消息或附加图像等。
另外,Web浏览处理部1112经无线通信部1103向未图示的Web服务器请求由通过键盘1110等输入的URL(Uniform ResourceLocater)指定的Web页(主页)的数据。Web服务器返回被请求的Web页的数据。Web浏览处理部1112解释从Web服务器返回的Web页数据,并通过控制部1109控制各部分,以使利用显示控制部1104在显示部1106上显示Web页,从而使浏览Web页成为可能。
另外,ROM1115存储游戏或计算器等各种应用程序,通过操作键盘1110等,控制部1109执行该程序。RAM1114用作控制部1109执行各种软件时的作业区等。
这样,可连接因特网的便携电话机100c通过相当于CPU的控制部1109的软件实现了其各种功能,但由于软件被固定在ROM中,所以在出厂后发现缺陷(bug)等情况下,会引起回收实机进行交换的情况。
因此,考虑通过向便携电话机发送用于修正缺陷的程序(下面称为更新用程序),以在便携电话机侧手动或自动进行更新,可以以低成本应对缺陷。该更新用程序具有比出厂时存储在便携电话机中的软件高的版本号。
图2(b)是表示这样进行更新时的更新系统的框图,图2(c)~图2(i)是表示该软件更新动作的一例的流程图。
便携电话机100c和更新用程序服务器150c经由由基站2001及因特网2002构成的通信网200c连接。
首先,如图2(c)所示,更新用程序服务器150c通过检测有无来自便携电话机制造商侧的更新通知,确认是否准备更新用程序(步骤S201)。
在备有程序的更新版时,更新用程序服务器150c根据制造商的更新信息,更新存储有该更新用程序的数据库(步骤S202)。之后,更新用程序服务器150c同时向相应制造商、机型的便携电话机通知具有程序更新的情况(步骤S203)。
接着,如图2(d)所示,在便携电话机100c侧检测是否有来自更新用程序服务器的同时通知(步骤S211),在检测出同时通知时,检测用户是否希望更新程序(步骤S212)。
在通过键盘操作等输入用户希望更新的情况时,便携电话机100c从更新用程序服务器取得有更新的程序的列表(步骤213),如图2(e)所示,在显示部上显示有更新的程序的一览(步骤S214)。
用户参照显示部中显示的更新程序列表,通过键盘操作等从中指定希望更新的程序(步骤S215)。图2(f)表示反色显示用户指定的程序的状态。
如果通过重复该操作,对用户希望更新的程序的全部指定结束(步骤S216),则便携电话机100c向更新用程序服务器发送表示制造商名、机型名、希望更新程序名的列表(步骤S217)。图2(g)表示希望进行该更新的程序的列表UL,MKR是表示便携电话机的制造商名的字段,MOD是表示机型名的字段。UPN是表示希望更新的程序名的字段,只要确保可变长或足够大小的字段即可。
接着,如图2(h)所示,更新用程序服务器150c检测是否有来自便携电话机100c的更新用访问(步骤S221),在有更新用访问时,根据从便携电话机侧发送的列表中的制造商名、机型名、希望更新程序名来检索数据库(步骤S222),将检索出的程序返回到便携电话机侧(步骤S223)。
接着,如图2(i)所示,便携电话机100c检测从更新用程序服务器150c是否返回更新用程序(步骤S231),在有返回的程序时,将该更新用程序写入电可擦的ROM中(步骤S232),在写入结束后,根据需要自动重起动(步骤S233)。
这样,便携电话机100c向基站2001发送执行程序更新情况的指令,基站2001经因特网2002向更新用程序服务器150c发送该指令。更新用程序服务器150c根据从该便携电话机100c接收到的指令,在便携电话机100c使用的程序中检索需要更新的程序。该检索对象包含OS、解释程序、中间件、应用程序之一。
然后,在更新用程序服务器150c检测到更新所需的程序时,经因特网2002向基站2001发送该检索出的更新用程序,基站2001通过无线电波将其返回给便携电话机100c。
在便携电话机100c中用返回的更新用程序改写ROM1115,必要时通过重起动,可执行更新后的程序。
可是,即便可利用这种更新来消除各个程序的缺陷,但由于多个程序互相协同动作,所以由于API的版本或通信协议互不相同等,存在程序间不能进行通信的问题。
因此,通过如上述的通信方式转换部203,通过将未包含在低版本的API中的API转换成低版本的API,或者转换协议,能够在多个程序同时动作时执行程序间的协同。在便携电话机100c的情况下,通信方式转换部203由存储在ROM1115中的程序、控制部1109和作为作业区的RAM1114构成。
这样,根据基于本发明实施方式1的结构的程序取得执行装置,在程序执行部102取得多个程序并使其协调动作时,即便在所述多个程序可使用的通信方式中存在不匹配的情况下,也可通过通信方式转换部203转换所述多个程序在互相通信时的通信方式,使所述多个程序互相通信成为可能。
(实施方式2)
图3(a)是本发明实施方式2中的程序取得执行装置的结构图。在图3(a)中,对与图18(a)相同的构成要素使用相同符号,省略说明。
在图3(a)中,程序取得执行装置100以通信方式不匹配检测部304来替代图1(a)的通信方式转换部203。
该通信方式不匹配检测部304由记录在ROM1003中的通信方式不匹配检测程序、CPU1001和成为其作业区的RAM1002构成。
通信方式不匹配检测部304检测程序执行部102执行的多个程序在互相通信时的通信方式的不匹配。
参照图10的流程图,说明上述程序取得执行装置100的动作原理。在图10中,由于步骤S11至步骤S13与本发明实施方式1中、图7所示的流程图的步骤S1至S3相同,所以省略说明。
步骤S13结束之后,通信方式不匹配检测部304自动检测程序执行部102执行的多个程序互相通信时的通信方式不匹配(步骤S14)。
作为通信方式不匹配检测部304中的对通信方式的不匹配进行检测的检测部,具有在如图3(b)所示记录了程序执行部102执行的程序的程序文件PF、如图3(c)所示记录了这些程序互相通信等时的数据的数据文件的特定位置(例如程序头PHD中的一部分或数据头DHD的开头字节等),预先嵌入通信协议的名称(例如TCP/IP(TransmissionControl Protocol/Internet Protocol)或OSI(Open SystemsInterconnection))等、表示可特定通信方式的信息的通信方式标识符CID,通过对该CID执行与和图1(f)相同的流程相同的处理来检查进行通信的程序是否彼此一致等方法,但本发明的保护范围不受通信方式不匹配检测部的限制。
在步骤S14中检测出通信方式不匹配时,采取通知用户等必要的处理(步骤S16)。例如在便携电话机等中,在显示部上显示产生了不匹配情况的消息。在无法检测不匹配时,前进到步骤S17(步骤S15)。
如果程序执行部102执行的一个或多个程序全部执行结束,则结束处理(步骤S18)。否则,重复步骤S14至步骤S17(步骤S17)。
这样,根据本实施方式2的结构,在程序执行部102取得多个程序并使其协调动作时,即便在所述多个程序可使用的通信方式中存在不匹配的情况下,也可通过通信方式不匹配检测部304检测所述不匹配,采取通知用户等必要的处理。
另外,在本实施方式2中,记述了通信方式不匹配检测部304重复检测通信方式不匹配直至程序全部执行结束的实例,但通信方式不匹配检测部304检测通信方式不匹配的定时不仅限于本例的情况,本发明的保护范围不受通信方式不匹配检测部304检测通信方式不匹配的定时的限制。
(实施方式3)
图4是本发明实施方式3中的程序取得执行装置的结构图。在图4中,对与图18(a)及图3(a)相同的构成要素使用相同的符号,省略说明。
在图4中,程序取得执行装置100构成要素与图3(a)中的结构相同。
但是,与图3(a)中的结构不同,通信方式不匹配检测部304检测出通信方式不匹配时,程序取得部101再次取得程序。
参照图11(a)的流程图说明上述程序取得执行装置100的动作原理。
在图11(a)中,步骤S21至步骤S24与本发明实施方式2中的、图10所示的流程图的步骤S11至步骤S14相同,所以省略说明。
步骤S24结束后,在步骤S24中检测出通信方式不匹配时,程序取得部101再次取得程序(步骤S26),从步骤S23开始重新执行处理(程序执行部102再次执行程序)。否则,前进到步骤S27(步骤S25)。
如果程序执行部102执行的一个或多个程序全部执行结束,则结束处理(步骤S28)。否则,重复步骤S24至步骤S27(步骤S25)。
这里,在步骤S25中检测出的不匹配是API不匹配时,步骤S26例如可如图11(b)所示那样构成。
即,在检测出不匹配时,判定一方程序的API版本是否比另一方程序的API版本高(步骤S261)。在一方程序与另一方程序相比、其API的版本高时,取得另一方程序的更新版(步骤S262)。
这时,判定是否可取得更新版(步骤S263),在不能取得时直接前进到步骤S23。在因未准备更新版等而不能取得时,取得一方程序的低版本,以使一方程序版本与另一方相一致(步骤S264),前进到S23。
另外,在一方程序与另一方程序相比、其API的版本低时,通过步骤S265至S267执行与上述相反的操作。即,取得一方程序的更新版(步骤S265)。这时,判定是否可取得更新版(步骤S266),在不能取得时直接前进到S23。在因未准备更新版等而不能取得时,取得另一方程序的低版本,以使另一方程序的版本与一方程序相一致(步骤S267),前进到步骤S23。
这样,根据本实施方式3的结构,除本发明实施方式2中的程序取得执行装置产生的效果之外,还可通过程序取得部101再次取得检测出所述不匹配的程序,使程序执行部102以无不匹配的组合执行所述多个程序。
另外,在本实施方式3中记述了在通信方式不匹配检测部304检测出通信方式不匹配时,程序取得部101再次取得程序,程序执行部102再次执行程序的实例,但通信方式不匹配检测部304检测出通信方式不匹配、程序取得部101再次取得程序和程序执行部102再次执行程序的定时并非仅限于本例的情况,本发明的保护范围不受通信方式不匹配检测部304检测通信方式不匹配、程序取得部101再次取得程序和程序执行部102再次执行程序的定时的限制。
(实施方式4)
图5是本发明实施方式4中的程序取得执行装置的结构图。在图5中,对与图18(a)、图3(a)及图4相同的构成要素使用相同的符号,省略说明。
在图5中,程序取得执行装置100除图18(a)、图3(a)及图4中的结构外,还具备通信方式转换部203。
通信方式转换部203转换程序执行部102执行的多个程序在互相通信时的通信方式。
参照图12的流程图说明上述程序取得执行装置100的动作原理。
在图12中,步骤S31至步骤S34与本发明实施方式2中的、图10所示的流程图的步骤S11至步骤S14相同,所以省略说明。
步骤S34结束后,在步骤S34中检测出通信方式不匹配的情况下,通信方式转换部203针对检测出不匹配的通信,转换在程序执行部102执行的多个程序互相通信时的通信方式(步骤S36)。否则,前进到步骤S40(步骤S35)。
就检测出不匹配的通信而言,与步骤S34相同,通信方式不匹配检测部304检测在程序执行部102执行的多个程序互相通信时的通信方式不匹配(步骤S37)。由此,即便在转换了通信方式并且应当可以互相通信的情况下,实际上也可能检测出通信变成不匹配的情况。
步骤S37结束后,在步骤S38中再次检测出通信方式不匹配时,前进到步骤S39。否则,前进到步骤S40(步骤S38)。
在前进到步骤S39时,程序取得部101再次取得程序,从步骤S33开始重新执行处理(程序执行部102再次执行程序)(步骤S39)。
在前进到步骤S40时,如果程序执行部102执行的一个或多个程序全部执行结束,则结束处理(步骤S41)。否则,重复步骤S34至步骤S40(步骤S40)。
因此,在最初取得的程序是暂定版本、之后发行了正式版本等情况下,即便暂定版本的程序利用通信方式转换部203转换了通信方式,在与其他程序进行通信时,也会产生不匹配,但在这种情况下,通过执行上述处理,再次取得正式版本的程序,可消除与其他程序的通信方式不匹配。
这样,根据本实施方式4的结构,除本发明实施方式2及实施方式3中的程序取得执行装置产生的效果外,还可通过通信方式转换部203转换所述多个程序互相通信时的通信方式,使所述多个程序互相通信成为可能。
另外,在本实施方式4中记述了如下实施方式,即在通信方式不匹配检测部检测出的通信方式不匹配时,首先,就检测出不匹配的通信而言,通信方式转换部203转换通信方式,在此基础上通信方式不匹配检测部304再次检测通信方式的不匹配,在再次检测出通信方式不匹配时,程序取得部101再次取得程序,程序执行部102再次执行程序。
可是,通信方式不匹配检测部304检测通信方式不匹配、通信方式转换部203转换通信方式、程序取得部101再次取得程序和程序执行部102再次执行程序的定时并非仅限于本例的情况,本发明的保护范围不受通信方式不匹配检测部304检测通信方式不匹配、通信方式转换部203转换通信方式、程序取得部101再次取得程序和程序执行部102再次执行程序的定时的限制。
(实施方式5)
图6是本发明实施方式5中的程序取得执行装置的结构图。在图6中,对与图18(a)及图3(a)~图5相同构成要素使用相同符号,省略说明。
在图6中,程序取得执行装置100除图18(a)及图3(a)~图5中的结构外,还具备匹配通信方式确定部605。
该匹配通信方式确定部605由记录在ROM1003中的匹配通信方式确定程序、CPU1001和成为其作业区的RAM1002构成。
匹配通信方式确定部605确定程序取得部101再次取得的程序应使用、匹配的通信方式。
程序取得部101再次取得使用匹配通信方式确定部605确定的通信方式的程序。
参照图13(a)的流程图,说明上述程序取得执行装置100的动作原理。在图13(a)中,步骤S51至步骤S57与本发明实施方式4中的、图12中示出的流程图的步骤S31至步骤S37相同,所以省略说明。
步骤S57结束后,在步骤S57中再次检测出通信方式不匹配时,前进到步骤S59。否则,前进到步骤S61(步骤S58)。
在前进到步骤S59时,匹配通信方式确定部605确定程序取得部101再次取得的程序应使用的、取得了匹配的通信方式(步骤S59)。
这例如如图13(b)的流程图所示,通过如图3(b)所示抽取程序文件PF的头PHD中的通信方式标识符CID等,取得2个程序中使用的通信方式(步骤S591),检测各程序的通信方式中的哪一个为上位互换(步骤S592),在可检测出成为上位互换的通信方式时(步骤S593),将成为上位互换的通信方式确定为取得了匹配的通信方式(步骤S594),在步骤S593中不能检测出成为上位互换的通信方式时,将相对于各通信方式中的任一通信方式成为上位互换的通信方式确定为取得了匹配的通信方式(步骤S595)。
这例如通过检索如图13(c)所示的表,即可检测出成为上位互换的通信方式。另外,归该表中的「上位互换性」,数字越大,越表示可上位互换。
由此,例如在检测出不匹配时使用的通信协议是TCP/IP的情况下,作为取得了匹配的通信协议,执行将作为TCP/IP的上位互换协议的OSI确定为通信协议等的处理。
将使用匹配通信方式确定部605确定的通信方式的程序经由通信媒体202通知给程序存储装置150,程序取得执行装置100经通信媒体200再次取得程序存储装置150发送的程序,从步骤S53开始重新执行处理(程序执行部102再次执行程序)(步骤S60)。
在前进到步骤S61时,如果程序执行部102执行的一个或多个程序全部执行结束,则结束处理(步骤S62)。否则重复步骤S54至步骤S61(步骤S61)。
这样,根据本实施方式5的结构,除本发明的实施方式3及实施方式4中的程序取得执行装置产生的效果之外,就检测出所述不匹配的程序而言,还可通过再次取得使用取得了匹配的通信方式的程序,使程序执行部102执行的多个程序互相通信成为可能。
另外,在本实施方式5中记述了如下实施例:即,在通信方式不匹配检测部304检测出通信方式不匹配时,首先,通信方式转换部203针对检测出不匹配的通信转换通信方式,在此基础上,通信方式不匹配检测部304再次执行通信方式不匹配的检测,在再次检测出通信方式不匹配时,匹配通信方式确定部605确定取得了匹配的通信方式,程序取得部101再次取得程序,程序执行部102再次执行使用该通信方式的程序。
可是,通信方式不匹配检测部304检测通信方式不匹配、通信方式转换部203转换通信方式、匹配通信方式确定部605确定通信方式、程序取得部101再次取得程序和程序执行部102再次执行程序的定时并不仅限于本例的情况,本发明的保护范围不受通信方式不匹配检测部304检测通信方式不匹配、通信方式转换部203转换通信方式、匹配通信方式确定部605确定通信方式、程序取得部101再次取得程序和程序执行部102再次执行程序的定时的限制。
(实施方式6)
本发明实施方式6中的程序取得执行装置的结构图与本发明实施方式5中的程序取得执行装置的结构图相同,均为图6。但是,从本发明实施方式5扩展了一部分构成要素、即匹配通信方式确定部605的功能。
省略说明图6中功能与本发明实施方式5相同的构成要素。
在图6中,匹配通信方式确定部605从程序取得部101已取得的程序所使用的通信方式中,确定取得了匹配的通信方式。
这例如如图13(d)所示,在程序取得部101中取得2个程序时还取得通信方式标识符CID等、关于其通信方式的的信息并保持该信息时,匹配通信方式确定部605通过从程序取得部101进行调用即可取得该信息(步骤591a)。其他的图13(d)的处理与图13(b)相同。
这样,根据本实施方式6的结构,除本发明实施方式5中的程序取得执行装置产生的效果之外,还可从程序执行部102执行的多个程序可使用的通信方式中确定取得了匹配的通信方式,通过再次取得使用所述取得了匹配的通信方式的程序,使所述多个程序互相通信成为可能。
(实施方式7)
本发明实施方式7中的程序取得执行装置的结构图与本发明实施方式5中的程序取得执行装置的结构图相同,是图6。但是,从本实施方式5扩展一部分构成要素、即匹配通信方式确定部605的功能。
在图6中,省略说明功能与实施方式5相同的构成要素。
在图6中,匹配通信方式确定部605从可从一个或多个程序存储装置150再次取得的程序所使用的通信方式中,确定取得了匹配的通信方式。
这例如如图13(e)所示,只要匹配通信方式确定部605从存储在程序存储装置150中的各程序中取得关于其通信方式的信息(步骤S591b),使用图13(c)示出的表等,检测各程序的通信方式之一是否为上位互换即可实现(步骤S592b)。
由此,作为通过再次取得替换的程序,从预先准备的程序中确定取得了匹配的通信方式,所以,使用被确定为取得了匹配的通信方式的通信方式的程序不存在于程序存储装置150中,不会浪费。
这样,根据本实施方式7的结构,除本发明实施方式5中的程序取得执行装置产生的效果之外,还可从可从程序存储装置150再次取得的程序使用的通信方式中,确定取得了匹配的通信方式,通过再次取得的使用所述取得了匹配的通信方式的程序,使程序执行部102执行的多个程序互相通信成为可能。
(实施方式8)
本发明实施方式8中的程序取得执行装置的结构图与本发明实施方式5~7中的程序取得执行装置的结构图相同,均为图6。但是,从本发明实施方式5~7扩展了一部分构成要素、即匹配通信方式确定部605的功能。
省略说明图6中功能与本发明实施方式5~7相同的构成要素。
在图6中,匹配通信方式确定部605从取得了匹配的通信方式的候补中选择最新的通信方式,并将其确定为取得了匹配的通信方式。
这例如如图13(f)所示,只要匹配通信方式确定部605检测取得了匹配的通信方式的候补(步骤S596a),通过检索例如图13(g)所示的表,从检测出的候补中检测最新的通信方式即可实现(步骤S596b)。另外,该表中的「新旧程度」设为数字越大表示越新。
这样,根据本发明实施方式8的结构,除本发明实施方式5~7中的程序取得执行装置产生的效果之外,还可使用尽可能新的通信方式,使程序执行部102执行的多个程序互相通信成为可能。
(实施方式9)
本发明实施方式9中的程序取得执行装置结构图与本发明实施方式5~7中的程序取得执行装置的结构图相同,均为图6。但是,从本发明实施方式5~7扩展了一部分构成要素、即匹配通信方式确定部605的功能。
省略说明图6中功能与本发明实施方式5~7相同的构成要素。
在图6中,匹配通信方式确定部605从取得了匹配的通信方式的候补中,选择在所述程序取得部再次取得程序时成本最为廉价的通信方式,并将其确定取得了匹配的通信方式。
这例如如图13(h)所示,可如下实现:匹配通信方式确定部605检测取得了匹配的通信方式的候补(步骤S596a),例如如图13(i)、图13(j)所示,从检测出的候补中检测程序文件PF的头PHD中的程序大小信息PGS和数据包尺寸信息PKS等,检测出这些信息为最小的通信方式(步骤S596c)。
这样,根据本实施方式9的结构,除本发明实施方式5~7中的程序取得执行装置产生的效果之外,还可以令用于使程序执行部102执行的多个程序互相通信的再次取得时的成本尽可能廉价。
(实施方式10)
本发明实施方式10中的程序取得执行装置结构图与本发明实施方式5~9中的程序取得执行装置的结构图相同,均为图6。但是,从本发明实施方式5~9扩展了一部分构成要素、即匹配通信方式确定部605的功能。
省略说明图6中功能与本发明实施方式5~9相同的构成要素。
在图6中,匹配通信方式确定部605在程序取得部101取得使用匹配通信方式确定部605确定的取得了匹配的通信方式的程序失败时,再次确定取得了匹配的通信方式,程序取得部101再次取得使用匹配通信方式确定部605再次确定的通信方式的程序。
这如图13(K)所示,可如下实现:设置用于检测步骤60的再次取得程序是否成功的步骤S63,通过该步骤S63检测再次取得程序是否成功,在再次取得失败的情况下,返回步骤S59,再次确定取得了匹配的通信方式。
对该再次取得失败的通知例如可如下实现:程序存储装置150根据来自程序取得部101的请求检测该数据库,在不能检测出符合的程序等时,产生表示该情况的标志等。
这样,根据本实施方式10的结构,除本发明实施方式5~9中的程序取得执行装置产生的效果之外,即便在再次取得使用确定为取得了匹配的通信方式的通信方式的程序失败时,也可通过再次确定取得了匹配的通信方式,再次取得使用所述再次确定的取得了匹配的通信方式的程序,使程序执行部102执行的多个程序互相通信成为可能。
(实施方式11)
图14(a)是本发明实施方式11中的程序取得执行装置的结构图。在图14(a)中,对与图18(a)及图3~图6相同的构成要素使用相同的符号,省略说明。
在图14(a)中,程序取得执行装置100除图18(a)及图3~图6的结构外,还具备通信方式确定方法指示部1406。
通信方式确定方法指示部1406是用户指示匹配通信方式确定部605确定取得了匹配的通信方式的方法的部件。
匹配通信方式确定部605以通信方式确定方法指示部1406指示的方法来确定取得了匹配的通信方式。
这如图14(b)所示,用户通过键盘或光标键(cursor key)等预先指示确定取得了匹配的通信方式的方法(步骤S64),在检测出通信方式不匹配时(步骤S58),匹配通信方式确定部605根据该指示的方法,确定程序取得部101再次取得的程序所使用的通信方式。(步骤S59a)。
该用户指示的、确定取得了匹配的通信方式的方法,除例如实施方式8~10之一的方法外,也可以根据其他所需的规则来确定通信方式。
这样,根据本实施方式11的结构,除本发明实施方式5~10中的程序取得执行装置产生的效果之外,还可以通过用户选择用于确定取得了匹配的通信方式的方法,再次取得使用了利用所述用户选择的方法确定的、取得了匹配的通信方式的程序,使程序执行部102执行的多个程序互相通信成为可能。
(实施方式12)
本发明实施方式12的程序取得执行装置的结构图与本发明实施方式11的程序取得执行装置的结构图相同,均为图14(a)。但是,从本发明实施方式5~11扩展了一部分构成要素的功能。省略说明图14(a)中功能与本发明实施方式5~11相同的构成要素。
在图14(a)中,程序取得部101仅再次取得由通信方式不匹配检测部304检测出通信方式不匹配的程序。
这可如图14(c)所示来实现:用户预先指示取得了匹配的通信方式(步骤S64),匹配通信方式确定部605根据用户的指示确定取得了匹配的通信方式(步骤S59a)之后,程序取得部101仅再次取得由通信方式不匹配检测部304检测出不匹配的程序、即使用由匹配通信方式确定部605确定的通信方式的程序(步骤S60b)。
这样,根据本实施方式12的结构,除本发明实施方式5~11中的程序取得执行装置产生的效果外,还可通过仅再次取得检测出不匹配的程序,而非程序执行部102执行的多个程序全部,实现对程序的高效的再次取得。
(实施方式13)
本发明实施方式13中的程序取得执行装置的结构图与本发明实施方式11及实施方式12中的程序取得执行装置的结构图相同,均为图14(a)。但是,从本发明实施方式5~11扩展了一部分构成要素的功能。省略说明图14(a)中功能与本发明实施方式5~11相同的构成要素。
在图14(a)中,程序取得部101再次取得执行中所需的全部程序。
这可如图14(d)所示来实现:用户指示用于确定取得了匹配的通信方式的方法(步骤S64),匹配通信方式确定部605利用用户指定的方法,确定取得了匹配的通信方式(步骤S59a),程序取得部101再次取得使用由匹配通信方式确定部605确定的通信方式的程序、即在程序执行部102执行时所需的全部程序(步骤S60c)。
这样,根据本发明实施方式13的结构,除本发明实施方式5~11中的程序取得执行装置产生的效果外,还可通过再次取得程序执行部102执行的全部多个程序,避免产生因仅取得所述多个程序的一部分所导致的更不匹配。
(实施方式14)
本发明实施方式14中的程序取得执行装置的结构图与本发明实施方式11~13中的程序取得执行装置的结构图相同,均为图14(a)。但是,从本发明实施方式5~13扩展了一部分构成要素、即程序取得部101的功能。省略说明图14(a)中功能与本发明实施方式5~13相同的构成要素。
在图14(a)中,程序取得部101仅再次取得程序中存在由通信方式不匹配检测部304检测出通信方式不匹配的部分而非全部程序。
这可如图14(e)所示来实现:用户指示用于确定取得了匹配的通信方式的方法(步骤S64),匹配通信方式确定部605利用用户指定的方法,确定取得了匹配的通信方式(步骤S59a),程序取得部101仅再次取得使用由匹配通信方式确定部605确定的通信方式的程序中的、存在由通信方式不匹配检测部304检测出通信方式不匹配的部分(步骤S60d)。
在预先以模块为单位形成程序时,通过参照模块头信息而仅仅再次取得与通信相关联的模块等来实现仅仅取得存在该通信方式不匹配的部分。
这样,根据本实施方式14的结构,除本发明实施方式5~13中的程序取得执行装置产生的效果外,还可通过仅部分地再次取得程序中存在通信方式不匹配的部分,使再次取得的成本更小。
(实施方式15)
本发明实施方式15中的程序取得执行装置的结构图与本发明实施方式11~14中的程序取得执行装置的结构图相同,均为图14(a)。但是,从本发明实施方式1或实施方式4~14扩展了一部分构成要素、即通信方式转换部203的功能。省略说明图14(a)中功能与本发明实施方式1或实施方式4~14相同的构成要素。
在图14(a)中,通信方式转换部203通过执行用于转换通信方式的转换程序来转换通信方式,程序取得部101取得由通信方式转换部203执行的转换程序。
这可如图14(f)所示来实现:程序取得部10预先取得由通信方式转换部203执行的、用于转换通信方式的转换程序(步骤S52p),用户指示用于确定取得了匹配的通信方式的方法(步骤S64)、通信方式转换部203通过执行在步骤S52p中取得的转换程序来转换通信方式(步骤S56a)。
这样,根据本发明实施方式15的结构,除本发明实施方式1或实施方式4~14中的程序取得执行装置产生的效果外,还可利用从程序存储装置150取得的转换程序,通过转换由程序执行部102执行的多个程序在互相通信时的通信方式,来变更所述多个程序在互相通信时的通信方式转换方法本身。
(实施方式16)
图15(a)是本发明实施方式16中的程序取得执行装置的结构图。在图15(a)中,对与图18(a)、图3~图6及图14(a)相同的构成要素使用相同的符号,省略说明。
在图15(a)中,程序取得执行装置100除图18(a)、图3~图6及图14(a)的结构外,还具备通信方式转换方法指示部1507。通信方式转换方法指示部1507指示通信方式转换部203用以转换通信方式的方法。通信方式转换部203按照通信方式转换方法指示部1507指示的方法来转换通信方式。
这个可如图15(b)所示来实现:用户预先指示通信方式转换部203使用的通信方式转换方法(步骤S65),通信方式转换部203对于检测出不匹配的通信,利用用户指定的方法,转换由程序执行部102执行的多个程序在互相通信时的通信方法(步骤S56a)。
这样,根据本实施方式16的结构,除本发明实施方式1或实施方式4~15中的程序取得执行装置产生的效果外,还可以通过用户选择用于转换通信方式的方法,利用所述用户选择的方法,转换由程序执行部102执行的多个程序在互相通信时的通信方式,使所述多个程序互相通信成为可能。
(实施方式17)
图16(a)是本发明实施方式17的程序取得执行装置的结构图。在图16(a)中,对与图18(a)、图3~图6及图14(a)及图15(a)相同的构成要素使用相同的符号,省略说明。
在图16(a)中,程序取得执行装置100除图18(a)、图3~图6及图14(a)及图15(a)的结构外,还具备程序取得方法指示部1608。
程序取得方法指示部1608指示程序取得部101用以取得程序的方法。
程序取得部101按照程序取得方法指示部1608指示的方法来取得程序。
这可如图16(b)所示来实现:通过用户预先指示取得程序的方法(步骤S66),程序取得部101利用用户指定的方法,再次取得使用由匹配通信方式确定部605确定的通信方式的程序(步骤S60a)。
这样,根据本实施方式17的结构,除本发明实施方式1或实施方式4~16中的程序取得执行装置产生的效果外,还可通过用户选择用于取得程序的方法,利用所述用户选择的方法,再次取得检测出不匹配的程序,使程序执行部102执行的多个程序互相通信成为可能。
(实施方式18)
本发明实施方式18中的程序取得执行装置的结构图与本发明实施方式17中的程序取得执行装置的结构图相同,均为图16(a)。但是,从本发明实施方式2~17扩展了一部分构成要素的功能。省略说明图16(a)中功能与本发明实施方式2~17相同的构成要素。
在图16(a)中,通信方式不匹配检测部304在程序执行部102开始执行程序之前,检测通信方式的不匹配。
这可如图16(c)所示来实现:通过用户预先指示用于指定取得了匹配的通信方式的方法(步骤S64),通信方式不匹配检测部304在程序执行部102执行(步骤S53)前的步骤S54~步骤S60a中检测多个程序互相通信时的全部通信方式不匹配(步骤S55、S58、S68)。该执行前的不匹配检测可通过例如如图3(b)、图3(c)所示,事先参照程序文件PF中的通信方式标识符CID来实现。
这样,根据本实施方式18的结构,除本发明实施方式2~17中的程序取得执行装置产生的效果外,通过在开始执行程序前检测通信方式的不匹配,在全部消除检测出的不匹配后开始执行程序,所以,避免在程序执行中再次取得或再次执行程序。
(实施方式19)
本发明实施方式19中的程序取得执行装置的结构图与本发明实施方式17~18中的程序取得执行装置的结构图相同,均为图16(a)。但是,从本发明实施方式2~17扩展了一部分构成要素的功能。省略说明图16(a)中功能与本发明实施方式2~17相同的构成要素。在图16(a)中,通信方式不匹配检测部304在程序执行部102执行程序的过程中,逐次检测通信方式的不匹配。
这可如图16(d)所示来实现:用户预先指示用于指定取得了匹配的通信方式的方法(步骤S64),对于由通信方式不匹配检测部304检测出不匹配的通信,在步骤S54~S60a中每当执行程序时,逐次检测程序执行部102正在执行(步骤S53b)的多个程序在互相通信时的通信方式不匹配。该正在执行过程中的不匹配检测例如可通过如图3(b)、图3(c)所示,在执行过程中参照程序文件PF中的通信方式标识符CID来实现。
这样,根据本实施方式19的结构,除本发明实施方式2~17中的程序取得执行装置产生的效果外,还可通过在程序执行过程中,在逐行或逐部分地执行程序时,逐次检测通信方式的不匹配,并消除检测出的不匹配,避免由程序执行前的不匹配检测导致的执行开始延迟。
(实施方式20)
图17(a)是本发明实施方式20中的程序取得执行装置的结构图。在图17(a)中,对与图18(a)、图3(a)~图6及图14(a)~图16(a)相同的构成要求使用相同的符号,省略说明。
在图17(a)中,程序取得执行装置100除图18、图3~图6及图14(a)~图16(a)中的结构之外,还具备程序存储部1709。
程序存储部1709存储成为存储程序取得部101再次取得的对象的程序或程序的一部分。
程序执行部102在执行由程序取得部101再次取得的程序或程序的一部分之后,再次执行程序存储部1709中存储的程序。
这可通过图17(b)示出的流程来实现。即,程序取得部101在利用用户指定的方法再次取得使用由匹配通信方式确定部605确定的通信方式的程序之前,在程序存储部1709中预先存储成为再次取得对象的程序或其一部分(步骤S67)。然后,通过再次取得程序(步骤S60a),消除步骤S55或S58中的不匹配。之后,程序执行部102取出并执行存储在程序存储部1709中的、成为再次取得对象的程序或其一部分(步骤S69、S70)。
这样,根据本实施方式20的结构,除本发明实施方式3~19中的程序取得执行装置产生的效果之外,还可仍存储检测出不匹配的原程序,就该程序而言,如果通过再次取得并执行使用取得了匹配的通信方式的程序,即,通过再次取得程序而消除了不匹配,在原程序中平安地执行了产生不匹配的部分并结束,则可以通过将暂时替换的程序还原成原程序,在消除通信方式的不匹配后,执行原程序。
另外,在本实施方式20中,为了消除不匹配部分而再次取得程序,也可以通过转换程序来消除不匹配。
另外,在上述各实施方式中,作为程序取得执行装置100示出了仅具有RAM作为可改写的存储装置的设备插入型计算机,但作为可改写的存储装置,除RAM之外,也可以是具有磁盘驱动器或光盘驱动器、光磁盘驱动器等各种可改写文件装置的装置。
另外,上述各实施方式中示出了仅具有ROM作为非易失性存储装置的装置,但除ROM之外,也可以是具有CD-ROM或DVD-ROM等不可改写文件装置的装置。
另外,在这种具有可改写文件装置或不可改写文件装置的情况下,也可将存储在ROM中的OS等监视程序或Java(注册商标)虚拟机等解释程序、中间件或应用程序等存储在这些文件装置中。
另外,作为变形例,举例示出了便携电话机的程序更新,但也可是更新上述设备插入型计算机、以HAVi为首的家庭内网络对应设备、可连接因特网的家电设备、以便携电话机为首的可连接有线无线通信网的设备、以电视接收机或无线电收音机为首的可连接广播网的设备或个人电脑的程序的情况。
另外,便携电话机的程序更新示出了由多个制造同一通信企业的便携电话机的制造商共同运用更新用程序的情况,但各制造商也可运用独创的更新用程序,这时,希望更新列表中不必包含制造商名的信息。另外,举例示出了可连接因特网的i模式(注册商标)等的便携电话机,但也可经由公用通信网本身配送程序,使用因特网以外的通信媒体来进行运用。并且,同时使用通信媒体200和通信媒体201,但是也可以通过分时等方式来兼用同一通信媒体。
另外,示出了在便携电话机中设置通信方式转换部203的情况,但也可设置通信方式不匹配检测部304或匹配通信方式确定部605。这时,只要这些通信方式不匹配检测部304或匹配通信方式确定部605由存储在ROM1115中的程序、控制部1109和作为作业区的RAM1114构成即可。
另外,在上述各实施方式中示出了程序取得执行装置,但也可作为程序取得执行方法来实现,这时,只要将程序取得部、程序执行部、通信方式转换部、通信方式不匹配检测部、匹配通信方式确定部作为相当于各自功能的程序取得步骤、程序执行步骤、通信方式转换步骤、通信方式不匹配检测步骤、匹配通信方式确定步骤来实现即可。
另外,作为程序取得执行程序也可实现具有这些步骤的程序取得执行方法,也可作为将该程序取得执行程序记录在记录媒体中的程序取得执行程序记录媒体来实现。
另外,作为通信协议的实例示出了由TCP/IP、OSI,但可使用的通信协议不限于此。
产业上的可利用性
本发明的程序取得执行装置具有在经网络或无线通信装置等通信媒体从程序存储装置取得并执行多个程序(下载、上载等)时,即便在这多个程序间的通信方式中存在不匹配的情况下,也可利用其他程序的特征。作为解决可下载或上载的程序间的版本不匹配或协议不匹配的方法,可应用于非常广的领域。应用领域不特别限制,但例如,可应用于经由网络或无线通信装置等通信媒体改写家电产品的内置软件,或向因特网浏览器下载应用程序等。
Claims (26)
1、一种经由通信媒体从程序存储装置取得并执行程序的程序取得执行装置,其特征在于,包括:
从程序存储装置取得程序的程序取得部;
执行该程序取得部所取得的程序的程序执行部;和
转换在该程序执行部执行的多个程序互相通信时的通信方式的通信方式转换部。
2、一种经由通信媒体从程序存储装置取得并执行程序的程序取得执行装置,其特征在于,包括:
从程序存储装置取得程序的程序取得部;
执行该程序取得部所取得的程序的程序执行部;和
检测在该程序执行部执行的多个程序互相通信时的通信方式不匹配的通信方式不匹配检测部。
3、根据权利要求2所述的程序取得执行装置,其特征在于:
在所述通信方式不匹配检测部检测出通信方式不匹配时,所述程序取得部再次取得程序。
4、根据权利要求2或3所述的程序取得执行装置,其特征在于,还包括:
通信方式转换部,用于在所述通信方式不匹配检测部检测出通信方式不匹配时,转换在所述程序执行部执行的多个程序互相通信时的通信方式。
5、根据权利要求3或4所述的程序取得执行装置,其特征在于:
还包括匹配通信方式确定部,用于确定所述程序取得部再次取得的程序应使用的取得了匹配的通信方式,
所述程序取得部再次取得使用由所述匹配通信方式确定部确定的通信方式的程序。
6、根据权利要求5所述的程序取得执行装置,其特征在于:
所述匹配通信方式确定部从所述程序取得部已取得的程序所使用的通信方式中确定取得了匹配的通信方式。
7、根据权利要求5所述的程序取得执行装置,其特征在于:
所述匹配通信方式确定部从可自一个或多个所述程序存储装置再次取得的程序所使用的通信方式中确定取得了匹配的通信方式。
8、根据权利要求5~7中任一所述的程序取得执行装置,其特征在于:
所述匹配通信方式确定部从取得了匹配的通信方式的候补中选择最新的通信方式,并将其确定为取得了匹配的通信方式。
9、根据权利要求5~7中任一所述的程序取得执行装置,其特征在于:
所述匹配通信方式确定部从取得了匹配的通信方式的候补中,选择在所述程序取得部再次取得程序时成本最为廉价的通信方式,并将其确定为取得了匹配的通信方式。
10、根据权利要求5~9中任一所述的程序取得执行装置,其特征在于:
在所述程序取得部取得使用由所述匹配通信方式确定部确定的取得了匹配的通信方式的程序失败时,所述匹配通信方式确定部再次确定取得了匹配的通信方式,所述程序取得部再次取得使用由所述匹配通信方式确定部再次确定的通信方式的程序。
11、根据权利要求5~10中任一所述的程序取得执行装置,其特征在于,
还包括:通信方式确定方法指示部,用于指示所述通信方式确定部确定取得了匹配的通信方式的方法,
所述匹配通信方式确定部按照由所述通信方式确定方法指示部指示的方法来确定取得了匹配的通信方式。
12、根据权利要求5~11中任一所述的程序取得执行装置,其特征在于:
所述程序取得部仅仅再次取得由所述通信方式不匹配检测部检测出通信方式不匹配的程序。
13、根据权利要求5~11中任一所述的程序取得执行装置,其特征在于:
所述程序取得部再次取得在所述程序执行部执行中所需要的全部程序。
14、根据权利要求5~13中任一所述的程序取得执行装置,其特征在于:
所述程序取得部仅仅再次取得程序中的存在所述通信方式不匹配检测部所检测出的通信方式不匹配的部分。
15、根据权利要求1或权利要求4~14中任一所述的程序取得执行装置,其特征在于:
所述通信方式转换部通过执行用于转换通信方式的转换程序来转换通信方式,
所述程序取得部取得由所述通信方式转换部执行的转换程序。
16、根据权利要求1或权利要求4~15中任一所述的程序取得执行装置,其特征在于,
还包括:用于指示所述通信方式转换部转换通信方式的方法的通信方式转换方法指示部,
所述通信方式转换部按照由所述通信方式转换方法指示部指示的方法来转换通信方式。
17、根据权利要求1~16中任一所述的程序取得执行装置,其特征在于,
包括:指示所述程序取得部取得程序的方法的程序取得方法指示部,
所述程序取得部按照由所述程序取得方法指示部指示的方法来取得程序。
18、根据权利要求2~17中任一所述的程序取得执行装置,其特征在于:
所述通信方式不匹配检测部在所述程序执行部开始执行程序之前,检测通信方式的不匹配。
19、根据权利要求2~17中任一所述的程序取得执行装置,其特征在于:
所述通信方式不匹配检测部在所述程序执行部执行程序的过程中,逐次检测通信方式的不匹配。
20、根据权利要求3~19中任一所述的程序取得执行装置,其特征在于,
还包括:程序存储部,存储成为所述程序取得部再次取得的对象的程序或程序的一部分,
所述程序执行部在执行所述程序取得部再次取得的程序或程序的一部分之后,再次执行存储在所述程序存储部中的程序。
21、一种经由通信媒体从程序存储装置取得并执行程序的程序取得执行方法,其特征在于,包含:
从程序存储装置取得程序的程序取得步骤;
执行该程序取得步骤取得的程序的程序执行步骤;和
通信方式转换步骤,转换在该程序执行步骤执行的多个程序互相通信时的通信方式。
22、一种经由通信媒体从程序存储装置取得并执行程序的程序取得执行方法,其特征在于,包含:
从程序存储装置取得程序的程序取得步骤;
执行该程序取得步骤取得的程序的程序执行步骤;和
通信方式不匹配检测步骤,检测在该程序执行步骤执行的多个程序互相通信时的通信方式不匹配。
23、一种程序取得执行程序记录媒体,记录了使计算机执行经由通信媒体从程序存储装置取得并执行程序的程序取得执行方法的程序,其特征在于:
所述程序取得执行方法包含:
从程序存储装置取得程序的程序取得步骤;
执行由该程序取得步骤取得的程序的程序执行步骤;和
通信方式转换步骤,转换在程序执行步骤执行的多个程序互相通信时的通信方式。
24、一种程序取得执行程序记录媒体,记录了使计算机执行经由通信媒体从程序存储装置取得并执行程序的程序取得执行方法的程序,其特征在于:
所述程序取得执行方法包含:
从程序存储装置取得程序的程序取得步骤;
执行由该程序取得步骤取得的程序的程序执行步骤;和
通信方式不匹配检测步骤,检测在该程序执行步骤执行的多个程序互相通信时的通信方式不匹配。
25、一种程序取得执行程序,使计算机执行经由通信媒体从程序存储装置取得并执行程序的程序取得执行方法,其特征在于:
所述程序取得执行方法包含:
从程序存储装置取得程序的程序取得步骤;
执行由该程序取得步骤取得的程序的程序执行步骤;和
通信方式转换步骤,转换在该程序执行步骤执行的多个程序互相通信时的通信方式。
26、一种程序取得执行程序,使计算机执行经由通信媒体从程序存储装置取得并执行程序的程序取得执行方法,其特征在于:
所述程序取得执行方法包含:
从程序存储装置取得程序的程序取得步骤;
执行由该程序取得步骤取得的程序的程序执行步骤;和
通信方式不匹配检测步骤,检测在该程序执行步骤执行的多个程序互相通信时的通信方式不匹配。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004358825A JP2006164191A (ja) | 2004-12-10 | 2004-12-10 | プログラム取得実行装置、プログラム取得実行方法、プログラム取得実行プログラム記録媒体、およびプログラム取得実行プログラム |
JP358825/2004 | 2004-12-10 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101073056A true CN101073056A (zh) | 2007-11-14 |
Family
ID=36577751
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2005800422835A Pending CN101073056A (zh) | 2004-12-10 | 2005-06-30 | 程序取得执行装置、程序取得执行方法、程序取得执行程序记录媒体及程序取得执行程序 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20080034362A1 (zh) |
JP (1) | JP2006164191A (zh) |
CN (1) | CN101073056A (zh) |
WO (1) | WO2006061921A1 (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4222388B2 (ja) | 2006-07-10 | 2009-02-12 | ソニー株式会社 | 画像管理装置、画像記録装置、撮像装置、画像管理システム、画像解析情報管理方法およびプログラム |
CN101636720A (zh) * | 2007-03-20 | 2010-01-27 | 株式会社爱可信 | 具备应用程序更新管理功能的终端、应用程序更新管理程序以及系统 |
JP5482011B2 (ja) * | 2009-08-11 | 2014-04-23 | 株式会社リコー | 画像形成装置、プログラム管理システム、プログラム管理方法、及びプログラム管理プログラム |
JP5316363B2 (ja) * | 2009-10-20 | 2013-10-16 | ソニー株式会社 | 情報処理装置、機能管理方法、コンピュータプログラム及び情報処理システム |
CN102469035B (zh) * | 2010-11-05 | 2016-01-20 | 腾讯科技(深圳)有限公司 | 跨进程通信的方法和装置 |
US9720675B2 (en) * | 2010-10-27 | 2017-08-01 | Hewlett Packard Enterprise Development Lp | Version mismatch delay and update for a distributed system |
US20130159851A1 (en) * | 2011-12-20 | 2013-06-20 | Bewo Technologies Pvt.Ltd | Method and system for providing help content to users |
JP5912804B2 (ja) * | 2012-04-20 | 2016-04-27 | 富士電機株式会社 | 周辺装置アクセスシステム |
JP5754524B2 (ja) * | 2014-02-19 | 2015-07-29 | 株式会社リコー | 装置、情報処理システム、情報処理方法、及び情報処理プログラム |
JP7254616B2 (ja) * | 2019-05-17 | 2023-04-10 | キヤノン株式会社 | 管理装置、方法、およびプログラム |
WO2020255389A1 (ja) * | 2019-06-21 | 2020-12-24 | 日本電信電話株式会社 | Api変換装置、api変換方法、およびプログラム |
US11775356B2 (en) * | 2021-09-14 | 2023-10-03 | Hewlett Packard Enterprise Development Lp | Method and system for facilitating backwards compatibility of a rest API on an evolving data model |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6389483B1 (en) * | 1995-10-17 | 2002-05-14 | Telefonaktiebolaget L M Ericsson (Publ) | System and method for reducing coupling between modules in a telecommunications environment |
JPH1165968A (ja) * | 1997-08-13 | 1999-03-09 | Nippon Telegr & Teleph Corp <Ntt> | ネットワーク管理方法及びそのシステム |
JP4208555B2 (ja) * | 2002-11-27 | 2009-01-14 | インクリメント・ピー株式会社 | 情報処理装置、そのシステム、その方法、そのプログラム、および、そのプログラムを記録した記録媒体 |
-
2004
- 2004-12-10 JP JP2004358825A patent/JP2006164191A/ja not_active Withdrawn
-
2005
- 2005-06-30 WO PCT/JP2005/012083 patent/WO2006061921A1/ja not_active Application Discontinuation
- 2005-06-30 US US11/792,779 patent/US20080034362A1/en not_active Abandoned
- 2005-06-30 CN CNA2005800422835A patent/CN101073056A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
JP2006164191A (ja) | 2006-06-22 |
WO2006061921A1 (ja) | 2006-06-15 |
US20080034362A1 (en) | 2008-02-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101073056A (zh) | 程序取得执行装置、程序取得执行方法、程序取得执行程序记录媒体及程序取得执行程序 | |
CN101374146B (zh) | 对物理计算机系统的虚拟表示的按需访问 | |
US8370828B2 (en) | Techniques to perform gradual upgrades | |
US7184801B2 (en) | Mobile application builder | |
RU2422882C2 (ru) | Система, устройство и способ динамической настройки и конфигурирования приложений | |
EP1438672B1 (en) | Method, apparatus and system for a mobile web client | |
KR100596298B1 (ko) | 운영체제의 자동 설치 및 구성을 위한 시스템 및 방법 | |
RU2320015C2 (ru) | Развертывание информации о конфигурации | |
US7814404B2 (en) | System and method for applying workflow of generic services to component based applications for devices | |
KR100826147B1 (ko) | 무선 컴포넌트 애플리케이션 구축 시스템 및 방법 | |
CN100547545C (zh) | 用于网络边缘计算的应用拆分的方法和系统 | |
CN101472140B (zh) | 一种多媒体分发点播系统 | |
JP4581269B2 (ja) | 携帯型情報端末装置および情報処理方法、録画再生装置、プログラム格納媒体、並びにプログラム | |
CN102855152B (zh) | 升级应用程序中资源文件的方法及系统 | |
US8812644B2 (en) | Enabling customized functions to be implemented at a domain | |
CN103019757A (zh) | 一种在多台客户端间同步软件的方法、装置及系统 | |
CN102667751A (zh) | 实现基于网络的通信终端的用户界面的装置及其方法 | |
CN103729425A (zh) | 操作响应方法、客户端、浏览器及系统 | |
CN104717289A (zh) | 一种数据同步方法和装置 | |
KR100670605B1 (ko) | 멀티미디어 콘텐츠 서비스 시스템과 방법 및 그 기록매체 | |
CA2538561A1 (en) | System and method for conversion of web services applications into component based applications for devices | |
JP5613295B2 (ja) | 装置へのコンテンツの分配を管理するシステムと方法とプログラムを提供する記憶媒体 | |
JP4265413B2 (ja) | 仮想私設組織に対するポリシの実施システム及びその方法 | |
CN1953540A (zh) | 通过电视的动态用户操作界面实现快速搜索的方法 | |
CN101702708A (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 | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Open date: 20071114 |