JP2002507020A - 障害を生じることなくデータを更新する技術 - Google Patents
障害を生じることなくデータを更新する技術Info
- Publication number
- JP2002507020A JP2002507020A JP2000535991A JP2000535991A JP2002507020A JP 2002507020 A JP2002507020 A JP 2002507020A JP 2000535991 A JP2000535991 A JP 2000535991A JP 2000535991 A JP2000535991 A JP 2000535991A JP 2002507020 A JP2002507020 A JP 2002507020A
- Authority
- JP
- Japan
- Prior art keywords
- software
- data
- old
- new
- variables
- 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
Classifications
-
- 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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99941—Database schema or data structure
- Y10S707/99944—Object-oriented database structure
- Y10S707/99945—Object-oriented database structure processing
Abstract
Description
には障害を生じることなくソフトウェア処理デバイス内のソフトウェアおよび関
連するデータを更新する技術分野、およびこれに適した方法に関するものである
。
方法に対する要求が次第に増大している。
停止し、新ソフトウェアをロードし、次に新ソフトウェアをスタートすることで
ある。この方法を使用する際に、旧ソフトウェアと新ソフトウェアとの間で内部
データを転送することはない。更に、この方法を用いた場合に、確立されている
サービスのすべてが失われ、新ソフトウェアのロード中およびスタート中にはす
べてのサービスが完全に停止される。現在、この方法は一般に、例えばワークス
テーションまたはパソコンで用いられている。
ェアをロードすることである。しかしながら、旧ソフトウェアと新ソフトウェア
との間でデータを転送する間、通常、旧ソフトウェアの実行は完全に停止される
。かかる例は1996年のエリクソンレビュー第2号、66〜67ページの「A
XE10ソフトウェアのリモートアップグレードおよび更新」なる論文に記載さ
れており、この例は記録のうちのすべての変数に対して繰り返して取り扱われる
、記録内の変数を転送することに関する。
た、変換しなければならない変数ごとにそれぞれの変換プログラムを作成しなけ
ればならない。この変換プログラムは次に必要な変換を実行し、この変換の結果
を新しくインストールされたソフトウェアに転送する。
われることである。特にデータの転送中、旧ソフトウェアのデータと一貫性のあ
るコピーを得るためにソフトウェアの実行を停止しなければならないという欠点
がある。
トウェアへの新サービスのためのデータ入力を切り替えることが提案されている
。更に、旧ソフトウェアで進行中のサービスが完了すると、サービスからのデー
タの入力を旧バージョンから新バージョンへ切り替える。しかしながら、新ソフ
トウェアのバージョンが完全に作動状態となる前に旧バージョンによるソフトウ
ェアを最初に終了しなければならないので、このような解決案は短時間でサービ
スを処理するソフトウェアしか取り扱うことができない。
ェアの更新を達成することにある。
第1グループを記憶する第1メモリ区画(partition)およびソフトウェアモジ ュールおよび関連するデータの第2グループを記憶する第2メモリ区画にサブ分
割されたメモリ手段と、第2メモリ区画に記憶されているソフトウェアによるソ
フトウェアの処理を続けながら、これと同時に第1メモリ区画へソフトウェアお
よび関連するデータをロードするようになっているソフトウェア更新手段とを含
む、更新機能を備えたタイプのソフトウェア処理デバイスにより達成される。こ
のソフトウェアの実行は、新しくロードされたソフトウェアと実行中のソフトウ
ェアとに対し、同じ状態となるとすぐに、新メモリ区画へすぐに切り替えられる
。
効率的かつ障害を生じることなくソフトウェアの更新を達成するために、本発明
によれば、旧ソフトウェアを連続的に実行しながら旧ソフトウェアの必要なすべ
てのデータと共に新ソフトウェアを更新することが提案される。新ソフトウェア
のデータが旧ソフトウェアのデータと同じ状態に達したと同時に、新ソフトウェ
アは関連する機能の実行を引き継ぐ。
されたメモリ区画および実行中のメモリ区画内のソフトウェアが、ソフトウェア
の実行を切り替えるための状態に達しているかどうかを評価するようになってい
る更新制御手段を含む。このソフトウェア更新手段は、ソフトウェア処理デバイ
ス内の異なるメモリ区画の間でデータを転送することにより、ソフトウェアおよ
び関連するデータをロードするためのインターフェース兼変換手段を更に含むこ
とが好ましい。更にこのインターフェース兼変換手段は1回のバックグラウンド
プロセスでソフトウェアの転送を実行し、複数回のバックグラウンドプロセスで
関連するデータの実行をすることが好ましい。この1回のバックグラウンドプロ
セスおよび複数回のバックグラウンドプロセスは現在インストールされているソ
フトウェアの実行と同時に実行される。
は、転送すべきとポイントされたすべてのデータを処理する少なくとも1回のバ
ックグラウンドプロセスを実行する。ここで、バックグラウンドプロセスは、変
更されていない新ソフトウェアへデータを転送するか、または必要な場合に変換
プログラムをスタートする。
行を続けるので、既に転送されているデータを旧ソフトウェアによって変更でき
る。旧ソフトウェアと新ソフトウェアとの間で一貫したデータを得るために、変
数のかかる変更を再び新ソフトウェアへ転送する。換言すれば、旧ソフトウェア
により既にコピーされたデータを書き込むごとにデータを再び新ソフトウェアへ
転送する。変換すべきデータの場合、このデータのための変換プログラムを更に
スタートし、変換出力を再び新ソフトウェアへ転送する。
スを失うことなく、かつデータの転送中または他の時間中に確立されたサービス
を停止することなく、新ソフトウェアへ転送される旧ソフトウェアに必要なすべ
てのデータを得ることが可能である。特にデータの転送は、データを新ソフトウ
ェアの表示およびデータ構造に変換することを伴うことがある。
とができる。従って、夜間ではなく、通常のワーキング時間に機能変更を実行で
きる。ソフトウェアのサービスプロバイダはアップグレードを行うことにより収
入を失うことはなく、かつソフトウェアによって提供されるサービスの購入者が
サービスの低下を受けることはない。
ができる。その理由は、このような更新の追加のコストが大幅に低減されるから
である。また、新しい機能を購入者へ早期に提供することができる。
アおよび新ソフトウェアに関連するすべてのデータを転送する工程と、新ソフト
ウェアに関連するデータが旧ソフトウェアに関連するデータと同じ状態となって
いるかどうかを評価する工程と、新ソフトウェアのデータの状態と旧ソフトウェ
アのデータの状態とが同じである限り、サービスを新サービスは瞬間的に切り替
える工程とを備えた、ソフトウェアを更新するための本発明の方法により、同じ
利点が得られる。
がら、少なくとも1回のバックグラウンドプロセスで転送すべきデータを識別す
る。このバックグラウンドプロセスはソフトウェアの実行中に書き直された変数
を転送するよう、繰り返し実行することが好ましい。
ックグラウンドプロセスを繰り返し実行することは、旧ソフトウェアによって変
数を書き直すごとに、転送すべき変数をマークするサブ工程と、前記マークされ
た変数だけに対してバックグラウンドプロセスを繰り返すサブ工程と、転送した
変数のマークを削除するサブ工程とを備える。
キングをスタートするように、潜在的に一貫性のない変数をマークする。特に旧
ソフトウェアの実行中に旧ソフトウェアにより書き込まれた転送すべき各データ
アイテムをマークする。転送すべきすべてのデータをバックグラウンドプロセス
がスキャンすると、転送すべきであるとマークされている変数に対してのみ、再
びバックグラウンドプロセスがスタートされる。転送後、データアイテムのマー
クは除かれる。次に、バックグラウンドプロセスの第2回目のスタート後、旧ソ
フトウェアにより書き込まれたすべての変数を再びマークする。このようなルー
プは1回のバックグラウンドプロセス中に書き直され、マークされた変数の数が
先の回と比較して減少しなくなるまで続けられる。次に、処理の停止中に残りの
いくつかの変数を転送することができる。かかる処理の停止が必要なケースでは
、可能な最高の効率が得られるように、停止のための時間が最小にされる。
プリケーション内で使用できる。すなわち移動通信システムの中央処理ユニット
内でソフトウェアをアップグレードするアプリケーション、データベースの構造
を変更する前に障害を最小にしながら、データベースをアップグレードするアプ
リケーション、またはオペレーティングシステムを更新するアプリケーションで
使用できる。
す。
ドとから成る。特にAサイドは、更新制御ユニット2と、メモリ区画(partitio
n)4と、処理ユニット6とが設けられている。更にこのメモリ区画はデータ記 憶セクション8と、ソフトウェア記憶セクション10とに分割されている。また
、Bサイドは、第2更新制御ユニット12と、第2メモリ区画14と、第2処理
ユニット16とが設けられている。Aサイドと同じように、メモリ区画14はデ
ータ記憶セクション18と、ソフトウェア記憶セクション20とに分割されてい
る。
画14とは、インターフェース兼変換ユニット22を通してリンクされている。
このインターフェース兼変換ユニット22はリンク24を介し、Aサイドにある
更新制御ユニット2によって制御され、更にBサイドにある更新ユニット12は
別のリンク26を介してこのインターフェース兼変換ユニット22を制御できる
。また、双方の更新制御ユニット2、12は別のリンク28および30を介して
関連するメモリ区画4、14に接続されている。
示した、本発明の第2実施例に係わる略図を示す。繰り返しを避けるために、同
じ機能を有するユニットの説明については本書では省略することとする。
1に示された更新制御ユニット2と12との機能は単一の更新制御ユニット32
に統合されている。更に、特定のAサイドまたはBサイドに更新制御ユニット3
2を割り当ててはならないが、AサイドまたはBサイドのいずれかの一部であっ
てもよい。
る。特に、更新制御ユニットはAサイドとBサイドとの間の、旧ソフトウェアお
よび新ソフトウェアに対するデータの転送を処理するためのデータ転送制御ユニ
ット34を含む。更にAサイドおよびBサイドにおける旧ソフトウェアと新ソフ
トウェアの状態を比較し、これら状態が一致すると判断された場合にスイッチン
グユニット38をトリガーするための状態比較ユニット36が設けられている。
メモリ管理ユニット40は新ソフトウェアのローディング中のメモリ管理、特に
記憶セクションの割り当て、記憶セクションの割り当て解除、記憶セクションの
コンパクト化、およびデータ変数のためのベースアドレスの変更を実行する。最
後に、リンク初期化兼管理ユニット42は、新ソフトウェア記憶セクション20
への新ソフトウェアをロードし、Bサイドにあるメモリ区画14のうちのデータ
記憶セクション18におけるデータ変数に関連する基準情報を更にロードした後
の、新ソフトウェア記憶セクション20内の異なるソフトウェアモジュールに関
連する基準記憶テーブル間のリンクを初期化する。次に、図4〜8を参照し、更
新制御ユニットの異なる部品について説明する。
最初の3つの構成部品をAサイドにある更新制御ユニット2に割り当て、残りの
構成部品をBサイドにある更新制御ユニット12に割り当てることができる。
ア処理デバイスの2つの実施例について説明したが、次の記載では、図4〜9を
参照してそれらの機能について説明する。本発明を限定することなく、Bサイド
に新ソフトウェアをロードするものと仮定する。
し、そのための基準記憶装置を初期化するための準備ステップS1でスタートす
る。更に、ステップS2による一般にモジュールに配置されている旧ソフトウェ
アの実行は、更新プロセス全体にわたっても続けられる。ステップS2における
旧ソフトウェアの実行と同時に、更新制御ユニット2および12または更新制御
ユニット32は、ステップS3における新ソフトウェアの更新および旧ソフトウ
ェアと新ソフトウェアとの間のデータの転送をトリガーする。更新プロセスの全
体の効率を大幅に改善可能にしているのは、このようなステップS2とS3にお
ける異なる作業を同時に実行していることによるものである。
ソフトウェアに関連するデータと新ソフトウェアに関連するデータが一致してい
ると判断するとすぐに、同じ状態が達成されている限り、ステップS5において
スイッチングユニット38はサービスを新ソフトウェアに切り替える。ステップ
S4は新ソフトウェアモジュールおよび旧ソフトウェアモジュールのグループご
とに作動できる。すなわちすべてのソフトウェアモジュールに対し、例えば1グ
ループとして作動できる。かかる各スイッチングステップS5の後で、データ転
送制御ユニット34は、転送すべきデータが第1データ記憶セクション8に残っ
ているのか、または第1ソフトウェア記憶セクション10に残っているのかを、
ステップS6で判断する。いずれかの場合、更新プロセスはステップS2に戻り
、全更新プロセスが終了するまで旧ソフトウェアおよび関連するデータを更に転
送する。
のスイッチングユニット38はモジュラー式に作動できる。また、旧ソフトウェ
アがそのサービスを実行し続けながら、転送すべきデータが連続的に識別される
。好ましくは、ステップS3〜S6における転送すべきデータの識別およびその
転送自体は、旧ソフトウェアと同時に実行される少なくとも1回のバックグラウ
ンドプロセスで実行される。
ーキング時間中に機能変更を実行できる程度に大幅に低減される。従って、ソフ
トウェアプロバイダは更新作業のために収入がなくなる恐れはなく、かつソフト
ウェアの購入者はサービスの低下を受けることはない。全般に、アップグレード
のコストが低減されるので、システムにより頻繁にソフトウェアの更新を行うこ
とができる。また購入者に対し、より容易に新しい機能を提供できる。
例に係わるソフトウェア処理デバイスの作動についてより詳細に説明する。
トウェアの更新の詳細を示し、図8は図4に示されたステップS5による新ソフ
トウェアへのサービスの切り替えの詳細を示し、図9は図4に示されたステップ
S4による同じ状態を得るために転送すべき残りデータの判断の詳細を示す。
関連するデータを更新するステップS3の細部について、図5aおよび図5bを
それぞれ参照して説明する。
プS11は、Bサイドにおけるデータ記憶セクションの準備に関するステップで
あり、この第1ステップS11はメモリ管理ユニット40によって実行される。
ここで、異なるメモリ区画の間のデータの記憶のリロケーションは、物理データ
記憶アドレス指定レベルにおけるこれらメモリ区画間のデータ変数の転送を可能
にするよう実行される。特に、メモリ区画内の適当なアドレススペースを変数が
占めるように、メモリ区画4、14をリロケートする。従って、後にデータ変数
は新ソフトウェアのデータ変数と共存できる。
なく新ソフトウェアを取り扱い、更に、データ変換のための変換プログラムも取
り扱うのに十分なメモリが得られるように、異なるメモリ区画へのメモリの分離
を実行する。
のであり、メモリ管理ユニット40によって実行される。新ソフトウェア変換の
他にデータの転送に必要な情報が、更新すべきメモリ区画に記憶される。この変
換情報は、ソース変数を変換変数に変換するためのコードと、ソース変数として
コピーまたは使用すべき変数に関する情報を含む。更に、この変換情報はベース
アドレスの変更に関連している。
、更新された区画14にあるソフトウェア記憶セクション20から変更または削
除される旧ソフトウェアを除く。更新されたメモリ区画14のソフトウェア更新
セクション20内に、追加された新ソフトウェアおよび変更された新ソフトウェ
アがロードされる。よってこれら追加されたソフトウェアおよび変更されたソフ
トウェアのために記憶エリアが割り当てられるが、サイズを変えることができる
アレイには初期のサイズしか与えられない。更新プロセス中、サービスはまだ旧
ソフトウェアにより実行されている。
ト42により基準記憶装置を準備し、変更する。特に、除去されたソフトウェア
のために基準記憶情報を維持する。その理由は、データ変数の旧バージョンに変
換プログラムをリンクするために後でこの情報が必要となるからである。更に、
基準記憶エリアも割り当て、新ソフトウェアのためにこれを満たす。従って、ス
テップS13の後に新ソフトウェアだけでなく、旧ソフトウェアのためのベース
アドレステーブルBATが存在する。
けるベースアドレステーブルBATおよびデータ記憶セクションを示す図6には
、上記準備ステップS12の結果が示されている。基準テーブルは、実際に利用
できるソフトウェアの概観を示すため、新ソフトウェアおよび旧ソフトウェアに
対し、基準テーブルが維持される。更に、ベースアドレステーブルBATは、追
加または変更されたソフトウェアモジュール、保存されたソフトウェアモジュー
ルおよび削除または変更されたソフトウェアモジュールに区別される、異なるソ
フトウェアモジュールのためのアドレスを提供する。
44−1または保存されたソフトウェアモジュール44−2のいずれかに関連す
ることを示している。更に、旧ソフトウェアは、保存されたソフトウェアモジュ
ール46−1または削除もしくは変更されたソフトウェアモジュール46−2の
いずれかに関連する。
画のデータ記憶エリアに記憶された関連する変数との間のリンクは、それぞれポ
インタ48、50、52によっても行われる。新ソフトウェアをロードした後に
、新しいセパレート変数、コピー変数および変換変数48−1〜48−3に、追
加または変更されたソフトウェアモジュールがリンクされる。更に、共通するセ
パレート変数、コピー変数およびソース変数50−1〜50−3に、保存された
ソフトウェアモジュールがリンクされる。最後に、古いセパレート変数、コピー
変数およびソース変数52−1〜52−3に、削除または変更されたソフトウェ
アモジュールがリンクされる。
されている。更新プロセスのために基準テーブルに変換ソフトウェア54が追加
されており、ベースアドレステーブルBATに、関連する新変換ソフトウェアモ
ジュール56が追加されている。リンク58を介し、変換ソフトウェアモジュー
ルに変換ソフトウェアが関連付けされていることに留意すべきである。
、コピーされた新変数60へのリンク48−2を共通するコピーされた旧変数6
2へ向け直す。従って、更新されたデータ記憶セクション14内のコピーされた
新変数に対し、記憶エリアを保存する必要はない。
ーブルBAT56は、新しい変換タイプの変数66、共通ソースタイプの変数6
8および旧ソースタイプの変数70に対するそれぞれのリンク64−1〜64−
3を有する。このことは、変換ソフトウェアモジュールは、これら変数66、6
8、70に最終的に記憶される実際の内容に対する影響を有する。
サイドにあるベースアドレステーブルを再構築し、変換目的のためにこのBサイ
ドで一時的なベースアドレステーブルBAT56が導入される。これらベースア
ドレステーブルBAT56は変換ソフトウェアモジュールによって使用され、新
ベースアドレステーブル内のエントリーが新しいコピーデータ変数の代わりに旧
データ変数をポイントするように変更され、よってその後、それぞれの旧ソフト
ウェアおよび新ソフトウェアに対し、対応する旧データ変数が共通となる。従っ
て、Bサイドにおけるデータ記憶セクション18から新コピーデータ変数を除く
ことができる。
の数を維持するだけのデータ変数はコピーデータ変数として扱われる。同じこと
が、旧ソフトウェアからそのサイズを相続するデータ変数についても当てはまる
。
イプの変数が、更新されたデータ記憶セクション18に割り当てられる。新コピ
ーデータ変数から先に割り当て解除されたメモリを再利用するために、まず最初
にデータ記憶セクション18をパックすることができる。図7において、影の付
いていないデータ変数は変更されないままである。更に、図7において影の付い
ているデータ変数は変換モジュールによって変更されたものである。
ェース兼変換ユニット22で実行されるステップS32で更新されるメモリ区画
へのデータをコピーし、変換するための基礎として働く。特に旧ソフトウェアを
更に実行する間にコピータイプおよびソースタイプのデータ変数はAサイドから
Bサイドへ転送される。これらのコピーは、旧ソフトウェアによりデータが書き
込まれ、物理的アドレス指定レベルでこのような書き込みが行われるたびに行わ
れる。
通してデータ変数の変更全体は、次のようにまとめることができる。
を示す。ここで、第1ステップS31はインターフェース兼変換ユニット22内
で実行され、データ転送制御ユニット34によって制御され、転送しなければな
らない旧ソースタイプのデータの識別を行う。特に、ステップS31は遠くに転
送されないデータおよび既に転送されているが旧ソフトウェアの実行を続行する
ことにより旧ソフトウェアによって書き直されているデータを識別するように働
く。本発明の1つの選択案によれば、それぞれのデータ変数をマークすることが
できる。
を特定するために、データ転送制御ユニット34内でデータ変更情報を使用でき
る。
、構造、サイズおよび関連するデータ変数の個々の数を維持することである。更
に、データ変更情報は、変換機能を実行することにより、ある種のデータを変換
しなければならないことも指定できる。
らかの方法でコピーまたは入手してはならない、新ソフトウェアにおける変数に
関連したセパレートタイプのデータが挙げられる
た変数の値を得るのに使用できる。特にデータはソースタイプおよびコピータイ
プのいずれでもよい。
は、新ソフトウェアおよびそれに関連するデータのコピー、変換および初期化に
関連するステップである。この第2ステップS32は、データ転送制御ユニット
34によって制御され、次に説明するように、データおよび基準記憶装置の変更
を行う。
される。
書き込まれたデータの全アドレス ワイルドカード:1回の書き込み動作で2つ以上の個々のデータが書き込まれ
たことを示すビット カテゴリー:変数がソースタイプであることを示すビット
てこれまで概略を述べた少なくとも1回のバックグラウンドプロセスでコピーお
よびソースタイプのデータ変数を読みだし、書き込みする。
変数のための変換をスタートする。この変換はAサイドのメモリ区画とBサイド
のメモリ区画との間のコピーとパラレルに実行される。本発明によれば、この変
換は変換状態メントで発生するデータを旧ソフトウェアによって書き込むごとに
、個々のレベルで行う。
換を終了する際に実行すべき新ソフトウェアの初期化を含む。この目的は新ソフ
トウェアを実際に実行する前に新ソフトウェアモジュールを初期化することにあ
る。特に、この初期化はデータのコピーおよび変換とパラレルに行われる。シス
テムのスタートおよび再スタートに実行中に、通常設定され、ソフトウェアの変
更後に更新を必要とする異なるタイプの論理リンクおよび基準を再設定する。
関するデータの状態を判断するために、状態比較ユニット36を附勢する。図9
にはこのステップS4に関連するサブステップが示されており、これらサブステ
ップは2つの質問、すなわちステップS41での転送すべきデータが残っている
のかという質問、更にステップS42での最終バックアップ処理ループ中に書き
直された、すなわちマークされたデータ変数の数が、減少したかどうかという質
問を含む。
データ変数の数が減少した場合、更新プロセスは再び図4に示されるステップS
2に分岐する。減少していない場合、全更新手順を終了するために、残っている
データ変数の転送を旧ソフトウェアの停止中に実行する。同じ状態が得られる場
合、このプロセスはスイッチングユニット38で実行されるステップS5に進み
、同じ状態が得られている場合に新ソフトウェアのサービスに即座に切り替える
。図8は、次のように説明する新ソフトウェアモジュールへのサービスの切り替
えに関連するサブステップを示す。
にあるメモリ区画14との間の切り替えに関するものである。ここで、切り替え
るべきソフトウェアモジュールの実行は、関連するプロセスデータのスキャニン
グと共にAサイドで停止される。プロセスバッファ内の現在のプロセスは実行さ
れるか、または最終的に除かれる。ソフトウェアモジュールを除かなければなら
ない場合、適用可能な場合には関連するトランザクションを終了しなければなら
ない。
のオプションのステップS52の主な機能は、更新されているソフトウェア処理
デバイスにリンクされている別のソフトウェア処理デバイスへの外部通信を引き
継ぐことにある。また、この外部通信に関連する処理テーブルおよびタイミング
信号を開始してもよい。時間を節約するために、該当するソフトウェアモジュー
ルだけに再スタート信号を送ってもよい。どのソフトウェアモジュールが関連す
るかは機能コードまたは該当するソフトウェアモジュールからの明示的信号のい
ずれかによる先の初期化(ステップS32)から決定できる。
例えばトランザクションのキャンセルに関するものである。特に本発明はトラン
ザクションの状態の概念に関するトランザクション概念を提供するものである。
この状態は全体としてトランザクションに適用される。本発明によれば、2つの
状態を区別する。すなわち旧ソフトウェアモジュールから新ソフトウェアモジュ
ールへのマッピングが可能であるという意味において、トランザクションの状態
が良好に定められる第1安定状態と、逆のことが当てはまる準安定状態とを区別
する。このトランザクション概念の利点は、起こり得るすべての準安定状態を変
換するための高価な機構を回避できることである。
示されるメモリの割り当てを解除し、次に基準記憶装置をクリーンアップする。
常のパラレルスタートに関するステップである。このステップは、新ソフトウェ
ア内のエラーが極めて起こりにくいようにしばらくの間、新ソフトウェアを実行
される際に実行されるステップである。このような標準化ステップS54の前に
、更新されたサイドはメモリ内に旧ソフトウェアを維持するバックアップとして
働く。
ける最終ステップS6は、残りのデータをまだ転送すべきかどうか、またはすべ
ての新モジュールを切り替え、実行しているかどうかの評価に関するステップで
ある。
分散処理を行う複数のソフトウェア処理デバイスの双方に適用できる。
るソフトウェア処理デバイス間でデータをコピーする必要がないということであ
る。また、通常の命令実行からの簡単なソフトウェアの割り込みとして変換プロ
グラムをスタートしてもよい。ソースデータ変数を書き込みするごとに、更に関
連する通常の実行時間への悪影響により、命令パイプラインが破壊されるという
欠点を克服するために、1つの可能性はソフトウェアの割り込み時にソースデー
タ変数のアドレスをバッファ化することである。
メモリおよび処理容量が少なくてすむという点で有利である。この理由は、プロ
グラム記憶セクションが旧ソフトウェア、新ソフトウェアだけでなく変換プログ
ラムを取り扱ってはならないからである。更に、データ記憶セクションも旧ソフ
トウェアだけでなく新ソフトウェアのためのセパレートタイプのデータ変数をホ
ストしてはならない。このことは、プログラム記憶セクションでは、単一ソフト
ウェア処理デバイスによる実現例と比較した場合に、要求量が少なくなるという
ことを意味する。データ記憶セクションでも要求量は低くなる。最後に、変換プ
ログラムだけでなく元のプログラムも複数のソフトウェア処理デバイスを使って
異なるサイドで実行されるので、処理容量の必要量も大幅に低減される。
発明の主な原理は次のように要約できる。旧ソフトウェアから新ソフトウェアへ
のデータのコピーおよび変換は、通常のソフトウェアの実行とパラレルに、かつ
この実行に障害を生じることなく実行される。新ソフトウェアにおけるモジュー
ルを初期化し、通常のソフトウェアの実行をパラレルに、かつこのソフトウェア
の実行を乱すことなく機能変更を開始する。新ソフトウェアへの切り替えは、ソ
フトウェアの実行の停止中に最小の機能変更の再スタートを行い、次にソフトウ
ェアの実行とパラレルな不安定なトランザクションをアボートすることにより実
行される。
的位置を新ベースアドレステーブルエントリーに割り当てることにより、変数の
値、構造、サイズおよび変数の個々の数を維持し、データ変数の値を新データ変
数またはベースアドレスが変更された同じデータ変数へコピーすることである。
ここで、本発明によれば、実際のコピーおよび変換を行う前に割り当てを行う。
このことは、かかる割り当てのために実際の変換プログラムを実行しなくてもよ
いことを意味する。これと対照的に、1回コピーすれば、その結果、意図する変
換が得られる。
ータ記憶セクション内のメモリを割り当てる。このことは重要な変換時間中にメ
モリをコンパクトにする資源を消費しなくてもよいことを意味する。
データ変数のための値の転送を行う。すべてのデータ変数が転送されるのを保証
するために、バックグラウンドレベルですべてのデータ変数をスキャンする。
スタートする。スタートごとに当該データ変数の1つの個々の変数だけに通常、
変換プログラムが実行され、データ変数の個々のすべてに対して繰り返すように
は実行されない。すべてのデータ変数にデータ値を割り当てることを保証ために
、すべての変換プログラムはバックグラウンドレベルで個々のデータ変数ごとに
1回実行される。
は極めて高速である。このことはこのような再スタートは実行中に短時間の停止
があっても、通常のソフトウェアの通常の実行に対し障害を引き起こすことがな
いことを意味する。
トされる。トランザクションの状態の概念すなわち安定または準安定とは、状態
が良好に定められていないかどうかを定めるものである。本書では安定状態にあ
るすべてのトランザクションに対し、新ソフトウェアへ一貫した状態が保証され
る。残りのトランザクションはアボートされることになる。
定するものではなく、次に説明するように別の変形および変更を検討することが
できる。
数アドレスをデータ記憶セクションへ転送することである。ここではデータ変数
アドレスは、データ変数のベースアドレスから成り、適用可能な場合には更にポ
インタまたはインデックスから成る。このような変形例の主な利点は、変換が簡
略であるということである。
ジュールを除く他の部分に関連するソフトウェアモジュールを更新することであ
る。特にソフトウェアだけでなくハードウェアを更新することも検討できる。ま
た、ハードウェアの更新中にソフトウェアの実行を別のソフトウェア処理デバイ
スに切り替えることも検討できる。
ソフトウェアの一部を変更することにより、異なるソフトウェア処理デバイスで
ソフトウェアとハードウェアとの組み合わせた更新を検討することもできる。本
書では、同時に一部の部品だけを変更するだけでよく、従って、分散システム内
で全体を再スタートする必要はない。
て、図4に示された準備ステップのための、より細部を示すフローチャートを示
す。
、図4に示された新ソフトウェアおよび関連データを更新するためのステップの
、より細部を示すフローチャートを示す。
態を示す。
的に切り替えるためのステップの詳細なフローチャートである。
ャートを示す。
には、請求項1の前文に記載のソフトウェア処理デバイスおよび請求項13に記
載のこの処理デバイスに適した方法において、障害を生じることなくソフトウェ
アおよび関連するデータを更新する技術分野に関するものである。
トウェアへの新サービスのためのデータ入力を切り替えることが提案されている
。更に、旧ソフトウェアで進行中のサービスが完了すると、サービスからのデー
タの入力を旧バージョンから新バージョンへ切り替える。しかしながら、新ソフ
トウェアのバージョンが完全に作動状態となる前に旧バージョンによるソフトウ
ェアを最初に終了しなければならないので、このような解決案は短時間でサービ
スを処理するソフトウェアしか取り扱うことができない。 国際特許出願明細書第WO94/01819号は、コンピュータの作動中にソ
フトウェアを変更するためのシステムに関する。特にコンピュータシステムの進
行中の活動を乱すことなく、作動中のコンピュータシステムにおいてソフトウェ
アを置換することが検討されている。 更に、欧州特許第EP0803806A2号は、コンピュータシステムのため
のデータ変換機構について述べており、この変換機構ではデータ構造のコンパク
トなコード化された表示を発生しながら、同時に別のソフトウェアの見地からソ
フトウェアツールがデータ構造を示す第2のデータ構造の定義ファイルを発生す
るよう、第1データ構造を処理するようになっている。 更に、グプタ.D外著「プロセス間の状態転送を使ったオンラインのソフトウ ェアバージョン変更」、ソフトウェアプラクティスおよび経験、第23巻第9号
、1993年9月1日、949〜964ページには、プロセス間の状態転送を使
ってオンラインでソフトウェアのバージョンを変更することが記載されている。
トウェア処理デバイスによって達成される。
より同じ利点が得られる。
Claims (29)
- 【請求項1】 a)a1)ソフトウェアおよび関連するデータの第1グルー
プを記憶する第1メモリ区画(4)と、 a2)ソフトウェアおよび関連するデータの第2グループを記憶する第2メ
モリ区画(14)とにサブ分割されたメモリ手段(4、14)と、 b)b1)ソフトウェアおよび関連するデータを第1メモリ区画(4)にロー
ドするのと同時に、 b2)第2メモリ区画(14)内に記憶されているソフトウェアによるソフ
トウェア処理を続け、 b3)ロードされ、実行中のソフトウェアのための同じ状態が得られる限り
、ソフトウェアの実行を瞬間的に切り替えるようになっているソフトウェア更新
手段(2、12、22;22、32)とを備えた、更新機能を有するタイプのソ
フトウェア処理デバイス。 - 【請求項2】 第1メモリ区画(4)が、第1データ記憶セクション(8)
と、第1ソフトウェア記憶セクション(10)とに分割されていることを特徴と
する、請求項1記載のソフトウェア処理デバイス。 - 【請求項3】 第2メモリ区画(14)が、第2データ記憶セクション(1
8)と第2ソフトウェア記憶セクション(20)とに分割されていることを特徴
とする、請求項1または2記載のソフトウェア処理デバイス。 - 【請求項4】 第1メモリ区画(4)および第2メモリ区画(14)内に記
憶されているソフトウェアを実行するようになっている処理手段(6、16)を
含むことを特徴とする、請求項1〜3のいずれかに記載のソフトウェア処理デバ
イス。 - 【請求項5】 ソフトウェア更新手段(2、12、22;22、32)が、
新しくロードされたメモリ区画(4、14)および変更されていないままのメモ
リ区画(14、4)内のソフトウェアがソフトウェアの実行を切り替えるための
状態に達しているかどうかを評価するための状態記憶手段(36)を含むことを
特徴とする、請求項1〜4のいずれかに記載のソフトウェア処理デバイス。 - 【請求項6】 更新制御手段(2、12;32)が、旧ソフトウェアと新ソ
フトウェアとに対し同じ状態に達している限りソフトウェアの実行を瞬間的に切
り替えるためのスイッチング手段(38)を更に含むことを特徴とする、請求項
5記載のソフトウェア処理デバイス。 - 【請求項7】 更新制御手段(2、12;32)が、更新すべきメモリ区画
(4、14)内のベースアドレスを割り当て、割り当てを解除し、パックし、ま
たは変更するためのメモリ管理手段(40)を更に含むことを特徴とする、請求
項5または6記載のソフトウェア処理デバイス。 - 【請求項8】 更新制御手段(2、12;32)が、新しくロードされたソ
フトウェアと更新されたメモリ区画(4、14)内の更新されたデータとの間の
正しい基準を確立するようになっているリンク初期化兼管理手段(42)を更に
含むことを特徴とする、請求項5〜7のいずれかに記載のソフトウェア処理デバ
イス。 - 【請求項9】 ソフトウェア更新手段(2、12、22;22、32)が、
第2または第1メモリ区画(14、4)のうちの1つからのソフトウェアおよび
関連するデータの転送により、第1または第2メモリ区画(4、14)の1つに
ソフトウェアおよび関連するデータをロードするためのインターフェース兼変換
手段(22)を更に含むことを特徴とする、請求項1〜8のいずれかに記載のソ
フトウェア処理デバイス。 - 【請求項10】 インターフェース兼変換手段(22)が、処理手段(6、
16)のソフトウェアの実行と同時に実行されるバックグラウンドプロセスにお
いて、ソフトウェアおよび関連するデータの転送を実行するようになっているこ
とを特徴とする、請求項9記載のソフトウェア処理デバイス。 - 【請求項11】インターフェース兼変換手段(22)が、更新制御手段(2
、12、22)から受信した命令に従い、ソフトウェアおよび関連するデータを
変換するようになっていることを特徴とする、請求項9または10記載のソフト
ウェア処理デバイス。 - 【請求項12】 先の転送後にソフトウェアおよび関連するデータが再び変
更された場合に更新制御手段(2、12;32)がソフトウェアおよび関連する
データの転送を繰り返すことを、インターフェース兼変換手段(22)に命令す
ることを特徴とする、請求項11記載のソフトウェア処理デバイス。 - 【請求項13】 a)旧ソフトウェアの実行を続けながら新ソフトウェアを
ロードし、旧ソフトウェアおよび新ソフトウェアに関連するすべてのデータを転
送する工程(S1、S2、S3)と、 b)新ソフトウェアに関連するデータが旧ソフトウェアに関連するデータと同
じ状態に達しているかどうかを評価する工程(S4)と、 c)新ソフトウェアのデータの状態と旧ソフトウェアのデータの状態とが同じ
である限り(S4)、サービスを新ソフトウェアに瞬間的に切り替える工程(S
5)とを備えた、ソフトウェアを更新するための方法。 - 【請求項14】 旧ソフトウェアおよび新ソフトウェアがモジュラータイプ
であり、ソフトウェアモジュールに従って切り替えを実行する(S5)ことを特
徴とする、請求項13記載の方法。 - 【請求項15】 旧ソフトウェアがそのサービスの実行を続けながら(S2
)、少なくとも1つのバックグラウンドプロセスにより転送すべきデータを識別
すること(S3〜S6)を特徴とする、請求項13または14記載の方法。 - 【請求項16】 バックグラウンドプロセスが、転送すべきすべてのデータ
変数をコピータイプ、変換タイプおよびソースタイプに分類する(S31)こと
を特徴とする、請求項15記載の方法。 - 【請求項17】 変数がコピータイプである場合に、バックグラウンドプロ
セス(S3〜S6)がこの変数を変更されていない新ソフトウェアに転送するこ
とを特徴とする、請求項16記載の方法。 - 【請求項18】 変数が変換タイプである場合に、バックグラウンドプロセ
ス(S3〜S6)が変換フォーマットに従って変数を新ソフトウェアに転送する
ための変換プログラムをスタートすることを特徴とする、請求項16記載の方法
。 - 【請求項19】 更新されたデータが旧ソフトウェアによって再び変更され
た場合に、かかる変更の各々を新ソフトウェアに対して再び更新する(S31、
S32)ことを特徴とする、請求項13〜18のいずれかに記載の方法。 - 【請求項20】 コピータイプの旧ソフトウェアのデータ変数への各書き込
みによりデータ変数を再び新ソフトウェアにコピーする(S31、S32)こと
を特徴とする、請求項19記載の方法。 - 【請求項21】 変換タイプの旧ソフトウェアのデータ変数への各書き込み
により、変換プログラムが変換結果を新ソフトウェアに転送するよう再びスター
トされる(S31、S32)ことを特徴とする、請求項19記載の方法。 - 【請求項22】 旧ソフトウェアの実行中に書き直された変数を転送するよ
うに、少なくとも1回のバックグラウンドプロセス(S3〜S6)を繰り返し実
行する(S41、S42)ことを特徴とする、請求項15〜21のいずれかに記
載の方法。 - 【請求項23】 少なくとも1回のバックグラウンドプロセスを繰り返し実
行すること(S3〜S6)が、次のサブ工程、すなわち a)旧ソフトウェアによって変数を書き直すごとに、転送すべき変数をマーク
するサブ工程と、 b)前記マークされた変数だけに対してバックグラウンドプロセスを繰り返す
サブ工程(S3〜S6)と、 c)転送した変数のマークを削除するサブ工程とを備えることを特徴とする、
請求項22記載の方法。 - 【請求項24】 バックグラウンドプロセスが一巡する間に(S3〜S6)
書き直された変数の数が先の数と比較して減少しなくなるまで(S42)、少な
くとも1つのバックグラウンドプロセス(S3〜S6)の繰り返しを続けること
を特徴とする、請求項22または23記載の方法。 - 【請求項25】 旧ソフトウェアの停止中(S43)に少なくとも1つのバ
ックグラウンドプロセス(S3〜S6)の最終回の後に残っている書き直された
変数の転送を実行することを特徴とする、請求項24記載の方法。 - 【請求項26】 ソフトウェアのオンサイトの更新プロセスのために使用す
ることを特徴とする、請求項13〜25のいずれかに記載の方法。 - 【請求項27】 ソフトウェアのリモート更新プロセスのために使用するこ
とを特徴とする、請求項13〜25のいずれかに記載の方法。 - 【請求項28】 旧ソフトウェアを第1メモリ区画に割り当て、新ソフトウ
ェアを第2メモリ区画に割り当てることを特徴とする、請求項13〜27のいず
れかに記載の方法。 - 【請求項29】 更新プロセス後、通常の作動中に第1メモリ区画および第
2メモリ区画を使って冗長性を改善することを特徴とする、請求項28記載の方
法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19810802A DE19810802A1 (de) | 1998-03-12 | 1998-03-12 | Störungsfreies Aktualisieren von Daten |
DE19810802.8 | 1998-03-12 | ||
PCT/EP1999/001586 WO1999046673A2 (en) | 1998-03-12 | 1999-03-11 | Disturbance free update of data |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2002507020A true JP2002507020A (ja) | 2002-03-05 |
Family
ID=7860683
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000535991A Pending JP2002507020A (ja) | 1998-03-12 | 1999-03-11 | 障害を生じることなくデータを更新する技術 |
Country Status (8)
Country | Link |
---|---|
US (1) | US6347396B1 (ja) |
EP (1) | EP1062570A2 (ja) |
JP (1) | JP2002507020A (ja) |
KR (1) | KR20010041805A (ja) |
AU (1) | AU3410899A (ja) |
CA (1) | CA2323452C (ja) |
DE (1) | DE19810802A1 (ja) |
WO (1) | WO1999046673A2 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2022549529A (ja) * | 2019-12-13 | 2022-11-25 | ベックホフ オートメーション ゲーエムベーハー | オートメーションシステムの制御プログラムのプログラム状態のデータ移行の過程でのポインタ要素のデータ移行の方法 |
JP2022551342A (ja) * | 2019-12-13 | 2022-12-08 | ベックホフ オートメーション ゲーエムベーハー | 制御プログラムのプログラム状態のデータ移行で自動化システムの制御プログラムを更新するための方法 |
Families Citing this family (56)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7246150B1 (en) | 1998-09-01 | 2007-07-17 | Bigfix, Inc. | Advice provided for offering highly targeted advice without compromising individual privacy |
US6263362B1 (en) * | 1998-09-01 | 2001-07-17 | Bigfix, Inc. | Inspector for computed relevance messaging |
US8914507B2 (en) * | 1998-09-01 | 2014-12-16 | International Business Machines Corporation | Advice provided for offering highly targeted advice without compromising individual privacy |
US7197534B2 (en) | 1998-09-01 | 2007-03-27 | Big Fix, Inc. | Method and apparatus for inspecting the properties of a computer |
US7607572B2 (en) * | 1999-03-19 | 2009-10-27 | Bigfix, Inc. | Formalizing, diffusing, and enforcing policy advisories and monitoring policy compliance in the management of networks |
US7277919B1 (en) | 1999-03-19 | 2007-10-02 | Bigfix, Inc. | Relevance clause for computed relevance messaging |
US8033913B2 (en) * | 1999-06-03 | 2011-10-11 | Igt | Gaming machine update and mass storage management |
US6754848B1 (en) * | 1999-09-30 | 2004-06-22 | International Business Machines Corporation | Method, system and program products for operationally migrating a cluster through emulation |
US6779176B1 (en) * | 1999-12-13 | 2004-08-17 | General Electric Company | Methods and apparatus for updating electronic system programs and program blocks during substantially continued system execution |
JP2001275140A (ja) * | 2000-03-28 | 2001-10-05 | Matsushita Electric Ind Co Ltd | 運用/待機構成の通信制御装置及び運用/待機系切替方法 |
US20020073410A1 (en) * | 2000-12-13 | 2002-06-13 | Arne Lundback | Replacing software at a telecommunications platform |
JP2002236583A (ja) * | 2001-02-07 | 2002-08-23 | Fujitsu Ten Ltd | 組込み用ソフトウェアモジュール |
KR100433056B1 (ko) * | 2001-08-18 | 2004-05-24 | 엘지전자 주식회사 | 프로그램 업그레이드 방법 |
US9231827B2 (en) * | 2001-11-09 | 2016-01-05 | International Business Machines Corporation | Formalizing, diffusing and enforcing policy advisories and monitoring policy compliance in the management of networks |
US7657616B1 (en) | 2002-06-10 | 2010-02-02 | Quest Software, Inc. | Automatic discovery of users associated with screen names |
US7818565B2 (en) | 2002-06-10 | 2010-10-19 | Quest Software, Inc. | Systems and methods for implementing protocol enforcement rules |
CA2488731A1 (en) | 2002-06-10 | 2003-12-18 | Akonix Systems, Inc. | Systems and methods for a protocol gateway |
US7428590B2 (en) | 2002-06-10 | 2008-09-23 | Akonix Systems, Inc. | Systems and methods for reflecting messages associated with a target protocol within a network |
US7774832B2 (en) | 2002-06-10 | 2010-08-10 | Quest Software, Inc. | Systems and methods for implementing protocol enforcement rules |
US7707401B2 (en) | 2002-06-10 | 2010-04-27 | Quest Software, Inc. | Systems and methods for a protocol gateway |
US6931328B2 (en) * | 2002-11-08 | 2005-08-16 | Optiscan Biomedical Corp. | Analyte detection system with software download capabilities |
JP4128516B2 (ja) * | 2002-11-18 | 2008-07-30 | 株式会社リコー | 画像形成装置、プログラム更新方法 |
US7398272B2 (en) * | 2003-03-24 | 2008-07-08 | Bigfix, Inc. | Enterprise console |
US20050038674A1 (en) * | 2003-04-15 | 2005-02-17 | Braig James R. | System and method for managing a chronic medical condition |
US7308685B2 (en) * | 2003-05-14 | 2007-12-11 | Hewlett-Packard Development Company, L.P. | Emulation internal representation revision system and method |
US7278139B2 (en) * | 2003-05-14 | 2007-10-02 | Hewlett-Packard Development Company, L.P. | Emulation class revision system and method |
US7463610B2 (en) * | 2003-05-15 | 2008-12-09 | Samsung Electronics Co., Ltd. | System and method for providing an online software upgrade |
US7984434B1 (en) * | 2003-05-21 | 2011-07-19 | Altera Corporation | Nondestructive patching mechanism |
US7356577B2 (en) * | 2003-06-12 | 2008-04-08 | Samsung Electronics Co., Ltd. | System and method for providing an online software upgrade in load sharing servers |
CA2539470A1 (en) * | 2003-09-11 | 2005-03-24 | Akonix Systems, Inc. | Systems and methods for dynamically updating software in a protocol gateway |
US7143314B2 (en) * | 2003-10-01 | 2006-11-28 | General Motors Corporation | Method and apparatus for ensuring integrity of critical RAM variables |
US20050114853A1 (en) * | 2003-11-26 | 2005-05-26 | Glider Joseph S. | Software upgrade and downgrade in systems with persistent data |
US7376943B2 (en) * | 2003-12-18 | 2008-05-20 | Lsi Corporation | Safe method for upgrading firmware of optical disk product |
US8146073B2 (en) | 2004-09-30 | 2012-03-27 | Microsoft Corporation | Updating software while it is running |
US20060190806A1 (en) * | 2005-02-09 | 2006-08-24 | David Sasson | Systems and method for deploying a software application on a wireless device |
EP1946217A2 (en) | 2005-11-03 | 2008-07-23 | Akonix Systems, Inc. | Systems and methods for remote rogue protocol enforcement |
US8595452B1 (en) * | 2005-11-30 | 2013-11-26 | Sprint Communications Company L.P. | System and method for streaming data conversion and replication |
WO2008038063A1 (en) * | 2006-09-29 | 2008-04-03 | Nokia Corporation | Method and apparatus for updating firmware as a background task |
US20100332640A1 (en) * | 2007-03-07 | 2010-12-30 | Dennis Sidney Goodrow | Method and apparatus for unified view |
US8495157B2 (en) * | 2007-03-07 | 2013-07-23 | International Business Machines Corporation | Method and apparatus for distributed policy-based management and computed relevance messaging with remote attributes |
WO2008109848A2 (en) | 2007-03-07 | 2008-09-12 | Bigfix, Inc. | Pseudo-agent |
US8597190B2 (en) | 2007-05-18 | 2013-12-03 | Optiscan Biomedical Corporation | Monitoring systems and methods with fast initialization |
ES2712778T3 (es) | 2007-05-30 | 2019-05-14 | Ascensia Diabetes Care Holdings Ag | Método y sistema para gestionar datos de salud |
WO2009049245A1 (en) * | 2007-10-11 | 2009-04-16 | Optiscan Biomedical Corporation | Synchronization and configuration of patient monitoring devices |
JP5430298B2 (ja) * | 2009-09-03 | 2014-02-26 | サンデン株式会社 | 自動販売機の制御装置 |
US8966110B2 (en) * | 2009-09-14 | 2015-02-24 | International Business Machines Corporation | Dynamic bandwidth throttling |
US20110265072A1 (en) * | 2010-04-27 | 2011-10-27 | Jack Matthew | Dynamic Installation of Files for Running Programs |
US9009663B2 (en) * | 2010-06-01 | 2015-04-14 | Red Hat, Inc. | Cartridge-based package management |
TW201415365A (zh) * | 2012-10-15 | 2014-04-16 | Askey Computer Corp | 作業系統更新的方法及手持電子裝置 |
US20140229928A1 (en) * | 2013-02-11 | 2014-08-14 | Claes Göran Edström | Upgrading software in production environments |
US10530660B2 (en) | 2015-05-21 | 2020-01-07 | International Business Machines Corporation | Application bundle preloading |
US9965262B2 (en) | 2015-05-21 | 2018-05-08 | International Business Machines Corporation | Application bundle pulling |
US9888057B2 (en) | 2015-05-21 | 2018-02-06 | International Business Machines Corporation | Application bundle management across mixed file system types |
US10389850B2 (en) | 2015-05-21 | 2019-08-20 | International Business Machines Corporation | Managing redundancy among application bundles |
US10389794B2 (en) | 2015-05-21 | 2019-08-20 | International Business Machines Corporation | Managing redundancy among application bundles |
US10152516B2 (en) * | 2015-05-21 | 2018-12-11 | International Business Machines Corporation | Managing staleness latency among application bundles |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5155837A (en) * | 1989-03-02 | 1992-10-13 | Bell Communications Research, Inc. | Methods and apparatus for software retrofitting |
US5142680A (en) * | 1989-04-26 | 1992-08-25 | Sun Microsystems, Inc. | Method for loading an operating system through a network |
DE4134207C1 (en) * | 1991-10-16 | 1993-04-01 | Ant Nachrichtentechnik Gmbh, 7150 Backnang, De | Loading double-computer standby system - preparing passive computer for loading and taking new software from data source for entering into memory of active computer |
US5410703A (en) | 1992-07-01 | 1995-04-25 | Telefonaktiebolaget L M Ericsson | System for changing software during computer operation |
DE4316500C2 (de) * | 1993-05-17 | 1995-03-16 | Siemens Ag | Verfahren zum Wechseln einer Anlagensoftware |
US5586304A (en) * | 1994-09-08 | 1996-12-17 | Compaq Computer Corporation | Automatic computer upgrading |
US5604906A (en) * | 1995-02-06 | 1997-02-18 | Apple Computer, Inc. | Method and apparatus for installing software block-by block via an image of the target storage device |
GB9608345D0 (en) * | 1996-04-23 | 1996-06-26 | Int Computers Ltd | Data conversion mechanism for computer system |
US5930513A (en) * | 1996-06-06 | 1999-07-27 | Sun Microsystems, Inc. | Reference based software installation |
US5826265A (en) * | 1996-12-06 | 1998-10-20 | International Business Machines Corporation | Data management system having shared libraries |
US6055363A (en) * | 1997-07-22 | 2000-04-25 | International Business Machines Corporation | Managing multiple versions of multiple subsystems in a distributed computing environment |
US6018747A (en) * | 1997-11-26 | 2000-01-25 | International Business Machines Corporation | Method for generating and reconstructing in-place delta files |
-
1998
- 1998-03-12 DE DE19810802A patent/DE19810802A1/de not_active Ceased
-
1999
- 1999-03-11 KR KR1020007010080A patent/KR20010041805A/ko not_active Application Discontinuation
- 1999-03-11 JP JP2000535991A patent/JP2002507020A/ja active Pending
- 1999-03-11 AU AU34108/99A patent/AU3410899A/en not_active Abandoned
- 1999-03-11 US US09/265,950 patent/US6347396B1/en not_active Expired - Lifetime
- 1999-03-11 WO PCT/EP1999/001586 patent/WO1999046673A2/en not_active Application Discontinuation
- 1999-03-11 EP EP99915572A patent/EP1062570A2/en not_active Withdrawn
- 1999-03-11 CA CA002323452A patent/CA2323452C/en not_active Expired - Lifetime
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2022549529A (ja) * | 2019-12-13 | 2022-11-25 | ベックホフ オートメーション ゲーエムベーハー | オートメーションシステムの制御プログラムのプログラム状態のデータ移行の過程でのポインタ要素のデータ移行の方法 |
JP2022551342A (ja) * | 2019-12-13 | 2022-12-08 | ベックホフ オートメーション ゲーエムベーハー | 制御プログラムのプログラム状態のデータ移行で自動化システムの制御プログラムを更新するための方法 |
JP7270112B2 (ja) | 2019-12-13 | 2023-05-09 | ベックホフ オートメーション ゲーエムベーハー | 制御プログラムのプログラム状態のデータ移行で自動化システムの制御プログラムを更新するための方法 |
JP7303389B2 (ja) | 2019-12-13 | 2023-07-04 | ベックホフ オートメーション ゲーエムベーハー | オートメーションシステムの制御プログラムのプログラム状態のデータ移行の過程でのポインタ要素のデータ移行の方法 |
Also Published As
Publication number | Publication date |
---|---|
CA2323452A1 (en) | 1999-09-16 |
KR20010041805A (ko) | 2001-05-25 |
US6347396B1 (en) | 2002-02-12 |
WO1999046673A2 (en) | 1999-09-16 |
AU3410899A (en) | 1999-09-27 |
EP1062570A2 (en) | 2000-12-27 |
WO1999046673A3 (en) | 1999-11-04 |
DE19810802A1 (de) | 1999-09-16 |
CA2323452C (en) | 2005-05-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2002507020A (ja) | 障害を生じることなくデータを更新する技術 | |
US6314567B1 (en) | Apparatus and method for transferring state data when performing on-line replacement of a running program code and data | |
US6668261B1 (en) | Method of upgrading a program using associated configuration data | |
CA2436517C (en) | Method and apparatus for data processing | |
US5359713A (en) | Method and apparatus for enhancing synchronous I/O in a computer system with a non-volatile memory and using an acceleration device driver in a computer operating system | |
US6374353B1 (en) | Information processing apparatus method of booting information processing apparatus at a high speed | |
US6834275B2 (en) | Transaction processing system using efficient file update processing and recovery processing | |
US5519853A (en) | Method and apparatus for enhancing synchronous I/O in a computer system with a non-volatile memory and using an acceleration device driver in a computer operating system | |
US7185331B2 (en) | Method and apparatus for downloading executable code in a non-disruptive manner | |
JP4825433B2 (ja) | 比較的限られた記憶スペースを備えたコンピューティング装置およびそのオペレーティングシステム/ファイルシステム | |
US6282700B1 (en) | Mechanism for maintaining revisions of objects in flash memory | |
US7698699B2 (en) | Computing device with relatively limited storage space and operating/file system thereof | |
EP2329368B1 (en) | Updating content without using a mini operating system | |
JPH08179941A (ja) | マルチコンピュータシステムにおけるプログラムパッケージの変更方法、およびそのためのコンピュータ | |
US7222338B2 (en) | Method for upgrading data | |
US7117249B1 (en) | Computer system and data sharing method between computers | |
JPH10289217A (ja) | ログ・ストリーム管理システム | |
JP2000137604A (ja) | データ引き継ぎシステム | |
US20040015943A1 (en) | Embedded computer system equipped with an upgradeable software library | |
JPH10289141A (ja) | マルチシステム環境のログ・ストリームを管理する方法 | |
US7617175B1 (en) | Method and apparatus for upgrading a database in a redundant environment by release chaining | |
US7382970B2 (en) | Process control manager for audio/video file system | |
JPH1091405A (ja) | ソフトウェア保守方法 | |
JPH05120023A (ja) | プログラムローデイング方式 | |
JPH09231069A (ja) | 情報処理方法及び装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060116 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080610 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20080910 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20080918 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20081009 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20081017 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20081110 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20081117 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20081202 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20090123 |