JPH11259285A - オペレーティングシステムのモジュール入れ替え方法及びモジュールの入れ替えを作う処理装置 - Google Patents

オペレーティングシステムのモジュール入れ替え方法及びモジュールの入れ替えを作う処理装置

Info

Publication number
JPH11259285A
JPH11259285A JP10062500A JP6250098A JPH11259285A JP H11259285 A JPH11259285 A JP H11259285A JP 10062500 A JP10062500 A JP 10062500A JP 6250098 A JP6250098 A JP 6250098A JP H11259285 A JPH11259285 A JP H11259285A
Authority
JP
Japan
Prior art keywords
module
takeover
memory management
buffer
physical
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.)
Granted
Application number
JP10062500A
Other languages
English (en)
Other versions
JP3882321B2 (ja
Inventor
Kunihiko Tsunetomi
邦彦 恒冨
Tadashi Kamiwaki
正 上脇
Masahiko Saito
雅彦 齊藤
Keiji Kuwabara
啓二 桑原
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP06250098A priority Critical patent/JP3882321B2/ja
Priority to US09/263,785 priority patent/US6546485B1/en
Publication of JPH11259285A publication Critical patent/JPH11259285A/ja
Application granted granted Critical
Publication of JP3882321B2 publication Critical patent/JP3882321B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/656Updates while running
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation

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)
  • Memory System (AREA)
  • Stored Programmes (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

(57)【要約】 【課題】論理記憶をサポートするオペレーティングシス
テム(OS)において、メモリ管理モジュールを含む、
モジュールの入れ替えを実現する。 【解決手段】フレームワークと複数のモジュールから構
成されるオペレーティングシステム(OS)において、
オンラインでモジュールを入れ替えるOSであってOS
は論理アドレス空間を持ち、さらに、物理アドレスと論
理アドレスが等しい固定物理空間を持ち、この固定物理
空間にフレームワークと、引継ぎバッファを持ち、この
引継ぎバッファにより、入れ替えられる旧モジュールと
新モジュール間で、情報を引継ぐ。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】論理空間をサポートするオペ
レーティングシステム(OS)の、モジュールごとのオ
ンライン入れ替えに関する。特に、メモリ管理モジュー
ルに関する。
【0002】
【従来の技術】産業分野や組み込みシステムにおいて、
OSのオンラインでの部分的入れ替え機能が重要であ
る。オンライン入れ替えが可能であれば、システムのダ
ウンタイムを短縮できる。例えば、OSのバージョンア
ップ,バグフィックスのために、システムを停止する必
要がなくなる。
【0003】また、OSのメモリ容量の削減も可能にな
る。例えば、トレース機能について考える。通常時はト
レース機能のないOSを動作させておく。トラブルが発
生した場合は、OSの一部を、トレース機能サポート版
に変更し、動作をトレースする。このように、トレース
用のメモリ容量を、最小に抑えることができる。
【0004】プログラムの変更および追加を行う運用中
プログラムの更新方式については特開平7−319683 号に
記載されている。
【0005】ここでは、制御部が旧ロードモジュールを
実行している間に、リロケータブル形式の新ロードモジ
ュールを主記憶装置に格納し、旧ロードモジュールと新
ロードモジュールのアドレスリンケージをとる。プログ
ラム更新時は旧ロードモジュールへの他モジュールから
呼出しを抑止し、旧ロードモジュールの先頭番地を新ロ
ードモジュールへのジャンプ命令に書き換え、呼出し抑
止を解除する。プログラム更新復帰時は、旧ロードモジ
ュールへの他のロードモジュールからの呼出しを抑止
し、旧ロードモジュールの先頭番地をプログラム更新前
の内容に書き換え呼出し抑止を解除するものである。
【0006】
【発明が解決しようとする課題】現在、組み込みシステ
ムなど小型のOSにおいても、論理空間をサポートする
メモリ管理をもつようになっている。論理空間を使用す
ると、外部フラグメンテーション問題を解決することが
でき、メモリの使用効率を上げることができる。また、
メモリ保護も強化できる。そこで、メモリ管理モジュー
ルという1モジュールとして実現している。
【0007】しかし、従来例では、メモリ管理をモジュ
ールとして実現しても、該モジュールを、オンライン入
れ替えすることができないという問題点があった。理由
を以下に示す。メモリ管理モジュールは、論理アドレス
と物理アドレスの対応を記録するために、ページテーブ
ルを持つ。しかし、新モジュール143に新たに切り替
わる瞬間は、新モジュールの内部データは初期化状態で
ある。また、新モジュールのページテーブルも作成され
ていない。そのため、新モジュールは、論理空間上の旧
モジュールの内部データを参照することができずに、現
在のマッピング情報を全て失う。そのため、OSは、正
常な動作を継続することが不可能となる。
【0008】上記問題があるため、従来のOSでは、メ
モリ管理モジュールの入れ替えはサポートしていなかっ
た。しかし、メモリ管理モジュールのメモリ容量は、大
きな割合をしめる。該モジュールの、オンライン入れ替
えが実現すれば、OSのダウンタイム短縮のために効果
がある。
【0009】本発明は、上記の点に鑑みて旧モジュール
から新モジュールへデータの引継ぎを可能にし、オンラ
インで旧モジュールから新モジュールへの入れ替えを可
能にするモジュール入れ替え方法及び装置を提供するこ
とを目的とする。
【0010】
【課題を解決するための手段】上記目的は複数のモジュ
ールと、プレームワークとモジュールごとの論理アドレ
スと物理アドレスとを保持するページテーブルと引継ぎ
バッファとを有し、論理空間と物理空間が等しい固定物
理空間から構成されるオペレーティングシステムにおけ
るモジュールの入れ替え方法であって、該オペレーティ
ングシステムは、モジュールごとの論理アドレスと物理
アドレスの対応を管理するページテーブルと、該ページ
テーブルを管理するメモリ管理モジュールを有し、入れ
替え前の旧メモリ管理モジュールの該ページテーブルか
ら、論理アドレスと物理アドレスの対応を該引継ぎバッ
ファに格納し、入れ替え後の新メモリ管理モジュール
が、論理アドレスと物理アドレスの対応を該引継ぎバッ
ファから読み込み、該新メモリ管理モジュールの該ペー
ジテーブルを作成することにより達成できる。
【0011】
【発明の実施の形態】まず、図3に、本実施例を計算機
上で実現したときの構成例を示す。
【0012】図3では、フレームワークとモジュールに
より構成されたOSが動作するシステムを示している。
100は、計算機であり、その内部装置として、中央処
理装置(CPU)110,主記憶装置111,入出力装
置(I/O)112があり、CPUバス120によって
接続されている。入出力装置(I/O)112には、デ
ィスク装置113,端末114,ネットワーク装置11
5が接続される。CPU110内部には、TLB(Translatio
n Look-aside Buffer)116が存在する。主記憶装置1
11上には、OS130、複数のタスク131〜132
が存在し、このタスク、OSはCPU110により実行され
る。OS130は、フレームワーク140と複数のモジ
ュール141〜144から構成される。旧モジュール1
42を、新モジュール143に入れ替える時は、フレー
ムワーク140のモジュール切り替え処理部160が切
り替え処理を行う。
【0013】図1に、主記憶装置上のOS130の詳細
な構成を示す。OS130には、フレームワーク14
0,旧モジュール142,新モジュール143,引継ぎ
バッファ147,ページテーブル145が存在する。フ
レームワーク140は、モジュールテーブル150,モ
ジュール切り替え処理部160を有する。モジュールテ
ーブル150は、旧モジュール142,新モジュール1
43の各ルーチン170,200へのエントリアドレス
を保持する。モジュールテーブル150については図5
を用いて後に詳細に述べている。モジュール切り替え処
理部160は、モジュール処理を行うプログラムであ
る。モジュール切り替え処理部160は、ネットワーク
装置115、またはディスク装置113から、新モジュ
ール143のオブジェクトをリードし、それを、主記憶
装置111の旧モジュール142と置き換える。このモ
ジュール切り替え処理部160は、端末114からのモ
ジュール入れ替えコマンド入力、または、ネットワーク
装置115からのモジュール入れ替えメッセージ受信に
より起動される。本実施例では、端末114,ネットワ
ーク装置115のいずれかからの起動後、モジュール切
り替え処理部160により、新モジュール143のマッ
ピングが正常に終了したものとして説明する。また、マ
ッピングと同時に、モジュール切り替え処理部160の
内部バッファ中には、モジュールのエントリアドレスが
記述されたエントリテーブル230があり、正しく記録
されたものとして説明する。引継ぎバッファ147は、
旧モジュール142と新モジュール143間で、データ
を引継ぐときのバッファとして使用する。データの内容
は、モジュールの種別に依存するので、引継ぎバッファ
のきまった構造体などはない。
【0014】旧モジュール142は、ルーチン170,
引継ぎバッファ作成ルーチン180,内部データ190
を有する。ルーチン170は、数種類の異なる用途の関
数からなる。これは、図4で詳細に説明する。内部デー
タは、モジュール内部の大域変数や、動的に割り当てら
れたメモリ等がある。引継ぎバッファ作成ルーチン18
0は、内部データ190をもとにして、新モジュール1
43に引継ぐべきデータを作成するプログラムである。
作成したデータは、引継ぎバッファ147に記録する。
【0015】新モジュール143は、ルーチン200,
引継ぎバッファ反映ルーチン210,内部データ220
を有する。前述のとおり、新モジュール143は、モジ
ュール切り替え処理部160により、あらかじめマッピ
ングされている。ルーチン200,内部データ220
は、ルーチン170,内部データ190のバグフィック
スされたプログラム、または、バージョンアップされた
プログラムである。引継ぎバッファ反映ルーチン210
は、引継ぎバッファ147を参照し、内部データ220
に反映するプログラムである。なお、モジュールは、引
継ぎバッファ作成ルーチン180,引継ぎバッファ反映
ルーチン210の両方を持つが、図1では、その一方の
みを有している場合を示している。
【0016】図9に、固定物理空間241の説明図を示
す。固定物理空間241とは、論理アドレスと物理アド
レスが等しく、TLBを参照せずにアクセス可能な空間
のことである。通常の論理空間242と比較し、固定物
理空間241では、空間のプログラムは、メモリ管理モ
ジュールの動作や、TLBに左右されずに動作可能であ
るという特徴がある。そのため、固定物理空間241に
は、フレームワーク140,引継ぎバッファ147が配
置される。これにより、旧モジュール142を入れ替え
た場合でも、新モジュール143から、引継ぎバッファ
147の参照が可能になる。しかし、固定物理空間24
1は、通常の論理空間242に比べ、外部フラグメント
が発生しやすく、OS130のメモリ容量が大きくなる
という問題点がある。そのため、通常のモジュール,タ
スクは、すべて通常の論理空間242にマッピングされ
る。例外的に、ページテーブル145は、モジュールに
より保持されるにもかからず、固定物理空間241に配
置される。なぜならば、ページテーブルは、アドレス変
換を行わずにアクセスする必要があるためである。
【0017】図4に、旧モジュール142のルーチン1
70の詳細を示す。ルーチン170は、システムコール
171,初期化ルーチン172,停止ルーチン173,
内部ルーチン174,割り込みハンドラ175を有す
る。システムコール171は、OS130のシステムコ
ールに1対1に対応するプログラムである。初期化ルー
チン172は、モジュール入れ替え時に、新モジュール
143を初期化するためのプログラムである。旧モジュ
ールの内部データ190の初期化、関連するハードウェ
アの初期化を行う。旧モジュール142の内部データ1
90に旧モジュール142の内部データを反映し、か
つ、引継ぎバッファ147に引継ぎ情報がセットされて
いる時、初期化ルーチン172は、引継ぎバッファ反映
ルーチン181をコールする。停止ルーチン173は、モ
ジュール入れ替え時に、モジュール内で動的に割り当て
られた資源の開放、関連するハードウェアの停止を行う
プログラムである。新モジュール143に旧モジュール
142の内部データを引継がなければならない時は、停
止ルーチン173は引継ぎバッファ作成ルーチン180
をコールする。割り込みハンドラ175は、割り込み処
理用プログラムである。内部ルーチン174は、これら
に当てはまらないプログラムで、他のモジュール例えば
新モジュール143やフレームワーク140からコール
されるプログラムである。
【0018】図5に、モジュールテーブル150の構成
を示す。図4に示した各ルーチンに対応して、テーブル
が存在し、システムコールテーブル151,初期化ルー
チンテーブル152,停止ルーチンテーブル153,割
り込みハンドラテーブル154,内部ルーチンテーブル15
5を有する。各テーブル151〜155には、対応する
ルーチンのエントリアドレスが記入される。各テーブル
151〜155の先頭からのエントリ数は、それぞれ一
意に決定されている。システムコールテーブル151
は、各エントリアドレスが、システムコール番号順に並
べられる。システムコール番号とは、システムコールに
一意に与えられる番号である。初期化ルーチンテーブル
152,停止ルーチンテーブル153は、モジュール番
号順に並べられる。モジュール番号は、OS内で一意に
モジュールに与えられる番号である。割り込みハンドラ
テーブル154は、割り込み要因番号順に、各エントリ
アドレスが並べられる。内部ルーチンテーブル155
は、内部ルーチン番号順にエントリが並べられる。ルー
チン番号とは、上位4ビットがモジュール番号、下位4
ビットがモジュールで一意のモジュールルーチン番号と
定義される数である。以下に、このモジュールテーブル
を用いた、システムコール手順を示す。まず、タスクが
システムコールを実行した場合、フレームワーク140
は、システムコールをシステムコール番号に変換する。
その後、システムコールテーブル151を走査する。シ
ステムコール番号のエントリにエントリアドレスが存在
すれば、そのモジュールにジャンプして処理を行う。初
期化ルーチン,停止ルーチン,割り込みハンドラ,内部
ルーチンのコールも同様である。
【0019】図8に、エントリテーブル230の構成を
示す。前述のように、エントリテーブル230は、事前
にモジュール入れ替え処理部160にリードされてい
る。エントリテーブルの各1要素が、各ルーチンのエン
トリ情報を示す。種別231は、「初期化ルーチン」,
「停止ルーチン」,「システムコール」,「割り込みル
ーチン」,「内部ルーチン」のいずれであるかを示す。
エントリ番号232は、システムコール番号,モジュー
ル番号,割り込み要因番号,ルーチン番号のいずれかを
示す。オフセット233は、モジュールの先頭から、ル
ーチンの先頭までのオフセットを示す。これに、モジュ
ール先頭がマッピングされた論理アドレスを加算すれ
ば、ルーチンのエントリアドレスが求まる。
【0020】本実施例では、メモリ管理を行うモジュー
ルのオンライン入れ替えについて示すので、メモリ管理
について詳細なモジュール構成について、以下に示す。
【0021】旧モジュール142は、物理メモリの空き
管理,物理メモリの論理アドレスへのマッピング管理,
TLBミス例外時などの例外処理を行う。この管理を行
うため、旧モジュールは、内部データ190内に、物理
メモリ管理テーブル191,ページテーブル145を有
する。
【0022】図7に旧モジュール142の内部データ1
90の構成を示す。これは、使用中の物理メモリの先頭
アドレスである物理アドレスと、メモリサイズ識別子を
記憶する物理メモリ管理テーブル191を有する。新た
に物理メモリを他のモジュールに与えるときは、空き物
理メモリを物理メモリ管理テーブルから検索し、その先
頭アドレスとサイズを物理メモリ管理テーブルに記録す
る。これを、「p_malloc」という関数として、旧モジュ
ール142は、必ず定義するものとする。「p_malloc」
は、内部ルーチン174とし、モジュールテーブル15
0を介して、他のモジュールとフレームワーク140か
ら自由にコールできるものとする。以上から、物理メモ
リ管理テーブル191は、「p_malloc」をコールするこ
とで、作成されるようになる。
【0023】図13に、ページテーブル145の構造を
示す。ページテーブル145は、ページサイズごとに、
物理アドレスと論理アドレスの対応と、そのページの保
護属性を保持する。モジュール入れ替え時に、この情報
を保持しなければOSは正常に動作できなくなる。その
ため、この情報を引継ぎバッファ147に保存する必要
がある。
【0024】図6に、引継ぎバッファ147の構成を示
す。論理アドレス,物理アドレス,保護情報,メモリサ
イズ,識別子を記録する。データ内容,データ並びは、
ページテーブル145と物理メモリ,管理テーブルと同
じであるが、必ずしも同一である必要はない。ただし、
旧モジュール142と新モジュール143が共有して引
継ぎバッファ147を使用するので、統一されたデータ
フォーマットである必要がある。
【0025】メモリ管理を行うモジュールでは、旧モジ
ュール142と、新モジュール143でページテーブルの
形式が異なることがありうる。そこで、引継ぎバッファ
147から、ページテーブル145を再構築するために、
モジュールは、「p_map」関数を必ず備えることとする。
「p_map」は、指定された物理空間を、指定された論理ア
ドレスにマッピングし、ページテーブルエントリを作成
する関数である。論理アドレスを指定しなければ、空き
の論理アドレスにマッピングする。「p_map」は、内部ル
ーチンとし、モジュールテーブルを介して、他モジュー
ル,フレームワーク140から自由にコールできるもの
とする。
【0026】図10に、メモリ管理モジュールに対し
て、モジュール入れ替え処理部160が起動された後
の、オンラインのモジュール入れ替え処理手順を示す。
【0027】まず、メモリ管理モジュールのコールをロ
ックする(処理301)。これは、フレームワーク14
0内の該モジュールのコールをロックすることにより行
われる。また、割り込みハンドラを持つ場合は、割り込
み禁止にする必要がある。通常のCPU110では、割り込み
禁止にするためのレジスタを持っている。これをセット
することで実行できる。
【0028】次に、旧モジュール142の、停止ルーチ
ン173をコールし、モジュールの停止処理を行う(処
理302)。また、旧モジュール142の内部データ1
90を保存しなければならない場合、引継ぎバッファ作
成ルーチン180をコールする。その後、動的に確保し
たメモリ領域と現在獲得している資源(他のモジュール
のロックなど)があれば、これを開放する。メモリ管理
モジュールの場合、ページテーブル145を開放する。
【0029】次に、新モジュール143の、初期化ルー
チン172をコールする(処理303)。初期化ルーチン
は、モジュールの内部データ220を初期化する。引継
ぎバッファ147に情報があれば、引継ぎバッファ反映
ルーチン210をコールする。これにより、引継ぎバッ
ファ147の内容を、該モジュールの内部データに反映
する。
【0030】次に、引継ぎバッファ147を0クリアす
る(処理304)。
【0031】次に、モジュールテーブル150の内容
を、新モジュール143のルーチンのエリトリアドレス
に書き換える(処理305)。モジュール切り替え処理
部160は、この新たなエントリアドレスは、エントリテ
ーブル230の各オフセット233と、新モジュール1
43の論理アドレスの先頭番地を加える。これにより、
モジュールの各処理先頭の論理アドレスが求まる。求め
たアドレスを、対応するモジュールテーブルに記録す
る。
【0032】次に、旧モジュール143の物理メモリ
を、開放する(処理306)。
【0033】最後に、モジュールのロックをアンロック
する(処理307)。また、割り込み禁止を解除する。
CPU110の割り込みレジスタをリセットすることで実行で
きる。
【0034】図11に、メモリ管理モジュールの、引継
ぎバッファ作成ルーチン180の処理手順を示す。該ル
ーチン180では、ページテーブル145をもとに、引
継ぎバッファ147を作成する。
【0035】まず、ページテーブルの1エントリをリー
ドする(処理401)。これから、このエントリの物理
アドレス,論理アドレス,保護属性を求める。
【0036】次に、処理401でリードしたエントリに
もとづき、引継ぎバッファ147の1エントリに物理ア
ドレス,論理アドレス,保護属性を記録する(処理40
2)。上記、処理401,処理402を、全てのページ
テーブル145のエントリに対して行う(処理40
3)。
【0037】次に、物理メモリ管理テーブルの1エント
リをリードする(処理404)。これから、このエント
リの識別子,物理アドレス,メモリサイズを求める。
【0038】次に、処理404でリードしたエントリに
基づき、引継ぎバッファ147の1エントリに識別子,
物理アドレス,メモリサイズを記録する(処理40
5)。
【0039】上記、処理404,405を、全ての物理
メモリ管理テーブルのエントリに対して行う(処理40
6)。
【0040】図12に、メモリ管理モジュールの、引継
ぎバッファ反映ルーチン210の処理手順を示す。この
ルーチン210では、引継ぎバッファ147の情報を、
ページテーブル145に、反映する。また、内部データ
190の物理メモリ管理テーブル191を作成する。
【0041】まず、引継ぎバッファ147の1エントリ
をリードする(処理501)。これから、このエントリ
の物理アドレス,論理アドレス,保護属性を求める。
【0042】次に、処理501でリードしたエントリの
ページが、物理メモリ,管理テーブルであれば、「p_ma
lloc」をコールすることにより、物理メモリ管理テーブ
ル191に登録する(処理502)。また、エントリが
ページテーブルのものであれば、「p_map」をコールする
ことにより、ページテーブルのエントリを追加する。
【0043】上記、処理501,処理502を、全ての
引継ぎバッファ147のエントリに対して行う(処理5
03)。
【0044】
【発明の効果】本発明によれば、メモリ管理モジュール
を入れ替える場合でも、ページテーブルや、物理メモリ
テーブルの内容を、旧モジュールから新モジュールに引
継げる。モジュール,タスク,フレームワークのマッピ
ング情報が失われない。そのため、システムをリスター
トすることなくメモリ管理モジュールを交換することが
できる。
【図面の簡単な説明】
【図1】本発明の、モジュール入れ替え方式の構成図で
ある。
【図2】従来の、モジュール入れ替え方式の構成図であ
る。
【図3】本発明の、計算機上の構成例である。
【図4】モジュールの構成図である。
【図5】モジュールテーブルの構成図である。
【図6】メモリ管理モジュールの、引継ぎバッファの構
成図である。
【図7】メモリ管理モジュールの、内部データの構成図
である。
【図8】エントリテーブルの構成図である。
【図9】固定物理空間を示す図である。
【図10】モジュール入れ替え処理部の、フロー図であ
る。
【図11】メモリ管理モジュールの、引継ぎバッファ生
成ルーチンのフロー図である。
【図12】メモリ管理モジュールの、引継ぎバッファ反
映ルーチンのフロー図である。
【図13】ページテーブルの構成図である。
【符号の説明】
100…計算機、110…中央処理装置(CPU)、1
11…主記憶装置、113…ディスク装置、114…端
末、115…ネットワーク装置、116…TLB、12
0…CPUバス、130…OS、131〜132…タス
ク、140…フレームワーク、141,144…モジュ
ール、142…旧モジュール、143…新モジュール、1
45…ページテーブル、146…内部デーフバッファ、
147…引継ぎバッファ、150…モジュールテーブル、
160…モジュール切り替え処理部、170…ルーチ
ン、171…システムコール、172…初期化ルーチ
ン、173…停止ルーチン、174…内部ルーチン、1
75…割り込みハンドラ、180…引継ぎバッファ作成
ルーチン、190,220…内部データ、200…ルー
チン、210…引継ぎバッファ反映ルーチン、230…
エントリテーブル、231…種別、232…エントリ番
号、233…オフセット、240…論理空間、241…
固定物理空間、242…通常の論理空間、250…物理
メモリ、300〜503…フロー図の処理。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 桑原 啓二 茨城県日立市大みか町五丁目2番1号 株 式会社日立製作所大みか工場内

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】複数のモジュールと、フレームワークと、
    引継ぎバッファとを有し、論理空間と物理空間が等しい
    固定物理空間と、論理空間と物理空間が一致しない仮想
    空間から構成されるオペレーティングシステムにおける
    モジュールの入れ替え方式であって、 該引継ぎバッファは、仮想空間に存在し、 モジュール入れ替え前の旧モジュールへのコールを停止
    し、該旧モジュールは、引継ぎ情報を該引継ぎバッファ
    に格納し、モジュール入れ替え後の新モジュールは、引
    継ぎ情報を、該引継ぎバッファから読み込む、ことを特
    徴とするオンラインモジュールの入れ替え方法。
  2. 【請求項2】請求項1のモジュール入れ替え方法におい
    て、 該オペレーティングシステムは、モニュールごとの論理
    アドレスと物理アドレスの対応を管理するページテーブ
    ルと、該ページテーブルを管理するメモリ管理モジュー
    ルを有し、 入れ替え前の旧メモリ管理モジュールの該ページテーブ
    ルから、論理アドレスと物理アドレスの対応を該引継ぎ
    バッファに格納し、入れ替え後の新メモリ管理モジュー
    ルが、論理アドレスと物理アドレスの対応を該引継ぎバ
    ッファから読み込み、該新メモリ管理モジュールの該ペ
    ージテーブルを作成することを特徴とするオンラインモ
    ジュールの入れ替え方法。
  3. 【請求項3】請求項2のモジュール入れ替え方法におい
    て、 該メモリ管理モジュールは、物理メモリが使用中か未使
    用かを示す使用状態と、メモリの識別子を記録する物理
    メモリ管理テーブルを持ち、該メモリ管理モジュール
    は、物理メモリを割り当て、開放する時に、該物理メモ
    リ管理テーブルに、ある物理アドレスの使用状態と識別
    子を記入するモジュールであって、 入れ替え前の旧メモリ管理モジュールの該物理メモリ管
    理テーブルから、該使用状態と該識別子を該引継ぎバッ
    ファに格納し、入れ替え後の新メモリ管理モジュール
    が、該使用状態と該識別子を該引継ぎバッファから読み
    込み、該メモリ管理モジュールの該物理メモリ管理テー
    ブルを作成することを特徴とするオンラインモジュール
    入れ替え方法。
JP06250098A 1998-03-13 1998-03-13 オペレーティングシステムのモジュールプログラムを備えた計算機 Expired - Fee Related JP3882321B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP06250098A JP3882321B2 (ja) 1998-03-13 1998-03-13 オペレーティングシステムのモジュールプログラムを備えた計算機
US09/263,785 US6546485B1 (en) 1998-03-13 1999-03-05 Method for exchanging modules in operating system by using inheritance buffer presented in virtual space to store inherited information of old module and read by new module thereafter

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP06250098A JP3882321B2 (ja) 1998-03-13 1998-03-13 オペレーティングシステムのモジュールプログラムを備えた計算機

Publications (2)

Publication Number Publication Date
JPH11259285A true JPH11259285A (ja) 1999-09-24
JP3882321B2 JP3882321B2 (ja) 2007-02-14

Family

ID=13201961

Family Applications (1)

Application Number Title Priority Date Filing Date
JP06250098A Expired - Fee Related JP3882321B2 (ja) 1998-03-13 1998-03-13 オペレーティングシステムのモジュールプログラムを備えた計算機

Country Status (2)

Country Link
US (1) US6546485B1 (ja)
JP (1) JP3882321B2 (ja)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003034200A (ja) * 2001-07-24 2003-02-04 Hitachi Ltd 自動車の制御方法
JP2004280830A (ja) * 2003-03-12 2004-10-07 Microsoft Corp ソフトウェアシステムのための拡張可能なカスタマイズフレームワーク
WO2006051754A1 (ja) * 2004-11-11 2006-05-18 Matsushita Electric Industrial Co., Ltd. 機密情報処理装置
JP2006522416A (ja) * 2003-04-02 2006-09-28 ビーチ・アンリミテッド・エルエルシー ディジタル・メディア・サーバのアップグレード
US7461175B2 (en) 2004-04-28 2008-12-02 Sony Corporation Information processing apparatus, information processing method, and program
JP2009015428A (ja) * 2007-07-02 2009-01-22 Nippon Telegr & Teleph Corp <Ntt> プログラム更新方法、情報処理装置、プログラムおよび記録媒体
US7684883B2 (en) 2004-04-28 2010-03-23 Sony Corporation Information processing apparatus, information processing method, and program
JP2011517894A (ja) * 2008-03-24 2011-06-16 クゥアルコム・インコーポレイテッド 通信局にプログラマブル識別子を安全に記憶する方法
WO2012058190A3 (en) * 2010-10-29 2012-06-28 Microsoft Corporation Inherited product activation for virtual machines
JP2015060499A (ja) * 2013-09-20 2015-03-30 富士通株式会社 演算処理装置、情報処理装置、情報処理装置の制御方法および情報処理装置の制御プログラム

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2377283B (en) * 2001-04-10 2004-12-01 Discreet Logic Inc Initialising modules
JP2003216449A (ja) * 2002-01-23 2003-07-31 Nec Corp パッチ処理システム
JP4604543B2 (ja) * 2004-04-30 2011-01-05 日本電気株式会社 計算機、計算機起動方法、管理サーバ装置およびプログラム
JP2008236127A (ja) * 2007-03-19 2008-10-02 Ricoh Co Ltd 画像処理装置
CN101616028B (zh) * 2009-06-25 2012-02-29 中兴通讯股份有限公司 一种通信程序业务不中断升级方法及系统
GB2527060B (en) 2014-06-10 2021-09-01 Arm Ip Ltd Method and device for updating software executed from non-volatile memory
US10523603B2 (en) * 2017-03-31 2019-12-31 Bmc Software, Inc. Systems and methods for intercepting access to messaging systems

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4799145A (en) * 1985-04-03 1989-01-17 Honeywell Bull Inc. Facility for passing data used by one operating system to a replacement operating system
IT1211458B (it) * 1987-11-04 1989-10-26 Selenia Spazio Spa Controllore della commutazione di bordo di un satellite del tipo con commutazione a bordo
JPH02194446A (ja) * 1989-01-24 1990-08-01 Nippon Telegr & Teleph Corp <Ntt> 二重化情報処理システムにおけるモジュール修復方法
US5313387A (en) * 1989-06-30 1994-05-17 Digital Equipment Corporation Re-execution of edit-compile-run cycles for changed lines of source code, with storage of associated data in buffers
US5604887A (en) * 1994-01-21 1997-02-18 Microsoft Corporation Method and system using dedicated location to share information between real and protected mode device drivers
JPH07319683A (ja) 1994-05-30 1995-12-08 Nippon Telegr & Teleph Corp <Ntt> 運用中プログラム更新方式
US5784611A (en) * 1994-12-19 1998-07-21 Seagate Technology, Inc. Device and process for in-system programming electrically erasable and programmable non-volatile memory
JPH08212064A (ja) 1995-01-31 1996-08-20 Hitachi Ltd 共用サブルーチンの入れ替えシステム及び共用サブルーチン入れ替え方法
US5805882A (en) * 1996-07-19 1998-09-08 Compaq Computer Corporation Computer system and method for replacing obsolete or corrupt boot code contained within reprogrammable memory with new boot code supplied from an external source through a data port
US6122733A (en) * 1997-01-02 2000-09-19 Intel Corporation Method and apparatus for updating a basic input/output system

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003034200A (ja) * 2001-07-24 2003-02-04 Hitachi Ltd 自動車の制御方法
JP2004280830A (ja) * 2003-03-12 2004-10-07 Microsoft Corp ソフトウェアシステムのための拡張可能なカスタマイズフレームワーク
JP2006522416A (ja) * 2003-04-02 2006-09-28 ビーチ・アンリミテッド・エルエルシー ディジタル・メディア・サーバのアップグレード
US7684883B2 (en) 2004-04-28 2010-03-23 Sony Corporation Information processing apparatus, information processing method, and program
US7461175B2 (en) 2004-04-28 2008-12-02 Sony Corporation Information processing apparatus, information processing method, and program
WO2006051754A1 (ja) * 2004-11-11 2006-05-18 Matsushita Electric Industrial Co., Ltd. 機密情報処理装置
JP2009015428A (ja) * 2007-07-02 2009-01-22 Nippon Telegr & Teleph Corp <Ntt> プログラム更新方法、情報処理装置、プログラムおよび記録媒体
JP2011517894A (ja) * 2008-03-24 2011-06-16 クゥアルコム・インコーポレイテッド 通信局にプログラマブル識別子を安全に記憶する方法
US8468366B2 (en) 2008-03-24 2013-06-18 Qualcomm Incorporated Method for securely storing a programmable identifier in a communication station
WO2012058190A3 (en) * 2010-10-29 2012-06-28 Microsoft Corporation Inherited product activation for virtual machines
US8832686B2 (en) 2010-10-29 2014-09-09 Microsoft Corporation Inherited product activation for virtual machines
US9830430B2 (en) 2010-10-29 2017-11-28 Microsoft Technology Licensing, Llc Inherited product activation for virtual machines
JP2015060499A (ja) * 2013-09-20 2015-03-30 富士通株式会社 演算処理装置、情報処理装置、情報処理装置の制御方法および情報処理装置の制御プログラム

Also Published As

Publication number Publication date
JP3882321B2 (ja) 2007-02-14
US6546485B1 (en) 2003-04-08

Similar Documents

Publication Publication Date Title
US8453015B2 (en) Memory allocation for crash dump
JP3882321B2 (ja) オペレーティングシステムのモジュールプログラムを備えた計算機
EP0431467B1 (en) Multiprocessor system having distributed shared resources and dynamic global data replication
CA2152752C (en) Multiprocessor system for locally managing address translation table
JP4718683B2 (ja) コンピュータ内のアプリケーションプログラム間でフォーカスが変更されたときに物理メモリの状態を復元する方法およびシステム
US20040117594A1 (en) Memory management method
US20070050586A1 (en) Memory access control apparatus
JP2005500592A (ja) 共有メモリを用いて仮想メモリを実現するマルチプロセッサシステムならびにページ化メモリの整合性を管理するためのページ差し替え方法
US9195578B2 (en) Systems, methods and computer program products memory space management for storage class memory
JPH1124943A (ja) 計算機再起動方法および計算機停止方法
CN120353723B (zh) 一种内存访问方法、程序产品、设备及介质
JP2011170477A (ja) ハイパーバイザ及びサーバ装置
JP2009122733A (ja) 電力制御方法、計算機システム、及びプログラム
JP3701890B2 (ja) 圧縮メモリ・システムの再利用スペース予約
CN113986775B (zh) 一种risc-v cpu验证中页表项生成方法、系统及装置
US6889296B2 (en) Memory management method for preventing an operating system from writing into user memory space
US8825718B2 (en) Methods and apparatus for marking objects for garbage collection in an object-based memory system
CN109783145B (zh) 一种创建基于多映像的多功能嵌入式系统的方法
JPH05210584A (ja) 改善されたぺージングを有するディジタルデータプロセッサ
EP1971922B1 (en) Memory architecture and access method
JP2001134486A (ja) マイクロプロセッサおよび記憶装置
JP3903678B2 (ja) 計算機システムのダンプ処理方法
GB2417102A (en) Managing memory using back-up dirty bits
JP4354583B2 (ja) アクセス方法及びアクセス処理プログラムを記録した記録媒体
JP2823038B2 (ja) 論理ダイレクトメモリアクセス方式

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050930

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20051101

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060104

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060214

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060417

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20060417

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20060516

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060718

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060920

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20060926

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20061024

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20061106

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101124

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101124

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111124

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees