JP2615103B2 - 仮想計算機システム - Google Patents

仮想計算機システム

Info

Publication number
JP2615103B2
JP2615103B2 JP62313608A JP31360887A JP2615103B2 JP 2615103 B2 JP2615103 B2 JP 2615103B2 JP 62313608 A JP62313608 A JP 62313608A JP 31360887 A JP31360887 A JP 31360887A JP 2615103 B2 JP2615103 B2 JP 2615103B2
Authority
JP
Japan
Prior art keywords
address
virtual
address conversion
real
resident
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
JP62313608A
Other languages
English (en)
Other versions
JPH01155451A (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.)
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 JP62313608A priority Critical patent/JP2615103B2/ja
Priority to US07/281,334 priority patent/US5077654A/en
Priority to DE3841602A priority patent/DE3841602C2/de
Publication of JPH01155451A publication Critical patent/JPH01155451A/ja
Application granted granted Critical
Publication of JP2615103B2 publication Critical patent/JP2615103B2/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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/0292User address space allocation, e.g. contiguous or non contiguous base addressing using tables or multilevel address translation means

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、仮想計算機システムに関し、特に、複数の
仮想計算機におけるアドレス変換処理を高速に行うよう
にした仮想計算機システムに関するものである。
〔従来の技術〕
仮想計算機システムは、1台の実計算機上にあたかも
複数の計算機(仮想計算機)が存在するかのように制御
する計算機システムである。仮想計算機システムにおい
ては、1台の実計算機の資源をホスト制御プログラム
(仮想計算機制御プログラム)が制御し、このホスト制
御プログラム上で複数の仮想計算機(VM:Virtual Machi
neと略称する)が生成される。VMの記憶装置は、実計算
機の主記憶装置上にホスト制御プログラムの作るアドレ
ス変換テーブルに従って、主記憶装置上の所定位置と対
応づけられる。VM上におけるオペレィティングシステム
であるゲストOSが、仮想アドレス記憶方式を具現してい
る場合、ゲストOSの管理する仮想アドレス空間は、VMの
記憶装置上でゲストOSが作るアドレス変換テーブルに従
って、VMの記憶装置上の位置と対応づけられる。
したがって、ゲストOSの仮想記憶の1ページを実計算
機の主記憶装置上の位置と対応付けるためには、ゲスト
OSのアドレス変換テーブルとホスト制御プログラムのア
ドレス変換テーブルを使った2段階のアドレス変換処理
が行われる。すなわち、第2図に示すように、VMの仮想
アドレス空間20は、アドレス変換部30がゲストOSのアド
レス変換テーブル31により、アドレス変換を行い、VMの
実アドレス空間40となる。このVMの実アドレス空間40
は、ホスト制御プログラムにおいて実計算機の仮想アド
レス空間41と同じである。次に、この実計算機の仮想ア
ドレス空間41は、アドレス変換部50がホスト制御プログ
ラムのアドレス変換テーブル51によりアドレス変換を行
い、実計算機の実アドレス空間60となる。このように、
2段階のアドレス変換処理が行われて、VMの仮想アドレ
ス空間20から実計算機の実アドレス空間60への対応付け
がなされる。このため、仮想計算機システムにおいては
処理速度が遅くなる。
仮想計算機システムを高速化するためには、この2段
階のアドレス変換処理の機構をハードウエア機構として
実現する。このハードウエア機構に関しては、「アイ・
ビー・エム システム/370 エクステンディッド アー
キテクチャ インタプリティブ エクセキューション
(エス・エー22−7095−0),1984年1月第1版発行[I
BM System/370 Extended Architecture Interpretive E
xecution(SA22−7095−0)First Edition,January 19
84]」に論じられている。
ここでのVMのアドレス変換処理を行うハードウェア機
構は、仮想計算機システムにおける高速化手法である
[V=R]VM(プリファードゲスト)をハードウェア機
能の1つとして実現しており、唯一のVMのみの高速化が
行なわれている。これは、VMの記憶装置を実計算機の主
記憶装置に割りつけるに際し、そのアドレスの実計算機
の主記憶装置のゼロから始まる低位アドレスと等しく連
続的に常駐化させて割りつけるものであり、ホスト制御
プログラムでアドレス変換処理,ページング処理を不要
にすることによりVMの高速化を行うものである。[V=
R]VMは、その性質上システムに唯一個しか実現するこ
とができない。
また、複数のVMに対する高速化の一手法として「常駐
VM」がある。これは、例えば、第3図に示すように、VM
の記憶装置を実計算機の主記憶装置に割りつけるに際
し、常駐VM領域を設けておき、V=R領域以外の実計算
機の主記憶装置上に連続的に常駐化させて割りつけるも
のである。VMの記憶装置が割りつけられる実計算機の主
記憶装置のアドレスは、VMの記憶装置上のアドレスに該
常駐VMが割りつけられている領域の先頭アドレスを加え
たものに等しい。このような常駐VMでは、[V=R]VM
と同様に、ホスト制御プログラムによるページング処理
が不要である。しかし、ここでは、ソフトウエア手段に
より実現するためアドレス変換処理(実際はアドレス加
算処理)は必要となっている。
〔発明が解決しようとする問題点〕
ところで、従来の仮想計算機システムにおいては、高
速化のためのハードウェア機構を備えてはいるものの、
この機構は、唯一のVMを高速に実行するためだけのもの
であり、複数のVMを高速に実行するための機構は備えて
いない。
一方、複数のVMに対するものとして、1段のアドレス
変換機構を使って、複数のVMをある程度高速に実行する
機能(常駐VM)を実現しているが、制御プログラムのソ
フトウエア手段により実現される機能であり、その高速
実行性には限界があるという問題点があった。
本発明の目的には、高速性において互いに等価な複数
の常駐VMを実行する機構およびその制御方法を実現し、
かつ必要なハードウエア量の増加を最小限に抑えること
にある。
本発明の前記ならびにその他の目的と新規な特徴は、
本明細書の記述及び添付図面によって明らかになるであ
ろう。
〔問題点を解決するための手段〕
上記目的を達成するため、本発明においては、第1段
目のアドレス変換を行う第1アドレス変換手段と、第1
アドレス変換手段の出力を受けて第2段目のアドレス変
換する第2アドレス変換手段と、第1アドレス変換手段
の出力または第2アドレス変換手段の出力を選択する選
択手段と、選択手段に選択指示を与える指示手段を備え
た仮想計算機システムにおいて、ゼロを含むアドレス定
数を保持するアドレス保持手段と、前記第1アドレス変
換手段の出力である実計算機の仮想アドレスに、前記ア
ドレス保持手段の設定値を加算する手段と、前記第2ア
ドレス変換手段の出力と前記加算手段のアドレスとを指
示ビットにより選択する手段を備え、[V=R]VMを領
域先頭アドレスがゼロに割つけられた常駐VMであるとし
て扱うことを特徴とする。
〔作用〕
前記手段によれば、常駐VMの実現のためのアドレス加
算を含むアドレス変換処理をハードウエア機構により行
う。これにより、VMにおけるアドレス変換を高速に行う
ことができる。また、複数種類のVMのアドレス変換処理
に際しては、アドレス加算を含むアドレス変換機構を切
換えて使用することにより、特に、[V=R]VMを領域
先頭アドレスがゼロに割つけられた常駐VMであるとして
扱うことにより、アドレス変換機構を統一的に使用する
ことができ、必要なハードウエア量の増加を最少限に抑
えることができる。
〔実施例〕
以下、本発明の一実施例を図面を用いて具体的に説明
する。
なお、実施例を説明するための全図において、同一機
能を有するものは同一符号を付け、その繰り返しの説明
は省略する。
第1図は、本発明の一実施例にかかる仮想計算機シス
テムのアドレス変換処理を説明するブロック図である。
仮想計算機システムにおいて、VM上のゲストOSの実行に
際し、一般に2段階のアドレス変換が必要であることは
前述のとおりである。ここでVM種別が[V=V]VMの場
合、VM上のゲストOSが生成する仮想空間のアドレスが対
応する実計算機の主記憶装置のアドレスに変換される過
程は次の通りである。
VMの仮想アドレス1は、アドレス変換部2によりゲス
トOSのアドレス変換テーブル2aを参照しながら、VMの実
アドレス3に変換される。VMの実アドレス3は、続い
て、ゲストプリフィックス変換部4によりプリフィック
ス変換され、VMの絶対アドレス5となる。このVMの絶対
アドレス5は、実計算機の仮想アドレス(実CPUの仮想
アドレス6)に等しい。この実CPUの仮想アドレス6
は、アドレス定数加算部7により、アドレス定数保持部
8に保持される[V=V]VMの割つけられるページング
領域のホスト仮想アドレス空間における先頭アドレスが
加算されて、アドレス変換部9の入力となる。これが、
ホスト制御プログラムのアドレス変換テーブル9aを参照
しながら、アドレス変換部9により、実CPUの実アドレ
ス11に変換される。実CPUの実アドレス11は、ホストプ
リフィックス変換部12により、プリフィックス変換され
る。選択手段であるセレクタ部14は、VM種別指示ビット
13を[V=V]VMを示す値(‘0')にセットすることに
より、第2の入力を選択出力し、ホストプリフィックス
変換部12の出力を実CPUの絶対アドレス15とする。
次に、VM種別が常駐VMの場合について、説明する。こ
の場合、VM上のゲストOSが生成する仮想アドレス空間の
アドレスが対応する実計算機の主記憶装置のアドレスに
変換される過程は次の通りである。VMの仮想アドレスが
VMの絶対アドレスに変換されるまでの過程は、[V=
V]VMの場合と同様である。常駐VMでは、VMの記憶装置
アドレスからホストの実CPUの絶対アドレスへの変換
は、該常駐VMが割つけられたホストの実記憶装置上領域
の先頭アドレスを加算することで行える。このため、ア
ドレス定数保持部8には、該常駐VMが割りつけられた実
CPUの実記憶装置上の領域の先頭アドレスを設定する。
これは、ゼロを含む実CPUの絶対アドレスである。VM種
別指示ビット13は、常駐VMを示す値(‘1')にセットす
る。これにより、セレクタ部14は、第1の入力を選択出
力し、アドレス定数加算部7の出力そのものを実CPUの
絶対アドレス15とする。これにより、従来の[V=R]
VMを含む常駐VMにおいて、VMの仮想アドレスからホスト
の絶対アドレスを求めるのに、ソフトウエアの介在なし
にハードウエアで自動的に1回のアドレス変換と1回の
アドレス定数加算により行うことができ、アドレス変換
が高速化される。
さらに、アドレス定数保持部8に、VMが切換わる毎に
その常駐VMが割りつけられているホストの実記憶装置上
の領域の先頭アドレスを設定することにより、1種類の
ハードウエアによって従来の[V=R]VM、常駐VMの高
速化を達成することができ、かつ均一な高速性を達成す
ることができる。
以上、本発明を実施例にもとづき具体的に説明した
が、本発明は、前記実施例に限定されるものではなく、
その要旨を逸脱しない範囲において種々変更可能である
ことは言うまでもない。
〔発明の効果〕
以上、説明したように、本発明によれば、常駐VMの実
現のためのアドレス加算を含むアドレス変換処理をハー
ドウェア機構により、VMにおけるアドレス変換を高速に
行うことができ、かつ、複数種類のVMのアドレス変換処
理に際しては、アドレス加算を含むアドレス変換機構を
切換え、[V=R]VMを領域先頭アドレスがゼロに割つ
けられた常駐VMであるとして扱うことにより、アドレス
変換機構を統一的に使用することができるので、必要な
ハードウェア量の増加を最少限に抑えることができる。
【図面の簡単な説明】
第1図は、本発明の一実施例にかかる仮想計算機システ
ムのアドレス変換処理を説明するブロック図、 第2図は、仮想計算機システムにおけるアドレス変換処
理の概念図、 第3図は、仮想計算機システムにおける記憶領域の割り
つけの一例を示す図である。 図中、2,9,30,50……アドレス変換部、2a,31……ゲスト
OSのアドレス変換テーブル、7……アドレス定数加算
器、8……アドレス定数保持部、9a,51……ホスト制御
プログラムのアドレス変換テーブル、13……VM種別指示
ビット、14……セレクタ部。

Claims (1)

    (57)【特許請求の範囲】
  1. 【請求項1】第1段目のアドレス変換を行う第1アドレ
    ス変換手段と、第1アドレス変換手段の出力を受けて第
    2段目のアドレス変換する第2アドレス変換手段と、第
    1アドレス変換手段の出力または第2アドレス変換手段
    の出力を選択する選択手段と、選択手段に選択指示を与
    える指示手段を備えた仮想計算機システムにおいて、ゼ
    ロを含むアドレス定数を保持するアドレス保持手段と、
    前記第1アドレス変換手段の出力である実計算機の仮想
    アドレスに、前記アドレス保持手段の設定値を加算する
    手段と、前記第2アドレス変換手段の出力と前記加算手
    段のアドレスとを指示ビットにより選択する手段を備
    え、[V=R]VMを領域先頭アドレスがゼロに割つけら
    れた常駐VMであるとして扱うことを特徴とする仮想計算
    機システム。
JP62313608A 1987-12-11 1987-12-11 仮想計算機システム Expired - Fee Related JP2615103B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP62313608A JP2615103B2 (ja) 1987-12-11 1987-12-11 仮想計算機システム
US07/281,334 US5077654A (en) 1987-12-11 1988-12-08 Virtual machine system which translates virtual address from a selected virtual machine into real address of main storage
DE3841602A DE3841602C2 (de) 1987-12-11 1988-12-09 Verfahren und Vorrichtung zur Adreßübersetzung in einem virtuellen Maschinensystem

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62313608A JP2615103B2 (ja) 1987-12-11 1987-12-11 仮想計算機システム

Publications (2)

Publication Number Publication Date
JPH01155451A JPH01155451A (ja) 1989-06-19
JP2615103B2 true JP2615103B2 (ja) 1997-05-28

Family

ID=18043367

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62313608A Expired - Fee Related JP2615103B2 (ja) 1987-12-11 1987-12-11 仮想計算機システム

Country Status (3)

Country Link
US (1) US5077654A (ja)
JP (1) JP2615103B2 (ja)
DE (1) DE3841602C2 (ja)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5276815A (en) * 1988-10-24 1994-01-04 Fujitsu Limited Input and output processing system for a virtual computer
CA1311063C (en) * 1988-12-16 1992-12-01 Tokumichi Murakami Digital signal processor
JPH02205953A (ja) * 1989-02-03 1990-08-15 Nec Corp アドレス変換装置
US5410671A (en) * 1990-05-01 1995-04-25 Cyrix Corporation Data compression/decompression processor
JP2708608B2 (ja) * 1990-05-25 1998-02-04 富士通株式会社 仮想計算機のipl処理方式
JP2839201B2 (ja) * 1990-07-30 1998-12-16 株式会社日立製作所 仮想計算機システム
US5317754A (en) * 1990-10-23 1994-05-31 International Business Machines Corporation Method and apparatus for enabling an interpretive execution subset
JPH04348434A (ja) * 1991-05-27 1992-12-03 Hitachi Ltd 仮想計算機システム
WO1993013482A1 (en) * 1992-01-02 1993-07-08 Amdahl Corporation Computer system with two levels of guests
US5426748A (en) * 1992-01-03 1995-06-20 International Business Machines Corporation Guest/host extended addressing method and means with contiguous access list entries
JPH0635732A (ja) * 1992-07-14 1994-02-10 Hitachi Ltd 記憶装置の領域割り当て方法
US5781750A (en) * 1994-01-11 1998-07-14 Exponential Technology, Inc. Dual-instruction-set architecture CPU with hidden software emulation mode
US5542059A (en) * 1994-01-11 1996-07-30 Exponential Technology, Inc. Dual instruction set processor having a pipeline with a pipestage functional unit that is relocatable in time and sequence order
GB2327784B (en) * 1997-07-28 2002-04-03 Microapl Ltd A method of carrying out computer operations
US6772419B1 (en) * 1997-09-12 2004-08-03 Hitachi, Ltd. Multi OS configuration system having an interrupt process program executes independently of operation of the multi OS
US20070052715A1 (en) * 2005-09-07 2007-03-08 Konstantin Levit-Gurevich Device, system and method of graphics processing
US7868897B2 (en) * 2006-06-30 2011-01-11 Intel Corporation Apparatus and method for memory address re-mapping of graphics data
US8589917B2 (en) * 2006-10-10 2013-11-19 International Business Machines Corporation Techniques for transferring information between virtual machines
US7530106B1 (en) 2008-07-02 2009-05-05 Kaspersky Lab, Zao System and method for security rating of computer processes
JP6242502B2 (ja) * 2014-10-30 2017-12-06 株式会社日立製作所 仮想計算機システムの制御方法及び仮想計算機システム

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4285040A (en) * 1977-11-04 1981-08-18 Sperry Corporation Dual mode virtual-to-real address translation mechanism
JPS55113182A (en) * 1979-02-21 1980-09-01 Fujitsu Ltd Virtual computer system with tlb
US4456954A (en) * 1981-06-15 1984-06-26 International Business Machines Corporation Virtual machine system with guest architecture emulation using hardware TLB's for plural level address translations
US4533996A (en) * 1982-02-23 1985-08-06 International Business Machines Corporation Peripheral systems accommodation of guest operating systems
JPH0619747B2 (ja) * 1984-01-18 1994-03-16 株式会社日立製作所 I/o命令実行方法、i/o割込処理方法およびそれらを用いた計算機システム
US4792895A (en) * 1984-07-30 1988-12-20 International Business Machines Corp. Instruction processing in higher level virtual machines by a real machine
JPS6184754A (ja) * 1984-10-03 1986-04-30 Hitachi Ltd 拡張アドレス変換装置
JPS61206057A (ja) * 1985-03-11 1986-09-12 Hitachi Ltd アドレス変換装置
AU571377B2 (en) * 1985-11-13 1988-04-14 Fujitsu Limited Main storage access control system
JPH0658650B2 (ja) * 1986-03-14 1994-08-03 株式会社日立製作所 仮想計算機システム
JPH0814803B2 (ja) * 1986-05-23 1996-02-14 株式会社日立製作所 アドレス変換方式

Also Published As

Publication number Publication date
US5077654A (en) 1991-12-31
JPH01155451A (ja) 1989-06-19
DE3841602C2 (de) 1994-01-20
DE3841602A1 (de) 1989-06-22

Similar Documents

Publication Publication Date Title
JP2615103B2 (ja) 仮想計算機システム
JP2839201B2 (ja) 仮想計算機システム
JP3330378B2 (ja) リアルタイムプログラム言語アクセラレータ
JPH08502612A (ja) データ処理システムおよびオペレーティング・システム
JP2927180B2 (ja) 情報処理プログラムのデバッグ方法およびそのためのデバッガ
JPH0326414B2 (ja)
US4876646A (en) Data processor having multilevel address translation tables
JPH04363735A (ja) 命令処理装置
JP2002099498A (ja) プログラム実行装置およびプログラム開発支援装置
JPS626261B2 (ja)
JP2000122876A (ja) 情報処理装置
JPH01112423A (ja) オーバレイ制御方式
JPS6299844A (ja) アドレス変換装置
JPS6065342A (ja) マイクロコンピユ−タ
JPS60129856A (ja) メモリ制御回路
JPS6124735B2 (ja)
JPH0754469B2 (ja) 仮想計算機システムのための入出力命令実行装置
EP0016586A1 (en) Data processing system with multiple logical space
JPH0128414B2 (ja)
JPH01154264A (ja) 仮想計算機システムにおける動的チヤネルアドレス変換方式
JPS6126100B2 (ja)
JPH02109128A (ja) コンピュータシステム
JPS61182135A (ja) 処理選択方法
JPH07141252A (ja) データ処理装置
JPH0830466A (ja) マルチタスク切り換え制御方法

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees