JPH0644085A - アクセスを実行する方法及び装置並びにコンピュータシステム - Google Patents

アクセスを実行する方法及び装置並びにコンピュータシステム

Info

Publication number
JPH0644085A
JPH0644085A JP5059320A JP5932093A JPH0644085A JP H0644085 A JPH0644085 A JP H0644085A JP 5059320 A JP5059320 A JP 5059320A JP 5932093 A JP5932093 A JP 5932093A JP H0644085 A JPH0644085 A JP H0644085A
Authority
JP
Japan
Prior art keywords
file
symbol
operating system
segment
image file
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
Application number
JP5059320A
Other languages
English (en)
Inventor
Michael W Carney
マイケル・ダブリュ・カーニイ
William Shannon
ウィリアム・シャノン
Joseph E Provino
ジョセフ・イー・プロヴィノ
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.)
Sun Microsystems Inc
Original Assignee
Sun Microsystems Inc
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 Sun Microsystems Inc filed Critical Sun Microsystems Inc
Publication of JPH0644085A publication Critical patent/JPH0644085A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/54Link editing before load time

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

(57)【要約】 (修正有) 【目的】 動的に構成可能なOSで記号定義のアクセス
方法の提供。 【構成】 記号定義画像ファイルをリアルタイムで作成
する記号定義画像ファイルビルダを設け、ファイルのオ
ープン要求受信時と現在システム定義画像ファイル不存
在時に記号定義画像ファイルを作成する。ファイルのク
ローズ要求受信時に記号定義画像ファイルを削除し、フ
ァイルが参照されておらず、現在ファイルではないこと
を確定する。記号定義画像ファイルは全ての現在記号定
義と、OSのストリングとを含む。現在記号定義とスト
リングは、記号定義ビルダにより、OSの根実行可能セ
グメントと、メモリに現在ロードされている再配置可能
セグメントとの記号テーブル及びストリングテーブルか
ら収集される。記号定義画像ファイルビルダは、記号定
義画像ファイルのアクセスが完了するまで、再配置可能
セグメントの自動アンロードを禁止し、記号定義画像フ
ァイル中の記号定義とストリングを保護する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はコンピュータシステム及
びそのオペレーティングシステムの分野、特に、UNI
Xシステム(UNIXはUNIX System La
boratories,Inc.の登録商標である)を
実行するコンピュータシステムに関する。さらに特定す
れば、本発明は動的に構成可能なオペレーティングシス
テム、特に、UNIXシステムの核における記号定義に
対してアクセスを実行することに関する。
【0002】
【従来の技術】従来、UNIXシステムの核を含む多く
のオペレーティングシステムは1つの実行可能画像とし
て事前に作成される。すなわち、オペレーティングシス
テムの全てのプログラムセグメントを静的に連係させ、
全ての記号参照を記号定義に分解する。この方式によれ
ば、通常、全ての記号定義のエントリから構成される記
号テーブルを含むファイルは、その情報に対するアクセ
スを必要とするどのようなユーティリティまたはアプリ
ケーションプログラムに対してもディスクで利用でき
る。
【0003】事前に作成された単一実行可能画像オペレ
ーティングシステムは、多くの場合、目的に合わせるこ
とは可能であるが、通常は特殊な知識や技術が必要とさ
れる。その結果、大半のコンピュータシステムは総称バ
ージョンに含まれている数多くの機能を使用しないにも
かかわらず、そのような総称バージョンを単純に利用し
ており、そのためにメモリ資源を浪費していることが経
験によりわかっている。
【0004】今日、いくつかのUNIXシステムの核を
含むオペレーティングシステムの中には、動的に構成さ
れているものがある。完全動的再構成可能オペレーティ
ングシステムの下では、オペレーティングシステムが提
供する機能を根実行可能セグメントと、複数の再配置可
能セグメントとに分散させる。根実行可能セグメント
は、システムのセットアップ中にロードされ、制御を受
ける。再配置可能セグメントに配分された機能は必要に
応じて動的にロード、連係される。メモリに制約がある
場合には、近い時点で使用されていなかったいくつかの
動的ロード、連係済再配置可能セグメントにさらに重ね
書きをしても良い。その結果、いずれかの特定の時点で
利用可能となっている記号定義は動的に変化することに
なる。そこで、ユーティリティ及びアプリケーションプ
ログラムによりアクセスされる記号定義情報が現在のも
のであり、そこなわれていないことを保証するために、
新たな方式を使用しなければならない。
【0005】以下に説明する通り、本発明は、動的に構
成可能なオペレーティングシステム、特に、UNIXシ
ステムの動的に構成可能な核において記号定義に対して
アクセスを実行する方法及び装置を提供する。核を含む
UNIXシステムの詳細については、M.J.Bach
の「TheDesign of the UNIX O
perating System」(Prentice
Hall,1986年刊)を参照。
【0006】
【発明が解決しようとする課題】動的に構成可能なオペ
レーティングシステムにおいて記号定義に対してアクセ
スを実行する方法及び装置を提供する。その方法と装置
は、UNIXシステムの核を含むオペレーティングシス
テムに特に適用される。
【0007】
【課題を解決するための手段】本発明によれば、コンピ
ュータシステムのオペレーティングシステムにオペレー
ティングシステム記号定義画像ファイルビルダを設け
る。ユーティリティ又はアプリケーションプログラムが
記号定義画像ファイルをオープンすることを要求し、最
新のシステム定義画像ファイルが存在していないときに
は、必ず、オペレーティングシステム中の現在記号定義
を含む記号定義画像ファイルを作成するために、ビルダ
を呼び出すので、ユーティリティ/アプリケーションプ
ログラムに提供される記号定義画像ファイルに含まれて
いる記号定義は確実に現在情報であることが保証され
る。最後に参照したユーティリティ/アプリケーション
プログラムにより記号定義画像ファイルがクローズされ
るたびに、ビルダはその記号表示ファイルを削除し、シ
ステム定義画像ファイルは最新ファイルではなくなる。
【0008】記号定義画像ファイルを作成する前に、ビ
ルダはオペレーティングシステムのロード再配置可能セ
グメントの自動アンロードを禁止するので、記号定義画
像ファイルに含まれている現在記号定義はそこなわれな
いように保護されるのである。ビルダは、どのユーティ
リティ/アプリケーションプログラムもシステム定義画
像ファイルを参照していないと判定したときには自動ア
ンロードを再起動する。ユーティリティ/アプリケーシ
ョンプログラムがシステム定義画像ファイルをクローズ
したとき、ビルダはその判定を下す。
【0009】現時点で好ましい実施例では、記号定義画
像ファイルは組合わせ記号テーブルと、組合わせストリ
ングテーブルとを含む。ビルダは、オペレーティングシ
ステムの根実行可能セグメントと、現在ロードされてい
るそれぞれの再配置可能セグメントとから記号定義エン
トリ及びストリングエントリを取り出し、それらを対応
するテーブルに併合することにより、組合わせ記号テー
ブルと、組合わせストリングテーブルとを作成する。本
発明の目的、特徴及び利点は、図面を参照しながら、以
下の本発明の好ましい実施例の詳細な説明を読むことに
より明白になるであろう。
【0010】〔表記法及び用語〕以下の詳細な説明の大
半はコンピュータにおいて実行されるプログラム手続き
によって提示される。そのような手続きによる説明や表
示は、当業者がその作業の内容を他の当業者に最も有効
に伝達するために使用する手段である。ここでは、ま
た、一般的にも、手続きは所望の結果に至る首尾一貫し
たステップのシーケンスであると考えている。それらの
ステップは物理的量の物理的操作を要求するステップで
ある。通常、それらの量は記憶、転送、組合わせ、比較
及びその他の方法による操作が可能な電気信号又は磁気
信号の形態をとるが、必ずそうであるとは限らない。時
によっては、主に一般に使用されている用語であるとい
う理由により、それらの信号をビット、値、要素、記
号、オブジェクト、文字、項、数などと呼ぶと好都合で
あることがわかる。ただし、そのような用語及びそれに
類する用語は、全て、適切な物理的量と関連させるべき
ものであり、単にそれらの量に便宜上付されたラベルに
すぎないということを忘れてはならない。
【0011】さらに、実行される操作を、一般にはオペ
レータが実行する知的動作と関連している加算又は比較
などの用語で呼ぶことが多いが、本発明の一部を成す、
ここで説明する動作のどれをとっても、そのようなオペ
レータの能力は不要であり、多くの場合に望ましくな
い。動作は機械の動作である。本発明の動作を実行する
のに有用な機械には、汎用デジタルコンピュータ又は他
の同様の装置がある。いずれの場合にも、コンピュータ
を動作させるときの方法動作と、計算自体の方法との明
確な区別に留意すべきである。本発明は、電気的又は物
理的信号を処理して他の望ましい物理的信号を発生する
時のコンピュータ動作のための方法過程に関する。
【0012】本発明は、それらの動作を実行する装置に
も関する。この装置は要求されている目的に合わせて特
別に構成されても良く、あるいは、汎用コンピュータを
コンピュータに記憶させたコンピュータプログラムによ
り選択的に起動又は再構成しても良い。ここで提示する
手続きは何らかの特定のコンピュータ又は他の特定の装
置に専ら関連しているものではない。すなわち、様々な
汎用機械を本発明の教示に従って書込んだ手続きと共に
使用できるであろうし、あるいは、要求される方法ステ
ップを実行するためには、より特殊な装置を構成するほ
うが好都合であるとわかるかもしれない。そのような多
様な機械について必要とされる構造は以下の説明から明
らかになるであろう。
【0013】
【実施例】動的に構成されたオペレーティングシステム
の現在記号定義に対してアクセスを実行する方法及び装
置を開示する。その方法と装置はUNIXシステムの核
を含めたオペレーティングシステムを特定の適用用途と
している。以下の説明中、本発明を完全に理解させるた
めに、便宜上、特定の数、材料及び構成を挙げるが、そ
れらの特定の詳細な事項がなくとも本発明を実施しうる
ことは当業者には明白であろう。また、場合によって
は、本発明を無用にわかりにくくしないために、周知の
システムを概略図又はブロック線図の形で示すこともあ
る。
【0014】そこで図1を参照すると、本発明の教示を
取り入れたコンピュータシステムが示されている。図示
する通り、コンピュータ10は3つの主要な構成要素1
2,14及び16を含む。それらの構成要素のうち第1
のものは、適切な構造形態の情報をコンピュータ10の
他の部分との合いだで通信するために使用される入出力
(I/O)回路12である。加えて、コンピュータ10
はI/O回路12に結合する中央処理装置(CPU)1
4と、メモリ16とを含む。I/O回路12と、CPU
14と、メモリ16とは多くの汎用コンピュータで通常
見られる構成要素である。
【0015】I/O回路12に結合する磁気ディスク2
0は、コンピュータ10にさらに大きな記憶能力を与え
る。磁気テープドライブのような別のデータ記憶装置
や、別のネットワークにも結合されるネットワークをコ
ンピュータ10に結合しても良いことは理解されるであ
ろう。周知のように、磁気ディスク20は、CPU14
によりアクセス、実行することが可能な他のコンピュー
タプログラム、文字、ルーチンなどを記憶していても良
い。
【0016】図示するようにI/O回路12に結合して
いるラスタ表示モニタ24は、本発明の教示に従ってC
PU14により生成された画像を表示するために使用さ
れる。このモニタ24としては、周知の種類のラスタ表
示装置のいずれかを利用すれば良い。図示するようにI
/O回路12に結合するキーボード18は、周知の通
り、コンピュータ10にデータと指令を入力するために
使用される。コンピュータ10にはI/O回路12を介
してカーソル制御装置28も結合している。このカーソ
ル制御装置28としては、周知の種類のカーソル制御装
置のいずれかを利用すれば良い。
【0017】事実、図示されているいくつかのハードウ
ェア素子は広い範囲にわたるコンピュータシステムを代
表して表わそうとするものである。特定の例としては、
カリフォルニア州マウンテンビューのSun Micr
osystems,Inc.が製造しているコンピュー
タシステムがある。言うまでもなく、同様の能力を有す
る他のコンピュータシステムを以下に説明する機能を実
行するように適合させることは平易であろう。
【0018】次に図2を参照すると、図1に示したコン
ピュータシステムのソフトウェア素子の論理図を表わす
ブロック線図が示されている。図示するように、オペレ
ーティングシステム34はファイルサブシステム36
と、プロセス制御サブシステム38とを含む。ファイル
サブシステム36はファイルを管理し、ファイルスペー
スを割当て、ファイルスペースを処理し、ファイルに対
するアクセスを制御し、ファイルからデータを検索する
働きをする。プロセス制御サブシステムはプロセス同
期、プロセス間通信、メモリ管理及びプロセススケジュ
ーリングを行う。
【0019】現時点で好ましい形態では、オペレーティ
ングシステムは動的に構成されている。その動的構成の
オペレーティングシステムは、広い範囲にわたる動的構
成オペレーティングシステムを代表するものである。以
下に、図3を参照してオペレーティングシステムの機能
とプログラムセグメント構造をさらに詳細に説明する。
ただし、オペレーティングシステムを事前組込み単一実
行可能画像として静的に構成しても良いことは理解され
るであろう。
【0020】図2には、アプリケーションの開発と実行
のためのプログラミング言語コンパイラ、ソフトウェア
ツール/ユーティリティ及びそのランタイムライブラリ
40も示されている。コンピュータシステムにおいて実
行するアプリケーション42は、ランタイムライブラリ
40とオペレーティングシステム34が提供する下位シ
ステムサービスを利用する。これらのソフトウェアウェ
ア素子は、多くの汎用コンピュータシステム及びほぼ全
ての専用コンピュータシステムで通常見られるものであ
る。
【0021】次に図3を参照すると、図2に示したオペ
レーティングシステムの機能とプログラムセグメント構
造の論理図を表わすブロック線図が示されている。動的
に構成可能なオペレーティングシステム34の機能は根
実行可能セグメント40と、複数の動的にロード、連係
される再配置可能セグメント42とに分散している。根
実行可能セグメント40は、システムのセットアップ中
にロードされ、制御を受ける。その他の再配置可能セグ
メントは、その機能が必要になったときに動的にロー
ド、連係される。メモリに制約がある場合には、近い時
点に機能を使用していなかった動的にロード、連係され
ている再配置可能セグメントのいくつかをアンロードし
ても良い(それらのセグメントに重ね書きしても良
い)。
【0022】根実行可能セグメント40が提供する機能
は再配置可能セグメントローダ44と、ランタイムリン
カ46とを含む。再配置可能セグメントローダ44は、
機能が必要になったときに再配置可能セグメントを動的
にロードするために使用される。ランタイムリンカ46
は、動的にロードされた再配置可能セグメントをオペレ
ーティングシステムの現在プロセス画像中に動的に連係
するために使用される。再配置可能セグメントが提供す
る機能は、ファイルオープンシステムサービス及びファ
イルクローズシステムサービスを提供するファイルサブ
システム48と、オペレーティングシステムの現在記号
定義から構成される記号定義ファイルを作成する記号定
義ビルダ90とを含む。ファイルオープンシステムサー
ビスはアクセス制御を含む。
【0023】再配置可能セグメントローダ44、ランタ
イムリンカ46及びファイルサブシステム48の機能と
基本的寄与は良く知られているので、ここでは詳細に説
明しない。記号定義ビルダ90と記号定義ファイルにつ
いては、以下に図6から図8を参照しながらさらに詳細
に説明する。以上説明した機能配分やプログラムセグメ
ント構造とは異なるが、それらと本質的には等価である
機能配分とプログラムセグメント構造をもつ動的に構成
可能なオペレーティングシステムと組合わせて本発明を
実施しても良いことは理解されるであろう。
【0024】そこで図4を参照すると、根実行可能セグ
メント及び再配置可能セグメントについて現時点で好ま
しい形態のファイルフォーマットを表わすブロック線図
が示されている。図示する通り、根実行可能セグメント
40はファイル見出し50と、プログラム見出しテーブ
ル52と、複数の静的に連係するセグメント54a〜5
* とを含む。ファイル見出し50はファイルの編成を
記述する。プログラム見出しテーブル52はプロセス画
像をいかにして作成するかを記述する。静的に連係する
それぞれのセグメント54a・・・又は54* は、以下
に説明する再配置セグメントにおけるセクションと同様
のセクションを1つ又は2つ以上含む。
【0025】また、再配置可能セグメント42は、図示
する通り、ファイル見出し58と、命令セクション60
と、データセクション62と、記号テーブルセクション
64と、ストリングテーブルセクション66と、セクシ
ョン見出しテーブル68とを含む。同様に、ファイル見
出し58はファイルの編成を記述する。命令セクション
60とデータセクション62はプログラムセグメントの
命令と、データとをそれぞれ含んでいる。記号テーブル
セクション64とストリングテーブルセクション66は
プログラムセグメントの記号定義を記述する。セクショ
ン見出しテーブル68は様々なセクションを指示するエ
ントリを提示する。
【0026】根実行可能セグメントと再配置可能セグメ
ントの様々な要素の詳細については、「UNIX Sy
stem V Release 4 Programm
er’s Guide:ANSI C and Pro
gramming Supporting Tool
s」(UNIX Press,1990年刊)の13−
1〜13−69ページを参照。同様に、以上説明したよ
うなファイルフォーマットとは異なるが、それらと本質
的には等価であるファイルフォーマットを有する根実行
可能セグメント及び再配置可能セグメントと組合わせて
本発明を実行しても良いことは理解されるであろう。
【0027】次に図5を参照すると、記号テーブルと、
ストリングテーブルの現時点で好ましい実施例を表わす
ブロック線図が示されている。図示するように、記号テ
ーブル64は複数の記号定義エントリ70を含む。各記
号定義エントリ70は名前索引フィールド72と、値フ
ィールド73と、サイズフィールド74と、型フィール
ド76と、バインド属性フィールド78と、セクション
索引フィールド80とを含む。名前索引フィールド72
は、記号名の第1番目の文字が位置しているストリング
テーブルへのオフセットを指示する名前索引を含む。値
フィールド73は、記号が参照するメモリオブジェクト
のアドレスを表わす値を含む。サイズフィールド74は
記号サイズを記述する値を含む。型フィールド76は記
号型を識別する標識を含む。バインド属性フィールド7
8は複数の記号バインド属性を含む。セクション索引フ
ィールド80は、記号が関係しているセクションを識別
するセクション見出しテーブル中のセクション見出しテ
ーブルエントリを指示する値を含む。
【0028】また、複数のデータバイト82を含むスト
リングテーブル66も示されている。それぞれのデータ
バイトは、ストリングを境界指定する空白文字を含む文
字を包含している。図示する通り、データバイトはスト
リングテーブル66へのオフセットとしてアクセスされ
る。たとえば、記号「CAT.」の第1の文字はストリ
ングテーブル66に対し「6」のオフセットをもつデー
タバイトの中に位置している。記号テーブルとストリン
グテーブルの詳細については、同じように、「UNIX
System V Release 4 Progr
ammer’s Guide:ANSI C and
Programming Supporting To
ols」(UNIX Press,1990年刊)の1
3−1〜13−69ページを参照。先と同様に、以上説
明したような記号テーブル及びストリングテーブルとは
異なるが、それらと本質的には等価であるテーブルを有
する根実行可能セグメント及び再配置可能セグメントと
組合わせて本発明を実施しても良いことは理解されるで
あろう。
【0029】そこで図6を参照すると、記号定義画像フ
ァイルビルダと記号定義画像ファイルの現時点で好まし
い形態を表わすブロック線図が示されている。図示する
通り、記号定義画像ファイルビルダ90は制御ルーチン
91と、作成ルーチン92と、削除ルーチン94と、禁
止ルーチン96と、起動ルーチン98とを含む。制御ル
ーチン91はその他のルーチン92〜98の呼び出しを
制御するために使用される。作成ルーチン92と削除ル
ーチン94は記号定義画像ファイル100を作成すると
きと、削除するときに使用される。禁止ルーチン96と
起動ルーチン98は自動再配置可能セグメントアンロー
ドを禁止するときと、再起動するときに使用される。こ
れらのルーチンの動作の流れについては以下にさらに詳
細に説明する。
【0030】記号定義画像ファイルビルダ90が作成す
る記号定義画像ファイル100も示されている。記号定
義画像ファイル100はファイル見出し102と、組合
わせ記号テーブルセクション104と、組合わせストリ
ングテーブルセクション106と、セクション見出し1
08とを含む。オペレーティングシステムの根実行可能
セグメントや、再配置可能セグメントのファイルフォー
マットと同様に、ファイル見出し102は記号定義画像
ファイルの編成を記述する。組合わせ記号テーブルセク
ション104と組合わせストリングテーブルセクション
106はオペレーティングシステムの全ての現在記号定
義と、全ての現在ストリングとをそれぞれ含んでいる。
組合わせ記号テーブル104及び組合わせストリングテ
ーブル106は先に説明した個々の記号テーブル及びス
トリングテーブルと同一の編成を有する。同様に、セク
ション見出しテーブル108は組合わせ記号テーブル1
04と、組合わせストリングテーブル106とを指示す
る同様のセクションエントリを含む。
【0031】次に図7及び図8を参照すると、現時点で
好ましい形態による記号定義画像ファイルのルーチンの
動作流れを表わす2つのブロック線図が示されている。
図7に示す通り、制御ルーチンは、ブロック112で、
まず、ユーティリティ又はアプリケーションプログラム
からの要求がオープン要求であるか又はクローズ要求で
あるかを判定する。要求が記号定義画像ファイルをオー
プンする要求であれば(ブランチ112a)、制御ルー
チンは、ブロック114で、メモリに現在記憶されてい
る再配置可能セグメントの自動アンロードを禁止するた
めの禁止機能を呼び出し、それにより、記号定義画像フ
ァイルに含まれようとしている記号定義がそこなわれる
のを阻止する。
【0032】次に、ブロック115で、制御ルーチンは
最新の記号定義画像ファイルが存在するか否かを判定す
る。最新の記号定義画像ファイルが存在しない場合(ブ
ランチ115b)、制御ルーチンは、ブロック116
で、記号定義画像ファイルを作成するための作成機能を
呼び出す。最新の記号定義画像ファイルを設定した後、
ブロック117で、制御ルーチンはこの記号定義画像フ
ァイルを要求側のユーティリティ/アプリケーションプ
ログラムに参照させる。現時点で好ましい形態では、制
御ルーチンは、さらに、記号定義画像ファイルごとの内
部参照カウントを増分することにより、記号定義画像フ
ァイルを現在参照しているユーティリティ/アプリケー
ションプログラムの数を追跡する。
【0033】要求が記号定義画像ファイルをクローズす
る要求である場合(ブランチ112b)には、制御ルー
チンは、ブロック118で、要求側のユーティリティ/
アプリケーションプログラムがその記号定義画像ファイ
ルに対して実行している参照を破壊する。加えて、ブロ
ック119で、制御ルーチンは記号定義画像ファイルの
参照カウントが0であるか否かを判定する。参照カウン
トが0でなければ(ブランチ119b)、制御ルーチン
はそれ以上の動作を実行しない。
【0034】参照カウントが0であれば(ブランチ11
9a)、制御ルーチンは記号定義画像ファイルが依然と
して最新のものであるか否かをブロック120でさらに
判定する。記号定義画像ファイルが最新のファイルであ
れば(ブランチ120a)、制御ルーチンはそれ以上の
動作を実行せず、最新のファイルではない場合(ブラン
チ120b)には、制御ルーチンは、ブロック122
で、記号定義画像ファイルを削除するための削除機能を
呼び出す。
【0035】記号定義画像ファイルを削除した後、制御
ルーチンは、ブロック123で、記号定義画像ファイル
への参照が残っているか否かをさらに判定する。参照が
残っているならば(ブランチ123a)、制御ルーチン
はそれ以上の動作を実行せず、残っていない場合(ブラ
ンチ123b)には、制御ルーチンは、ブロック124
で、メモリに現在記憶されている再配置可能セグメント
の自動アンロードを再起動するための起動機能を呼び出
す。
【0036】図8に示すように、作成機能を呼び出す
と、この機能は、ブロック132〜136で、根実行可
能プログラムセグメントを捜し出し、そのプログラムセ
グメントの記号テーブルから全ての記号エントリを検索
し、全ての記号テーブルエントリが検索され、併合され
るまで、それらのエントリを組合わせ記号テーブルに一
度に1つずつ併合する。その後、同様に、作成機能は、
ブロック138〜142で、根実行可能プログラムセグ
メントのストリングテーブルから全てのストリングエン
トリを検索し、全てのストリングテーブルエントリが検
索され、併合されるまで、それらのエントリを組合わせ
ストリングテーブルに一度に1つずつ併合する。次に、
メモリに現在ロードされているプログラムセグメントご
とにブロック132〜142を繰り返す。
【0037】本発明を現時点で好ましい一実施例に関し
て説明したが、本発明が以上説明した実施例に限定され
ないことは当業者には認められるであろう。特許請求の
範囲の趣旨の中で本発明の方法及び装置を変形及び変更
を伴って実施することができる。従って、以上の説明は
本発明を限定するのではなく、単なる例であると考える
べきである。
【図面の簡単な説明】
【図1】本発明の教示を組込んだコンピュータシステム
のハードウェア素子を示す物理図。
【図2】図1に示すコンピュータシステムのソフトウェ
ア素子を示す論理図。
【図3】図2に示すオペレーティングシステムの機能及
びプログラム構造を示す論理図。
【図4】図3に示すオペレーティングシステムの根実行
可能セグメント及び再配置可能セグメントのファイルフ
ォーマットを示す図。
【図5】図4に示すプログラムセグメントにおける記号
テーブル及びストリングテーブルを示す図。
【図6】本発明のシステム定義画像ファイルビルダ及び
記号定義画像ファイルの現時点で好ましい形態を示す
図。
【図7】本発明の現時点で好ましい形態によるシステム
定義ビルダの機能の動作流れを示す図。
【図8】本発明の現時点で好ましい形態によるシステム
定義ビルダの機能の動作流れを示す図。
【符号の説明】
10 コンピュータシステム 14 CPU 16 メモリ 34 オペレーティングシステム 36 ファイルサブシステム 38 プロセス制御サブシステム 40 根実行可能セグメント 42 再配置可能セグメント 90 記号定義画像ファイルビルダ 100 記号定義画像ファイル
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ウィリアム・シャノン アメリカ合衆国 94022 カリフォルニア 州・ロス アルトス・トリアノン ウェ イ・261 (72)発明者 ジョセフ・イー・プロヴィノ アメリカ合衆国 02138 マサチューセッ ツ州・ケンブリッジ・ウェンデル ストリ ート・29

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 中央処理装置(CPU)を具備し、前記
    CPUはそれに結合するメモリにロードされている動的
    に構成可能なオペレーティングシステムを実行するコン
    ピュータで前記オペレーティングシステムの現在記号定
    義に対してアクセスを実行する方法において、 前記オペレーティングシステムの現在記号定義を含むフ
    ァイルをオープンさせるためのオープン要求をリクエス
    タから受信する過程と;前記動的に構成可能なオペレー
    ティングシステムが1つの根実行可能セグメントと、必
    要に応じてロード、連係される複数の再配置可能セグメ
    ントから構成されており、前記動的にロード、連係され
    る再配置可能セグメントは使用されないときには自動的
    にアンロードされるものであって、前記メモリに現在ロ
    ードされている再配置可能セグメントの自動アンロード
    を禁止する過程と;前記ファイルが存在するか否かを判
    定し、前記ファイルが存在していない場合には、前記根
    実行可能セグメントと、メモリに現在ロードされている
    前記再配置可能セグメントとに含まれる記号定義に基づ
    いて前記ファイルを作成する過程と;前記ファイルを前
    記リクエスタに対し利用可能とする過程とから成る方
    法。
  2. 【請求項2】 中央処理装置(CPU)を具備し、前記
    CPUはそれに結合するメモリにロードされている動的
    に構成可能なオペレーティングシステムを実行するコン
    ピュータシステムの前記オペレーティングシステムの現
    在記号定義に対してアクセスを実行する装置において、 前記CPUに結合し、前記オペレーティングシステムの
    現在記号定義を含むファイルをオープンさせるためのオ
    ープン要求をリクエスタから受信し且つ前記ファイルが
    存在するか否かを判定する制御手段と;前記CPUと、
    前記制御手段とに結合し、前記動的に構成可能なオペレ
    ーティングシステムは根実行可能セグメントと、必要に
    応じてロード、連係される複数の再配置可能セグメント
    とから構成され、前記動的にロード、連係される再配置
    可能セグメントは使用されないときには自動的にアンロ
    ードされるようになっており、前記メモリに現在ロード
    されている再配置可能セグメントの自動アンロードを禁
    止する禁止手段と;前記CPUと、前記制御手段とに結
    合し、前記ファイルが存在しない場合には、前記根実行
    可能セグメントと、メモリに現在ロードされている前記
    再配置可能セグメントとに含まれる記号定義に基づいて
    前記ファイルを作成するファイル作成手段と;前記CP
    Uと、前記制御手段とに結合し、前記ファイルを前記リ
    クエスタに対し利用可能とするファイルアクセス制御手
    段とを具備する装置。
  3. 【請求項3】 中央処理装置(CPU)と;前記CPU
    に結合するメモリと;ファイルをオープン、クローズす
    るファイルサブシステムサービスと、オペレーティング
    システムの現在記号定義を含むファイルを動的に作成す
    るオペレーティングシステム記号定義画像ファイルビル
    ダとを提供するファイルサブシステムを含み、動的に構
    成可能であり、前記メモリにロードされて、前記CPU
    により実行されるオペレーティングシステムとを具備す
    るコンピュータシステム。
JP5059320A 1992-02-27 1993-02-25 アクセスを実行する方法及び装置並びにコンピュータシステム Pending JPH0644085A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US843,938 1992-02-27
US07/843,938 US5303392A (en) 1992-02-27 1992-02-27 Accessing current symbol definitions in a dynamically configurable operating system

Publications (1)

Publication Number Publication Date
JPH0644085A true JPH0644085A (ja) 1994-02-18

Family

ID=25291371

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5059320A Pending JPH0644085A (ja) 1992-02-27 1993-02-25 アクセスを実行する方法及び装置並びにコンピュータシステム

Country Status (2)

Country Link
US (1) US5303392A (ja)
JP (1) JPH0644085A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8402410B2 (en) 2007-08-27 2013-03-19 Samsung Electronics Co., Ltd. Method and apparatus for managing configuration memory of reconfigurable hardware

Families Citing this family (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0573190B1 (en) * 1992-06-03 2001-09-05 Sun Microsystems, Inc. Dynamically configurable kernel
CA2102883A1 (en) * 1993-02-26 1994-08-27 James W. Arendt System and method for lazy loading of shared libraries
US5664195A (en) * 1993-04-07 1997-09-02 Sequoia Systems, Inc. Method and apparatus for dynamic installation of a driver on a computer system
US5771379A (en) * 1995-11-01 1998-06-23 International Business Machines Corporation File system and method for file system object customization which automatically invokes procedures in response to accessing an inode
EP0825506B1 (en) 1996-08-20 2013-03-06 Invensys Systems, Inc. Methods and apparatus for remote process control
US6687761B1 (en) 1997-02-20 2004-02-03 Invensys Systems, Inc. Process control methods and apparatus with distributed object management
US6382846B1 (en) * 1998-01-09 2002-05-07 Industial Technology Research Institute Intermediate instruction execution processor which resolves symbolic references without modifying intermediate instruction code
US6691183B1 (en) 1998-05-20 2004-02-10 Invensys Systems, Inc. Second transfer logic causing a first transfer logic to check a data ready bit prior to each of multibit transfer of a continous transfer operation
US7089530B1 (en) * 1999-05-17 2006-08-08 Invensys Systems, Inc. Process control configuration system with connection validation and configuration
US6754885B1 (en) 1999-05-17 2004-06-22 Invensys Systems, Inc. Methods and apparatus for controlling object appearance in a process control configuration system
AU5025600A (en) 1999-05-17 2000-12-05 Foxboro Company, The Process control configuration system with parameterized objects
US7272815B1 (en) 1999-05-17 2007-09-18 Invensys Systems, Inc. Methods and apparatus for control configuration with versioning, security, composite blocks, edit selection, object swapping, formulaic values and other aspects
US7096465B1 (en) 1999-05-17 2006-08-22 Invensys Systems, Inc. Process control configuration system with parameterized objects
US6678745B1 (en) * 1999-06-01 2004-01-13 Bruce Hodge Dynamic object synthesis with automatic late binding
US6788980B1 (en) 1999-06-11 2004-09-07 Invensys Systems, Inc. Methods and apparatus for control using control devices that provide a virtual machine environment and that communicate via an IP network
US6501995B1 (en) 1999-06-30 2002-12-31 The Foxboro Company Process control system and method with improved distribution, installation and validation of components
AU6615600A (en) 1999-07-29 2001-02-19 Foxboro Company, The Methods and apparatus for object-based process control
US6473660B1 (en) 1999-12-03 2002-10-29 The Foxboro Company Process control system and method with automatic fault avoidance
US6542167B1 (en) * 2000-01-28 2003-04-01 Wind River Systems, Inc. System and method for flexible software linking
US6779128B1 (en) 2000-02-18 2004-08-17 Invensys Systems, Inc. Fault-tolerant data transfer
US20010042069A1 (en) * 2000-02-29 2001-11-15 Petrov Peter D. Method and apparatus for building a memory image
US20030145127A1 (en) * 2002-01-03 2003-07-31 Unice W. Kyle Method and computer program product for providing a device driver
AU2003214975A1 (en) * 2002-02-01 2003-09-02 John Fairweather System and method for navigating data
EP1502218A4 (en) * 2002-04-15 2005-08-17 Invensys Sys Inc METHOD AND DEVICES FOR A PROCESS-, FACTORY-, ENVIRONMENT-, ENVIRONMENT- AND COMPUTER AIDED MANUFACTURING-BASED OR OTHERWISE CONTROL SYSTEM WITH REAL-TIME DATA DISTRIBUTION
US7761923B2 (en) 2004-03-01 2010-07-20 Invensys Systems, Inc. Process control methods and apparatus for intrusion detection, protection and network hardening
WO2007123753A2 (en) * 2006-03-30 2007-11-01 Invensys Systems, Inc. Digital data processing apparatus and methods for improving plant performance
CN104407518B (zh) 2008-06-20 2017-05-31 因文西斯系统公司 对用于过程控制的实际和仿真设施进行交互的系统和方法
US8463964B2 (en) 2009-05-29 2013-06-11 Invensys Systems, Inc. Methods and apparatus for control configuration with enhanced change-tracking
US8127060B2 (en) 2009-05-29 2012-02-28 Invensys Systems, Inc Methods and apparatus for control configuration with control objects that are fieldbus protocol-aware
US10108406B2 (en) * 2016-10-24 2018-10-23 International Business Machines Corporation Linking optimized entry points for local-use-only function pointers
US10108407B2 (en) * 2016-10-24 2018-10-23 International Business Machines Corporation Loading optimized local entry points for local-use-only function pointers
US10169011B2 (en) * 2016-10-24 2019-01-01 International Business Machines Corporation Comparisons in function pointer localization
US10169016B2 (en) * 2016-10-24 2019-01-01 International Business Machines Corporation Executing optimized local entry points
US10108404B2 (en) 2016-10-24 2018-10-23 International Business Machines Corporation Compiling optimized entry points for local-use-only function pointers
US10872043B2 (en) * 2017-08-17 2020-12-22 Microchip Technology Incorporated Systems and methods for integrity checking of code or data in a mixed security system while preserving confidentiality

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4636940A (en) * 1983-03-31 1987-01-13 Hewlett-Packard Company Logic analyzer using source program or other user defined symbols in the trace specification and the trace listing

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8402410B2 (en) 2007-08-27 2013-03-19 Samsung Electronics Co., Ltd. Method and apparatus for managing configuration memory of reconfigurable hardware

Also Published As

Publication number Publication date
US5303392A (en) 1994-04-12

Similar Documents

Publication Publication Date Title
JPH0644085A (ja) アクセスを実行する方法及び装置並びにコンピュータシステム
US5291601A (en) Shared libraries implemented with linking program loader
US5339406A (en) Reconstructing symbol definitions of a dynamically configurable operating system defined at the time of a system crash
KR101997174B1 (ko) 업데이트된 에이전트의 핫 롤백
US5375241A (en) Method and system for dynamic-link library
US6272674B1 (en) Method and apparatus for loading a Java application program
JP5236367B2 (ja) 共用型ジャバjarファイル
US6460126B1 (en) Computer resource management system
US4587628A (en) Method and apparatus for dynamic invocation of utilities
US5835768A (en) Computer operating system providing means for formatting information in accordance with specified cultural preferences
US6323865B1 (en) Automatic font management within an operating system environment
US6529985B1 (en) Selective interception of system calls
US6601235B1 (en) Method and apparatus for dynamically deoptimizing compiled activations
US6823509B2 (en) Virtual machine with reinitialization
US20060095483A1 (en) Modified computer architecture with finalization of objects
US6314445B1 (en) Native function calling
JPH10283189A (ja) 内蔵実行可能アプリケーション及びコンピュータ読み取り可能な記憶媒体並びに内蔵実行可能アプリケーションの作成方法及びその作成システム
US7251808B2 (en) Graphical debugger with loadmap display manager and custom record display manager displaying user selected customized records from bound program objects
WO2005103927A1 (en) Modified computer architecture with finalization of objects
WO2002075531A1 (en) Method for loading and executing an application in an embedded environment
CN102203757B (zh) 用于冻结对象的类型描述符管理
JPH02114335A (ja) マルチ・プロセツシング方式
JPH07230386A (ja) データ処理装置及び制御ルーチン呼出し方法
US6901591B1 (en) Frameworks for invoking methods in virtual machines
US6530077B1 (en) Device and method for releasing an in-memory executable image from its dependence on a backing store