JPH0769831B2 - コンパイラにおけるレジスタ割当て方法 - Google Patents

コンパイラにおけるレジスタ割当て方法

Info

Publication number
JPH0769831B2
JPH0769831B2 JP21939787A JP21939787A JPH0769831B2 JP H0769831 B2 JPH0769831 B2 JP H0769831B2 JP 21939787 A JP21939787 A JP 21939787A JP 21939787 A JP21939787 A JP 21939787A JP H0769831 B2 JPH0769831 B2 JP H0769831B2
Authority
JP
Japan
Prior art keywords
register
logical
registers
variable
allocation
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
JP21939787A
Other languages
English (en)
Other versions
JPS6461822A (en
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 JP21939787A priority Critical patent/JPH0769831B2/ja
Publication of JPS6461822A publication Critical patent/JPS6461822A/ja
Publication of JPH0769831B2 publication Critical patent/JPH0769831B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/44Encoding
    • G06F8/441Register allocation; Assignment of physical memory space to logical memory space

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Devices For Executing Special Programs (AREA)

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、コンパイラにおけるレジスタ割当て方法に関
するものである。
〔従来の技術〕
従来、コンパイラにおけるレジスタ割当て方式として
は、例えば、特開昭61-11851号に記載のようにソースプ
ログラム、あるいはその中間語において、変数のデータ
フロー解析により変数の定義からその定義が有効である
最後の参照までを有効範囲とし、この有効範囲(ライブ
区間)を求め、その変数に対し、その有効範囲内でレジ
スタを割当てる方式が知られている。
〔発明が解決しようとする問題点〕 このようなレジスタ割当て方式においては、変数が定義
されてからその変数の最後の参照までの有効範囲(ライ
ブ区間)の全区間に対して、その変数にレジスタを割当
てた場合の効果が大きいものから順にレジスタを割当て
る。このため、レジスタ割当ての効果を見積り、レジス
タ割当ての優先順位を定めて、この優先順位に従ってレ
ジスタを割当てるようにしている。各変数に対するレジ
スタ割当ての優先順位は割当て規則から計算する。この
レジスタの割当て規則は、一般的には有効範囲の長さを
負の要因とし、有効範囲内のレジスタ割当て対象とする
変数の参照の推定実行回数を正の要因としたもので、こ
の割当て規則から優先順位を計算する。この優先順位は
レジスタ割当ての効果を反映する。すなわち、変数の参
照の多い場合にはレジスタ割当ての効果が大きいので正
の要因とし、レジスタが長期間占有されると必要時に他
の変数に割当てられなくなるので、これを負の要因とし
て、優先順位を計算するため、レジスタ割当ての効果を
反映する。
ところで、例えば、第6図に示すようなプログラム例に
おいては、割当て規則から計算した優先順位によりレジ
スタを割当てた場合、変数yの優先順位が1、変数xの
優先順位が2となり、レジスタ割当ての効果を正しく反
映しているとはいえない。第6図の例では、変数xの有
効範囲が長く、これが負の要因として大きく優先順位に
影響を与え、DOループ内の変数xの参照にレジスタを割
当てると、効果が大きいにもかかわらず、有効範囲の短
い変数yの有効範囲の優先順位の方が高くなる。従っ
て、もしレジスタ割当てに利用可能なレジスタが1個し
かない場合は、変数yにしかレジスタが割当てられな
い。このように場合によっては、レジスタの割当てが効
果的に行われないという問題があった。
本発明は、前記問題点を解決するためになされたもので
ある。
本発明の目的は、コンパイラにおいて、効果的にレジス
タを割当てることができるレジスタ割当て方法を提供す
ることにある。
本発明の前記ならびにその他の目的と新規な特徴は、本
明細書の記述及び添付図面によって明らかになるであろ
う。
〔問題を解決するための手段〕
前記の目的を達成するために本発明においては、ソース
プログラムを変換した中間語の制御構造を解析して制御
フロー情報を得る制御構造解析手段と、レジスタ割当て
手段とを有するコンパイラにおけるレジスタ割当て方法
であって、制御フロー情報に基づいて変数の各参照から
その直前の同一変数の定義又は参照の集合を論理レジス
タとして作成し、論理レジスタをレジスタ割当ての最小
範囲として、各論理レジスタに割当て規則の優先順位に
したがい、異なる変数の参照に対する論理レジスタで重
なりが生じるものには異なるレジスタを割当て、同一変
数の参照に対する論理レジスタで重なりが生じるものに
は、それらに同一レジスタを割当てる際に、既にレジス
タを割当て済みの他の変数に対する論理レジスタと重な
りが生じる場合には、既にレジスタを割当て済みの論理
レジスタに他のレジスタを割当てなおして、同一のレジ
スタを割当てることを特徴とする。
〔作用〕
コンパイラにおける制御構造解析手段は、ソースプログ
ラムを変換した中間語を走査し、GOTO文やIF文等に注目
し中間語上の各実行文の実行の順序を静的に解析して、
制御フロー情報を生成する。レジスタ割当て手段は、ま
ず変数の各参照に注目し、制御フロー情報の出力をもと
に、注目している参照と同一の変数で、直前の定義又は
参照から注目している参照までの間に実行され得る変数
の定義,参照の集合を論理レジスタとして作成する。次
いで、論理レジスタをレジスタ割当ての最小範囲とし
て、各論理レジスタに対して割当て規則の優先順位から
レジスタ割当ての順番を設定する。そして、優先順位に
従って論理レジスタにレジスタを割当てる。この論理レ
ジスタにレジスタを割当てる際、重なりの生じる論理レ
ジスタどうしに対しては、それらが異なる変数に対応す
るものであれば、レジスタの競合が生じないように必ず
異なるレジスタを割当て、同一変数に対応するものであ
れば、同一のレジスタを割当てる。これにより、レジス
タの競合がなく、また、レジスタ割当ての効果が大とな
るように、レジスタ割当てができる。
〔実施例〕
以下、本発明の一実施例を図面を用いて具体的に説明す
る。
第1図は、本発明の一実施例のコンパイラの要部の構成
を示す図である。第1図において、制御構造解析部102
はソースプログラムを変換した中間語101を入力とし、
中間語を基本ブロックという単位に分割する。ここでの
基本ブロックとは、その途中で制御の流れを変える分岐
および他の分岐からの飛び込みのないような中間語上の
実行文の集合である。分岐や他の分岐からの飛び込み
は、それぞれ必ず基本ブロックの最後と最初のみに存在
する。制御構造解析部102の出力は、基本ブロックおよ
び各基本ブロック間の制御の流れを表現した制御フロー
情報103である。
ここで、制御フロー情報とは、各基本ブロックについ
て、その基本ブロックに先行して実行される基本ブロッ
クの集合、その基本ブロックに後続して実行される基本
ブロックの集合、および、プログラム中の各ループにつ
いて、そのループを構成する基本ブロックの集合のこと
とする。
レジスタ割当て部104は、論理レジスタ作成部105および
論理レジスタ割当て部107から構成されている。論理レ
ジスタ作成部105は中間語101および制御フロー情報103
を入力とし、論理レジスタ106を作成して登録する。こ
の論理レジスタ106が、論理レジスタ割当て部107に入力
され、レジスタ割当ての処理が行われ、レジスタ割当て
後の中間語109を出力する。
次に、論理レジスタについて説明する。
変数xの参照rxと使用ux(以下、ソースプログラム中の
変数の定義又は参照を単に使用と呼ぶ)に対して、使用
uxの実行後、変数xの他の使用を実行することなく参照
rxを実行するような制御の流れLが存在するとき、使用
uxは参照rxに到達可能であるといい、制御の流れLを使
用uxから参照rxへのPATHという。ここで、使用uxを含む
基本ブロック(Bs)から、制御フロー情報から得られる
後続する基本ブロックを順にたどり、参照rxを含む基本
ブロック(Be)にたどり着ける場合(その基本ブロック
の列をBs,B1,……,BN,Beとする)に、制御のながれL
を、以下のように定義する。
制御のながれL=Bs(ux)∪B1∪B2∪…∪Be(rx) ここで、Bs(ux)はuxからBsの最後までの範囲、Be(r
x)はBeの先頭からrxまでの範囲、Bi(i=1,…)はBi
の先頭から最後までの範囲とする。また、ux,rxをLの
端点という。uxからrxへの全てのPATH上で実行される変
数xの使用の集合をPATH(ux,rx)で表わすとき、参照r
xに対する論理レジスタLR(rx)を次のように定義す
る。
LR(rx)=∪PATH(ux,rx) ux:rxに到達可能な変数xの使用 論理レジスタは通常のライブ区間を求める方法におい
て、変数xの使用が、変数xの他の使用をKILLする(す
なわちデータの流れをさえぎる)として、全く同様に求
める事ができる。
具体的に論理レジスタを構成する場合は、例えばプログ
ラム中のすべての変数の使用に番号をつけ(その番号を
使用番号と呼ぶ)、論理レジスタは使用番号の集合とし
て構成し、また、rxの使用番号と論理レジスタLR(rx)
を対応づけるテーブルを作成することにより、論理レジ
スタを管理する。また、論理レジスタにレジスタを割当
てていく方法においては、例えば、各レジスタ番号に対
してそのレジスタ番号を割当て済みの論理レジスタのリ
ストを対応づけるテーブルを作成することにより、割当
てられたレジスタを保持する。
この論理レジスタLR(rx)に対しては、論理レジスタを
構成する各PATHに対して、 (1)端点に対してレジスタを割当てた場合のLOAD,STO
REの必要性、 (2)端点の実行回数、 (3)PATH内の使用の個数、 の要件(1),(2),(3)により優先順位を与えて
おく。ここで、要件(1)と要件(3)は優先順位を下
げる要件とし、要件(2)は優先順位を上げる要因とす
る。
例えば、次の式の値の大きいものの優先順位が高くなる
ようにする。
ここで、 A=1;端点においてLOADまたは、STOREが必要な場合 A=0;端点においてLOADまたは、STOREが不要な場合 また、実行回数見積り値は分岐パス上に端点がある場合
とループ中に端点がある場合、およびそれら以外の場合
にわけて実行回数を見積もった値である。これらの要件
(1),要件(2)および要件(3)は、全て制御フロ
ー情報103と中間語101よりコンパイル時に決定する。
論理レジスタLR(rx)にレジスタnを割当てるとは、論
理レジスタLR(rx)上の変数xの使用にレジスタnを割
当てることを意味する。この論理レジスタのレジスタ割
当て処理は、各論理レジスタの優先順位に従って、順次
に各論理レジスタにレジスタを割当てていく。論理レジ
スタLR(rx)にレジスタnを割当てるための必要条件
は、次の[条件A]が成立することである。
[条件A] 既にレジスタnを割当て済の全ての論理レジスタグルー
に対して、x≠yならば、 G∩LR(rx)=φ が成立する。
ここに、S1y,S2y,……Skyは 各々変数yの参照を表わすものとする。
この[条件A]における論理レジスタグループとは、次
に定義するような同一レジスタを割当て済の同一変数に
対応する論理レジスタの和集合である。
次に論理レジスタグループの定義を説明する。
Sy,S1y,S2y,……等で変数yの参照を現わすとき、論理
レジスタグループを、次の[I],[II]により定義す
る。
[I]レジスタを割当て済の論理レジスタLR(Sy)は論
理レジスタである。
[II]論理レジスタLR(Sy),LR(S1y),…… LR(Sky)
に既に同一レジスタを割当て済であり、和集合 が論理レジスタグループで LR(Sy)∩Gφ が成立するとき、和集合 LR(Sy)∪G も論理レジスタグループである。
論理レジスタ割当て部107では、優先順位に従って論理
レジスタにレジスタを割当てて行く。もし、必要があれ
ば、既にレジスタを割当て済の論理レジスタグループの
レジスタをレジスタ変更部108によって変更する。
次に、このレジスタ割当ての処理過程を第2図から第4
図を用いて説明する。レジスタ番号1,2,……,Nのレジス
タをレジスタ割当てに利用できるレジスタとし、論理レ
ジスタLR(rx)にレジスタ1,2,……,Nを割当てるものと
する。また、論理レジスタグループを表示する場合は、
単にG1,G2,……,等で表記する。
第2図を参照して、論理レジスタにレジスタを割当てる
処理を説明する。第2図の処理においては、入力が論理
レジスタLR(rx)であり、出力はLR(rx)にレジスタを
割当てが可能か否かの情報である。レジスタ割当て可能
であるときには、レジスタ割当て後の中間語の論理レジ
スタLR(rx)を出力する。
まず、処理401が行われ、レジスタ指定変数のnにレジ
スタの初期値1を与える。次に、処理402において、
[条件A]をチェックすることにより論理レジスタLR
(rx)にレジスタnを割当て可能か否かの判定を行う。
処理402により論理レジスタLR(rx)にレジスタnを割
当て可能であると判定された場合は、処理407に進み、
論理レジスタLR(rx)にレジスタnを割当てて、第2図
で示す処理を終了する。一方、処理402において、論理
レジスタLR(rx)にレジスタnを割当てられないと判定
された場合は、処理403に進み、割当ての阻害要因とな
っている論理レジスタグループG1,G2,……,Gkを求め
る。すなわち、レジスタnを割当て済の論理レジスタグ
ループの中から、論理レジスタLR(rx)に対して[条件
A]を満たさない論理レジスタグループを求め、これを
論理レジスタグループG1,G2,……,Gkとする。次に処理
404に進み、処理404では、処理403で求めた論理レジス
タグループG1,G2,……,Gkのレジスタは全て同時に他の
レジスタに変更可能か否かを判定される。処理404にお
いて変更可能と判定された場合には、処理408に進む。
処理408では論理レジスタグループG1,G2,……,Gkのレ
ジスタを他のレジスタ(n以外のレジスタ)に変更し、
次に処理407に進む。処理407では、論理レジスタLR(r
x)にレジスタnを割当てて、第2図で示す処理を終了
する。また、処理404において、レジスタの変更不可能
と判定された場合は、処理405に進む。そして、処理405
により、現在注目しているレジスタ指定変数nと、最後
のレジスタ番号のNとを比較して、n<Nか否かを判定
する。n<Nであれば、処理406に進み、nをn+1と
して、次の番号のレジスタに対して同様の処理を行うた
め処理402に戻る。一方、処理405においてn≧Nである
場合には、処理409に進み、論理レジスタLR(rx)にレ
ジスタ1,2,……,Nをを割当てることは不可能であるとし
て、第2図の処理を終了する。
次に、第3図を参照して、論理レジスタグループの作成
処理を説明する。第3図において、入力は第2図の手続
きでレジスタnを割当て済の論理レジスタLR(rx)であ
り、出力は論理レジスタLR(rx)を含む論理レジスタグ
ループGである。まず、処理501で論理レジスタグルー
プGの初期値として、論理レジスタLR(rx)を設定す
る。次に、処理502において、既に論理レジスタnを割
当て済の全ての論理レジスタグループ に対して、次の処理503,処理504を繰り返し行うように
する。処理503では、論理レジスタグループGに対し
て、x=yかつG∩G′≠φか否かを判定する。処理50
3の判定で、yesと判定された場合は、処理504に進み、
G∪G′を新たにGとする。処理503でnoと判定された
場合は、Gは変更せずにそのままとする。これにより、
論理レジスタグループを作成する。
次に、第4図を参照して、論理レジスタグループの更新
処理を説明する。第4図において、入力は第3図で作成
したレジスタnを割当て済の論理レジスタグループGで
あり、出力は論理レジスタグループGを更新して、論理
レジスタグループGを構成する論理レジスタの個数を更
に増したものである。
処理601では、レジスタn以外の全てのレジスタkおよ
び既にレジスタkを割当て済の全ての論理レジスタグル
ープG′に対して、次に説明する処理602〜処理605を繰
り返し行わせる。処理602では、論理レジスタグループ
GとG′とが重りをもち、かつG′にレジスタnを割当
て可能か否かの判定を行う。この処理602の判定でyesと
判定された場合には、処理603によりG′のレジスタを
レジスタkからレジスタnに変更し、続いて処理604に
より、G∪G′を新たな論理レジスタグループGとす
る。処理602の判定でnoと判定された場合には、論理レ
ジスタグループGは変更せずにそのままとする。この処
理を行うことにより、論理レジスタグループの更新処理
を行う。
このようにして、第2図〜第4図の処理を優先順位の高
いもの順に、各論理レジスタに対して実行し、レジスタ
の割当て処理を行い、対応する中間語上の変数の使用に
レジスタを割当てて、レジスタ割当て部104からの出力
とする。これにより、論理レジスタおよび論理レジスタ
ループに対して、これらを連結させながら順次にレジス
タが割当てられるため、最適なレジスタ割当てを行うこ
とができる。
以上、説明したように、この実施例のレジスタ割当て方
法によれば、変数の有効範囲(ライブ区間)を変数の参
照に注目した論理レジスタと呼ぶ小範囲(変数の各参照
からその直前の同一変数の定義又は参照の集合)に分割
して、各論理レジスタ毎に、優先順位に従って、レジス
タを割当てるようにする。そして、論理レジスタに対す
るレジスタの割当ては、重なりのある他の変数の論理レ
ジスタとはレジスタが異なるようにレジスタを割当てを
行ない、重なりのある同一変数の論理レジスタには、論
理レジスタを連結して、同一レジスタを割当てるように
する。このレジスタ割当てでは、必要があれば既にレジ
スタを割当てた論理レジスタのレジスタを変更しなが
ら、レジスタ割当てを行うようにする。
したがって、この実施例によるレジスタ割当て方法を、
第6図に示したようなプログラム例に対して適用する
と、第5図に示すように変数xと変数yに対して、論理
レジスタX1,X2,X3,Yが生成されることになる。すなわ
ち、変数xと変数yの有効範囲(ライブ区間)は、それ
ぞれ論理レジスタX1,X2,X3,Yに分割され、優先順位はレ
ジスタ割当て規則により論理レジスタX2,X3,Y,X1の順に
なる。この順にレジスタを割当て、同一変数で重なりが
あるものに対しては、同一レジスタを割当てるようにす
る。このようにすれば、もしレジスタ割当てに利用可能
なレジスタが1個しかない場合には、X2∪X3およびYに
レジスタが割当てられる。これにより、ループ中の変数
xに対して、レジスタを割当てられる。これによりルー
プ中での変数xのレジスタへのLOADが不要となり、従来
の方式に比較して、実行速度の速いオブジェクトプログ
ラムの生成が可能となる。
このように、本実施例によれば、オブジェクトプログラ
ム全体において効果の大きいレジスタ割当てが可能とな
る。
以上、本発明を前記実施例に基づき具体的に説明した
が、本発明は、前記実施例に限定されるものではなく、
その要旨を逸脱しない範囲において、種々変形し得るこ
とは勿論である。
〔発明の効果〕
以上、説明したように、本発明によれば、変数の各参照
点ごとに論理レジスタを形成して、レジスタ割当て効果
の大きいものからレジスタ割当てを行なうので、オブジ
ェクトプログラム全体において効果の大きいレジスタ割
当てを行なうことができる。結果として、実行速度の速
いオブジェクトプログラムの生成が可能となる。
【図面の簡単な説明】
第1図は、本発明の一実施例のコンパイラの要部の構成
を示す図、 第2図は、コンパイラにおける論理レジスタにレジスタ
を割当てる処理の説明図、 第3図は、コンパイラにおける論理レジスタグループ作
成処理の説明図、 第4図は、コンパイラにおける論理レジスタグループ更
新処理の説明図、 第5図は、本発明の一実施例によるレジスタ割当ての例
の説明図、 第6図は、従来のレジスタ割当ての例の説明図である。 図中、101……中間語、102……制御構造解析部、103…
…制御フロー情報、104……レジスタ割当て部、105……
論理レジスタ作成部、106……論理レジスタ、107……論
理レジスタ割当て部、108……レジスタ変更、109……レ
ジスタ割当て後中間語である。

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】ソースプログラムを変換した中間語の制御
    構造を解析して制御フロー情報を得る制御構造解析手段
    と、レジスタ割当て手段とを有するコンパイラにおける
    レジスタ割当て方法であって、制御フロー情報に基づい
    て変数の各参照からその直前の同一変数の定義又は参照
    の集合を論理レジスタとして作成し、論理レジスタをレ
    ジスタ割当ての最小範囲として、各論理レジスタに割当
    て規則の優先順位にしたがい、異なる変数の参照に対す
    る論理レジスタで重なりが生じるものには異なるレジス
    タを割当て、同一変数の参照に対する論理レジスタで重
    なりが生じるものには、それらに同一レジスタを割当て
    る際に、既にレジスタを割当て済みの他の変数に対する
    論理レジスタと重なりが生じる場合には、既にレジスタ
    を割当て済みの論理レジスタに他のレジスタを割当てな
    おして、同一のレジスタを割当てることを特徴とするレ
    ジスタ割当て方法。
JP21939787A 1987-09-01 1987-09-01 コンパイラにおけるレジスタ割当て方法 Expired - Fee Related JPH0769831B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP21939787A JPH0769831B2 (ja) 1987-09-01 1987-09-01 コンパイラにおけるレジスタ割当て方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP21939787A JPH0769831B2 (ja) 1987-09-01 1987-09-01 コンパイラにおけるレジスタ割当て方法

Publications (2)

Publication Number Publication Date
JPS6461822A JPS6461822A (en) 1989-03-08
JPH0769831B2 true JPH0769831B2 (ja) 1995-07-31

Family

ID=16734773

Family Applications (1)

Application Number Title Priority Date Filing Date
JP21939787A Expired - Fee Related JPH0769831B2 (ja) 1987-09-01 1987-09-01 コンパイラにおけるレジスタ割当て方法

Country Status (1)

Country Link
JP (1) JPH0769831B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3648402B2 (ja) * 1999-03-31 2005-05-18 株式会社東芝 コンパイル方法及びコンパイラ装置
JP5165969B2 (ja) * 2007-08-29 2013-03-21 インターナショナル・ビジネス・マシーンズ・コーポレーション プログラムのコンパイルのために変数にレジスタを割り付ける技術

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
中田育男著、「コンパイラ」(昭58−6−10)、産業図書株式会社、P.264−268

Also Published As

Publication number Publication date
JPS6461822A (en) 1989-03-08

Similar Documents

Publication Publication Date Title
US6199093B1 (en) Processor allocating method/apparatus in multiprocessor system, and medium for storing processor allocating program
Habermann Path expressions
US7111287B2 (en) Global processor resource assignment in an assembler
US5367684A (en) Register allocation using an improved register candidate usage matrix
JP4783005B2 (ja) プログラム変換装置、プログラム変換実行装置およびプログラム変換方法、プログラム変換実行方法。
JPS63253468A (ja) ベクトル処理装置
US5901317A (en) Method and system for register allocation using multiple interference graphs
Beatty Register assignment algorithm for generation of highly optimized object code
JPH0769831B2 (ja) コンパイラにおけるレジスタ割当て方法
US5276821A (en) Operation assignment method and apparatus therefor
JP6707198B2 (ja) 分散配置装置、分散配置システム、および、分散配置方法
JP3763452B2 (ja) 情報処理システム、オブジェクトの優先度管理方法、オペレーティングシステム、記録媒体
Broy Denotational semantics of concurrent programs with shared memory
Martin-Vega et al. Scheduling rules for parallel processors
JPH02236638A (ja) レジスタ割付け管理方式
CN117591121A (zh) 用于解析程序代码的方法、电子设备和存储介质
JPH01123328A (ja) 計算機方式
JPH0287232A (ja) プロダクション・システムの並列実行方式
JPH06222926A (ja) 仮想リソース生成方法
JPS63106047A (ja) 動的サブル−チン呼び出し方式
JPH05250338A (ja) マルチプロセッサシステムのタスク割当処理方法
Barta PACOL: A parallel control language
JPH01103742A (ja) 最適コンパイル方式
JPS63245528A (ja) ル−ルブロツク制御方式
JPS6324422A (ja) セグメント方式計算機における2種以上の呼出し手順の共存方式

Legal Events

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