CN1318166A - 软件改写方法及软件改写装置 - Google Patents
软件改写方法及软件改写装置 Download PDFInfo
- Publication number
- CN1318166A CN1318166A CN00801470A CN00801470A CN1318166A CN 1318166 A CN1318166 A CN 1318166A CN 00801470 A CN00801470 A CN 00801470A CN 00801470 A CN00801470 A CN 00801470A CN 1318166 A CN1318166 A CN 1318166A
- Authority
- CN
- China
- Prior art keywords
- module
- software
- rewriting
- mentioned
- rewrite
- 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline, look ahead
- G06F9/3802—Instruction prefetching
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/656—Updates while running
Abstract
普通处理部102以模块为单位在执行模块存储部105中展开并执行软件存储部108中存储的程序,改写模块存储部106暂时存储从传送部109送来的改写模块,改写表107具有表示改写模块的执行状态的项目,改写处理部103通过参照改写表107来判别软件中未执行的模块,通过改写模块存储部106中存储的改写模块来依次改写软件存储部108中存储的程序的未执行的模块。
Description
技术领域
本发明涉及软件改写方法及软件改写装置。
背景技术
作为现有的软件改写方法,有:1)在需要改写的软件(以下,称为“旧软件”)不是正在执行的情况下进行改写的方法;2)在旧软件正在执行时强制性地暂时停止执行来进行改写的方法。
在上述方法1)中,例如,在旧软件运行的机器上连接用于软件改写的专用终端,机器的电源先切断后再接通。此时,机器具有的用于软件改写的软件在检测出专用终端送来改写的新的软件(以下,称为“新软件”)的情况下,通过与普通处理模式不同的改写模式来中止旧软件的运行,将旧软件改写为新软件。然后,从机器上切断专用终端,通过机器的电源切断/再接通,在机器中执行新软件。
而在上述方法2)中,例如,旧软件运行的机器内的中央处理单元(以下,称为“CPU”)在普通处理中,通过中断等暂时停止旧软件的运行来进行改写,在改写后,通过解除停止状态来执行新软件。
然而,在现有的上述方法1)中有下述问题:在进行改写当中,机器不能进行普通处理,所以不能进行机器本来的使用。而在上述方法2)中有下述问题:虽然不会妨碍机器本来的使用,而且是暂时性的,但是还是要停止机器的普通处理。
发明概述
本发明的目的在于提供一种软件改写方法及软件改写装置,能够在软件运行中不停止软件的执行来进行软件的改写。
本发明人认为,在软件不是正在执行的情况下进行改写、或者停止软件的执行来进行改写,都是为了根据软件单位的执行状况来进行改写,发现在软件中也能够区分为正在执行的部分和未执行的部分,从而提出本发明。
因此,为了实现上述目的,在本发明中,检测软件中未执行的部分,依次改写该部分。
附图的简单说明
图1是本发明实施例1的软件改写装置的概略结构要部方框图。
图2是本发明实施例1的软件改写操作的说明图。
图3是本发明实施例2的软件改写操作的说明图。
实施发明的最好形式
以下,参照附图来详细说明本发明的实施例。
(实施例1)
本实施例的软件改写方法及软件改写装置将软件中作为改写对象的多个处理模块区分为正在执行模块、和非正在执行模块,改写非正在执行模块。
以下,说明本发明实施例1的软件改写方法及软件改写装置。图1是本发明实施例1的软件改写装置的概略结构要部方框图。
在CPU 101中,普通处理部102、改写处理部103及控制部104进行工作。
普通处理部102具有执行模块存储部105,从软件存储部108中存储的各种软件中,提取当前进行的处理所需的软件并在执行模块存储部105中展开,执行普通处理。这里所说的普通处理,是指CPU 101内进行的软件改写处理以外的所有处理。
改写处理部103具有改写模块存储部106和改写表107,根据来自控制部104的指示,通过从传送部109送来的新软件来更新软件存储部108中存储的旧软件,从而将旧软件改写为新软件。
改写模块存储部106存储从传送部109送来的新程序,直至改写处理结束。
改写表107是改写处理部103进行软件改写时参照的表,是用于管理软件执行状态的表。改写表107的结构待后述。
控制部104监视CPU 101进行的处理的负荷程度,在普通处理部102进行的处理减少、CPU 101进行的处理的负荷减小、CPU 101有也能进行普通处理以外的其他处理的裕量的情况下,向改写处理部103指示进行改写处理。此外,在普通处理部102进行的处理增加的情况下,控制部104向改写处理部103指示中止改写处理。这样,软件改写装置在CPU进行的处理的负荷程度小时进行改写处理,所以能够在不影响CPU进行的普通处理的情况下进行软件改写。
软件存储部108存储普通处理部102执行的各种软件。
传送部109将从机器外部经有线或无线而传输来的新软件变换为CPU101能处理的数据形式,传送到改写模块存储部106。
接着,用图2来说明具有上述结构的软件改写装置的操作。图2是本发明实施例1的软件改写操作的说明图。
软件存储部108中存储的各种软件是将整个软件按处理单位分为多个处理模块来存储的,软件以该处理模块为单位在执行模块存储部105中被展开,由改写处理部103改写。
这里,如图2(A)所示,假设作为改写对象的旧软件,其整个软件被分为10个模块。
此外,通常在进行软件改写时,不是改写整个软件,而是只改写需要改写的模块(以下,称为“旧模块”),以便缩短改写时间。
从传送部109送至改写模块存储部106的要改写的新的模块(以下,称为“新模块”)被存储到改写模块存储部106中,直至改写结束。
此外,改写处理部103检测出已将新模块送至改写模块存储部106后,形成图2(B)所示的改写表107。该改写表具有:表示新模块的模块号的项目;和表示执行状态的项目,表示与新模块对应的旧模块当前是否在执行模块存储部105中被展开并正在执行。
这里,如果假设作为新模块将模块1~3传送到改写模块存储部106,则如图2(B)所示,在改写表107的模块号项目中填写模块1~3。在此阶段,执行状态项目尚未被填写。
如果普通处理部102进行的处理减少、CPU 101进行的处理的负荷减小,则控制部104向改写处理部103指示进行改写处理。
此外,控制部104监视在执行模块存储部105中被展开并正在执行的模块,所以向改写处理部103指示进行改写处理,同时,控制部104通知当前在执行模块存储部105中被展开并正在执行的模块号。在执行模块存储部105中,当前在普通处理部102中进行的处理所需的多个模块被组合并被展开。
这里,如图2(C)(1)所示,在图2(A)的旧软件中,假设在执行模块存储部105中被展开并正在执行的是旧模块1~3。
接着,改写处理部103对比控制部104通知的模块号和改写表107中存储的模块号,填写执行状态项目。通知的模块号是1~3,改写表107中存储的模块号也是1~3,所以如图2(B)(1)所示,改写处理部103将改写表107的执行状态项目都填写为“正在执行”。
然后,改写处理部103参照改写表107,在改写模块存储部106中存储的新模块中,提取当前不是正在执行的模块,通过新模块来改写软件存储部108中存储的旧模块。这里,如图2(B)(1)所示,模块1~3都是正在执行,所以不进行改写。
然后,如果普通处理部102进行的处理再次减少,则控制部104向改写处理部103指示进行改写处理。此时,如图2(C)(2)所示,假设在执行模块存储部105中被展开并正在执行的是模块8~10。
接着,改写处理部103通过上述同样的操作来填写执行状态项目。通知的模块号是8~10,改写表中存储的模块号是1~3,所以如图2(B)(2)所示,改写处理部103将改写表107的执行状态项目都填写为表示非正在执行的“正在停止”。
然后,改写处理部103参照改写表107,从改写模块存储部106中提取当前不是正在执行的模块1~3,通过新模块1~3来改写软件存储部108中存储的旧模块1~3。
在改写结束后,改写处理部103消去改写模块存储部106中存储的模块及改写表107的内容。
在本实施例中采用的结构是:控制部104经常监视CPU 104的负荷程度,在CPU 101进行的处理的负荷减小的情况下,向改写处理部103指示进行改写处理;但是也可以采用下述结构。即,也可以采用下述结构:在新模块被传送到改写模块存储部106、在控制部104中有来自改写处理部103的改写请求的情况下,控制部104调查CPU 101的负荷程度。然后,在CPU 101进行的处理的负荷小的情况下,控制部104向改写处理部103指示进行改写处理。
这样,根据本实施例的软件改写方法及软件改写装置,将软件中作为改写对象的多个处理模块区别为正在执行模块、和正在停止模块,改写正在停止模块,所以不停止该软件的执行就能够在普通处理中进行软件改写。
(实施例2)
本实施例的软件改写装置与实施例1的不同点在于,改写表具有表示改写状态的项目。
以下,用图1及图3来说明本发明实施例2的软件改写方法及软件改写装置。图3是本发明实施例2的软件改写操作的说明图。本实施例的软件改写装置的结构及操作与实施例1大致相同,所以对结构及操作相同的部分,省略其详细说明。
改写处理部103检测出新模块被送至改写模块存储部106后,形成图3(B)所示的改写表107。该改写表是在实施例1的改写表上追加表示改写状态的项目所得的表。
这里,如果假设作为新模块将模块1~3及8~10传送到了改写模块存储部106,则如图3(B)所示,在改写表107的模块号项目中填写模块1~3、8~10。此外,在将模块1~3及8~10填写到改写表中时,将改写状态都填写为“未完成”。在此阶段,执行状态项目尚未被填写。
如果普通处理部102进行的处理减少、CPU 101进行的处理的负荷减小,则控制部104向改写处理部103指示减小改写处理,并且通知当前在执行模块存储部105中被展开并正在执行的模块号。
这里,与实施例1相同,如图3(C)(1)所示,在图3(A)的旧软件中,假设在执行模块存储部105中被展开并正在执行的是模块1~3。
接着,改写处理部103对比控制部104通知的模块号和改写表107中存储的模块号,填写执行状态项目。通知的模块号是1~3,改写表107中存储的模块号是1~3及8~10,所以如图3(B)(1)所示,改写处理部103填写改写表107的执行状态项目,对模块号1~3填写为“正在执行”,而对模块号8~10填写为“正在停止”。
然后,改写处理部103参照改写表107,在改写模块存储部106中存储的新模块中,从改写模块存储部106中提取当前不是正在执行、而且未完成改写的模块,通过新模块来改写软件存储部108中存储的旧模块。
这里,新模块都是改写“未完成”,模块1~8是“正在执行”,模块8~10是“正在停止”,所以改写处理部103从改写模块存储部106中提取新模块8~10,通过新模块8~10来改写软件存储部108中存储的旧模块8~10。
直至改写处理部103结束模块8~10的改写,图3(B)(1)所示的模块8~10的改写状态一直是“未完成”。
然后,如果模块8~10的改写结束,则如图3(B)(1)所示,改写处理部103将改写表107的模块8~10的改写状态从“未完成”变为“完成”。
接着,如果普通处理部102进行的处理增大,则控制部104向改写处理部103指示暂时中止改写处理。根据该指示,改写处理部103暂时中止改写处理。此时的改写表107的改写状态的内容如图3(B)(1)所示,对模块1~3是“未完成”,而对模块8~10是“完成”,所以在改写处理部103再次从控制部104收到改写处理的指示时,改写处理部103可以判断为对改写已经完成的模块8~10无需进行改写,而只对改写未完成的模块1~3进行改写即可。
然后,如果普通处理部102进行的处理再次减少,则控制部104向改写处理部103指示进行改写处理。此时,与实施例1相同,如图3(C)(2)所示,假设在执行模块存储部105中被展开并正在执行的是模块8~10。
接着,由于通知的模块号是8~10,所以如图3(B)(2)所示,改写处理部103将执行状态项目对模块1~3填写为“正在停止”,而对模块8~10填写为“正在执行”。
然后,改写处理部103参照改写表107,从改写模块存储部106中提取当前不是正在执行、而且改写“未完成”的模块1~3,通过新模块1~3来改写软件存储部108中存储的旧模块1~3,在模块1~3的改写结束后,如图3(B)(2)所示,将改写表107的模块1~3的改写状态从“未完成”变为“完成”。
然后,改写处理部103确认改写表107的改写状态已经成为“完成”后,消去改写模块存储部106中存储的模块及改写表107的内容。
这样,根据本实施例的软件改写方法及软件改写装置,由于改写表具有表示改写状态的项目,所以能够在软件中作为改写对象的多个处理模块中,判别改写已完成的模块、和改写未完成的模块,只对改写未完成的模块进行改写。由此,在要改写的模块数多的情况下,无需通过一次改写处理来进行改写,可以分多次来进行改写。此外,由于不对改写已完成的模块再次进行改写,所以能够减轻改写处理的负荷,并且高效率地进行改写处理。
上述实施例1及实施例2的软件改写装置可以应用于无线通信系统中的移动台装置等通信终端装置。在应用的情况下,例如如果通信终端装置是移动台装置,则能够使用从基站装置向移动台装置经常发送控制信号的控制信道等来无线传输软件,在移动台装置中,利用正在等待等CPU的处理负荷比较小时来进行软件改写。因此,在以往需要进行软件改写的情况下,需要回收移动台装置进行软件改写,或者移动台装置用户去有改写终端的销售点等进行改写,在改写中不能将移动台装置用于通信,而根据本发明,不使移动台装置用户意识到进行了软件改写,就能够在移动台装置的普通使用状态下进行软件改写。
此外,上述实施例1及2的软件改写装置可以应用于有线连接的通信终端装置、有线连接的计算机装置及无线连接的计算机装置。
如上所述,根据本发明,在软件的执行中,不停止软件的执行,就能够进行软件改写。
本说明书基于平成11年8月18日申请的特愿平11-231468。其内容全部包含于此。
产业上的可利用性
本发明可以应用于无线通信系统中的移动台装置等通信终端装置。此外,本发明可以应用于有线连接的通信终端装置、有线连接的计算机装置及无线连接的计算机装置。
Claims (10)
1、一种软件改写方法,其中,在被改写的软件的执行中,检测上述被改写的软件中未执行的部分,依次改写上述未执行的部分。
2、如权利要求1所述的软件改写方法,其中,被改写的软件是被分割为1个或多个模块的软件,将各个模块判别为正在执行的模块和非正在执行的模块,依次改写上述非正在执行的模块。
3、如权利要求2所述的软件改写方法,其中,将改写模块暂时存储到存储器中,对比上述改写模块和正在执行的模块,在与上述改写模块对应的模块不是正在执行时,通过上述改写模块来依次改写被改写的软件中的上述对应的模块。
4、如权利要求3所述的软件改写方法,其中,对于被改写的软件中的对应的模块,判定是否已改写,不再次改写已改写的上述对应的模块。
5、一种软件改写装置,包括:软件存储器,存储被分割为1个或多个模块的软件;处理器,展开并执行上述模块;模块存储器,暂时存储改写模块;判别器,对比上述改写模块和上述处理器中正在执行的模块,判别与上述改写模块对应的模块的执行状态;以及改写器,根据判别结果通过上述改写模块来依次改写上述软件存储器中存储的上述对应的模块。
6、如权利要求5所述的软件改写装置,其中,判别器具有以表示改写模块的模块号的项目、和表示与改写模块对应的模块的执行状态的项目作为构成项目的表,改写器参照上述表来进行改写处理。
7、如权利要求6所述的软件改写装置,其中,表以表示与改写模块对应的模块的改写状态的项目作为构成项目。
8、如权利要求5所述的软件改写装置,包括控制器,调查CPU进行的处理的负荷程度,在上述负荷程度减小时,向改写器指示进行改写处理。
9、如权利要求8所述的软件改写装置,其中,控制器根据来自改写器的改写请求,调查CPU进行的处理的负荷程度。
10、一种其特征在于搭载软件改写装置的通信终端装置,其中,上述软件改写装置包括:软件存储器,存储被分割为1个或多个模块的软件;处理器,展开并执行上述模块;模块存储器,暂时存储改写模块;判别器,对比上述改写模块和上述处理器中正在执行的模块,判别与上述改写模块对应的模块的执行状态;以及改写器,根据判别结果通过上述改写模块来依次改写上述软件存储器中存储的上述对应的模块。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP11231468A JP2001056759A (ja) | 1999-08-18 | 1999-08-18 | ソフトウェア書換え方法およびソフトウェア書換え装置 |
JP231468/1999 | 1999-08-18 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN1318166A true CN1318166A (zh) | 2001-10-17 |
Family
ID=16923984
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN00801470A Pending CN1318166A (zh) | 1999-08-18 | 2000-08-10 | 软件改写方法及软件改写装置 |
Country Status (5)
Country | Link |
---|---|
EP (1) | EP1143332A1 (zh) |
JP (1) | JP2001056759A (zh) |
CN (1) | CN1318166A (zh) |
AU (1) | AU6473400A (zh) |
WO (1) | WO2001013219A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101241441B (zh) * | 2003-06-04 | 2011-02-09 | 松下电器产业株式会社 | 程序置换方法及装置 |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3987460B2 (ja) | 2003-04-22 | 2007-10-10 | 株式会社日立コミュニケーションテクノロジー | 無線通信装置及び無線通信網 |
US7310519B2 (en) | 2003-04-22 | 2007-12-18 | Hitachi Communication Technologies, Ltd. | Wireless communication apparatus, wireless communication network and software upgrading method |
US7406310B2 (en) | 2003-04-22 | 2008-07-29 | Hitachi Communication Technologies, Ltd. | Network management apparatus and method of selecting base station for software update |
JP2005182106A (ja) * | 2003-12-16 | 2005-07-07 | Yokogawa Electric Corp | Cpuメモリ装置及び配置プログラム配置変更方法 |
JP4747015B2 (ja) * | 2006-03-30 | 2011-08-10 | 日本電気通信システム株式会社 | 通信端末装置、及び、その制御方法 |
EP2071453A1 (en) * | 2007-12-14 | 2009-06-17 | ITI Scotland Limited | Dynamic code update |
JP2009252077A (ja) * | 2008-04-09 | 2009-10-29 | Mitsubishi Electric Corp | プログラマブル表示器 |
JP2013254303A (ja) * | 2012-06-06 | 2013-12-19 | Sony Corp | 情報処理装置、情報処理方法およびプログラム |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS62113238A (ja) * | 1985-11-12 | 1987-05-25 | Nec Corp | 電子計算機システムにおけるプログラム修正装置 |
JPH02161523A (ja) * | 1988-12-14 | 1990-06-21 | Hitachi Ltd | 常駐化モジュール修正方式 |
JPH05224707A (ja) * | 1992-02-13 | 1993-09-03 | Yaskawa Electric Corp | プログラマブルコントローラのプログラム変更方法 |
JPH07104991A (ja) * | 1993-10-08 | 1995-04-21 | Nec Corp | ソフトウェアの修正装置 |
JPH0895773A (ja) * | 1994-09-27 | 1996-04-12 | Oki Electric Ind Co Ltd | プログラム動作制御方法及び装置 |
JPH08171487A (ja) * | 1994-12-19 | 1996-07-02 | Fujitsu Ltd | ソフトウェア更新管理方式 |
JP3799642B2 (ja) * | 1996-01-10 | 2006-07-19 | ソニー株式会社 | 通信端末のソフトウェア更新システム、通信端末及び通信管理センタ |
JPH1063498A (ja) * | 1996-08-13 | 1998-03-06 | Nippon Denki Ido Tsushin Kk | 無線基地局の運用プログラム変更方法 |
JPH10269075A (ja) * | 1997-03-24 | 1998-10-09 | Sony Corp | 動作制御情報の更新方法およびそれを用いたデータ処理装置 |
-
1999
- 1999-08-18 JP JP11231468A patent/JP2001056759A/ja active Pending
-
2000
- 2000-08-10 EP EP00951925A patent/EP1143332A1/en not_active Withdrawn
- 2000-08-10 AU AU64734/00A patent/AU6473400A/en not_active Abandoned
- 2000-08-10 CN CN00801470A patent/CN1318166A/zh active Pending
- 2000-08-10 WO PCT/JP2000/005351 patent/WO2001013219A1/ja not_active Application Discontinuation
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101241441B (zh) * | 2003-06-04 | 2011-02-09 | 松下电器产业株式会社 | 程序置换方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
EP1143332A1 (en) | 2001-10-10 |
WO2001013219A1 (fr) | 2001-02-22 |
AU6473400A (en) | 2001-03-13 |
JP2001056759A (ja) | 2001-02-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1276362C (zh) | 用于多处理器系统中的片上数据传输的方法和系统 | |
CN1234218C (zh) | 通信设备中具有等级结构事件的处理方法 | |
CN101031897A (zh) | 在次序混乱的dma命令队列中建立命令次序 | |
EP1046989A3 (en) | Method and system for transferring job between computers | |
CN101030182A (zh) | 执行dma数据传输的设备和方法 | |
CN1141644C (zh) | 一种嵌入处理机内存的检测和监控方法 | |
EP1018687A3 (en) | A port manager controller for connecting various function modules | |
CN1831802A (zh) | 将模块耦合到互连上的管理控制器的方法和装置 | |
CN1318166A (zh) | 软件改写方法及软件改写装置 | |
CN110569312B (zh) | 一种基于gpu的大数据快速检索系统及其使用方法 | |
CN1217798A (zh) | 用于使互联网不同计算机中的程序同步的方法 | |
CN1757021A (zh) | 设备管理方法及设备管理系统 | |
CN112445623A (zh) | 多集群管理方法、装置、电子设备及存储介质 | |
CN101031898A (zh) | 使用分离事务处理来实现无缓冲器dma控制器 | |
CN1614579A (zh) | 在多处理器环境下使用直接存储器存取的高速传递数据的方法和装置 | |
CN1584852A (zh) | 程序处理装置 | |
CN100337198C (zh) | 一种移动通信设备应用程序处理系统 | |
CN1828562A (zh) | Usb装置、usb系统和usb控制方法 | |
CN112162780B (zh) | 应用运行控制方法、装置及电子设备 | |
CN1896976A (zh) | 在线刻录系统及其方法 | |
CN1176423C (zh) | 主机板测试程序处理系统及方法 | |
CN1127243C (zh) | 远程访问客户系统个别初始化设定的数据处理系统和方法 | |
CN1270251C (zh) | 一种实现中断请求预处理的方法 | |
CN100341257C (zh) | 倒换单板加载中的主备倒换实现方法 | |
CN1184573C (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 | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |