JP2711220B2 - 固定オブジェクト記憶システム - Google Patents

固定オブジェクト記憶システム

Info

Publication number
JP2711220B2
JP2711220B2 JP6090233A JP9023394A JP2711220B2 JP 2711220 B2 JP2711220 B2 JP 2711220B2 JP 6090233 A JP6090233 A JP 6090233A JP 9023394 A JP9023394 A JP 9023394A JP 2711220 B2 JP2711220 B2 JP 2711220B2
Authority
JP
Japan
Prior art keywords
data
attribute
fixed
format
storage medium
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP6090233A
Other languages
English (en)
Other versions
JPH0798649A (ja
Inventor
チャールス・ロバート・エリクソン
ロジャー・ヒアウォード・セジオンズ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPH0798649A publication Critical patent/JPH0798649A/ja
Application granted granted Critical
Publication of JP2711220B2 publication Critical patent/JP2711220B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4488Object-oriented
    • G06F9/4493Object persistence

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Stored Programmes (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、データ処理システムに
関し、特にアプリケーション・プログラム又はオペレー
ティング・プログラムを作成するためのシステムに関す
る。さらには、オペレータの変更によらず固定オブジェ
クト(persistent object)を記憶しまた再記憶するた
めに動作可能な固定オブジェクト記憶機能を有するオブ
ジェクト指向システムに関する。
【0002】
【従来の技術】データ処理システムのためのアプリケー
ション及びシステム・ソフトウェアの開発は、従来から
時間のかかるタスクであった。ソフトウェア・エンジニ
アリングの分野では、新規のより効率的なソフトウェア
開発モデルを提示することにより伝統的な手法の限界を
克服する試みがなされてきた。オブジェクト指向プログ
ラミングは、新ソフトウェアシステムの迅速な開発、イ
ンプリメンテーション(導入)及びカスタム化を可能に
する有望な技術として出現した。
【0003】オブジェクト指向プログラミングは、最終
的なタスクを行うためにアセンブルすることが可能なシ
ステム・オブジェクトのツールキットを利用する。各オ
ブジェクトは、あるデータ属性とそのデータに対して操
作をするプロセス又はメソッド(method)とを有する。
データは、いわばオブジェクト(object)により「カプ
セル化」(encapsulation)されており、そのオブジェ
クトメソッドのみにより変更することができる。メソッ
ドは、そのメソッドを識別するオブジェクトへメッセー
ジ(message)を送り、何らかの必要な引き数を与える
ことにより呼出される。
【0004】オブジェクト指向システムは、カプセル化
の他に2つの重要な特性を有する。「継承(Inheritanc
e)」は、既存のオブジェクトから新オブジェクトを導
出し、かつメソッド及びデータ構造を含む全ての特性を
既存のオブジェクトから継承する機能である。新オブジ
ェクトは、既存のクラスに対する上書き又は変更として
与えられるある独自の特徴をもつ場合もある。すなわ
ち、新しいサブクラスは、そのクラスを既存のより一般
的なクラスから区別する機能及びデータのみを指定する
ことを必要とする。
【0005】既存のメソッド記述を上書きする機能によ
り、ポリモルフィズム(polymorphism)すなわちオブジ
ェクト自体に依存する異なるメソッドでプロセス化され
る、そのオブジェクトに対する1つのメッセージをもつ
機能が可能となる。
【0006】継承及びポリモルフィズムは、新ソフトウ
ェアシステムを実動化するための強力な構造を創生す
る。ソフトウェア開発者は、システムの各部分を開発す
る必要がなく、ただそのシステムの独自の特徴を指定す
ることのみを要する。
【0007】オブジェクト指向システムの威力は、シス
テム「フレームワーク(framework)」の開発を通して
認識された。フレームワークは、最終的なシステム製品
を作成するシステム・プログラマにより利用可能なベー
ス・クラスの集合である。フレームワークは、システム
としてともに働くために定義されかつ開発される。概念
的には、フレームワークは、コンピュータ・ハードウェ
ア製作者により用いられる標準的なハードウェア要素の
セットのようなものである。各要素はある定義された機
能とインタフェースとを有し、エンジニアは独自のハー
ドウェアシステムを製作するための特定の設計に従って
これらの要素をアセンブルする。
【0008】データ処理システムにより作られるオブジ
ェクトは、通常それらのシステムの揮発性メモリ内に保
持される。これにより、より高速の処理が可能となる
が、データを記憶するための手段はない。オブジェクト
指向システムは、「固定オブジェクト(persistent obj
ect)」を実動化することによりこの問題を解決する。
「固定(persistent)」とは、オブジェクトの状態が、
そのオブジェクトを作ったプロセスの終了以降も保存で
きることを意味する。固定フレームワークは、固定オブ
ジェクトがハードディスク駆動装置又は書込み可能な光
学ディスク等の固定媒体へ記憶されかつそれから検索さ
れることを可能にする方法を含む。オブジェクトは、個
別に記憶することもでき、あるいは他のオブジェクトと
グループ化されて記憶することもできる。
【0009】米国特許第5161225号には、データ
ベースに問合せを行いかつその結果を保有するために固
定ストリームを利用するメソッドが論じられている。既
存の固定オブジェクト・システムは、オブジェクト記憶
のインプリメンテーションが固定されていることにより
制限されている。特定のオブジェクト指向製品は、通
常、固定オブジェクトを記憶するための1つの機構が設
けられている。この機構は、使用される固定媒体の定
義、その媒体上に記憶されるオブジェクトの構造、及び
その媒体上に記憶される各特定のオブジェクトの構造を
含む。
【0010】固定オブジェクトのインプリメンテーショ
ンが固定されていることは、固定オブジェクト記憶を特
定のシステム仕様に合わせるために変更を加えようとす
る開発者の融通性を制限する。固定された記憶方式は、
不揮発性記憶媒体に記憶されたデータをメモリに再記憶
するためのメソッドが常に同じままであることが必要で
あるため、開発者はアプリケーションを改良したり強化
したりすることが制限される。固定された記憶システム
においてオブジェクトが応答するパラメータの数又は形
式を変更したならば、先に記憶されたオブジェクトの再
記憶ができなくなるであろう。
【0011】しかしながら、固定されたインプリメンテ
ーションには、固定オブジェクトを記憶できる以前に開
発者によるコード化の労力を必要としないと云う利点が
ある。開発者は、カスタム化された固定記憶フレームワ
ークを開発するための時間もなく訓練もしないことがし
ばしばである。これらの開発者は、後にシステムが非互
換的となることに拘らず、また彼ら自身の記憶機構に手
を加えることなく固定データをフレキシブルなフレーム
ワークに記憶できることを必要とする。
【0012】本発明の課題とする既存の技術の問題は、
フレキシブルで上位に対して互換性のある固定オブジェ
クト記憶を可能にすると同時に開発者がその記憶メソッ
ドをコード化する必要がないような固定オブジェクトを
提供することである。
【0013】
【発明が解決しようとする課題】本発明の目的は、オペ
レータがプログラミングする必要のないオブジェクトの
固定記憶及び検索を可能にする固定オブジェクト・シス
テムを提供することである。さらに本発明の目的は、固
定オブジェクトのフォーマット情報をそのオブジェクト
とともに記憶することなく固定オブジェクトの再記憶を
可能にするオブジェクト・フレームワークを提供するこ
とである。さらに本発明の目的は、オブジェクト指向技
術を利用し、上位に対して互換性のある固定データ記憶
を可能にすることである。本発明における上記の及び他
の目的、特徴及び利点は、以下に図とともに示す好適例
についての記述により明らかにされるであろう。
【0014】オブジェクト指向プログラミング・システ
ムは、図1に示すようなコンピュータ・システム上で動
作する。このコンピュータ・システムは、パーソナル・
コンピュータ、ワークステーション、ミニコンピュータ
又はメインフレーム型のコンピュータである。図1は、
IBMのPS/2モデル95 (IBM PS/2 Model 95)コン
ピュータ等のパーソナル・コンピュータを描いている
(IBM及びPS/2は、IBMコーポレイションの商
標である)。このコンピュータは、通常、プロセッサ又
はCPU102とメモリ104とをもつシステム・ユニ
ット100を含む。オブジェクト指向プログラム106
はプロセッサ上で動作し、メモリ104内に常駐する。
このシステムは、通常、カラー又はモノクロのCRT等
の表示装置108とキーボード110、マウス又はトラ
ックボール等の指示装置112、固定ディスク駆動装置
114、及び任意にLAN又は他のネットワークへのネ
ットワーク接続116を有する。
【0015】オブジェクトは、データ及びそのデータを
操作するために必要なメソッドをまとめたものである。
オブジェクトは、図2に示すような「ドーナツ図」によ
り表現することができる。中央のオブジェクト・データ
202が適用可能なメソッド204乃至214に囲まれ
て示されている。データ202は、このオブジェクトの
メソッドによってのみ変更可能である。メソッド204
乃至214は、他のオブジェクトからのメッセージを受
取ることにより呼出される。通常のオブジェクト指向シ
ステムは、オブジェクト間のメッセージを経路指定する
メッセージ・ルータ220を有する。このように、オブ
ジェクト230がメッセージ・ルータ220へメッセー
ジ232を送り、メッセージ・ルータ220がそのメッ
セージ232をオブジェクト200のメソッドC208
へ送ることにより、メソッドC208が呼出される。
【0016】オブジェクト・フレームワークは、アプリ
ケーション開発者及びシステム開発者が分配システムを
構築する際に利用するオブジェクトのセットを提供する
ために構築される。例えば、IBMシステム・オブジェ
クト・モデル(IBM System object Model:SOM)フレ
ームワークは、システム開発において利用するための、
言語に依らないオブジェクトのセットを提供する。IB
MのOS/2バージョン2.0ワークプレイス・シェル
(IBM OS/2 Version 2.0 Workplace Shell)は、そのよ
うな環境を利用して開発されたアプリケーションの例で
ある。
【0017】オブジェクトは、関連するオブジェクトの
クラスにグループ化される。このクラス記述は、各オブ
ジェクトにより保持されるインスタンス値(instance)
及び利用可能なオブジェクトメソッドを含む、クラス内
の全てのオブジェクトに関係する情報を含んでいる。オ
ブジェクト・インスタンスは、その情報に基づいて作ら
れ(又はインスタンス化され)、そしてそのオブジェク
ト・クラスに定義される属性を有している。例えば、オ
ブジェクト・クラスDOG(犬)には、インスタンス値
として「dog_type(犬のタイプ)」と「dog
_name(犬の名前)」及びバーク(吠える)・メッ
セージに応答して実動化されるメソッド「バーク(吠え
る)」を含めることができる。犬のインスタンス、例え
ばローバーは、そのタイプと名前のインスタンス値を自
身で保持し、バーク・メッセージに応答する。
【0018】抽象クラス(abstract class)は、クラス
により利用されると予想されるインタフェースとメソッ
ドを、それらのメソッドの実動化に関する詳細を与える
ことなく記述するために用いられる。抽象クラスは、実
動化の詳細をプログラマにまかすような場合におけるフ
レームワークで有用である。具体的なクラスは、抽象ク
ラスのサブクラスとして作られそしてそれらの抽象クラ
スを実動化するものである。
【0019】オブジェクト指向システムのクラスは、し
ばしばある1つのベース・クラスから導出される。この
ベース・クラスは、IBMシステム・オブジェクト・モ
デルでは「SOMオブジェクト(SOMObject)」と称さ
れる。図3は、システム・オブジェクト・モデルを利用
する固定オブジェクトのためのクラス階層を示すことに
より本発明の好適例を表している。
【0020】クラス「固定オブジェクト(Persistent O
bject)」304は、SOMオブジェクト302のサブ
クラスであり、固定オブジェクトを作るために必要なメ
ソッド及び値を含んでいる。これはSOMオブジェクト
のサブクラスであるので、SOMオブジェクトが認知す
る全てのメソッドと値を継承する。同様にSOMオブジ
ェクト302から、固定記憶マネージャ(PersistentSt
orageManager)306、IOグループ・マネージャ(IO
GroupManager)308、及びエンコーダ・デコーダ(En
coderDecoder)310が導出される。これらのサブクラ
スは、固定オブジェクトの全ての管理を実動化し(固定
記憶マネージャ)、固定オブジェクト記憶媒体上の固定
オブジェクトの構造とグループ化を制御し(IOグルー
プ・マネージャ)、そして記憶媒体にオブジェクト情報
を書込む(エンコーダ・デコーダ)ための抽象クラスで
ある。
【0021】抽象クラスであるIOグループ・マネージ
ャ308は、固定記憶媒体上のオブジェクトのグループ
化とグループの組織化とを制御する。固定オブジェクト
は、関連するオブジェクトのグループに記憶されてい
る。オブジェクト・グループ記憶の構造は、グループス
ケルトン(骨組み)フォーマットと呼ばれ、オブジェク
トが記憶されているスケルトンを定義する。最も直接的
な構造は、オブジェクト記述を平易なASCIIテキス
トで記憶するとともにグループ内でオブジェクトを順次
記憶するものである。図4および図5は、このオブジェ
クト構造についてのグループスケルトンフォーマットで
ある。
【0022】グループスケルトンフォーマット400
は、グループ・データである多数のオブジェクト・セパ
レータ404、405、...、412とオブジェクト
記憶ブロック414、416、...、420オブジェ
クト・グループ・ヘッダ402とを含む。記憶ブロック
414内のオブジェクトの記憶は、エンコーダ・デコー
ダのクラスにより制御される。
【0023】エンコーダ・デコーダ310は、内部のオ
ブジェクト記憶フォーマットから固定記憶媒体(例え
ば、ディスク)へ書込むことのできるフォーマットへと
オブジェクト・インスタンスのデータを再フォーマット
する機能をもつ。固定フォーマットは、オブジェクトが
書込まれたときと同じ状態でそのオブジェクトを内部記
憶に再記憶できるだけの十分な情報を含まなければなら
ない。
【0024】好適例においては、エンコーダ・デコーダ
抽象(EncoderDecoderAbstract)クラスは、アプリケー
ション開発者又は開発者により導出される具体的なエン
コーダ・デコータのサブクラスへのインタフェースを定
義するために実動化される。エンコーダ・デコーダ抽象
クラスは、以下のメソッドへのインタフェースを定義す
る。エンコーダ・デコーダ書込み(EncoderDecoderWrit
e)は、選択された媒体インタフェースを用いて特定のオ
ブジェクトのインスタンス・データをフォーマットして
書込む。エンコーダ・デコーダ読取り(EncoderDecoder
Read)は、選択された媒体インタフェースから読取り、
固定フォーマットから内部オブジェクト・フォーマット
へ再記憶する。
【0025】本発明によるエンコーダ・デコーダは、選
択されたIOグループ・マネージャに対して、装置を準
備すること、その装置を開きかつ閉じること、さらに物
理的にその装置にデータを書込みまたその装置からデー
タを読取ることも含めて全ての媒体指定機能についての
メッセージを送る。
【0026】本発明の好適例は、フレキシブルで汎用的
なオブジェクト情報の記憶を実行するためのデフォール
ト・エンコーダ・デコーダ(DefaultEndoderDecoder)
を設けている。デフォールト・エンコーダ・デコーダ
は、そのクラスの属性のデータ形式を含むオブジェクト
のクラスについての情報の保存場所に依存する。そして
さらに、クラスの属性を固定属性として識別するための
手段に依存する。オブジェクトについての上記のような
情報を収めるために用いる保存場所は、インタフェース
・レポジトリとして知られている。最後に、デフォール
ト・エンコーダ・デコーダは、各固定属性についての
「セット(set)」及び「ゲット(get)」メソッドに依
存する。すなわちサポートされる各データ形式に対し
て、固定属性名称を、その属性をゲット又はセットする
ために用いるメソッド名称と矛盾のないゲット/セット
メソッドシグネチャとに矛盾のないマッピングすること
に依存する。
【0027】好適例では、オブジェクト・マネージメン
ト・グループの標準により指定される属性を実行する。
属性は、オブジェクトに関連する公的なデータである。
各属性は、その標準によりゲット/セットメソッドをも
つことを要求される。固定属性は、そのオブジェクトの
インタフェース定義言語(IDL)におけるその属性名
称に続くキーワード「固定」により示される。
【0028】デフォールト・エンコーダ・デコーダは、
オブジェクトの記憶が必要な場合に稼働状態になる。デ
フォールト・エンコーダ・デコーダは、そのオブジェク
トがデータ属性を有するか否かそしてもし有する場合は
そのデータ属性のいずれかが「固定」として識別された
か否かをインタフェース・レポジトリに問合せる。その
固定オブジェクトデータ属性のそれぞれについて、デフ
ォールト・エンコーダ・デコーダは、その属性のデータ
形式を決定するためにインタフェース・レポジトリに問
合せる。その固定属性の名称及びそのデータ形式が与え
られると、デフォールト・エンコーダ・デコーダは、
「ゲット」メソッド要求を作る。その後、属性「ゲッ
ト」メソッドは、記憶されるデータを検索するために呼
出される。デフォールト・エンコーダ・デコーダは、各
固定データ属性に対するデータのストリームを作成す
る。このデータのストリームは、固定属性のデータ形式
と、属性名称と属性「ゲット」メソッドから返されたデ
ータとを含む。全ての基本的な属性データ形式は、整
数、浮動小数点数、文字列、これらの形式のアレイ及び
シーケンス、並びにこれらの形式のいずれかの構造を含
めてサポートされる。得られるストリームは、そのオブ
ジェクトから作成される全てのストリームを連結したも
のである。
【0029】本発明による固定ストリームは、属性名称
及びパラメータのASCIIストリームとして書込まれ
る。好適例は、ASCIIストリームで書込むが、EB
CDIC又はバイナリを含む他のいずれのフォーマット
でも用いることができる。このストリームは、既に構文
解析されたフォーマットでありオブジェクトの再構成を
することができる。
【0030】オブジェクトの構造は、次に示す例を参照
することにより理解できる。 interface Person : SOMPPersistentObject インタフェース・パーソン:SOM固定オブジェクト { attribute string name; 属性ストリング・名称; attribute short deptNum; 属性ショートdeptNum; // Attribute get/set methods: //属性ゲット/セットメソッド: void_set_name(string name); string_get_name(); void_set_deptNum(short num); short_get_deptNum(); implementation インプリメンテーション { //Attribute modifiers identify which //attributes are persistent //属性変更子が、いずれの属性が固定であるかを識別する。 name: persistent; 名称:固定; deptNum: persistent; deptNum:固定; }; };
【0031】デフォールト・エンコーダ・デコーダは、
次の好適なフォーマットを有するASCII列として実
質的なオブジェクト情報を記憶する。 1.そのオブジェクトの各固定属性について、 a.固定属性名称内の文字の数 b.属性の名称 c.属性のデータ形式 d.属性「ゲット」メソッドにより返されたデータ 2.オブジェクトの再記憶におけるデータ・ストリーム
の終りを示すための「属性終り」マーカ 上記の例のオブジェクトのインスタンスについて記憶さ
れたデータのストリームは、例えば次のような列とな
る。
【0032】固定記憶のためにオブジェクト・データを
エンコードするプロセスの好適例を、図6を参照して説
明する。固定オブジェクト・マネージャ306は、オブ
ジェクトを記憶するためのプログラムにより命令され
る。固定記憶マネージャは、エンコーダ・デコーダすな
わち本発明によるデフォールト・エンコーダ・デコーダ
をインスタンス化するためにIOグループ・マネージャ
308に対し順に命令し、そしてデフォールト・エンコ
ーダ・デコーダは必要なゲットメソッドを呼出す。
【0033】プロセスは502から開始され、このオブ
ジェクト504のクラスについての属性の数とデータ形
式を判断するためにインタフェース・レポジトリの読取
りへと進む。506において、さらに属性が存在しない
か検査される。さらに属性が存在しなければ、「属性終
り」マーカが508において記憶され、プロセスは52
0で終了する。さらに属性が存在すれば、510におい
てその次の属性が固定属性であるか否かを判断する検査
が行われる。固定属性でなければ、処理は検査506へ
戻る。固定属性が見つかったならば、512においてそ
の属性名称の長さが記憶され、514において属性名称
と形式が記憶される。516において「ゲット」メソッ
ド要求が属性名称とデータ形式を用いて作成され、その
メソッドが呼出される。最後に、518においてその
「ゲット」メソッドから返されたデータが記憶され、処
理は検査506へ戻る。
【0034】オブジェクトは、そのオブジェクトの固定
属性のセットメソッドの呼出しにより、固定記憶から再
記憶される。オブジェクトの再記憶のための要求は、固
定記憶マネージャ上のメソッドを呼出すことによってプ
ログラムにより開始される。それから固定記憶マネージ
ャは、IOグループ・マネージャをインスタンス化し、
今度はIOグループ・マネージャがエンコーダ・デコー
ダ(この場合デフォールト・エンコーダ・デコーダ)を
インスタンス化する。
【0035】オブジェクトの再記憶は、図7に示したプ
ロセスにより実行される。このプロセスは602におい
て開始され、すぐにステップ604に進み、固定記憶ス
トリームから属性名称を読取る。得られた属性名称は、
606において「属性終り」マーカであるか否かを判断
するために検査される。もし「属性終り」マーカであれ
ば、616において再記憶は終了する。そうでなけれ
ば、608においてシステムは属性形式を読取り、61
0において再記憶されたデータを保持するために空間を
割当て、そして612において割当てられた空間にその
データを読取る。614において「セット」メソッド要
求が、属性名称及びデータ形式を用いて作成された後、
そのメソッドが呼出される。リターンにより、制御はス
テップ604へ送られる。
【0036】まとめとして、本発明の構成に関して以下
の事項を開示する。
【0037】1)メモリ、プロセッサ、及びオペレータ
とのインターフェース手段を有し、該メモリ内のシステ
ム・オブジェクトにデータが常駐し、該データが該オブ
ジェクトに関連する処理方法により操作されるオブジェ
クト指向コンピュータ・システムにおいて、選択された
オブジェクトのデータを固定媒体に記憶するシステムで
あって、データ記憶要求に対して応答し、前記選択され
たオブジェクトについて定義された属性の数、名称、及
び形式を判断する属性抽出手段と、データ記憶要求に対
して応答し、前記属性抽出手段により抽出された属性に
ついての属性値を得るためにメソッド呼出し要求を作成
するメソッド作成手段と、前記固定媒体へ記憶するため
に前記属性の名称、形式及び値をフォーマットするデー
タ・フォーマット手段と、前記属性を再記憶されたオブ
ジェクト・インスタンスに再記憶するデータ再記憶手段
とを含むシステム。 2)前記メソッド作成手段が「ゲット(get)」メソッ
ドを呼出す上記1)に記載のシステム。 3)前記データ再記憶手段が、前記固定媒体からデータ
を読取る固定媒体アクセス手段と、再記憶される属性デ
ータのために前記メモリに記憶を割当てる記憶割当て手
段と、属性データを再記憶するためにメソッド呼出し要
求を作成するメソッド作成手段とを含む上記1)に記載
のシステム。 4)前記メソッド作成手段が、属性の名称及び形式を用
いて「セット(set)」メソッド要求を作成する上記
3)に記載のシステム。 5)オブジェクトの固定属性データを固定記憶媒体に記
憶しかつ該固定記憶媒体から再記憶し、各オブジェクト
・インスタンスがプロセスメソッドにより操作される属
性データを含み、オブジェクトの属性の数と形式に関す
る情報がレポジトリに記憶されている、オブジェクト指
向システムにおいて動作する方法であって、各固定属性
のために複数のデータ抽出メソッドを定義し、前記オブ
ジェクトの固定属性の数、名称及び形式を判断するため
に前記レポジトリにアクセスするステップと、複数の属
性データ値を返すために前記固定属性の名称及び形式に
基づいて前記複数のデータ抽出メソッドの1つを呼出す
ための要求を作成するステップと、属性名称及び形式の
列を前記固定媒体に記憶するステップと、前記属性デー
タ値の列を前記固定媒体に記憶するステップと、前記属
性に関連する再記憶メソッドを連続的に実行することに
より前記オブジェクトデータを再記憶するステップとを
含む方法。 6)前記再記憶するステップが、前記固定媒体から属性
名称を読取るステップと、前記固定媒体から属性形式を
判断するステップと、前記属性値に空間を割当てるステ
ップと、前記再記憶される属性データをセットするため
にメソッド呼出し要求を作成するステップとを含む上記
5)に記載の方法。 7)固定属性データを固定媒体に記憶しかつ該固定媒体
から再記憶するためのコンピュータ・プログラム論理を
有するコンピュータによる読取り可能な媒体を備えたコ
ンピュータ・プログラム製品であって、各固定属性につ
いて複数のデータ抽出メソッドを定義する手段と、前記
オブジェクトについて固定属性の数、名称及び形式を判
断するために前記レポジトリにアクセスする手段と、複
数の属性データ値を返すために前記固定属性の名称及び
形式に基づいて前記複数のデータ抽出メソッドの1つを
呼出すための要求を作成する手段と、属性の名称及び形
式の列を前記固定媒体に記憶する手段と、前記属性デー
タ値の列を前記固定媒体に記憶する手段と、前記属性に
関連する再記憶メソッドを連続的に実行することにより
前記オブジェクト・データを再記憶する手段とを含むコ
ンピュータ・プログラム製品。 8)前記再記憶する手段が、前記固定媒体から属性名称
を読取る手段と、前記固定媒体から属性形式を判断する
手段と、前記属性値のための空間を割当てる手段と、再
記憶される属性データをセットするためのメソッド呼出
し要求を作成する手段とを含む上記7)に記載のコンピ
ュータ・プログラム製品。
【0038】
【発明の効果】本発明の記憶フォーマットにより、固定
データを失うことなくオブジェクトを変更するためのイ
ンプリメンテーションと、さらにインタフェースまでも
が可能になる。上位に対するデータの互換性は、現在の
構造をサポートするための「セット」メソッドを上書き
することにより制御される。
【図面の簡単な説明】
【図1】本発明が動作するシステムのブロック図であ
る。
【図2】本発明によるオブジェクトを描いた図である。
【図3】好適例におけるクラスの階層を表現する図であ
る。
【図4】固定データ記憶のグループスケルトンフレーム
ワークを表現する図である
【図5】固定データ記憶のグループスケルトンフレーム
ワークを表現する図である
【図6】本発明によるデフォールト・エンコーダのプロ
セスの流れ図である。
【図7】本発明によるデフォールト・デコーダのプロセ
スの流れ図である。
【符号の説明】
100 システム・ユニット 102 CPU 104 メモリ 106 オブジェクト指向プログラム 114 固定ディスク駆動装置 200 オブジェクト 202 オブジェクト・データ 204乃至214 メソッド 220 メッセージ・ルータ 230 オブジェクト
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ロジャー・ヒアウォード・セジオンズ アメリカ合衆国78750 テキサス州、オ ースチン、ペンスウッド・ドライブ 11414 (56)参考文献 特開 平3−137730(JP,A) 特開 平3−255532(JP,A) 特開 平3−138734(JP,A) 特開 平3−138735(JP,A) 特開 平3−138736(JP,A) 特開 平3−142643(JP,A) 特開 平4−264639(JP,A) 特開 平4−230543(JP,A)

Claims (4)

    (57)【特許請求の範囲】
  1. 【請求項1】メモリ、プロセッサ、オペレータとのイン
    ターフェース手段、及びオブジェクトの属性の名称と形
    式を有する情報が記憶されているレポジトリを具備する
    オブジェクト指向コンピュータ・システムにおいて、選
    択されたオブジェクトのデータを記憶するシステムであ
    って、 データ記憶要求に対して応答し、前記選択されたオブジ
    ェクトについて定義された属性を抽出し、固定属性を有
    するかどうか判断する手段と、 前記選択されたオブジェクトが固定属性を有するなら
    ば、前記選択されたオブジェクトの属性名称および形式
    を用いて、不揮発性記憶媒体に記憶すべきデータを検索
    するための複数のメソッドのうちの1つを要求する手段
    と、 前記不揮発性記憶媒体に記憶するために、前記属性の名
    称、形式、および前記メソッドから返されたデータを含
    む固定フォーマットへ前記選択されたオブジェクトをフ
    ォーマット化する手段と、 固定フォーマット化されたデータを前記不揮発性記憶媒
    体に記憶する手段と、 再記憶要求に応答して、固定フォーマット化されたデー
    タを内部オブジェクト・フォーマットへ変換して、前記
    不揮発性記憶媒体から前記メモリへ再記憶する手段と、 を含むことを特徴とするシステム。
  2. 【請求項2】前記再記憶する手段が、 前記不揮発性記憶媒体からデータを読取る媒体アクセス
    手段と、 再記憶される属性データのために前記メモリに記憶域を
    割当てる記憶域割当て手段と、 前記属性データを再記憶するためにメソッド呼出し要求
    を作成する手段とを含む請求項1に記載のシステム。
  3. 【請求項3】メモリ、プロセッサ、オペレータとのイン
    ターフェース手段、及びオブジェクトの属性の名称と形
    式を有する情報が記憶されているレポジトリを具備する
    オブジェクト指向コンピュータ・システムにおいて、選
    択されたオブジェクトのデータを記憶する方法であっ
    て、 データ記憶要求に対して応答し、前記選択されたオブジ
    ェクトについて定義された属性を抽出し、固定属性を有
    するかどうか判断するステップと、 前記選択されたオブジェクトが固定属性を有するなら
    ば、前記選択されたオブジェクトの属性名称および形式
    を用いて、不揮発性記憶媒体に記憶すべきデータを検索
    するための複数のメソッドのうちの1つを要求するステ
    ップと、 前記不揮発性記憶媒体に記憶するために、前記属性の名
    称、形式、および前記メソッドから返されたデータを含
    む固定フォーマットへ前記選択されたオブジェクトをフ
    ォーマット化するステップと、 固定フォーマット化されたデータを前記不揮発性記憶媒
    体に記憶するステップと、 再記憶要求に応答して、固定フォーマット化されたデー
    タを内部オブジェクト・フォーマットへ変換して、前記
    不揮発性記憶媒体から前記メモリへ再記憶するステップ
    と、 を含むことを特徴とする方法。
  4. 【請求項4】前記再記憶するステップが、 前記不揮発性記憶媒体からデータを読取るステップと、 再記憶される属性データのために前記メモリに記憶域を
    割当てるステップと、 前記属性データを再記憶するためにメソッド呼出し要求
    を作成するステップと、 を含む請求項3に記載の方法。
JP6090233A 1993-06-14 1994-04-27 固定オブジェクト記憶システム Expired - Fee Related JP2711220B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US077348 1987-07-24
US77348 1987-07-24
US08/077,348 US5797007A (en) 1993-06-14 1993-06-14 Persistent object storage system with default object encoder/decoder

Publications (2)

Publication Number Publication Date
JPH0798649A JPH0798649A (ja) 1995-04-11
JP2711220B2 true JP2711220B2 (ja) 1998-02-10

Family

ID=22137541

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6090233A Expired - Fee Related JP2711220B2 (ja) 1993-06-14 1994-04-27 固定オブジェクト記憶システム

Country Status (3)

Country Link
US (1) US5797007A (ja)
EP (1) EP0631229A3 (ja)
JP (1) JP2711220B2 (ja)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5724503A (en) * 1995-03-31 1998-03-03 Sun Microsystems, Inc. Method and apparatus for interpreting exceptions in a distributed object system
WO1997042573A1 (en) * 1996-05-07 1997-11-13 Electronic Data Systems Corporation Persistent object support method and system
US5809507A (en) * 1996-07-01 1998-09-15 Sun Microsystems, Inc. Method and apparatus for storing persistent objects on a distributed object network using a marshaling framework
US6272554B1 (en) * 1996-12-10 2001-08-07 International Business Machines Corporation Method and apparatus for a corba typecode data manipulator
US6003038A (en) * 1997-03-31 1999-12-14 Sun Microsystems, Inc. Object-oriented processor architecture and operating method
US6668257B1 (en) * 1997-11-06 2003-12-23 International Business Machines Corporation Migrating non-persistent objects when one or more of the superclass fields of the object are modified
FR2775804B1 (fr) 1998-03-05 2000-04-14 Alsthom Cge Alcatel Procedes de stockage et de depaquetage des attributs d'un objet
DE19819205A1 (de) * 1998-04-29 1999-11-04 Siemens Ag Datenhaltungssystem für persistente Daten
US6223344B1 (en) * 1998-06-11 2001-04-24 Internationl Business Machines Corporation Apparatus and method for versioning persistent objects
EP0967546A3 (en) * 1998-06-25 2001-05-02 Intellution Inc. System and method for storing and retrieving objects
US6609130B1 (en) * 1999-02-19 2003-08-19 Sun Microsystems, Inc. Method for serializing, compiling persistent textual form of an object-oriented database into intermediate object-oriented form using plug-in module translating entries according to grammar
US6542899B1 (en) * 1999-02-19 2003-04-01 Sun Microsystems, Inc. Method and system for expressing information from an object-oriented database in a grammatical form
US6606632B1 (en) * 1999-02-19 2003-08-12 Sun Microsystems, Inc. Transforming transient contents of object-oriented database into persistent textual form according to grammar that includes keywords and syntax
US6298354B1 (en) * 1999-02-19 2001-10-02 Sun Microsystems, Inc. Mechanism and process to transform a grammar-derived intermediate form to an object-oriented configuration database
US6691113B1 (en) * 2000-09-28 2004-02-10 Curl Corporation Persistent data storage for client computer software programs
US7877390B2 (en) * 2003-10-20 2011-01-25 International Business Machines Corporation Systems and methods for providing autonomous persistent storage systems
JP2006294152A (ja) * 2005-04-12 2006-10-26 Toshiba Corp 情報記憶媒体、情報記録装置、および情報再生装置
EP1750253B1 (en) * 2005-08-04 2012-03-21 Nuance Communications, Inc. Speech dialog system
US8095766B2 (en) * 2008-04-07 2012-01-10 International Business Machines Corporation Method and system for approximating object sizes in an object-oriented system
JP7119448B2 (ja) * 2018-03-16 2022-08-17 富士フイルムビジネスイノベーション株式会社 情報処理装置及び情報処理プログラム

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA1341310C (en) * 1988-07-15 2001-10-23 Robert Filepp Interactive computer network and method of operation
JPH0833862B2 (ja) * 1989-10-23 1996-03-29 インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン オブジエクト指向コンピユータ・システム
US5161223A (en) * 1989-10-23 1992-11-03 International Business Machines Corporation Resumeable batch query for processing time consuming queries in an object oriented database management system
US5161225A (en) * 1989-10-23 1992-11-03 International Business Machines Corporation Persistent stream for processing time consuming and reusable queries in an object oriented database management system
US5448726A (en) * 1989-10-23 1995-09-05 International Business Machines Corporation Data base management system with data dictionary cache including a single loadable object descriptor
US5313629A (en) * 1989-10-23 1994-05-17 International Business Machines Corporation Unit of work for preserving data integrity of a data-base by creating in memory a copy of all objects which are to be processed together
US5202981A (en) * 1989-10-23 1993-04-13 International Business Machines Corporation Process and apparatus for manipulating a boundless data stream in an object oriented programming system
AU639802B2 (en) * 1990-08-14 1993-08-05 Oracle International Corporation Methods and apparatus for providing dynamic invocation of applications in a distributed heterogeneous environment
US5151987A (en) * 1990-10-23 1992-09-29 International Business Machines Corporation Recovery objects in an object oriented computing environment
US5291593A (en) * 1990-10-24 1994-03-01 International Business Machines Corp. System for persistent and delayed allocation object reference in an object oriented environment
US5295256A (en) * 1990-12-14 1994-03-15 Racal-Datacom, Inc. Automatic storage of persistent objects in a relational schema
US5317730A (en) * 1991-01-11 1994-05-31 International Business Machines Corporation System for modifying persistent database based upon set of data elements formed after selective insertion or deletion

Also Published As

Publication number Publication date
EP0631229A3 (en) 1995-02-08
JPH0798649A (ja) 1995-04-11
EP0631229A2 (en) 1994-12-28
US5797007A (en) 1998-08-18

Similar Documents

Publication Publication Date Title
JP2711220B2 (ja) 固定オブジェクト記憶システム
JP2680255B2 (ja) オブジェクト指向環境においてデータを転送するためのシステム及び方法
US5613099A (en) Persistent object storage system with modifiable group skeletal formats
US7617222B2 (en) Transferring data and storing metadata across a network
US5623661A (en) System for and method of providing delta-versioning of the contents of PCTE file objects
US5890176A (en) Object-oriented document version tracking method and apparatus
US6343265B1 (en) System and method for mapping a design model to a common repository with context preservation
US5911074A (en) Process for manipulating data models used in software engineering
US6415435B1 (en) Method and apparatus for determining compatibility of parent classes in an object oriented environment using versioning
US5396626A (en) Object-oriented locator system
US5752245A (en) Object-oriented system for configuration history management with a project workspace and project history database for draft identification
US7496890B2 (en) Generation of configuration instructions using an abstraction technique
US5303379A (en) Link mechanism for linking data between objects and for performing operations on the linked data in an object based system
US5937409A (en) Integrating relational databases in an object oriented environment
US5421012A (en) Multitasking computer system for integrating the operation of different application programs which manipulate data objects of different types
EP0861467B1 (en) An object oriented programming based global registry system and method
JPH08339355A (ja) 分散形システムでの処理タスク実行呼び出し方法及び装置
US5978814A (en) Native data signatures in a file system
JP2006244478A (ja) 構成可能なクエリを形成するapiおよびクエリ言語
CA2412383A1 (en) Meta-model for associating multiple physical representations of logically equivalent entities in messaging and other applications
US7669178B2 (en) System and method for interacting with computer programming languages at semantic level
US7117433B1 (en) HTML mapping substitution graphical user interface for display of elements mapped to HTML files
US20050216501A1 (en) System and method of providing and utilizing an object schema to facilitate mapping between disparate domains
CN1499368A (zh) 一种基于描述的界面生成方法及生成系统
CN1828596A (zh) 在数据库内部表示的文件系统

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees