JP5565187B2 - 情報処理装置および割込み制御プログラム - Google Patents

情報処理装置および割込み制御プログラム Download PDF

Info

Publication number
JP5565187B2
JP5565187B2 JP2010179561A JP2010179561A JP5565187B2 JP 5565187 B2 JP5565187 B2 JP 5565187B2 JP 2010179561 A JP2010179561 A JP 2010179561A JP 2010179561 A JP2010179561 A JP 2010179561A JP 5565187 B2 JP5565187 B2 JP 5565187B2
Authority
JP
Japan
Prior art keywords
unit
program
cpu
storage unit
new psw
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
JP2010179561A
Other languages
English (en)
Other versions
JP2012038197A (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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2010179561A priority Critical patent/JP5565187B2/ja
Priority to US13/196,965 priority patent/US9009422B2/en
Publication of JP2012038197A publication Critical patent/JP2012038197A/ja
Application granted granted Critical
Publication of JP5565187B2 publication Critical patent/JP5565187B2/ja
Priority to US14/642,888 priority patent/US9069742B1/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/3017Runtime instruction translation, e.g. macros
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/24Handling requests for interconnection or transfer for access to input/output bus using interrupt
    • 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/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/3004Arrangements for executing specific machine instructions to perform operations on memory
    • G06F9/30043LOAD or STORE instructions; Clear instruction
    • 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30094Condition code generation, e.g. Carry, Zero flag
    • 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/32Address formation of the next instruction, e.g. by incrementing the instruction counter
    • G06F9/322Address formation of the next instruction, e.g. by incrementing the instruction counter for non-sequential address
    • G06F9/327Address formation of the next instruction, e.g. by incrementing the instruction counter for non-sequential address for interrupts

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Debugging And Monitoring (AREA)
  • Executing Machine-Instructions (AREA)

Description

本発明は、情報処理装置および割込み制御プログラムに関する。
従来、サーバなどの情報処理装置では、搭載された物理CPU(Central Processing Unit)とは異なるアーキテクチャのCPUをエミュレートすることが行われている。CPUに限らず、情報処理装置では、搭載されたOS(Operating System)とは異なるOSをエミュレートすることも行われている。
例えば、LINUX(登録商標)などのオープン系OSを搭載するサーバは、メインフレームに搭載される汎用機用OSを自サーバ内で再現し、汎用機用OS向けのアプリケーションなどを動作させる。
かかる情報処理装置は、異なるアーキテクチャの命令を再現する命令エミュレートを実行するとともに、例外発生時には割込み処理も実行する。割込み処理については、例えば特許文献1には、割込み処理が発生した度に実行していた状態監視機能のリセットを、必要な時にだけ実行する技術が開示されている。また、特許文献2には、一般のバッファメモリとは別のバッファメモリに、割込み処理に対応するPSW(Program Status Word)を固定的に格納しておくことで、割込み処理時のPSWのロード時間を高速化する技術が開示されている。
特開昭58−117059号公報 特開昭62−043737号公報
CPUが命令を実行することにより、割り込み処理に対応するPSWなどの情報を格納するメモリ上の領域PSA(Program Save Area)に情報を上書きしてしまうことがある。PSAへの上書きを防止するロックを行なったとしても、PSAの情報を更新する必要が生じた場合にはロックを解除するため、そのタイミングにおいてPSWの書き換えが発生してしまう可能性がある。特に、複数のCPUでメモリを共有する場合には、あるCPUが確保したPSAに対して、他のCPUが上書きを行なうということが発生しうる。
その場合、PSAに格納されているPSWが書き換えられてしまうため、従来の情報処理装置では、割込み処理が発生する度に、割込み処理に対応したPSWに異常があるか否かを判定する判定処理を実行していた。割り込み処理が発生する度に判定処理を実行するので、割込み処理に時間がかかるという課題があった。
PSWに異常があるか否か判定処理では、64ビットを有するPSWにおける複数フィールドの値をチェックするなどにより判定する。例えば、情報処理装置は、31ビットアドレスモードのOSをエミュレートしている場合、ビット24〜ビット32が1でないかを判定する。さらに、情報処理装置は、ビット0、ビット2〜3、ビット12、ビット16、ビット17のそれぞれの値をチェックする。そして、情報処理装置は、全てのビットが正常な値である場合に、割込み処理を実行する。
情報処理装置は、割込み処理が発生する度に上記判定処理を実行することとなるため、割込み処理が頻繁に発生した場合などでは、PSWの判定処理がボトルネックとなる。この結果、割込み処理におけるオーバヘッドが大きくなって、割込み処理を開始するまでに時間を要し、割込み処理自体に時間がかかる。
1つの側面では、割込み処理の処理時間を短縮することができる情報処理装置および割込み制御プログラムを提供することを目的とする。
第1の案では、割り込み処理を実行する際に読み出すデータの格納先を示すアドレスを含むプログラム状態語を記憶する記憶部を含む記憶装置を有する。また、演算処理装置は、前記記憶部に記憶した前記プログラム状態語を使用可能か否かについての判定を行なう判定部を有する。また、演算処理装置は、前記プログラム状態語に前記判定の結果を対応付けて、さらに前記記憶部に記憶する格納部と、前記割込み処理が発生した場合に、前記プログラム状態語と前記判定の結果とを前記記憶部から取得する取得部とを含む。また、演算処理装置は、取得した前記判定の結果が前記プログラム状態語を使用可能である旨を示す場合に、取得したプログラム状態語に含まれる前記アドレスに基づいてデータを読み出す実行部を含む。
情報処理装置および割込み制御プログラムの一つの態様によれば、割込み処理の処理時間を短縮することができる。
図1は、実施例1に係る情報処理装置の構成を示すブロック図である。 図2は、実施例2に係る情報処理装置の構成を示すブロック図である。 図3は、PSA領域に格納される情報の例を示す図である。 図4は、新PSW記憶領域内に記憶される使用可能フラグの判定例を示す図である。 図5は、新PSW記憶領域内に記憶されるチェック結果の判定例を示す図である。 図6は、新PSWの形式チェックと割込み処理との関係例を説明する図である。 図7は、新PSWの形式チェックの流れを示すフローチャートである。 図8は、新PSWの形式チェックの流れを示すフローチャートである。 図9は、割込み処理の流れを示すフローチャートである。 図10は、複数のCPUを用いて新PSWの形式チェックを行う例を示す図である。 図11は、複数の命令実行用CPUに対して新PSWの形式チェックを行う例を示す図である。 図12は、割込み制御プログラムを実行するコンピュータシステムの例を示す図である。
以下に、本願の開示する情報処理装置および割込み制御プログラムの実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。
図1は、実施例1に係る情報処理装置の構成を示すブロック図である。図1に示すように、情報処理装置1は、記憶部2とCPU(Central Processing Unit)3とCPU4とを有し、それぞれがバスを介して接続されるサーバなどの装置である。記憶部2は、割込み処理に対応するプログラム状態語と当該プログラム状態語に異常があるか否かを示す判定結果とを対応付けて記憶するメモリなどである。
プログラム状態語とは、PSW(Program Status Word)ともいう。割り込み処理に対応するプログラム状態語には、その割り込み処理の実行内容(命令)を規定したデータの格納先を示す命令アドレス(IA)と、PSWのデータ形式によって予め定められたデータとが含まれる。CPUは、割り込みの発生に応じて、割り込み処理に対応するプログラム状態語から命令アドレスを読出し、読み出した命令アドレスに基づいて割り込み処理の命令を読み出す。
CPU3は、通常の演算処理や割込み処理などの各種処理を実行していない演算処理装置であり、判定部3aと結果格納部3bとを有する。かかる判定部3aは、割込み処理に対応するプログラム状態語に異常があるか否か、すなわち命令アドレスの見出しに使用可能か否かを判定する。プログラム状態語についての判定は、プログラム状態語に含まれるデータ形式によって予め定められるデータが、データ形式に合致しているかによって判定される。結果格納部3bは、判定部3aによって判定されたプログラム状態語と判定結果とを対応付けて、記憶部2に格納する。
CPU4は、通常の演算処理や割込み処理などの各種処理を実行する演算処理装置であり、結果取得部4aと処理実行部4bとを有する。例えば、CPU4は、情報処理装置1が搭載するCPUやOS(Operating System)とは異なるアーキテクチャのCPUやOSをエミュレートする処理なども実行する。かかる結果取得部4aは、割込み処理が発生した場合に、当該割込み処理に対応するプログラム状態語の判定結果を記憶部2から取得する。処理実行部4bは、結果取得部4aによって取得された判定結果が正常である場合に、当該判定結果に対応付けられたプログラム状態語を記憶部2から取得し、取得したプログラム状態語の命令アドレスを用いて、割込み処理を実行する。
上述したように、情報処理装置1は、割込み処理などの各種処理を実行していないCPU3で、PSWのチェックを割込み発生前に実行しておく。そして、情報処理装置1は、CPU4が割込み処理を実行する場合に、PSWのチェックを実施することなく割込み処理を開始する。この結果、割込み処理の処理時間を短縮することができる。また、CPU4が、結果取得部4aと処理実行部4bとに加えて、さらに判定部3aと結果格納部3bとを有するようにしても良い。通常の演算処理や割込み処理などの各種処理の合間に判定処理を実行しておくことによって、CPU4は、割り込み処理の実行を、PSWの形式チェックを除いて行なうことができる。
次に、実施例2に係る情報処理装置について説明する。実施例2では、情報処理装置の構成、処理の流れ、実施例2による効果について順に説明する。なお、実施例2では、割込み処理に対応するPSW(Program Status Word)を「新PSW」と呼び、割込み処理発生時にCPUがレジスタ等に保持しているPSWを「旧PSW」と呼ぶ。
[情報処理装置の構成]
図2は、実施例2に係る情報処理装置の構成を示すブロック図である。図2に示すように、情報処理装置10は、通信制御I/F部11と入出力部12と補助記憶部13と主記憶部14と命令実行用CPU15とチェック用CPU16とを有し、それぞれがバスを介して接続される。
通信制御I/F部11は、例えばネットワークカードなど、他の装置との間の通信を制御するインタフェースであり、他の装置から各種要求を受信したり、処理結果等を他の装置に送信したりする。
入出力部12は、例えばキーボードやマウスなどの入力装置、ディスプレイやスピーカーなどの出力装置などである。例えば、入出力部12は、管理者等からトランザクションの実行指示を受信したり、実行結果を表示したりする。補助記憶部13は、命令実行用CPU15が命令実行に使用する各種データを記憶するハードディスクドライブなどの記憶装置である。
主記憶部14は、命令実行用CPU15が命令実行に使用する各種データやプログラムを記憶するメインメモリなどであり、エミュレート領域14aと新PSW記憶領域14cと構成情報記憶領域14dとを有する。
エミュレート領域14aは、命令実行用CPU15でエミュレートするOS等のメモリ空間を表現する領域であり、PSA(Program Save Area)領域14bを有する。例えば、情報処理装置10がLINUX(登録商標)を実行している状況で、メインフレームに用いられる汎用機用OSをエミュレートする場合、汎用機用OSのメモリ空間を表現する領域である。
PSA領域14bは、割込み発生時にロードされる新PSWや割込み発生時に命令実行用CPU15が保持していた旧PSWなどを格納する、エミュレート領域14a内で予め予約された領域である。また、PSA領域14bは、割込み発生時のレジスタの内容、割込みコードなどの割込み関連情報も格納する。
図3は、PSA領域に格納される情報の例を示す図である。図3に示すPSA領域は、例えば、エミュレート領域14aの低アドレス領域である0バイトから512バイトなどに予約されて格納される。なお、図3に示した各数値はあくまで例示であり、これに限定されるものではない。また、図3に示した割込み種別も例示であり、これに限定されるものではない。
図3に示すように、「0バイト〜7バイト」には、再始動割込みが発生した場合に、命令実行用CPU15がロードする新PSWが格納されている。「8バイト〜15バイト」には、再始動割込みが発生した場合に、命令実行用CPU15がレジスタ等に保持していた旧PSWが格納されている。「24バイト〜31バイト」には、外部割込みが発生した場合に、命令実行用CPU15がレジスタ等に保持していた旧PSWが格納されている。「32バイト〜39バイト」には、SVC(supervisor call)割込みが発生した場合に、命令実行用CPU15がレジスタ等に保持していた旧PSWが格納されている。
「40バイト〜47バイト」には、プログラム割込みが発生した場合に、命令実行用CPU15がレジスタ等に保持していた旧PSWが格納されている。「48バイト〜55バイト」には、マシンチェックが発生した場合に、命令実行用CPU15がレジスタ等に保持していた旧PSWが格納されている。「56バイト〜63バイト」には、入出力割込みが発生した場合に、命令実行用CPU15がレジスタ等に保持していた旧PSWが格納されている。
「88バイト〜95バイト」には、外部割込みが発生した場合に、命令実行用CPU15がロードする新PSWが格納されている。「96バイト〜103バイト」には、SVC割込みが発生した場合に、命令実行用CPU15がロードする新PSWが格納されている。「104バイト〜111バイト」には、プログラム割込みが発生した場合に、命令実行用CPU15がロードする新PSWが格納されている。「112バイト〜119バイト」には、マシンチェックが発生した場合に、命令実行用CPU15がロードする新PSWが格納されている。「120バイト〜127バイト」には、入出力割込みが発生した場合に、命令実行用CPU15がロードする新PSWが格納されている。「128バイト〜512バイト」には、割込み関連情報や情報処理装置10が各種処理を実行する際に使用する制御情報等が格納されている。
新PSW記憶領域14cは、命令実行用CPU15とチェック用CPU16との間で、割込みが発生した場合に用いる情報を共有する領域であり、「割込み種別」ごとに、「新PSW、使用可能フラグ、チェック結果」を対応付けて記憶する。
「割込み種別」とは、例えば外部割込み、入出力割込み、プログラム割込みなど割込みの種類を示す。「新PSW」とは、割込み発生時にロードされる例えば64ビットのPSWであり、情報処理装置10が有するエミュレート動作機構等の仕様に従ったフォーマットで記述される。「使用可能フラグ」は、新PSWが使用可能か否かを判定する際に用いる2ビットのフラグである。「使用可能フラグのbit0」は、PSA領域14b内の新PSWが書き換えられたか否かを示すフラグであり、書き換えられた場合には「1」、書き換えられていない場合には「0」が格納される。また、「使用可能フラグのbit1」は、チェック用CPU16による新PSWの形式チェックが完了しているか否かを示すフラグであり、完了している場合には「1」、未完了の場合には「0」が格納される。
ここで、使用可能フラグの判定例を説明する。命令実行用CPU15は、図4に示す値に基づいて、新PSWが使用可能か否かを判定する。図4は、新PSW記憶領域内に記憶される使用可能フラグの判定例を示す図である。図4に示すように、「bit0、bit1」が「0、0」である場合には、更新もされておらず、形式チェックもされていない新PSWが格納されていることを示しているので、命令実行用CPU15は、新PSWは使用不可であると判定する。「bit0、bit1」が「1、0」である場合には、形式チェックがされていない更新された新PSWが格納されていることを示しているので、命令実行用CPU15は、新PSWは使用不可であると判定する。「bit0、bit1」が「0、1」である場合には、形式チェックがされている新PSWが格納されていることを示しているので、命令実行用CPU15は、新PSWは使用可能であると判定する。「bit0、bit1」が「1、1」である場合には、形式チェックはされたが、チェック後に更新されている新PSWが格納されていることを示しているので、命令実行用CPU15は、新PSWは使用不可であると判定する。なお、ここでは2ビットの情報を用いる例を説明したが、これに限定されるものではない。
「チェック結果」は、チェック用CPU16がPSWに異常があるか否かを判定した結果、例えば、新PSWの形式チェック結果を示す2ビットの情報である。図5は、新PSW記憶領域内に記憶されるチェック結果の判定例を示す図である。図5に示すように、値が「00」である場合には、新PSWの形式は正しいことを示しており、「01」である場合には、新PSWの形式が不正であることを示している。また、値が「10」である場合には、新PSWの命令アドレス(IA)が奇数であることを示しており、「11」は、本実施例では使用されない値である。なお、ここでは2ビットの情報を用いる例を説明したが、これに限定されるものではない。
図2に戻り、構成情報記憶領域14dは、チェック用CPU16や命令実行用CPU15などの割当て方を決定する際に用いる、命令実行CPU数や余剰CPU数等のシステム構成情報を記憶する。ここで記憶される「命令実行CPU数」は、命令を実行する又は命令を実行しているCPUの数であり、「余剰CPU数」は、命令を実行しない又は命令を実行していないCPUの数である。なお、ここで記憶される情報は、管理者等によって格納されてもよく、情報処理装置10が各CPUの負荷状況や各CPUの命令処理状況に基づいて格納するようにしてもよい。
命令実行用CPU15は、新PSWの形式チェックを除く割込み処理や、命令エミュレーション処理を実行するCPUであり、命令エミュレート実行部15aと割込み実行部15bと新PSW更新部15cとを有する。なお、命令実行用CPU15は、情報処理装置10が有するOSやCPUのアーキテクチャとは異なるアーキテクチャのOSやCPUをエミュレートする処理以外にも、通常の演算処理等も実行する。
命令エミュレート実行部15aは、OSやCPUをエミュレートし、エミュレートしたOSやCPUなどの命令を実行する。例えば、命令エミュレート実行部15aは、主記憶部14に表現されたエミュレート領域14aを用いて、エミュレートしているOSやCPUなどの命令を実行し、命令エミュレーション処理を実行する。
割込み実行部15bは、割込み処理が発生した場合に、当該割込み処理に対応する新PSWの判定結果を新PSW記憶領域14cから取得する。そして、割込み実行部15bは、取得された判定結果が正常である場合に、当該判定結果に対応付けられた新PSWを新PSW記憶領域14cから取得し、取得した新PSWの命令アドレスを用いて、割込み処理を実行する。
例えば、割込み実行部15bは、外部割込みが発生した場合に、割込み発生時にレジスタ等に保持している旧PSWをPSA領域14bに格納する。続いて、割込み実行部15bは、外部割込みの新PSWに対応付けられた「使用可能フラグ」を新PSW記憶領域14cから取得する。そして、割込み実行部15bは、取得した「使用可能フラグ」が「0、0」、「1、0」、「1、1」である場合には、当該新PSWが使用不可であると判定して、「使用可能フラグ」が「0、1」になるまで「使用可能フラグ」を監視したり、自ら例外処理を実行したりする。また、割込み実行部15bは、取得した「使用可能フラグ」が「0、1」である場合には、当該新PSWが使用可能であると判定し、当該新PSWに対応付けられた「チェック結果」を新PSW記憶領域14cから取得する。なお、割込み実行部15bは、例外処理後に、使用可能フラグをクリアする。もしくは、例外処理によって、例外処理後に、使用可能フラグがクリアされる。
そして、割込み実行部15bは、取得した「チェック結果」が「00」である場合には、当該新PSWの形式が正しいと判定し、当該新PSWを新PSW記憶領域14cから取得する。続いて、割込み実行部15bは、取得した新PSWの命令アドレスを用いて、外部割込み処理を終了する。一方、割込み実行部15bは、取得した「チェック結果」が「01」である場合には、当該新PSWの形式に不正があると判定して、処理を終了したり、例外処理を実行したりする。同様に、割込み実行部15bは、取得した「チェック結果」が「10」である場合には、当該新PSWの命令アドレスが奇数であると判定して、処理を終了したり、例外処理を実行したりする。
また、実行した割込み処理が終了した場合に、割込み実行部15bは、割込み処理が終了したことを命令エミュレート実行部15aに通知する。通知された命令エミュレート実行部15aは、割込み発生時にPSA領域14bに格納した旧PSWをロードし、当該旧PSWの命令アドレス等を用いて、割込み発生によって中断した処理を再開する。
図2に戻り、新PSW更新部15cは、PSA領域14bに格納される新PSWを更新する。例えば、新PSW更新部15cは、OSや割込みプログラム等から更新指示を受け付けた場合に、該当する新PSWを更新する。すると、新PSW更新部15cは、更新した新PSWに対応付けて新PSW記憶領域14cに記憶される「使用可能フラグ」の「bit0」を「1」にする。すなわち、新PSW更新部15cは、新PSWの更新と「使用可能フラグ」の更新とを同期させる。
同期させる手法の一例としては、新PSW更新部15cは、新PSWの更新を検出するトラップを主記憶部14上で実行し、新PSWの更新を検出すると、カーネル等に通知する。この通知を受けたカーネルは、該当する新PSWに対するアクセスを排他する。そして、新PSW更新部15cは、該当する新PSWの「使用可能フラグ」の「bit0」を「1」にする。このようにすることで、新PSW更新部15cは、新PSWの更新と「使用可能フラグ」の更新とを同期させることができる。さらに、新PSWが更新されて「使用可能フラグ」が更新されるまでの間に、新PSWがロードされることを防止できる。
チェック用CPU16は、新PSWの形式に異常がないかを判定するCPUであり、チェック処理部16aとチェック結果格納部16bとを有する。このチェック用CPU16は、通常の演算処理や割込み処理などの各種処理を実行しないCPUである。また、形式チェックを実行する割込み種別は、任意に指定することができる。
チェック処理部16aは、所定のタイミングで、割込み処理に対応する新PSWに異常があるか否かを判定する形式チェックを実施する。例えば、チェック処理部16aは、OS等の操作によってPSA領域14bに新PSWが新たに格納された場合や新PSW記憶領域の「使用可能フラグ」の「bit0」が「1」になったことを検出した場合に、チェック処理部16aは、該当する新PSWをPSA領域14bからロードして、形式チェックを実行する。
チェック処理部16aが実行する形式チェック手法は、CPU等のアドレスモードやビット幅等によって特定されるものである。情報処理装置10は、任意にCPUを用いることができ、任意にアドレスモードを利用することができるので、アドレスモードに応じたチェック手法であれば、いずれのチェック手法も用いることができる。
例えば、アドレスモードが31ビットの場合、チェック処理部16aは、64ビットの新PSWのうち、ビット24〜32の値が全て0であるか、ビット0の値が0であるかをチェックする。さらに、チェック処理部16aは、ビット2〜3の値が0であるか、ビット12の値が1であるか、ビット16の値が0であるか、ビット17の値が1であるか、新PSWの命令アドレスが奇数でないかをチェックする。そして、チェック処理部16aは、チェック結果をチェック結果格納部16bに出力する。
チェック結果格納部16bは、チェック処理部16aによって異常があるか否かが判定された新PSWと判定結果とを対応付けて、新PSW記憶領域14cに格納する。例えば、チェック結果格納部16bは、入出力割込みの新PSWのチェック結果として、「新PSWの形式は正しい」ことをチェック処理部16aから受信したとする。この場合、チェック結果格納部16bは、「入出力割込みの新PSW」とチェック結果「00」とを対応付けて新PSW記憶領域14cに格納し、「使用可能フラグ」のビット1に「1」を格納する。
また、チェック結果格納部16bは、外部割込みの新PSWのチェック結果として、「新PSWの命令アドレスが奇数である」ことをチェック処理部16aから受信したとする。この場合、チェック結果格納部16bは、「入出力割込みの新PSW」とチェック結果「10」とを対応付けて新PSW記憶領域14cに格納し、「使用可能フラグ」のビット1に「1」を格納する。
同様に、チェック結果格納部16bは、プログラム割込みの新PSWのチェック結果として、「新PSWの形式は不正である」ことをチェック処理部16aから受信したとする。この場合、チェック結果格納部16bは、「プログラム割込みの新PSW」とチェック結果「01」とを対応付けて新PSW記憶領域14cに格納し、「使用可能フラグ」のビット1に「1」を格納する。
[新PSWの形式チェックと割込み処理との関係]
次に、新PSWの形式チェックと割込み処理との関係について説明する。図6は、新PSWの形式チェックと割込み処理との関係例を説明する図である。図6に示すように、PSA領域14bには、プログラム割込みに対応する新PSWと入出力割込みに対応する新PSWとが格納されている。
このような状態において、チェック用CPU16は、入出力割込みに対応する新PSW(以下、新PSW(入出力)と呼ぶ)に対応付けて新PSW記憶領域14cに記憶される「使用可能フラグ」を定期的に又は常時監視する。そして、チェック用CPU16は、新PSW(入出力)が書き換えられたことを検出した場合や新PSWが未チェックであると判定した場合、新PSW(入出力)をPSA領域14bからロードする。続いて、チェック用CPU16は、ロードした新PSW(入出力)に対して形式チェックを実行する。そして、チェック用CPU16は、新PSW(入出力)とチェック結果とを新PSW記憶領域14cに格納するとともに、使用可能フラグを更新する。
その後も、チェック結果を格納したチェック用CPU16は、新PSW(入出力)に対応付けられた使用可能フラグを定期的に又は常時監視する。そして、チェック用CPU16は、使用可能フラグによって新PSW(入出力)が更新されたことを検出した場合、再度、新PSW(入出力)をPSA領域14bからロードする。続いて、チェック用CPU16は、上記形式チェックを実行し、その結果と新PSW(入出力)を新PSW記憶領域14cに格納するとともに、使用可能フラグを更新する。
同様に、チェック用CPU16は、プログラム割込みに対応する新PSW(以下、新PSW(プログラム)と呼ぶ)に対応付けて新PSW記憶領域14cに記憶される「使用可能フラグ」を定期的に又は常時監視する。そして、チェック用CPU16は、新PSWが書き換えられたことを検出した場合や新PSWが未チェックであると判定した場合、新PSW(プログラム)をPSA領域14bからロードする。続いて、チェック用CPU16は、ロードした新PSW(プログラム)に対して形式チェックを実行する。そして、チェック用CPU16は、新PSW(プログラム)とチェック結果とを新PSW記憶領域14cに格納するとともに、使用可能フラグを更新する。
その後も、チェック結果を格納したチェック用CPU16は、新PSW(プログラム)に対応付けられた使用可能フラグを定期的に又は常時監視する。そして、チェック用CPU16は、使用可能フラグによって新PSW(プログラム)が更新されたことを検出した場合、再度、新PSW(プログラム)をPSA領域14bからロードする。続いて、チェック用CPU16は、上記形式チェックを実行し、その結果と新PSW(プログラム)を新PSW記憶領域14cに格納するとともに、使用可能フラグを更新する。
一方、命令実行用CPU15は、入出力割込みが発生した場合、割込み発生時にレジスタ等に保持しているPSWを旧PSWとしてPSA領域14bに格納する。その後、命令実行用CPU15は、新PSW(入出力)に対応付けて新PSW記憶領域14cに記憶される使用可能フラグとチェック結果とを取得する。そして、命令実行用CPU15は、新PSW(入出力)が使用可能であると判定した場合には、新PSW記憶領域14cから新PSW(入出力)をロードし、新PSW(入出力)の命令アドレスを用いて、入出力割込みを実行する。
同様に、命令実行用CPU15は、プログラム割込みが発生した場合、割込み発生時にレジスタ等に保持しているPSWを旧PSWとしてPSA領域14bに格納する。その後、命令実行用CPU15は、新PSW(プログラム)に対応付けて新PSW記憶領域14cに記憶される使用可能フラグとチェック結果とを取得する。そして、命令実行用CPU15は、新PSW(プログラム)が使用可能であると判定した場合には、新PSW記憶領域14cから新PSW(プログラム)をロードし、新PSW(プログラム)の命令アドレスを用いて、入出力割込みを実行する。
また、命令実行用CPU15は、PSA領域14bに格納されている新PSW(入出力)を書き換えた場合、書き換えと同時に、新PSW(入出力)に対応付けて新PSW記憶領域14cに記憶される使用可能フラグを更新する。この結果、チェック用CPU16は、新PSW(入出力)が更新されたことを検出し、再度形式チェックを実行することができる。
同様に、命令実行用CPU15は、PSA領域14bに格納されている新PSW(プログラム)を書き換えた場合、書き換えと同時に、新PSW(プログラム)に対応付けて新PSW記憶領域14cに記憶される使用可能フラグを更新する。この結果、チェック用CPU16は、新PSW(プログラム)が更新されたことを検出し、再度形式チェックを実行することができる。
また、命令実行用CPU15が、命令エミュレーと実行部15aと割り込み実行部15bと新PSW更新部15cとに加えて、さらにチェック処理部16aとチェック結果格納部16bとを有するようにしても良い。通常の演算処理や割込み処理などの各種処理の合間に判定処理を実行しておくことによって、CPU4は、割り込み処理の実行を、新PSWの形式チェックを除いて行なうことができる。
[処理の流れ]
次に、図7〜図9を用いて、情報処理装置10による処理の流れを説明する。図7と図8は、新PSWの形式チェックの流れを示すフローチャートであり、図9は、割込み処理の流れを示すフローチャートである。
(新PSWの形式チェックの流れ)
図7に示すように、チェック用CPU16は、新PSW記憶領域14cに記憶される各割込み種別ごとの「使用可能フラグ」を確認し(S101)、新PSWが使用可能か否かを判定する(S102)。
そして、チェック用CPU16は、「使用可能フラグ」の「bit0、bit1」が「0、1」であれば、使用可能と判定し(S102肯定)、処理を終了する。一方、チェック用CPU16は、「使用可能フラグ」の「bit0、bit1」が「0、1」以外であれば、使用不可と判定し(S102否定)、「使用可能フラグ」の「bit0、bit1」を「0、0」に更新する(S103)。
続いて、チェック用CPU16は、PSA領域14bから該当する新PSWを取得し(S104)、情報処理装置10で使用されているアドレスモードをチェックし(S105)、31ビットモードであるか否かを判定する(S106)。
そして、チェック用CPU16は、アドレスモードが31ビットモードである場合(S106肯定)、新PSWのビット24〜32のいずれかが1であるか否かを判定する(S107とS108)。新PSWのビット24〜32のいずれかが1である場合(S108肯定)、チェック用CPU16は、S125を実行する。すなわち、チェック用CPU16は、形式チェック対象の新PSWのチェック結果に「01」を格納する。また、新PSWのビット24〜32のいずれもが0である場合(S108否定)、チェック用CPU16は、ビット0をチェックする(S109)。
一方、チェック用CPU16は、アドレスモードが31ビットモードでない場合、すなわち、24ビットモードである場合(S106否定)、新PSWのビット24〜39のいずれかが1であるか否かを判定する(S110とS111)。新PSWのビット24〜39のいずれかが1である場合(S111肯定)、チェック用CPU16は、S125を実行する。また、新PSWのビット24〜39のいずれもが0である場合(S111否定)、チェック用CPU16は、新PSWのビット0をチェックする(S109)。
その後、チェック用CPU16は、新PSWのビット0が1であると判定した場合(S112肯定)、S125を実行する。一方、図7に示すように、チェック用CPU16は、新PSWのビット0が0であると判定した場合(S112否定)、新PSWのビット2〜3をチェックする(S113)。
そして、チェック用CPU16は、新PSWのビット2〜3のいずれかのビットが1である場合(S114肯定)、S125を実行する。一方、チェック用CPU16は、新PSWのビット2〜3のいずれもが0である場合(S114否定)、新PSWのビット12をチェックする(S115)。なお、新PSWのビット12は、命令実行用CPU15が拡張制御モードで実行しているため、1が設定される。
続いて、チェック用CPU16は、新PSWのビット12が0である場合(S116肯定)、S125を実行する。一方、チェック用CPU16は、新PSWのビット12が1である場合(S116否定)、新PSWのビット16をチェックする(S117)。
続いて、チェック用CPU16は、新PSWのビット16が1である場合(S118肯定)、S125を実行する。一方、チェック用CPU16は、新PSWのビット16が0である場合(S118否定)、新PSWのビット17をチェックする(S119)。
続いて、チェック用CPU16は、新PSWのビット17が1である場合(S120肯定)、S125を実行する。一方、チェック用CPU16は、新PSWのビット17が0である場合(S120否定)、新PSWの命令アドレスをチェックする(S121)。
その後、チェック用CPU16は、新PSWの命令アドレスが奇数である場合(S122肯定)、チェック結果に「10」を格納する(S123)。一方、チェック用CPU16は、新PSWの命令アドレスが偶数である場合(S122否定)、チェック結果に「00」を格納する(S124)。
また、チェック用CPU16は、S108、112、114、116、118、120でYESと判定した場合、すなわち、新PSWが早期指令例外と判定された場合、チェック結果に「01」を格納する(S125)。
その後、チェック用CPU16は、形式チェックを完了した新PSWとチェック結果とを対応付けて新PSW記憶領域14cの所定領域に格納するとともに(S126)、使用可能フラグのビット1を1にする(S127)。このとき、使用可能フラグのビット0は、当該新PSWが書き換えられるまで0である。その後は、S101に戻って、上記処理が繰り返される。
(割込み処理の流れ)
図9に示すように、命令実行用CPU15は、割込み処理が発生すると(S201肯定)、割込み関連情報をPSA領域14bの所定領域に格納する(S202)。さらに、命令実行用CPU15は、割込み発生時にレジスタ等の保持しているPSWを旧PSWとして、PSA領域14bの所定領域に格納する(S203)。
その後、命令実行用CPU15は、発生した割込みに対応する新PSWの使用可能フラグを新PSW記憶領域14cから取得し(S204)、新PSWが使用可能か否かを判定する(S205)。
そして、命令実行用CPU15は、新PSWが使用可能であると判定した場合(S205肯定)、新PSWのチェック結果を新PSW記憶領域14cから取得する(S206)。
そして、命令実行用CPU15は、新PSWのチェック結果が正常である場合(S207肯定)、新PSWの命令アドレスを用いて、割込み処理を実行する(S208)。
一方、命令実行用CPU15は、新PSWのチェック結果が正常でない場合(S207否定)、例外処理が発生したと検出し、S201の処理を繰り返す。また、命令実行用CPU15は、新PSWが使用可能でないと判定した場合(S205否定)、S204を繰り返す。
[実施例2による効果]
実施例2によれば、チェック用CPU16は、割込み処理に対応する新PSWに異常があるか否かを判定する。そして、チェック用CPU16は、異常があるか否かが判定された新PSWとその判定結果とを対応付けて、新PSW記憶領域14cに格納する。また、命令実行用CPU15は、割込み処理が発生した場合に、当該割込み処理に対応する新PSWの判定結果を新PSW記憶領域14cから取得する。そして、命令実行用CPU15は、取得された判定結果が正常である場合に、当該判定結果に対応付けられた新PSWの命令アドレスを用いて、割込み処理を実行する。
つまり、チェック用CPU16が、割込み処理の前に先立って、新PSWの形式チェックを実行し、その結果を格納しておく。この結果、割込み処理を実行する命令実行用CPU15は、割込み処理実行時に、新PSWをチェックする必要がない。したがって、割込み処理が多発した場合であっても、割込み処理におけるオーバヘッドを小さくすることができ、割込み処理を開始するまでに時間を短縮できる。この結果、割込み処理の処理時間を短縮することができる。
また、新PSWが書き換えられると、形式チェックが実行されるので、新PSWの更新とチェック結果とを同期させることができる。したがって、新PSWが更新されたにも係らず、形式チェックが実行されていない、古いチェック結果のままであるなどの不整合を防止できる。
ところで、実施例2では、チェック用CPUと命令実行用CPUとが各々1つの場合について説明したが、これに限定されるものではない。例えば、チェック用CPUが2つで命令実行用CPUが1つであってもよく、チェック用CPUが1つで命令実行用CPUが2つであってもよい。そこで、実施例3では、複数のチェック用CPUや複数の命令実行用CPUを用いる場合について説明する。
(複数のチェック用CPUと1つの命令実行用CPUを有する場合)
図10は、複数のCPUを用いて新PSWの形式チェックを行う例を示す図である。図10に示すように、この情報処理装置は、命令実行用CPUとチェック用CPU30とチェック用CPU40と主記憶部とを有する。
主記憶部は、実施例2で説明した主記憶部14と同様であり、命令実行用CPUは、実施例2で説明した命令実行用CPU15と同様であるので、ここではそれぞれの詳細な説明は省略する。
チェック用CPU30は、入出力割込みに対応する新PSW(入出力)の形式チェックを実行するCPUである。例えば、チェック用CPU30は、新PSW(入出力)に対応付けて新PSW記憶領域14cに記憶される「使用可能フラグ」を定期的に又は常時監視する。そして、チェック用CPU30は、新PSW(入出力)が書き換えられたことを検出した場合や新PSWが未チェックであると判定した場合、新PSW(入出力)をPSA領域14bからロードする。続いて、チェック用CPU30は、ロードした新PSW(入出力)に対して形式チェックを実行する。そして、チェック用CPU30は、新PSW(入出力)とチェック結果とを新PSW記憶領域14cに格納するとともに、使用可能フラグを更新する。
その後も、チェック結果を格納したチェック用CPU30は、新PSW(入出力)に対応付けられた使用可能フラグを定期的に又は常時監視する。そして、チェック用CPU30は、使用可能フラグによって新PSW(入出力)が更新されたことを検出した場合、再度、新PSW(入出力)をPSA領域14bからロードする。続いて、チェック用CPU30は、上記形式チェックを実行し、その結果と新PSW(入出力)を新PSW記憶領域14cに格納するとともに、使用可能フラグを更新する。
チェック用CPU40は、プログラム割込みに対応する新PSW(プログラム)の形式チェックを実行するCPUである。例えば、チェック用CPU40は、新PSW(プログラム)に対応付けて新PSW記憶領域14cに記憶される「使用可能フラグ」を定期的に又は常時監視する。そして、チェック用CPU40は、新PSW(プログラム)が書き換えられたことを検出した場合や新PSWが未チェックであると判定した場合、新PSW(プログラム)をPSA領域14bからロードする。続いて、チェック用CPU40は、ロードした新PSW(プログラム)に対して形式チェックを実行する。そして、チェック用CPU40は、新PSW(プログラム)とチェック結果とを新PSW記憶領域14cに格納するとともに、使用可能フラグを更新する。
その後も、チェック結果を格納したチェック用CPU40は、新PSW(プログラム)に対応付けられた使用可能フラグを定期的に又は常時監視する。そして、チェック用CPU40は、使用可能フラグによって新PSW(プログラム)が更新されたことを検出した場合、再度、新PSW(プログラム)をPSA領域14bからロードする。続いて、チェック用CPU40は、上記形式チェックを実行し、その結果と新PSW(プログラム)を新PSW記憶領域14cに格納するとともに、使用可能フラグを更新する。
(1つのチェック用CPUと複数の命令実行用CPUを有する場合)
図11は、複数の命令実行用CPUに対して新PSWの形式チェックを行う例を示す図である。図11に示すように、この情報処理装置は、記憶部(A)と記憶部(B)と命令実行用CPU50と命令実行用CPU60とチェック用CPU45とを有する。
記憶部(A)は、命令実行用CPU50がエミュレートするアーキテクチャのメモリ空間を表現する記憶部であり、PSA領域と新PSW記憶領域等を有する。PSA領域は、割込み種別に対応した新PSWを記憶し、新PSW記憶領域は、割込み種別ごとに、新PSWと使用可能フラグとチェック結果とを対応付けて記憶する。
記憶部(B)は、命令実行用CPU60がエミュレートするアーキテクチャのメモリ空間を表現する記憶部であり、PSA領域と新PSW記憶領域等を有する。PSA領域は、割込み種別に対応した新PSWを記憶し、新PSW記憶領域は、割込み種別ごとに、新PSWと使用可能フラグとチェック結果とを対応付けて記憶する。
命令実行用CPU50は、新PSWの形式チェックを除く割込み処理や、命令エミュレーション処理を実行するCPUであり、実施例2で説明した命令実行用CPU15と同様の機能を有する。この命令実行用CPU50は、自CPUがエミュレートするアーキテクチャに関する情報を記憶する記憶部(A)を参照し、記憶部(A)に記憶される新PSWの各種情報を用いて割込み処理等を実施する。
例えば、命令実行用CPU50は、入出力割込みが発生した場合、割込み発生時にレジスタ等に保持しているPSWを旧PSWとして記憶部(A)に格納する。その後、命令実行用CPU50は、新PSW(入出力)に対応付けて記憶部(A)に記憶される使用可能フラグとチェック結果とを取得する。そして、命令実行用CPU50は、新PSW(入出力)が使用可能であると判定した場合には、記憶部(A)から新PSW(入出力)をロードし、新PSW(入出力)の命令アドレスを用いて、入出力割込みを実行する。
命令実行用CPU60は、新PSWの形式チェックを除く割込み処理や、命令エミュレーション処理を実行するCPUであり、実施例2で説明した命令実行用CPU15と同様の機能を有する。この命令実行用CPU60は、自CPUがエミュレートするアーキテクチャに関する情報を記憶する記憶部(B)を参照し、記憶部(B)に記憶される新PSWの各種情報を用いて割込み処理等を実施する。
例えば、命令実行用CPU60は、入出力割込みが発生した場合、割込み発生時にレジスタ等に保持しているPSWを旧PSWとして記憶部(B)に格納する。その後、命令実行用CPU60は、新PSW(入出力)に対応付けて記憶部(B)に記憶される使用可能フラグとチェック結果とを取得する。そして、命令実行用CPU60は、新PSW(入出力)が使用可能であると判定した場合には、記憶部(B)から新PSW(入出力)をロードし、新PSW(入出力)の命令アドレスを用いて、入出力割込みを実行する。
チェック用CPU45は、プログラム割込みに対応する新PSW(プログラム)の形式チェックを実行するCPUである。チェック用CPU45は、記憶部(A)と記憶部(B)とのそれぞれに格納される新PSWの形式チェックを実行して、チェック結果等を記憶部(A)や記憶部(B)に格納する。
例えば、チェック用CPU45は、新PSW(プログラム)に対応付けて記憶部(A)に記憶される「使用可能フラグ」を定期的に又は常時監視する。そして、チェック用CPU45は、新PSW(プログラム)が書き換えられたことを検出した場合や新PSWが未チェックであると判定した場合、新PSW(プログラム)を記憶部(A)からロードする。続いて、チェック用CPU45は、ロードした新PSW(プログラム)に対して形式チェックを実行する。そして、チェック用CPU45は、新PSW(プログラム)とチェック結果とを記憶部(A)に格納するとともに、使用可能フラグを更新する。
その後も、チェック結果を格納したチェック用CPU45は、新PSW(プログラム)に対応付けられた使用可能フラグを定期的に又は常時監視する。そして、チェック用CPU45は、使用可能フラグによって新PSW(プログラム)が更新されたことを検出した場合、再度、新PSW(プログラム)を記憶部(A)からロードする。続いて、チェック用CPU45は、上記形式チェックを実行し、その結果と新PSW(プログラム)を記憶部(A)に格納するとともに、使用可能フラグを更新する。
同様に、チェック用CPU45は、新PSW(プログラム)に対応付けて記憶部(B)に記憶される「使用可能フラグ」を定期的に又は常時監視する。そして、チェック用CPU45は、新PSW(プログラム)が書き換えられたことを検出した場合や新PSWが未チェックであると判定した場合、新PSW(プログラム)を記憶部(B)からロードする。続いて、チェック用CPU45は、ロードした新PSW(プログラム)に対して形式チェックを実行する。そして、チェック用CPU45は、新PSW(プログラム)とチェック結果とを記憶部(B)に格納するとともに、使用可能フラグを更新する。
その後も、チェック結果を格納したチェック用CPU45は、新PSW(プログラム)に対応付けられた使用可能フラグを定期的に又は常時監視する。そして、チェック用CPU45は、使用可能フラグによって新PSW(プログラム)が更新されたことを検出した場合、再度、新PSW(プログラム)を記憶部(B)からロードする。続いて、チェック用CPU45は、上記形式チェックを実行し、その結果と新PSW(プログラム)を記憶部(B)に格納するとともに、使用可能フラグを更新する。
(実施例3による効果)
実施例3によれば、余剰CPU、言い換えると、処理を実行していないCPUが複数存在する場合、それぞれのCPUが異なる割込み種別の新PSWの形式チェックを実行するようにすることができる。したがって、チェック用CPUの負荷を軽減でき、さらには、新PSWの形式チェックの遅延防止、高速化を実現することができる。また、複数のアーキテクチャが実行されている場合であっても、それぞれに対応したメモリ空間を生成して、それぞれ別個に新PSWの形式チェックを実行することができる。
さて、これまで本発明の実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。そこで、以下に異なる実施例を説明する。
(チェック用CPUの割当て手法)
実施例1〜3で説明した情報処理装置は、構成情報記憶領域14dに記憶される情報に基づいてチェック用CPUの割当てを決定することができる。例えば、情報処理装置は、構成情報記憶領域14dに記憶される「命令実行CPU数」が「余剰CPU数」よりも少ない場合、1つ以上の複数の余剰なCPUを用いて、1つの命令実行CPUに対する新PSW形式チェックを行うように割り当てる。このとき、各チェックCPUで形式チェックを行う割込み種別の数が均一になるようにする。
また、情報処理装置は、構成情報記憶領域14dに記憶される「命令実行CPU数」と「余剰CPU数」とが同じである場合、1つの余剰なCPUを用いて、1つの命令実行CPUに対応する新PSWの形式チェックを行うように割り当てる。また、情報処理装置は、構成情報記憶領域14dに記憶される「命令実行CPU数」が「余剰CPU数」よりも多い場合、1つの余剰なCPUを用いて、1つ以上の複数の命令実行CPUに対応する新PSWの形式チェックを行うように割り当てる。なお、構成情報記憶領域14dの監視は、特定の領域の書き換えを検知して通知するような構成を用いてもよいし、構成情報格納域の監視を行う処理を別のCPUに割り当てて監視を行ってもよい。
(論理CPU)
実施例1〜3では、複数のCPUを有する情報処理装置を例にして説明したが、これに限定されるものではない。例えば、1つのプロセッサパッケージ内に複数のプロセッサコアを有するマルチコアを用いることもできる。この場合、処理を実行するコアを上述した命令実行用CPUとして機能させ、処理を実行していないコアを上述したチェック用CPUとして機能させることで、実施例1〜3と同様処理を実施することができる。
(エミュレートしない装置への適用)
また、実施例1〜3では、物理的に搭載されていないアーキテクチャをエミュレートしている情報処理装置を例にして説明したが、これに限定されるものではない。例えば、アーキテクチャをエミュレートしない情報処理装置であって、複数のCPUを有する情報処理装置やマルチコアを有する情報処理装置であれば、どのような情報処理装置にも実施例1〜3と同様の処理を実行することができる。
(チェック手法)
実施例1〜3では、アドレスモードとして31ビットモードや24ビットモードを用いた場合の新PSWの形式チェックを例にして説明したが、これに限定されるものではない。例えば、CPU等のアドレスモードやビット幅等によって特定される任意のチェック手法を用いることができる。
(システム構成)
また、本実施例において説明した各処理のうち、自動的におこなわれるものとして説明した処理の全部または一部を手動的におこなうこともできる。あるいは、手動的におこなわれるものとして説明した処理の全部または一部を公知の方法で自動的におこなうこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、例えば図3〜図5等に示した各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、例えばチェック処理部16aとチェック結果格納部16bとを統合するなど各装置の分散・統合の具体的形態は図示のものに限られない。その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、CPUおよび当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
(プログラム)
ところで、上記の実施例で説明した各種の処理は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータシステムで実行することによって実現することができる。そこで、以下では、上記の実施例と同様の機能を有するプログラムを実行するコンピュータシステムの一例を説明する。
図12は、割込み制御プログラムを実行するコンピュータシステムの例を示す図である。図12に示すように、コンピュータシステム100は、RAM101と、HDD102と、ROM103と、CPU104と、CPU105とを有する。ここで、ROM103には、上の実施例と同様の機能を発揮するプログラムがあらかじめ記憶されている。つまり、図12に示すように、ROM103には、命令エミュレート実行プログラム103a、割込み実行プログラム103b、新PSW更新プログラム103cが記憶される。さらに、ROM103には、チェック処理プログラム103d、チェック結果格納プログラム103eがあらかじめ記憶されている。
そして、CPU104とCPU105には、これらのプログラム103a〜103eを読み出して実行することで、図12に示すように、各プロセスとなる。つまり、プログラム103a〜103e各々は、命令エミュレート実行プロセス104a、割込み実行プロセス104b、新PSW更新プロセス104cとなる。また、チェック処理プロセス105a、チェック結果格納プロセス105bとなる。
なお、命令エミュレート実行プロセス104aは、図2に示した命令エミュレート実行部15aに対応し、同様に、割込み実行プロセス104bは、割込み実行部15bに対応する。また、新PSW更新プロセス104cは、図2に示した新PSW更新部15cに対応し、チェック処理プロセス105aは、チェック処理部16aに対応する。また、チェック結果格納プロセス105bは、図2に示したチェック結果格納部16bに対応する。
また、RAM101には、PSA領域テーブル101aと、新PSW記憶領域テーブル101bと、構成情報記憶領域テーブル101cとが設けられる。なお、PSA領域テーブル101aは、図2に示したPSA領域14bに対応し、新PSW記憶領域テーブル101bは、新PSW記憶領域14cに対応し、構成情報記憶領域テーブル101cは、構成情報記憶領域14dに対応する。
ところで、上記したプログラム103a〜103eは、必ずしもROM103に記憶させておく必要はない。例えば、プログラム103a〜103eは、コンピュータシステム100に挿入されるフレキシブルディスク(FD)、CD−ROM、MOディスク、DVDディスク、光磁気ディスク、ICカードなどの「可搬用の物理媒体」に記憶させておくようにしてもよい。また、コンピュータシステム100の内外に備えられるハードディスクドライブ(HDD)などの「固定用の物理媒体」に記憶させておいてもよい。さらに、公衆回線、インターネット、LAN、WANなどを介してコンピュータシステム100に接続される「他のコンピュータシステム」に記憶させておいてもよい。そして、コンピュータシステム100がこれらからプログラムを読み出して実行するようにしてもよい。
すなわち、この他の実施例でいうプログラムは、上記した「可搬用の物理媒体」、「固定用の物理媒体」、「通信媒体」などの記録媒体に、コンピュータ読み取り可能に記録されるものである。そして、コンピュータシステム100は、このような記録媒体からプログラムを読み出して実行することで上記した実施例と同様の機能を実現する。なお、この他の実施例でいうプログラムは、コンピュータシステム100によって実行されることに限定されるものではない。例えば、他のコンピュータシステムまたはサーバがプログラムを実行する場合や、これらが協働してプログラムを実行するような場合にも、本発明を同様に適用することができる。
以上の各実施例を含む実施形態に関し、さらに以下の付記を開示する。
(付記1)割り込み処理を実行する際に読み出すデータの格納先を示すアドレスを含むプログラム状態語を記憶する記憶部を含む記憶装置と、
前記記憶部に記憶した前記プログラム状態語を使用可能か否かについての判定を行なう判定部と、
前記プログラム状態語に前記判定の結果を対応付けて、さらに前記記憶部に記憶する格納部と、
前記割込み処理が発生した場合に、前記プログラム状態語と前記判定の結果とを前記記憶部から取得する取得部と、
取得した前記判定の結果が前記プログラム状態語を使用可能である旨を示す場合に、取得したプログラム状態語に含まれる前記アドレスに基づいてデータを読み出す実行部とを含む演算処理装置と、
を含むことを特徴とする情報処理装置。
(付記2)前記プログラム状態語は、前記プログラム状態語の形式によって、プログラム状態語内の所定のデータ位置に予め定められたデータを含むデータであって、
前記演算処理装置が、
前記プログラム状態語が前記所定のデータ位置に予め定められたデータを含む場合に、前記プログラム状態語を使用可能である旨の判定を行なうこと
を特徴とする付記1に記載の情報処理装置。
(付記3)第1の演算処理装置と第2の演算処理装置と記憶装置とを含む情報処理装置であって、
前記記憶装置は、
割り込み処理を実行する際に読み出すデータの格納先を示すアドレスを含むプログラム状態語を記憶する記憶部を有し、 前記第1の演算処理装置は、
前記記憶部に記憶した前記プログラム状態語が使用可能か否かの判定を行なう判定部と、
前記プログラム状態語に前記判定の結果を対応付けて、さらに前記記憶部に記憶する格納部とを有し、
前記第2の演算処理装置は、
前記割込み処理が発生した場合に、前記プログラム状態語と前記判定の結果とを前記記憶部から取得する取得部と、
取得された前記判定の結果が前記プログラム状態語を使用可能である旨を示す場合に、取得したプログラム状態語に含まれる前記アドレスに基づいてデータを読み出す実行部と
を有することを特徴とする情報処理装置。
(付記4)前記第2の演算処理装置は、前記プログラム状態語が書き換えられた場合に、書き換えられたプログラム状態語に対応付けて、前記プログラム状態語が書き換えられたことを示す更新情報を前記記憶部にさらに対応付けて格納し、
前記第1の演算処理装置の判定部は、前記記憶部に記憶される更新情報に基づいて、前記プログラム状態語が書き換えられたことを検出した場合に、前記プログラム状態語を使用可能か否かの判定を行なうことを特徴とする付記3に記載の情報処理装置。
(付記5)前記第2の演算処理装置は、当該情報処理装置とは異なるアーキテクチャをエミュレートして、当該異なるアーキテクチャの各種処理を実行するプロセッサであり、
前記第1の演算処理装置は、前記異なるアーキテクチャの各種処理を実行しないプロセッサであることを特徴とする付記3に記載の情報処理装置。
(付記6)前記異なるアーキテクチャのメモリ空間を再現した再現領域に前記プログラム状態語を記憶する状態語記憶部を有し、
前記第1の演算処理装置の判定部は、前記状態語記憶部の再現領域に記憶されるプログラム状態語を使用可能か否かの判定を行ない、
前記結果格納部は、前記プログラム状態語と前記判定の結果とを対応付けて、前記状態語記憶部の所定領域に格納し、
前記第2の演算処理装置の取得部は、前記割込み処理が発生した場合に、前記プログラム状態語と前記判定の結果を前記状態語記憶部の所定領域から取得し、
前記処理実行部は、前記取得部によって取得された前記判定の結果が前記プログラム状態語を使用可能である旨を示す場合に、前記取得部によって取得されたプログラム状態語を前記状態語記憶部の所定領域から取得し、取得したプログラム状態語に含まれる前記アドレスを用いてデータを読み出すことを特徴とする付記5に記載の情報処理装置。
(付記7)前記情報処理装置は、複数の演算処理装置を有するものであって、
前記情報処理装置において各種処理を実行する演算処理装置の数と、前記情報処理装置において各種処理を実行しない演算処理装置の数とを対応付けて記憶する装置情報記憶部と、
前記装置情報記憶部に記憶される前記各種処理を実行する演算処理装置の数および前記各種処理を実行しない処理装置の数に基づいて、前記各種処理を実行しない演算処理装置を前記第1の演算処理装置として機能させるか、前記第2の演算処理装置として機能させるかの割り当てを行なうことを特徴とする装置特定部とをさらに有することを特徴とする付記3〜6のいずれか一つに記載の情報処理装置。
(付記8)前記割込み処理の種別が複数ある場合には、前記装置情報記憶部に記憶される前記各種処理を実行しない演算処理装置それぞれに、前記プログラム状態語に異常があるか否かの判定対象となる前記割込み処理を割り当てることを特徴とする付記7に記載の情報処理装置。
(付記9)情報処理装置に、
割り込み処理を実行する際に読み出すデータの格納先を示すアドレスを含むプログラム状態語を記憶する記憶部に記憶した前記プログラム状態語を使用可能か否かについての判定を行なう判定手順と、
前記プログラム状態語に前記判定の結果を対応付けて、さらに前記記憶部に記憶する格納手順と、
前記割込み処理が発生した場合に、前記プログラム状態語と前記判定の結果とを前記記憶部から取得する取得手順と、
取得した前記判定の結果が前記プログラム状態語を使用可能である旨を示す場合に、取得したプログラム状態語に含まれる前記アドレスに基づいてデータを読み出す実行手順と
を実行させることを特徴とする割込み制御プログラム。
(付記10)情報処理装置に適した制御方法であって、
割り込み処理を実行する際に読み出すデータの格納先を示すアドレスを含むプログラム状態語を記憶する記憶部に記憶した前記プログラム状態語を使用可能か否かについての判定を行なう判定と、
前記プログラム状態語に前記判定の結果を対応付けて、さらに前記記憶部に記憶する格納と、
前記割込み処理が発生した場合に、前記プログラム状態語と前記判定の結果とを前記記憶部から取得する取得と、
取得した前記判定の結果が前記プログラム状態語を使用可能である旨を示す場合に、取得したプログラム状態語に含まれる前記アドレスに基づいてデータを読み出す実行と
を含んだことを特徴とする割込み制御方法。
(付記11)第1の演算処理装置と第2の演算処理装置と記憶装置とを含む情報処理装置における前記第1の演算処理装置に
割り込み処理を実行する際に読み出すデータの格納先を示すアドレスを含むプログラム状態語を記憶する記憶部に記憶した前記プログラム状態語が使用可能か否かの判定を行なう判定手順と、
前記プログラム状態語に前記判定の結果を対応付けて、さらに前記記憶部に記憶する格納手順とを実行させ、
前記第2の演算処理装置に、
前記割込み処理が発生した場合に、前記プログラム状態語と前記判定の結果とを前記記憶部から取得する取得手順と、
取得された前記判定の結果が前記プログラム状態語を使用可能である旨を示す場合に、取得したプログラム状態語に含まれる前記アドレスに基づいてデータを読み出す実行手順と
を実行させることを特徴とする割込み制御プログラム。
(付記12)第1の演算処理装置と第2の演算処理装置と記憶装置とを含む情報処理装置に適した割込み制御方法であって、
前記第1の演算処理装置が、
割り込み処理を実行する際に読み出すデータの格納先を示すアドレスを含むプログラム状態語を記憶する記憶部に記憶した前記プログラム状態語が使用可能か否かの判定を行なう判定と、
前記プログラム状態語に前記判定の結果を対応付けて、さらに前記記憶部に記憶する格納とを含み、
前記第2の演算処理装置が、
前記割込み処理が発生した場合に、前記プログラム状態語と前記判定の結果とを前記記憶部から取得する取得と、
取得された前記判定の結果が前記プログラム状態語を使用可能である旨を示す場合に、取得したプログラム状態語に含まれる前記アドレスに基づいてデータを読み出す実行と
を含んだことを特徴とする割込み制御方法。
1 情報処理装置
2 記憶部
3 CPU
3a 判定部
3b 結果格納部
4 CPU
4a 結果取得部
4b 処理実行部
10 情報処理装置
11 通信制御I/F部
12 入出力部
13 補助記憶部
14 主記憶部
14a エミュレート領域
14b PSA領域
14c 新PSW記憶領域
14d 構成情報記憶領域
15 命令実行用CPU
15a 命令エミュレート実行部
15b 割込み実行部
15c 新PSW更新部
16 チェック用CPU
16a チェック処理部
16b チェック結果格納部

Claims (8)

  1. 割込み処理を実行する際に読み出すデータの格納先を示すアドレスを含むプログラム状態語を記憶する記憶部を含む記憶装置と、
    前記記憶部に記憶した前記プログラム状態語を使用可能か否かについての判定を行なう判定部と、
    前記プログラム状態語に前記判定の結果を対応付けて、さらに前記記憶部に記憶する格納部と、
    前記割込み処理が発生した場合に、前記プログラム状態語と前記判定の結果とを前記記憶部から取得する取得部と、
    取得した前記判定の結果が前記プログラム状態語を使用可能である旨を示す場合に、取得したプログラム状態語に含まれる前記アドレスに基づいてデータを読み出す実行部とを含む演算処理装置と、
    を含むことを特徴とする情報処理装置。
  2. 前記プログラム状態語は、前記プログラム状態語の形式によって、プログラム状態語内の所定のデータ位置に予め定められたデータを含むデータであって、
    前記演算処理装置が、
    前記プログラム状態語が前記所定のデータ位置に予め定められたデータを含む場合に、前記プログラム状態語を使用可能である旨の判定を行なうこと
    を特徴とする請求項1に記載の情報処理装置。
  3. 第1の演算処理装置と第2の演算処理装置と記憶装置とを含む情報処理装置であって、
    前記記憶装置は、
    割込み処理を実行する際に読み出すデータの格納先を示すアドレスを含むプログラム状態語を記憶する記憶部を有し、
    記第1の演算処理装置は、
    前記記憶部に記憶した前記プログラム状態語が使用可能か否かの判定を行なう判定部と、
    前記プログラム状態語に前記判定の結果を対応付けて、さらに前記記憶部に記憶する格納部とを有し、
    前記第2の演算処理装置は、
    前記割込み処理が発生した場合に、前記プログラム状態語と前記判定の結果とを前記記憶部から取得する取得部と、
    取得された前記判定の結果が前記プログラム状態語を使用可能である旨を示す場合に、取得したプログラム状態語に含まれる前記アドレスに基づいてデータを読み出す実行部と
    を有することを特徴とする情報処理装置。
  4. 前記第2の演算処理装置は、前記プログラム状態語が書き換えられた場合に、書き換えられたプログラム状態語に対応付けて、前記プログラム状態語が書き換えられたことを示す更新情報を前記記憶部にさらに対応付けて格納し、
    前記第1の演算処理装置の判定部は、前記記憶部に記憶される更新情報に基づいて、前記プログラム状態語が書き換えられたことを検出した場合に、前記プログラム状態語を使用可能か否かの判定を行なうことを特徴とする請求項3に記載の情報処理装置。
  5. 前記第2の演算処理装置は、当該情報処理装置とは異なるアーキテクチャをエミュレートして、当該異なるアーキテクチャの各種処理を実行するプロセッサであり、
    前記第1の演算処理装置は、前記異なるアーキテクチャの各種処理を実行しないプロセッサであることを特徴とする請求項3に記載の情報処理装置。
  6. 前記異なるアーキテクチャのメモリ空間を再現した再現領域に前記プログラム状態語を記憶する状態語記憶部を有し、
    前記第1の演算処理装置の判定部は、前記状態語記憶部に記憶されるプログラム状態語を使用可能か否かの判定を行ない、
    前記格納部は、前記プログラム状態語と前記判定の結果とを対応付けて、前記記憶装置の所定領域に格納し、
    前記第2の演算処理装置の取得部は、前記割込み処理が発生した場合に、前記判定の結果を前記所定領域から取得し、取得された前記判定の結果が前記プログラム状態語を使用可能である旨を示す場合に、前記プログラム状態語を前記所定領域から取得し、
    前記実行部は、前記取得部によって取得された前記判定の結果が前記プログラム状態語を使用可能である旨を示す場合に、前記取得部によって取得されたプログラム状態語に含まれる前記アドレスを用いてデータを読み出すことを特徴とする請求項5に記載の情報処理装置。
  7. 前記情報処理装置は、複数の演算処理装置を有するものであって、
    前記情報処理装置において各種処理を実行する演算処理装置の数と、前記情報処理装置において各種処理を実行しない演算処理装置の数とを対応付けて記憶する装置情報記憶部と、
    前記装置情報記憶部に記憶される前記各種処理を実行する演算処理装置の数および前記各種処理を実行しない演算処理装置の数に基づいて、前記各種処理を実行しない演算処理装置を前記第1の演算処理装置として機能させるか、前記第2の演算処理装置として機能させるかの割り当てを行なうことを特徴とする装置特定部とをさらに有することを特徴とする請求項3〜6のいずれか一つに記載の情報処理装置。
  8. 情報処理装置に、
    割込み処理を実行する際に読み出すデータの格納先を示すアドレスを含むプログラム状態語を記憶する記憶部に記憶した前記プログラム状態語を使用可能か否かについての判定を行なう判定手順と、
    前記プログラム状態語に前記判定の結果を対応付けて、さらに前記記憶部に記憶する格納手順と、
    前記割込み処理が発生した場合に、前記プログラム状態語と前記判定の結果とを前記記憶部から取得する取得手順と、
    取得した前記判定の結果が前記プログラム状態語を使用可能である旨を示す場合に、取得したプログラム状態語に含まれる前記アドレスに基づいてデータを読み出す実行手順と
    を実行させることを特徴とする割込み制御プログラム。
JP2010179561A 2010-08-10 2010-08-10 情報処理装置および割込み制御プログラム Expired - Fee Related JP5565187B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2010179561A JP5565187B2 (ja) 2010-08-10 2010-08-10 情報処理装置および割込み制御プログラム
US13/196,965 US9009422B2 (en) 2010-08-10 2011-08-03 Information processing apparatus and interrupt control method
US14/642,888 US9069742B1 (en) 2010-08-10 2015-03-10 Information processing apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010179561A JP5565187B2 (ja) 2010-08-10 2010-08-10 情報処理装置および割込み制御プログラム

Publications (2)

Publication Number Publication Date
JP2012038197A JP2012038197A (ja) 2012-02-23
JP5565187B2 true JP5565187B2 (ja) 2014-08-06

Family

ID=45565626

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010179561A Expired - Fee Related JP5565187B2 (ja) 2010-08-10 2010-08-10 情報処理装置および割込み制御プログラム

Country Status (2)

Country Link
US (2) US9009422B2 (ja)
JP (1) JP5565187B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8954619B1 (en) 2013-08-07 2015-02-10 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Memory module communication control
US9261098B2 (en) 2013-08-13 2016-02-16 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Fan speed and memory regulator control based on memory margin

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS58117059A (ja) 1981-12-31 1983-07-12 Fujitsu Ltd 情報処理装置
JPS58215779A (ja) 1982-06-07 1983-12-15 Nec Corp デ−タ処理装置
JPS6243737A (ja) 1985-08-21 1987-02-25 Hitachi Ltd 割り込み制御方式
JPH02244334A (ja) * 1989-03-17 1990-09-28 Fujitsu Ltd 情報処理装置
JPH02244345A (ja) * 1989-03-17 1990-09-28 Fujitsu Ltd 情報処理装置
JPH02245937A (ja) * 1989-03-20 1990-10-01 Fujitsu Ltd 情報処理装置
JPH03105529A (ja) * 1989-09-20 1991-05-02 Fujitsu Ltd Psw形式エラー制御回路
JPH0833825B2 (ja) * 1990-01-31 1996-03-29 富士通株式会社 マイクロプロセッサ
US5577231A (en) * 1994-12-06 1996-11-19 International Business Machines Corporation Storage access authorization controls in a computer system using dynamic translation of large addresses
JP3292864B2 (ja) * 1995-02-07 2002-06-17 株式会社日立製作所 データ処理装置
US6842728B2 (en) * 2001-03-12 2005-01-11 International Business Machines Corporation Time-multiplexing data between asynchronous clock domains within cycle simulation and emulation environments
CN1902600A (zh) * 2003-06-17 2007-01-24 皇家飞利浦电子股份有限公司 微控制器和寻址方法
US7117326B2 (en) * 2003-06-26 2006-10-03 Intel Corporation Tracking modifications to a memory
US7383412B1 (en) * 2005-02-28 2008-06-03 Nvidia Corporation On-demand memory synchronization for peripheral systems with multiple parallel processors
US20090182984A1 (en) * 2008-01-11 2009-07-16 International Business Machines Corporation Execute Relative Long Facility and Instructions Therefore

Also Published As

Publication number Publication date
JP2012038197A (ja) 2012-02-23
US9069742B1 (en) 2015-06-30
US20150178228A1 (en) 2015-06-25
US9009422B2 (en) 2015-04-14
US20120042137A1 (en) 2012-02-16

Similar Documents

Publication Publication Date Title
AU2020202180B2 (en) Memory allocation techniques at partially-offloaded virtualization managers
EP3479223B1 (en) Secure booting of virtualization managers
KR101107363B1 (ko) 가상 처리 환경에서 데이터 수집을 용이하게 하기 위한 컴퓨터 프로그램 제품, 컴퓨터-구현된 방법 및 컴퓨터 시스템
CN109564523B (zh) 使用机会性管理程序降低性能可变性
JP4841632B2 (ja) ロジカル・パーティションにプロセッサを割り当てるための方法、装置、およびプログラム
US8793528B2 (en) Dynamic hypervisor relocation
US8533390B2 (en) Circular buffer in a redundant virtualization environment
CN107077384B (zh) 上下文敏感的屏障指令的执行
JP5716824B2 (ja) マルチコアプロセッサシステム
JP5565187B2 (ja) 情報処理装置および割込み制御プログラム
WO2012137239A1 (ja) 計算機システム
KR102558617B1 (ko) 메모리 관리
US20090241111A1 (en) Recording medium having instruction log acquiring program recorded therein and virtual computer system
JP5920509B2 (ja) コントローラの制御プログラム、およびコントローラの制御方法
JP5832408B2 (ja) 仮想計算機システム及びその制御方法
JP2012103952A (ja) メモリダンプ方法
JP2016076152A (ja) エラー検出システム、エラー検出方法およびエラー検出プログラム
JP6036504B2 (ja) 情報処理装置、制御プログラム、制御方法
JP2008123129A (ja) マルチプロセッサシステム、障害処理方法、プログラム及び記録媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130604

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140227

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140304

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140501

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140520

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140602

R150 Certificate of patent or registration of utility model

Ref document number: 5565187

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees