JPS616740A - Program control method in computer system - Google Patents
Program control method in computer systemInfo
- Publication number
- JPS616740A JPS616740A JP12526484A JP12526484A JPS616740A JP S616740 A JPS616740 A JP S616740A JP 12526484 A JP12526484 A JP 12526484A JP 12526484 A JP12526484 A JP 12526484A JP S616740 A JPS616740 A JP S616740A
- Authority
- JP
- Japan
- Prior art keywords
- task
- program
- foreground
- background
- core
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Abstract
Description
【発明の詳細な説明】
〔発明の利用分野〕
本発明は、単一計算機システムにおいて、複数のオペレ
ーティングシステム(以下、O8という。)を効率よく
制御するための制御方式に関するものである。DETAILED DESCRIPTION OF THE INVENTION [Field of Application of the Invention] The present invention relates to a control method for efficiently controlling a plurality of operating systems (hereinafter referred to as O8) in a single computer system.
(発明の背景〕
単一の計算機システムを多目的に利用する方法として、
それぞれの目的に合致する複数のO8を作成し、それら
のO8を一つの計算機システム(実計算機)の下で時分
割にさせて目的ごとのアプリケーションプログラムを実
行するという仮想計算機方式が採用されている(たとえ
ば、山谷著「仮想計算機」 (共立出版))。第1図は
その構成例で、実計算機1は、第1O8が動く仮想計算
機2と第2O8が動く仮想計算機3とからなり、これら
2つのO8が動作する仮想計算機システムである。これ
ら2つのO8が動作する仮想計算機である。仮想計算機
の構成の一つとして、特許願[計算機システムの制御方
式」 (昭和57年4月16日発明者二筒井他)がある
。この方式では、第1O8(以下、中核O8と呼ぶ)の
制御のもとに第2O8(以下、セカンダリO8と呼ぶ。(Background of the invention) As a method of using a single computer system for multiple purposes,
A virtual computer method is adopted in which multiple O8s are created that meet each purpose, and those O8s are time-divided under one computer system (actual computer) to execute application programs for each purpose. (For example, "Virtual Computer" by Yamatani (Kyoritsu Shuppan)). FIG. 1 shows an example of the configuration, and a real computer 1 is a virtual computer system in which these two O8s operate, consisting of a virtual computer 2 in which a first O8 operates and a virtual computer 3 in which a second O8 operates. These two O8s are virtual machines that operate. As one of the configurations of a virtual computer, there is a patent application entitled "Control Method for Computer System" (April 16, 1980, inventor Futatsui et al.). In this system, a second O8 (hereinafter referred to as a secondary O8) is controlled under the control of a first O8 (hereinafter referred to as a core O8).
)を構成することに特徴があった。).
本発明の目的は、上記のような第108の制御のもとに
第2O8を構成するシステムにおいて。An object of the present invention is to provide a system in which a second O8 is configured under the control of the 108th device as described above.
第2O8で作成したプログラムを、第1O8のもとで効
率的に実行するための、プログラム制御方式を提供する
ことにある。The object of the present invention is to provide a program control method for efficiently executing a program created in the second O8 under the first O8.
以下ではまず、上記発明を具体例として、そこにおける
制御方式の問題点を述べ、つぎに、本発明を実施例でも
って説明する。Below, first, the problems of the control system therein will be described using the above-mentioned invention as a specific example, and then the present invention will be explained with reference to examples.
第2図は、前記従来発明における計算機システムの構成
例を示すもので、基本的には、プロセッサl、主メモリ
2、入出力装置3およびバス4よりなり、主メモリ2に
は、割込みベクタテーブルディスパッチャ、トラップマ
ツピングテーブル、I10タスク等を含む中核0841
と、ユーザタスク群42と、セカンダリO8、セカンダ
リタスク群等を含むセカンダリOSタスク44とが格納
されている。FIG. 2 shows an example of the configuration of a computer system according to the conventional invention, which basically consists of a processor 1, a main memory 2, an input/output device 3, and a bus 4, and the main memory 2 includes an interrupt vector table. Core 0841 including dispatcher, trap mapping table, I10 task etc.
, a user task group 42, and a secondary OS task 44 including a secondary O8, a secondary task group, etc. are stored.
第3図は、主メモリ2に格納されたプログラムを使って
行う処理を説明するためのものである。FIG. 3 is for explaining the processing performed using the program stored in the main memory 2.
中核0841は、通常のO8として、オーバヘッドの小
さいリアルタイムO8であり、そのちとで、リアルタイ
ムアプリケーションプログラムであるユーザタスク群4
2が制御される。中核QS41内の割込みベクタテーブ
ル41−1は、SvCトラップ、例外トラップ、外部割
込みなどの割込に対するO8へのエントリアドレスを示
すテーブルである。タスクと中核O8とのインタフェー
スについて簡単に述べる。ユーザタスク群42からの中
核0841への要求は、SvCトラップにより1割込ベ
クタテーブル41−1を経由して、中核0841の処理
ルーチンを行い、処理終了後ディスパッチャ41−2を
経由して、元のタスクまたは他のタスクに制御が渡され
る。さらに中核O8には、各トラップに対してタスク毎
に個有の処理ができるように、各トラップ種別に対して
、処理アドレスを定義するトラップマツピングテーブル
41−3を各タスク毎に持つことができる。The core 0841 is a real-time O8 with small overhead as a normal O8, and after that, the user task group 4 which is a real-time application program
2 is controlled. The interrupt vector table 41-1 in the core QS 41 is a table showing entry addresses to the O8 for interrupts such as SvC traps, exception traps, and external interrupts. The interface between the task and the core O8 will be briefly described. A request from the user task group 42 to the core 0841 is sent via the 1-interrupt vector table 41-1 by an SvC trap to the processing routine of the core 0841, and after the processing is completed, the request is sent to the core 0841 via the dispatcher 41-2. Control is passed to this task or to another task. Furthermore, in the core O8, each task has a trap mapping table 41-3 that defines processing addresses for each trap type so that each task can perform unique processing for each trap. can.
セカンダリ○544−1は、このO8のもとに制御され
るタスク群44−2も含めて、中核oS41の1つのタ
スクセカンダリOSタスク44として、中核○S41に
よって制御され、その位置付けは、他のユーザタスク群
42と基本的に同様である。セカンダリタスク群を実行
中にSvCやバスエラーなどのトラップが発生すると、
割込みベクタテーブル41−1のアドレスに従って中核
0841のトラップエントリに入り、ついで、トラップ
が発生したタスクに対応トラップマツピングテーブル4
1−3のアドレスに従って、トラップエントリ44−3
に入り、セカンダリ○544−1による処理が行われる
。セカンダリO8での入出力は、I10タスク41−4
に起動をかけ、処理終了後、I10割込みエントリ44
−5に制御が戻ることによって実行される。The secondary ○544-1, including the task group 44-2 controlled under this O8, is controlled by the core ○S41 as one task secondary OS task 44 of the core oS41, and its position is different from other This is basically the same as the user task group 42. If a trap such as SvC or bus error occurs while executing a secondary task group,
A trap entry is entered in the core 0841 according to the address in the interrupt vector table 41-1, and then a trap mapping table 4 is entered corresponding to the task in which the trap occurred.
According to the address of 1-3, trap entry 44-3
The process is performed by the secondary ○ 544-1. I10 task 41-4 inputs and outputs the secondary O8.
After processing is completed, I10 interrupt entry 44 is activated.
This is executed when control returns to -5.
ここでは、セカンダリ0844−1としてプログラミン
グO8を仮定し、プログラミングO8上で、FORTR
ANやPacsal等の高級言語で書いたプログラムを
、セカンダリ0844−1上で動作させる(以下、バッ
クグランドランと呼ぶ。)のみならず中核0841上で
1つのタスクとして動作させる(以下、フォアグランド
ランと呼ぶ。)ことを可能とするプログラム制御方式に
ついて説明する。Here, we assume programming O8 as the secondary 0844-1, and on programming O8, FORTR
A program written in a high-level language such as AN or Pacsal is run not only on the secondary 0844-1 (hereinafter referred to as background run), but also as a single task on the core 0841 (hereinafter referred to as foreground run). We will explain the program control method that makes this possible.
第4図によって従来の制御方式について述べる。The conventional control method will be described with reference to FIG.
中核0841のもとに、プログラミング0854をもつ
セカンダリOSタスク44が制御される。Under the core 0841, a secondary OS task 44 with programming 0854 is controlled.
プログラミング0354のもとのセカンダリタスクの1
つ55のもとで、 FORTRAN Pa5ca1等の
高級言語で書かれたソースプログラム55−1をコンパ
イルし、オブジェクトプログラム55−2を作成する。1 of the secondary tasks under programming 0354
55, a source program 55-1 written in a high-level language such as FORTRAN Pa5ca1 is compiled to create an object program 55-2.
バックグランドランのためにはオブジェクトプログラム
55−2とバックグランド用ライブラリ55−3とをリ
ンクし、バックグランドプログラム55−4を作成し、
プログラミング0854のもとてバックグランドタスク
56として実行する。一方フオアグランドランのために
は、オブジェクトプログラム55−2とフォアグランド
用ライブラリ55−5とをリンクし、フォアグランドプ
ログラム55−6を作成し、中核O84]のもとてフォ
アグランドタスクとして実行する。For background run, link the object program 55-2 and background library 55-3 to create a background program 55-4.
It is executed as a background task 56 under programming 0854. On the other hand, for foreground run, the object program 55-2 and the foreground library 55-5 are linked, a foreground program 55-6 is created, and it is executed as a foreground task under the core O84. .
ここでいう、バックグランド用ライブラリ55−3及び
フォアグランド用ライブラリには、実行時サブルーチン
や、中核O8上のリソースをアクセスするルーチンを含
む。The background library 55-3 and foreground library herein include runtime subroutines and routines that access resources on the core O8.
ここで問題となる点は、バックグランド用ライブラリ5
5−5とバックグランド用ライブラリ55−3の2つを
作成しなければならない事である。さらにこのライブラ
リは、各高級言語に対応して作成しなければならないの
で、サポート言語の数が多くなると作成量が増大する。The problem here is that the background library 5
5-5 and a background library 55-3 must be created. Furthermore, since this library must be created for each high-level language, the amount of creation increases as the number of supported languages increases.
もう一つの問題点は、フォアグランドプログラム55−
6とバックグランドプログラム55−4とが同一でない
ために、バックグランドランでエラーが発生しなくても
、フォアグランドランではエラーが発生する可能性があ
る。Another problem is that the foreground program 55-
6 and the background program 55-4 are not the same, even if no error occurs during the background run, there is a possibility that an error may occur during the foreground run.
本発明は、上記の問題点を解決するためのプログラム制
御方式を提供するものである。The present invention provides a program control method for solving the above problems.
以下、本発明の一実施例を第5図により説明する。中核
0841のもとに、プログラミング○S54をもつセカ
ンダリタスクスク44が制御される。プログラミング○
S54のもとのセカンダリタスクの1つ55のもとで、
ソースプログラム55−1をコンパイルし、オブジェク
トプログラム55−2を作成する。フォアグランドバッ
クグランドの区別なく、オブジェクトプログラム55−
2とライブラリ55−7とをリンクし、ロードモジュー
ル55−8を作成する。バックグランドランのためには
、ロードモジュール55−8をプログラミング0854
の下のバックグランドタスク56として動作させる。一
方フオアグランドランのためには、ロードモジュールを
フォアグランドプログラム部53−2として、プログラ
ミング0854のSvCトラップをエミュレートするエ
ミュレータ部53−1と結合し、フォアグランドタスク
53として、中核0341の下で動作させる。An embodiment of the present invention will be described below with reference to FIG. Under the core 0841, a secondary task 44 with programming ○S54 is controlled. Programming○
Under 55, one of the secondary tasks under S54,
The source program 55-1 is compiled to create an object program 55-2. Object program 55- without distinction between foreground and background
2 and the library 55-7 to create a load module 55-8. For background runs, program load module 55-8 with 0854
It operates as a background task 56 under . On the other hand, for a foreground run, the load module is used as a foreground program part 53-2, which is combined with an emulator part 53-1 that emulates the SvC trap of programming 0854, and is used as a foreground task 53 under the core 0341. make it work.
また、中核O8上のリソースをアクセスするルーチンを
、リンケージタスク57として作成し、バックグランド
タスク、フォアグランドタスクのいずれからでも、中核
○S上のリソースをアクセスできるようにする。Further, a routine for accessing resources on the core O8 is created as a linkage task 57, so that resources on the core O8 can be accessed from either the background task or the foreground task.
上述の6工ミユレータ部は、バックグランドタスク56
が使用するプログラミング0854の中の5VC)−ラ
ップ処理ルーチンからなる。これにより、フォアグラン
ドプログラム部のSvcトラップを中核O8上でエミュ
レートすることができる。The above-mentioned 6-engine simulator part has background task 56.
5VC in the programming used by 0854) - consists of a wrap processing routine. This allows the Svc trap of the foreground program section to be emulated on the core O8.
本実施例によれば、リンケージタスク及びエミュレータ
部を作成することにより、フォアグランド、バックグラ
ンドの区別なく、プログラミング及び実行できるという
利点があり、従来方式の問題点であった、フォアグラン
ドとバックグランド用のライブラリを作成しなければな
らない点や、フォアグランドプログラムとバックグラン
ドプログラムの違いによる信頼性の低下という点が解消
されている。According to this embodiment, by creating a linkage task and an emulator section, there is an advantage that programming and execution can be performed without distinguishing between foreground and background. This solves the problem of having to create a library for the program and reducing reliability due to the difference between foreground and background programs.
本発明によれば、フォアグランド用のプログラムと3バ
ツクグランド用のプログラムとを同一にすることができ
、ライブラリをフォアグランド用とバックグランド用の
2つを作成することがなく操作も簡略化することができ
る。According to the present invention, the foreground program and the three background programs can be made the same, and the operation is simplified without creating two libraries, one for the foreground and one for the background. be able to.
また、バックグランド用のプログラムとフォアグランド
用のプログラムを同一にできるので、バックグランドで
十分テストを行うと、フォアグランドではエラーなく実
行でき、信頼性の高いものを作成することができる。In addition, since the background program and the foreground program can be the same, if you test thoroughly in the background, you can create a highly reliable program that will run without errors in the foreground.
第1図は仮想計算機の構成図、第2図は本発明を適用す
る1つの対象となるシステム構成図、第3図はそのプロ
グラムの構成図、第4図は従来のプログラム制御方式を
示す図、第5図は本発明の一実施例を示す図である。
41・・・中核O8,44・・・セカンダリタスクスク
、54・・・プログラミングO8,55・・・セカンダ
リタスク八 升埋f 商憫ツj天
$1霞
第2霞
$3区
第4困
第5霞Figure 1 is a configuration diagram of a virtual computer, Figure 2 is a system configuration diagram to which the present invention is applied, Figure 3 is a configuration diagram of its program, and Figure 4 is a diagram showing a conventional program control method. , FIG. 5 is a diagram showing an embodiment of the present invention. 41...Core O8, 44...Secondary Task, 54...Programming O8,55...Secondary Task Eight 5 haze
Claims (1)
レーティングを第1のオペレーティングシステムのタス
クとして構成する複数のオペレーティングシステムで動
作する計算機システムにおいて、第2のオペレーティン
グシステムで作成したプログラムを第1のオペレーティ
ングのもとで実行するために、第2のオペレーティング
システムをエミユレートするプログラムと、第2のオペ
レーティングシステムから第1のオペレーティングシス
テムでのリソース制御を可能とするタスクとを設けたこ
とを特徴とする計算機システムにおけるプログラム制御
方式。1. Configuring a second operating system under the first operating system as a task of the first operating system In a computer system that operates on multiple operating systems, a program created on the second operating system is configured as a task of the first operating system. A computer comprising: a program that emulates a second operating system; and a task that enables the second operating system to control resources in the first operating system. Program control method in the system.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP12526484A JPS616740A (en) | 1984-06-20 | 1984-06-20 | Program control method in computer system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP12526484A JPS616740A (en) | 1984-06-20 | 1984-06-20 | Program control method in computer system |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS616740A true JPS616740A (en) | 1986-01-13 |
Family
ID=14905774
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP12526484A Pending JPS616740A (en) | 1984-06-20 | 1984-06-20 | Program control method in computer system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS616740A (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH02213945A (en) * | 1988-12-29 | 1990-08-27 | Internatl Business Mach Corp <Ibm> | Computer system performing expert consulation |
JPH04288956A (en) * | 1990-10-22 | 1992-10-14 | General Electric Co <Ge> | Low flow nozzle and method for thermal spraying for its formation |
JPH06324912A (en) * | 1993-05-14 | 1994-11-25 | Nec Corp | Integrated software debugging supporting device |
JPH07503910A (en) * | 1991-08-23 | 1995-04-27 | バプコック−ベー エス ハー アクチエンゲゼルシャフト フォールマールス ビュットナー−シルデ−ハース アクチエンゲゼルシャフト | Method and apparatus for producing fiber-reinforced multilayer gypsum board |
-
1984
- 1984-06-20 JP JP12526484A patent/JPS616740A/en active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH02213945A (en) * | 1988-12-29 | 1990-08-27 | Internatl Business Mach Corp <Ibm> | Computer system performing expert consulation |
JPH04288956A (en) * | 1990-10-22 | 1992-10-14 | General Electric Co <Ge> | Low flow nozzle and method for thermal spraying for its formation |
JPH07503910A (en) * | 1991-08-23 | 1995-04-27 | バプコック−ベー エス ハー アクチエンゲゼルシャフト フォールマールス ビュットナー−シルデ−ハース アクチエンゲゼルシャフト | Method and apparatus for producing fiber-reinforced multilayer gypsum board |
JPH06324912A (en) * | 1993-05-14 | 1994-11-25 | Nec Corp | Integrated software debugging supporting device |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5129064A (en) | System and method for simulating the I/O of a processing system | |
RU2412468C2 (en) | Systems and methods for multilevel processing of interceptions in virtual machine environment | |
US5038281A (en) | Acceleration of system interrupts between operating systems in guest-host relationship | |
JPS6017539A (en) | Emulation system | |
JPS6258341A (en) | Input and output interruption processing system | |
CN101894045A (en) | Real-time Linux operating system | |
US7484032B2 (en) | Fault tolerant computer system | |
US10452420B1 (en) | Virtualization extension modules | |
US7111200B2 (en) | Apparatus and method for debugging a logical partition | |
Pointon et al. | The design and implementation of Glasgow Distributed Haskell | |
JPH0458056B2 (en) | ||
JPH05216689A (en) | Computer apparatus and computer-apparatus operating method | |
JPH06242987A (en) | Method and equipment for making host computer execute succession of normal processing of microprocessor in computer unit | |
EP1410170B1 (en) | Logical substitution of processor control in an emulated computing environment | |
JPS616740A (en) | Program control method in computer system | |
Einsweiler et al. | The Aleph event builder: a multi-user FASTBUS master | |
US9122549B2 (en) | Method and system for emulation of instructions and hardware using background guest mode processing | |
JP2866588B2 (en) | System and method for transferring control between processing processes | |
JPS6049352B2 (en) | data processing equipment | |
EP0327197B1 (en) | I/O simulation | |
JP2864255B2 (en) | Virtual computer system | |
JP2788353B2 (en) | Task trace method | |
JPH02146634A (en) | Interruption control system for virtual computer system | |
Hidaka et al. | Architecture of parallel management kernel for PIE64 | |
Zalewski | A step towards real time application of Ada |