JPS63113739A - Overlay system for os - Google Patents

Overlay system for os

Info

Publication number
JPS63113739A
JPS63113739A JP25829486A JP25829486A JPS63113739A JP S63113739 A JPS63113739 A JP S63113739A JP 25829486 A JP25829486 A JP 25829486A JP 25829486 A JP25829486 A JP 25829486A JP S63113739 A JPS63113739 A JP S63113739A
Authority
JP
Japan
Prior art keywords
driver
input
area
output
register
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
JP25829486A
Other languages
Japanese (ja)
Inventor
Takao Maeda
多可雄 前田
Akiyoshi Miura
三浦 明義
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 Microcomputer System Ltd
Hitachi Ltd
Original Assignee
Hitachi Ltd
Hitachi Microcomputer Engineering 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, Hitachi Microcomputer Engineering Ltd filed Critical Hitachi Ltd
Priority to JP25829486A priority Critical patent/JPS63113739A/en
Publication of JPS63113739A publication Critical patent/JPS63113739A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To actuate an OS in a small executing area with use of a normal disk driver in a comparatively small-scale computer system containing no dynamic address conversion mechanism DAT, by acquiring a loadable area and starting it when an input/output request is detected against an unloaded driver. CONSTITUTION:When an input/output request is given to an unloaded driver, a driver control part 3 stores a processing request in an FIFO register 5. When a multiple interruption is eliminated, an overlay control pat 7 is started before the control is shifted to a scheduler. In an overlay control process a working area of the driver is controlled and the driver is loaded and unloaded. The register 5 is read after the control is shifted to the part 7 and a non-working drive is written to a disk as necessary to produce an idle area. Then said driver is loaded and then registered and started. An overlay is caused to the driver by making use of an idle time for input/output of the disk and therefore an OS can have its effective working in a small executing area.

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、仮想記憶制御機能(アドレス変換機能)を持
たない計算機システム好適な○Sのオーバレイ方式に関
する。
DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to an OS overlay method suitable for a computer system that does not have a virtual memory control function (address translation function).

〔従来の技術〕[Conventional technology]

計算機システムにおいて、計算機に実装されたメモリよ
り大きなプログラムを動作させる方式については、従来
からOS(オペレーティング・システム)関係の各種テ
キス1へで論じられている。
In computer systems, methods for operating programs larger than the memory installed in the computer have been discussed in various texts 1 related to OS (operating system).

例えば、岩波1講座、情報料学−16「オペレーティン
グ・システ11の機能と構成」の第6章にその記述があ
り、スワップ、オーバレイ、仮想記憶等の方式、原理等
が記されている。
For example, it is described in Chapter 6 of Iwanami 1 Lecture, Information Technology-16, ``Function and Configuration of Operating System 11,'' which describes the methods and principles of swap, overlay, virtual memory, etc.

〔発明が解決しようとする問題点〕[Problem that the invention seeks to solve]

然るに、上記のメモリ利用技術の多くは、メモリより大
きなアプリケーション(タスク)の動作方式に関するも
のが主であり、OSそのものの動作領域に関しては論じ
られていない。従来の仮想記憶方式をOSの動作に応用
することは容易であるが、この場合、動的アドレス変換
機4W(DAr; Dynamic Address 
Translator)が必要である。
However, many of the above-mentioned memory utilization techniques mainly relate to the operation method of applications (tasks) larger than the memory, and do not discuss the operation area of the OS itself. It is easy to apply the conventional virtual memory method to the operation of the OS, but in this case, the dynamic address converter 4W (DAr)
Translator) is required.

本発明はDATを備えていない比較的小型の計算機シス
テムにおいて、通常のディスク・ドライバを用いて、O
Sを小さい実行領域で動作させることにある。
The present invention uses an ordinary disk driver in a relatively small computer system not equipped with a DAT,
The objective is to operate S in a small execution area.

〔問題点を解決するための手段〕[Means for solving problems]

上記目的は、OSの1部である未ロードのドライバに対
する入出力要求を検出した時に、ロードし得る領域を獲
得し、起動をかけることにより達成される。本発明では
、他用途にも用いられるディスク・ドライバを用いてロ
ードするため、上記のタイミングでは、処理要求をシス
テムとして記憶しておき、ディスク・ドライバを使い得
るタイミングで当該ドライバのロード、起動を行なう。
The above object is achieved by acquiring a loadable area and activating the driver when an input/output request to an unloaded driver, which is part of the OS, is detected. In the present invention, since loading is performed using a disk driver that is also used for other purposes, the processing request is stored as a system at the above timing, and the driver is loaded and started at a timing when the disk driver can be used. Let's do it.

〔作用〕[Effect]

入出力要求が未ロードのドライバに対して発行されると
、ドライバ管理部では、処理要求をFIFO(Firs
t  I n First、 0ut)  レジスタに
記憶する。多重割込が解消されると、スケジューラへ移
る前に、オーバレイ管理部を起動する。オーバレイ管理
では、ドライバの動作領域の管理と、ドライバのロード
、アンロードを行なう。オーバレイ管理部に制御が移る
と、上記FIFOレジスタを読み込み、必要なら動作し
ていないドライバをディスクに書き出し、空き領域を作
り、当該ドライバをロードし、ドライバとしての登録、
起動処理を行なう。
When an input/output request is issued to an unloaded driver, the driver management unit stores the processing request in a FIFO (FIFO).
t I n First, 0ut) Store in register. When multiple interrupts are resolved, the overlay management section is activated before moving to the scheduler. Overlay management involves managing the driver's operating area and loading and unloading the driver. When control is transferred to the overlay management section, it reads the above FIFO register, writes out non-operating drivers to disk if necessary, creates free space, loads the driver, registers it as a driver,
Perform startup processing.

〔実施例〕〔Example〕

以下、本発明の実施例を図面を参照して説明する。 Embodiments of the present invention will be described below with reference to the drawings.

第1図は、本発明を実現するためのソフトウェアの全体
構成を示す。本システムにおいて、ドライバ起動要求と
しては、入出力要求5VC2を通して行なわれるAP 
(Application Progrom)■からの
要求と、入出力ドライバ4からの直接の起動要求とがあ
る。ドライバ管理部3は、ドライバの起動処理部と終了
処理部とからなっている。
FIG. 1 shows the overall configuration of software for realizing the present invention. In this system, the driver activation request is made through the input/output request 5VC2.
There are requests from (Application Program) (1) and direct activation requests from the input/output driver 4. The driver management section 3 includes a driver startup processing section and a driver termination processing section.

5は、未ロードの入出力ドライバに対して発行された入
出力処理要求を記憶するためのFIFOレジスタ、6は
、オーバレイ管理部7が、未ロードのドライバをロード
しようとして失敗した場合に、FIFOレジスタ5から
読み出した入出力要求を待機させるためのFIFOレジ
スタである。オーバレイ管理部7は、レジスタ5から入
出力要求を読み出し、対応する入出力ドライバをディス
ク8からロードし、起動をかける。ロード失敗時には、
その入出力要求をレジスタ6に記憶させる。
5 is a FIFO register for storing input/output processing requests issued to unloaded input/output drivers; 6 is a FIFO register for storing input/output processing requests issued to unloaded input/output drivers; This is a FIFO register for waiting an input/output request read from register 5. The overlay management unit 7 reads the input/output request from the register 5, loads the corresponding input/output driver from the disk 8, and activates it. When loading fails,
The input/output request is stored in the register 6.

次に、処理の流れについて説明する。Next, the flow of processing will be explained.

ドライバ管理部3は、ドライバ起動要求がなされると、
通常のビジー・レディ処理を行ない、ドライバ4に制御
を移す直前に、対応するドライバがロードされているか
否かを判定し、未ロードの場合には起動要求に関する情
報をレジスタ5に記憶させて処理を終える。なお、既ロ
ード/未ロードは5後述するように、ドライバ・アドレ
スの登録、未登録により判定する。ドライバ管理部の処
理が終わると、そのコンチクストが多重割込か否かが判
定され、多重割込が解消されると、オーバレイ管理部7
が起動される。オーバレイ管理部7では、入出力要求を
記憶したレジスタ5より要求内容を読み取り、ドライバ
の動作領域内で対応するドライバをローディングするこ
とが可能な空き領域を探索しローディングする。探索に
失敗した場合は、レジスタ5から読み出した内容を待機
レジスタ6に記憶させる。ドライバ4の処理が終了する
と、ドライバ管理部3へ終了通知が送られ、ドライバ管
理部3で終了イベントの送信、タスクの再開等の終了処
理が行なわれる。この時点で。
When a driver activation request is made, the driver management unit 3
Performs normal busy/ready processing and immediately before transferring control to driver 4, determines whether the corresponding driver is loaded or not, and if not loaded, stores information regarding the startup request in register 5 and processes. finish. It should be noted that loaded/unloaded is determined based on whether the driver address is registered or not, as will be described later in 5. When the process of the driver management unit is finished, it is determined whether the continuation is a multiple interrupt or not, and when the multiple interrupt is resolved, the overlay management unit 7
is started. The overlay management unit 7 reads the request content from the register 5 that stores the input/output request, searches for an empty area within the driver's operation area where the corresponding driver can be loaded, and loads the corresponding driver. If the search fails, the contents read from the register 5 are stored in the standby register 6. When the processing of the driver 4 is completed, a completion notification is sent to the driver management unit 3, and the driver management unit 3 performs termination processing such as sending an end event and restarting the task. at this point.

終了したドライバはメモリ上に留める必要がなくなるた
め、待機レジスタ6に記憶されている入出力要求が入出
力要求レジスタ5へ移され、次にオーバレイ管理部7に
制御が移ったタイミングで、実行領域の探索及びローデ
ィング処理のりトライが行なわれる。
Since there is no need to keep the completed driver in memory, the input/output request stored in the standby register 6 is transferred to the input/output request register 5, and then the execution area is transferred to the overlay management unit 7. A search and loading process is attempted.

次に、オーバレイ管理部の動作を第2図〜第3図により
説明する。
Next, the operation of the overlay management section will be explained with reference to FIGS. 2 and 3.

オーバレイをするためのエリアは、ドライバ毎に第2図
に示すような情報を持つ管理テーブル21を用いて管理
される。
The area for overlaying is managed using a management table 21 having information as shown in FIG. 2 for each driver.

第3図は、オーバレイ管理部7の制御手順を示すフロー
チャー1−であり、まず、ステップ31で、オーバレイ
のためのディスク・アクセスの有無を判定する。この場
合、例えば、ディスク・アクセス要求時に特定番地のフ
ラグをONにし、終了時にOFFにすれば、その番地の
0N10FFの判定でディスク・アクセスの有無を知る
ことができる。ディスク・アクセスがあればリターンし
、なければ次のステップ32に進んで、入出力要求レジ
スタ5を読み、どの入出力ドライバへ要求があったかを
判定する。これにより、第2図の管理テーブルを得るこ
とができる。次に、上記テーブル」二に定義されたドラ
イバのサイズに応じて、メモリ領域を獲得する(ステッ
プ33)。獲得に成功した場合には、管理テーブル(第
2図)にあるデータに基づいて、ディスクからプログラ
ムをロードしくステップ34)、管理テーブルのスター
ト・アドレスにアドレスを登録する(ステップ35)。
FIG. 3 is a flowchart 1- showing the control procedure of the overlay management unit 7. First, in step 31, it is determined whether there is a disk access for overlay. In this case, for example, if a flag at a specific address is turned ON when a disk access request is made and turned OFF when the request is completed, it is possible to know whether or not a disk access is being made by determining 0N10FF at that address. If there is a disk access, the process returns; if not, the process proceeds to the next step 32, reads the input/output request register 5, and determines which input/output driver the request was made to. As a result, the management table shown in FIG. 2 can be obtained. Next, a memory area is acquired according to the size of the driver defined in the above table 2 (step 33). If the acquisition is successful, the program is loaded from the disk based on the data in the management table (FIG. 2) (step 34), and the address is registered in the start address of the management table (step 35).

獲得できなかった場合には、他のドライバに対応する管
理テーブルを読み、ステータスがレディのもの(入出力
要求がないもの)について、管理テーブルのデータに従
って、プログラムを主記憶からディスクへ書き出しくス
テップ36)、¥I理子テーブル上スタート・アドレス
に「NULLJを埋め込むことにより登録抹消しくステ
ップ37)、領域を開放させ、再び、獲得操作を行なう
。レディ状態のドライバを全てディスクへ書き出しても
ロード不可能な場合には、入出力要求の内容を待fiF
IFoレジスタへ登録し処理を終える。
If the acquisition is not possible, read the management table corresponding to the other driver, and for those whose status is ready (no input/output request), write the program from the main memory to the disk according to the data in the management table. 36), Unregister by embedding "NULLJ" in the start address on the \I Riko table Step 37), release the area and perform the acquisition operation again. If possible, wait for the contents of the I/O request.
Register in the IFo register and complete the process.

次に、本発明の他の実施例を第1図、第4図。Next, other embodiments of the present invention are shown in FIGS. 1 and 4.

第5図により説明する。This will be explained with reference to FIG.

この実施例は、処理の全体的な流れは第1の実施例と変
らない。但し、各ドライバの管理テーブルを第4図のよ
うに拡張し、対応するドライバが高速に処理をしなけれ
ばならない時には「○NJ。
In this embodiment, the overall flow of processing is the same as in the first embodiment. However, if the management table for each driver is expanded as shown in Figure 4, and the corresponding driver has to process at high speed, "○NJ.

それ以外の時には「○FFJとなるよう制御する。At other times, control is performed so that ``○FFJ'' is achieved.

オーバレイ管理部7の流れを第5図に示す。処理内容は
基本的には第3図と同一であり、ドライバをディスクに
書き出す条件として、ステータスがレディであることに
加えて、ロック情報がOFFであることを確認するよう
にしている(ステップ51)。
The flow of the overlay management section 7 is shown in FIG. The processing content is basically the same as that shown in Fig. 3, and the conditions for writing the driver to the disk include confirming that the status is ready and that the lock information is OFF (step 51). ).

以上の実施例では、FIFOIジスタを2つ用いること
により、ロード失敗時(領域獲得失敗時)の効率化を図
っているが、FIFOIジスタを1つにした場合、レジ
スタ6への登録処理をレジスタ5への登録処理に置き換
え、ドライバの終了処理では何もしないようにすればよ
い。
In the above embodiment, two FIFOI registers are used to improve efficiency in the event of a load failure (area acquisition failure). However, if only one FIFOI register is used, the registration process to register 6 is 5, and do nothing in the driver termination process.

また1本発明において、メモリ管理方式を、例えばビン
1〜・マツプ管理の如く、管理領域を管理データとして
用いない方式にした場合、当該ドライバのローディング
後に、破壊されなかったドライバをそのまま再登録して
1次の入出力に高速に応答できるようにすることが可能
である。
In addition, in the present invention, when the memory management method is set to a method that does not use the management area as management data, such as bin 1 ~ map management, after loading the driver, the driver that has not been destroyed may be re-registered as is. It is possible to respond quickly to primary input/output by using

〔発明の効果〕〔Effect of the invention〕

本発明によれば、アドレスを仮想化せず、しかもディス
ク入出力の空き時間を用いてドライバをオーバレイさせ
ることにより、小さい実行領域でのOSの効率的な動作
が可能となる。
According to the present invention, by overlaying drivers using free disk input/output time without virtualizing addresses, it is possible to efficiently operate an OS in a small execution area.

【図面の簡単な説明】[Brief explanation of the drawing]

第1図は本発明を実施するためのシステム全体構成図、
第2図はドライバ管理テーブルの1実施例を示す図、第
3図はオーバレイ管理部の処理フローチャート、第4図
はドライバ管理テーブルの他の実施例を示す図、第5図
はドライバ管理部の他の実施例を示す処理フローチャー
トである。 3・・・ドライバ管理部、5・・・入出力要求を記憶す
るFIFOIジスタ、6・・・待機入出力要求を記憶す
るFIFOレジスタ、7・・・オーバレイ管理部、8・
・・ドライバを格納した2次記憶装置。
FIG. 1 is an overall configuration diagram of a system for implementing the present invention;
Fig. 2 is a diagram showing one embodiment of the driver management table, Fig. 3 is a processing flowchart of the overlay management section, Fig. 4 is a diagram showing another embodiment of the driver management table, and Fig. 5 is a diagram of the driver management section. It is a process flowchart which shows another Example. 3... Driver management unit, 5... FIFO I register for storing input/output requests, 6... FIFO register for storing standby input/output requests, 7... Overlay management unit, 8.
...A secondary storage device that stores drivers.

Claims (1)

【特許請求の範囲】[Claims] 1、電子計算機システムにおいて、入出力ドライバの動
作領域とそのコードを格納した2次記憶とを管理するオ
ーバレイ管理手段と、入出力要求を記憶するためのFI
FOレジスタを有し、入出力要求発生時に対応する入出
力ドライバが既ロードか否かを判定し、未ロードの場合
には上記FIFOレジスタにその旨を記憶させて当該入
出力に関する処理を終了させ、多重割込解消後、上記管
理部において上記FIFOレジスタを読み込み、当該入
出力ドライバをロードして動作させるようにしたことを
特徴とするOSのオーバレイ方式。
1. In a computer system, an overlay management means for managing the operation area of an input/output driver and a secondary storage storing its code, and an FI for storing input/output requests.
It has an FO register, and when an input/output request occurs, it determines whether the corresponding input/output driver is already loaded or not, and if it is not loaded, it stores that fact in the FIFO register and finishes the processing related to the input/output. . An OS overlay system, characterized in that after multiple interrupts are resolved, the FIFO register is read in the management section, and the input/output driver is loaded and operated.
JP25829486A 1986-10-31 1986-10-31 Overlay system for os Pending JPS63113739A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP25829486A JPS63113739A (en) 1986-10-31 1986-10-31 Overlay system for os

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP25829486A JPS63113739A (en) 1986-10-31 1986-10-31 Overlay system for os

Publications (1)

Publication Number Publication Date
JPS63113739A true JPS63113739A (en) 1988-05-18

Family

ID=17318259

Family Applications (1)

Application Number Title Priority Date Filing Date
JP25829486A Pending JPS63113739A (en) 1986-10-31 1986-10-31 Overlay system for os

Country Status (1)

Country Link
JP (1) JPS63113739A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9832592B2 (en) 2013-11-21 2017-11-28 Fujitsu Limited Radio communication device and radio communication method

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9832592B2 (en) 2013-11-21 2017-11-28 Fujitsu Limited Radio communication device and radio communication method

Similar Documents

Publication Publication Date Title
JP3253303B2 (en) Context switching apparatus and method
US5127098A (en) Method and apparatus for the context switching of devices
JP3546678B2 (en) Multi-OS configuration method
KR970067231A (en) How to Control Queuing in a CD-ROM Drive
JPH05216692A (en) Method and system for controlling program execution
EP1014264B1 (en) A system and method for facilitating safepoint synchronization in a multithreaded computer system
JP2004078322A (en) Task management system, program, recording medium, and control method
JP5131269B2 (en) Multi-processing system
JPS63113739A (en) Overlay system for os
US11385927B2 (en) Interrupt servicing in userspace
JP3163196B2 (en) Instruction interruption information storage control method in virtual storage control
JP2671160B2 (en) Exception handling method
JPH0519179B2 (en)
JP2535568B2 (en) Dynamic buffer management method for application programs
JP4149619B2 (en) Priority conversion system
JPH0554141B2 (en)
JPS6218073B2 (en)
JPS63172346A (en) Stack allocating method
JPS62221041A (en) Dispatch controller in virtual computer system
JPH02129724A (en) Program executing system
JPH05204676A (en) Computer device having memory reserving function
JPH01297740A (en) File recall system
JPS59163647A (en) Task control method
JP2003067200A (en) Processing system, task control method on computer system and storage medium
JP2005209117A (en) Task execution system