JPS6086638A - Storage management system of program - Google Patents

Storage management system of program

Info

Publication number
JPS6086638A
JPS6086638A JP58195755A JP19575583A JPS6086638A JP S6086638 A JPS6086638 A JP S6086638A JP 58195755 A JP58195755 A JP 58195755A JP 19575583 A JP19575583 A JP 19575583A JP S6086638 A JPS6086638 A JP S6086638A
Authority
JP
Japan
Prior art keywords
program
page conversion
stored
storage
page
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
JP58195755A
Other languages
Japanese (ja)
Inventor
Hidetoshi Yasukawa
安川 英俊
Genichi Mitsuhama
三津浜 元一
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 JP58195755A priority Critical patent/JPS6086638A/en
Publication of JPS6086638A publication Critical patent/JPS6086638A/en
Pending legal-status Critical Current

Links

Classifications

    • 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/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/12Replacement control

Landscapes

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

Abstract

PURPOSE:To perform an optimum memory management for every program by assigning a real storage capacity in every program processing unit and performing page conversion in accordance with a page conversion system designated with the program. CONSTITUTION:An address part of a virtual file 12 which exists on a main memory 16 is retrieved in accordance with operation of the program by a TLB 17. Nevertheless, if a program which is not stored on the memory 16 is required, a storage management control part 14 refers to a task management table TCB 16-2 to operate a CPU13 in accordance with an optimum page conversion system of the program, for example, a program of the FIFO system in a storage management program storage part 15. Thus, the CPU13 converts plural pages stored in the beginning of this program to plural desired pages by a list 16-3, and hereafter, the program of converted pages is used to continue a job. In this manner, the program is controlled most suitably.

Description

【発明の詳細な説明】 〔発明の技術分野〕 本発明社主記憶装置に格納されているプログラムのペー
ジ変換処理を行う場合、プログラム対応にその動作形態
にもつとも適轟なページ変換方式を指定することができ
るようにしたプログラムの記憶管理方式に関する。
[Detailed Description of the Invention] [Technical Field of the Invention] When performing page conversion processing for a program stored in a main storage device, the present invention specifies a page conversion method that is suitable for the program and its operation mode. This invention relates to a program storage management system that allows for the storage of programs.

〔従来技術と問題点〕[Prior art and problems]

データ処理装[Cよシデータ処理を行う場合。 Data processing device [C] When performing data processing.

プログラムにより制御される。このプログラムは通常仮
想ファイル忙格納され、ジョブの実行に必要な部分がメ
インメモリ上構納される。この場合。
Controlled by the program. This program is usually stored in a virtual file, and the parts necessary to execute the job are stored in main memory. in this case.

メインメモ17 Kは複数のジョブのプログラムが格納
され、ジョブ毎に分割されたある複数ページの領域が定
められている。そしてジョブの遂行に際して実行すべき
プログラムがメインメモリ上にないときそれまで格納し
ているページの一部を必要とするページと変換している
。この場合ページの変換アルゴリズム形式に複数のタイ
プがあり、最新に使用されたものを残しもつとも古いと
きK fli用されたものと変換するLRU方式、最初
に取入れたものから最初に変換されるFIFO方式・・
・・・・と複数のものがある。例えば分岐先のあるプロ
グ2ムに対しては一般にLRU方式が適しており、バッ
チ処理プログラムにはFIFO方式が適している◇この
ように複数のプログラムがメインメモリに部分的に格納
されている場合、これらのページ変換方式としては各プ
ログラムの動作形態をみて、総合的にもつとも効果的と
考えられる特定の1つの変換方式により各プログラムの
記憶管理が行われている。それ故1個々のプログラムに
よっては最適状態で管理されていないという欠点がある
The main memo 17K stores programs for a plurality of jobs, and has a plurality of page areas divided for each job. When a program to be executed when executing a job is not in the main memory, a part of the pages stored up to that point is converted into a necessary page. In this case, there are multiple types of page conversion algorithm formats; the LRU method, which retains the most recently used one and converts it to the one used in older Kfli, and the FIFO method, which converts the first one imported first.・・・
There are multiple things... For example, the LRU method is generally suitable for programs with branch destinations, and the FIFO method is suitable for batch processing programs.◇When multiple programs are partially stored in main memory like this As for these page conversion methods, the storage management of each program is performed using a specific conversion method that is considered to be comprehensively effective, considering the operating form of each program. Therefore, there is a drawback that each individual program is not managed in an optimal state.

ところで従来のメモリ管理方式として1つのページプー
ル(実ページの集まり)を複数のプログラム(ジョブ)
で共用し、ページプール毎にページ変換方式を決めてお
く方式があるが、動作特性の異なるプログラムの組合せ
のため、平行動作するプログラムの特性によって同一プ
ログラムの性能の変動が大きいという欠点がある。
By the way, in the conventional memory management method, one page pool (collection of real pages) is used for multiple programs (jobs).
There is a method in which the page conversion method is determined for each page pool, but since it is a combination of programs with different operating characteristics, there is a drawback that the performance of the same program varies greatly depending on the characteristics of the programs running in parallel.

〔発明の目的〕[Purpose of the invention]

本発明の目的は、このような欠点を改善するため、プロ
グラム処理単位(ジョブ)毎に実記憶容量を割尚て、該
プログラムで指定したページ変換方式に従ってページ変
換を行うことによりそのプログラム毎に最適なメモリ管
理を行うことができるプログラムの記憶管理方式を提供
することである。
An object of the present invention is to improve the above drawbacks by allocating real storage capacity for each program processing unit (job) and converting pages according to the page conversion method specified by the program. An object of the present invention is to provide a program storage management method that can perform optimal memory management.

〔発明の構成〕[Structure of the invention]

この目的を達成するため本発明のプログラムの記憶管理
方式では、実記憶部に実行すべきプログラムを格納し、
実行に必要なプログラムが前記実記憶部上に存在しない
とき所定のアルゴリズムによシページ変換を行うように
したデータ処理装置において、プログラムごとに分割さ
れた領域を有する実記憶部と、プログラム毎に最適なペ
ージ変換方式を表示する最適ページ変換表示部と、複数
のページ変換処理プログラムが格納された記憶管理プロ
グラム格納部を有し、ページ変換が発生したときそのプ
ログラムに最適なページ変換方式にもとづきページ変換
を行うようにしたことを特徴とする。
In order to achieve this purpose, the program storage management method of the present invention stores a program to be executed in a real storage section,
In a data processing device that performs page conversion using a predetermined algorithm when a program necessary for execution does not exist on the real storage unit, the real storage unit has an area divided for each program, and an optimal storage area for each program. It has an optimal page conversion display section that displays the most suitable page conversion method, and a storage management program storage section that stores a plurality of page conversion processing programs. The feature is that the conversion is performed.

〔発明の実施例〕[Embodiments of the invention]

本発明を一実施例にもとづき詳述するに先立ち。 Before describing the present invention in detail based on one embodiment.

その概略を説明する。The outline will be explained below.

本発明ではプログラム毎に最も適尚なページング方式を
明示しておく。例えば第1図に示す如く。
In the present invention, the most appropriate paging method is specified for each program. For example, as shown in FIG.

プログラム人の原始テキスト1にそのテキストの最適な
ページ変換方式として[FIFOJを記入しておく。こ
の原始テキスト1をコンノ(イラにより仮想記憶部2に
実行形式に格納するとき、このページ変換方式の部分を
ローダ5によりタスク管理テーブル(TCB)6に記入
しておく。まだ仮想記憶部2に展開されたプログラムの
一部はメインメモリ4に格納し、これによりジョブが実
行されるが、プログ2ムの稼動に応じてページフォルト
が発生し、メインメモリ4上に格納したプログラムの一
部を変換するとき、タスク管理テーブル6にアクセスし
て、#L適変換方式がFIFOであることをよみとり、
記憶管理プログラム3のサブル−チンFIFOにもとづ
きメインメモリ4上のページ変換を行う。これによりプ
ログラムの動作特性に応じた最適方式でページ変換する
ことができる。
Enter [FIFOJ] in source text 1 of the programmer as the optimal page conversion method for that text. When this source text 1 is stored in an executable format in the virtual memory unit 2 by the controller, the page conversion method part is entered in the task management table (TCB) 6 by the loader 5. A part of the expanded program is stored in the main memory 4 and the job is executed, but a page fault occurs as the program runs, and the part of the program stored in the main memory 4 is stored in the main memory 4. When converting, access the task management table 6 and read that the #L suitable conversion method is FIFO,
Page conversion on the main memory 4 is performed based on the subroutine FIFO of the storage management program 3. This allows page conversion to be performed in an optimal manner depending on the operating characteristics of the program.

次に本発明の一実施例を第2図にもとづき説明する。Next, one embodiment of the present invention will be described based on FIG.

第2図において、10は原始テキストファイルでそのデ
レクトリ部分に最適なページ変換方式が表示されており
、第1図の原始テキスト1に対応するものである。11
はコンパイル制御部であり原始テキストファイル10に
高級言語で記入されているプログラムを実行形態に展開
してこれを仮想ファイル12に格納する。131iCP
Uであってプログラムにもとづきジョブを遂行するもの
In FIG. 2, numeral 10 is a source text file in which the optimum page conversion method is displayed in the directory portion, and corresponds to source text 1 in FIG. 11
is a compile control unit that expands the program written in the high-level language in the source text file 10 into an executable form and stores it in the virtual file 12. 131iCP
A device that executes a job based on a program.

14は記憶管理制御部であってメインメモリ16にデー
タを格納するときの制御を行うもの、15は記憶管理プ
ログラム格納部であって、ページ変換に必要な各種のプ
ログラム、例えはLRU方式プログラム、 FIFO方
式プログラム、FILO方式プログラム・・・・・・等
が格納されている。16はメインメモリであり、プログ
ラムの格納されているプログラム領域16−1の外に、
各プログラム毎に最適なページ変換方式の記入されてい
るタスク管理テーブル(TCB) 16−2 、各プロ
グラムのページがどのような状態で使用されているのか
、またメインメモ!716に格納された順位等が記入さ
れるリスト16−3等が存在する。17はT L B 
(Tran−slatlon Look aside 
Buffer )であって、仮想ファイル12のどのア
ドレス部分がメインメモリ16上に存在しているのかを
検索するものである。
14 is a storage management control unit that controls when data is stored in the main memory 16; 15 is a storage management program storage unit that stores various programs necessary for page conversion, such as LRU system programs; FIFO system programs, FILO system programs, etc. are stored. 16 is a main memory, outside the program area 16-1 where programs are stored,
A task management table (TCB) 16-2 that contains the optimal page conversion method for each program, the state in which each program's pages are used, and a main memo! There is a list 16-3 etc. in which the ranks etc. stored in 716 are entered. 17 is TLB
(Tran-slatlon Look aside
Buffer), which searches which address part of the virtual file 12 exists on the main memory 16.

次に第2図の動作について説明する。Next, the operation shown in FIG. 2 will be explained.

データ処理を実行するに先立ち、原始テキスト7フイル
1 OK格納された高級言語のプログラムがコンパイル
制御部11により実行形式にコンパイルされて仮想7ア
イA−12に格納さiする。このときその最適なページ
変換方式の表示も仮想ファイル12に格納される。当該
プログラムを実行する場合、このプログラムの一部が仮
想7アイル12からCPU15によりメインメモリ16
のプログラム領域16−IKK格納れる。通常CPU1
5が実行するジョブは複数なので、各ジョブ毎に同様な
プログラムの一部がプログラム領域16−1に格納され
る。この場合、プログラムごとにメインメモリの記憶領
域を分割して割当てる。このときタスク管理テーブル1
6−2には各グログラム毎に最適なページ変換方式が記
入される。
Prior to executing data processing, the high-level language program stored in the source text file 1 is compiled into an executable format by the compile control unit 11 and stored in the virtual 7i A-12. At this time, an indication of the optimal page conversion method is also stored in the virtual file 12. When executing the program, a part of this program is transferred from the virtual 7 isle 12 to the main memory 16 by the CPU 15.
The program area 16-IKK is stored. Normal CPU1
5 executes a plurality of jobs, a part of a similar program for each job is stored in the program area 16-1. In this case, the storage area of the main memory is divided and allocated for each program. At this time, task management table 1
In 6-2, the optimum page conversion method is entered for each program.

プログラムの稼動に応じて、TLB17の参照にもかか
わらずメインメモリ16上に格納されていないプログラ
ムが必要となり、いわゆるページ7オルトが発生すると
、記憶管理1DIJ御部14#ま上記タスク管理テーブ
ル16−2を参照してそのプログラムの最適ページ変換
方式を認識し2例えばこれがFIFO方式の場合には、
記憶管理プログラム格納部15よりFIFO方式の記憶
管理プログラムによりCPU13を動作させる。こノL
(CよシCPU13はリス)16−3より当該プログラ
ムの最初に格納された複数ページを所望の複数ページと
変換することになる。勿論このとき変換ページ数は複数
ページでなく1ページでもよい。そして以降りこの変換
されたページのプログラムを使用してジョブが継続され
ることになる。
Depending on the operation of the program, a program that is not stored in the main memory 16 despite reference to the TLB 17 becomes necessary, and when so-called page 7 ortho occurs, the memory management 1DIJ control unit 14# or the task management table 16- 2.Recognize the optimal page conversion method for the program by referring to 2.For example, if this is the FIFO method,
The CPU 13 is operated by a FIFO type storage management program from the storage management program storage section 15. Kono L
(In C, the CPU 13 is a squirrel) 16-3 converts the plurality of pages stored at the beginning of the program into the desired plurality of pages. Of course, at this time, the number of converted pages may be one page instead of a plurality of pages. From then on, the job is continued using the program of this converted page.

上記の例はプログラム単位で1つの最適なページ変換方
式が指定されたものであるが、第3図に示す如く、プロ
グラム内を複数に区分し、各区分毎にプログラム自体が
以降のページ変換方式を宣言(& CHGPFLGC)
することもできる。プログラムA′は初めのphase
 1では例えばFIFO方式でページ変換を行なうので
これがまずタスク管理テーブルTCBに記入される。そ
してフェーズ1が終了してフェーズ2になると、今度は
LRU方式でページ変換を行う。このときタスク管理テ
ーブルTCHのページ変換方式指示区分Pはこの宣言に
もとづきLRU方式に訂正される。そしてジョブが進行
してフェーズ2が終りフェーズ3に移行すると、今度は
FIFO方式でページ変換が行われる。
In the example above, one optimal page conversion method is specified for each program, but as shown in Figure 3, the program is divided into multiple sections, and the program itself for each section specifies the subsequent page conversion method. Declare (&CHGPFLGC)
You can also. Program A' is the first phase
1, for example, page conversion is performed using the FIFO method, so this is first entered into the task management table TCB. When Phase 1 ends and Phase 2 begins, page conversion is performed using the LRU method. At this time, the page conversion method instruction section P of the task management table TCH is corrected to the LRU method based on this declaration. When the job progresses and phase 2 ends and phase 3 begins, page conversion is performed using the FIFO method.

このときタスク管理テーブルTCHのページ変換方式指
示区分Pには再びFIFO方式が記入される。
At this time, the FIFO method is again entered in the page conversion method instruction section P of the task management table TCH.

このようにしてプログラムの動作特性が異なるプログラ
ムのフェーズ毎に、その最適ページ変換方式を指定する
こともできる。これによればプログラム全体の最適化が
できる。
In this way, it is also possible to specify the optimal page conversion method for each phase of a program that has different operating characteristics. According to this, the entire program can be optimized.

なお前記の場合には、ブ四グラム内圧その最適なページ
変換方式を表示した例について説明したが、この代りに
コンパイル制御部にプログラム名とそれに対応した最適
ページ変換方式とを示すテーブルを用意し、プログラム
名にもとづきコンパイル制御部が仮想ファイルにこれを
表示するように構成することもできる。
In the above case, an example was explained in which the optimal page conversion method for the four-gram internal pressure was displayed, but instead, a table showing the program name and the corresponding optimal page conversion method is prepared in the compile control section. , the compilation control unit can be configured to display this in a virtual file based on the program name.

このようにプログラムの動作環境(ジョブ)ごとに、使
用するメインメモリ領域を分割して、プ誼グラムにより
指定されたページ変換方式により。
In this way, the main memory area to be used is divided for each program operating environment (job), and the page conversion method specified by the program is used.

プログラムを最適制御するととができる。It is possible to control the program optimally.

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

本発明によればページ変換方式をプログラム特性にそっ
た最適性能な変換方式を選択することができるので、従
来のように固定化された場合に比較して、データ処理能
率をはるかに向上することができる。
According to the present invention, it is possible to select a page conversion method with optimal performance in accordance with the program characteristics, so data processing efficiency can be greatly improved compared to the conventional case where the page conversion method is fixed. I can do it.

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

第1図は本発明の説明図、第2図は本発明の一実施例構
成図、第3図は本発明の他の実施例説明図である。 図中、10は原始テキストファイル、11はコンパイル
制御部、12は仮想7アイル、15はCPU、14は記
憶管理制御部、15は記憶管理プ四グ2ム格納部、16
はメインメモリ、16−1はプログラム領域、1(S−
2はタスク管理テーブル。 16−6はリスト、17はTLBを示す。 特許出願人 富士通株式会社 代理人弁理士 山 谷 晧 榮
FIG. 1 is an explanatory diagram of the present invention, FIG. 2 is a configuration diagram of one embodiment of the invention, and FIG. 3 is an explanatory diagram of another embodiment of the invention. In the figure, 10 is a source text file, 11 is a compilation control unit, 12 is a virtual 7-isle, 15 is a CPU, 14 is a storage management control unit, 15 is a storage management program storage unit, 16
is the main memory, 16-1 is the program area, 1 (S-
2 is the task management table. 16-6 is a list, and 17 is a TLB. Patent applicant Fujitsu Ltd. Representative Patent Attorney Akira Yamatani

Claims (1)

【特許請求の範囲】 実記憶部に実行すべきプログラムを格納し、実行に必要
なグログ2ムが前記実記憶部上に存在しないとき所定の
アルゴリズムによりページ変換を行うようにしたデータ
処理装置Nにおいて、グログラムごとに分割された領域
を有する実記憶部と。 プログラム毎に最適なページ変換方式を表示する最適ペ
ージ変換表示部と、複数のページ変換処理プログラムが
格納された記憶管理プログラム格納部を有し、ページ変
換が発生したときそのグログラムに最適なページ変換方
式にもとづきページ変換を行うようにした仁とを特徴と
するグログラムの記憶管理方式。
[Scope of Claims] A data processing device N that stores a program to be executed in a real storage unit, and performs page conversion using a predetermined algorithm when a program necessary for execution does not exist in the real storage unit. , a real storage section having areas divided for each program. It has an optimal page conversion display section that displays the optimal page conversion method for each program, and a storage management program storage section that stores multiple page conversion processing programs, so that when page conversion occurs, the page conversion that is optimal for that program is provided. A memory management method for glograms, which is characterized by a method that performs page conversion based on the method.
JP58195755A 1983-10-18 1983-10-18 Storage management system of program Pending JPS6086638A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP58195755A JPS6086638A (en) 1983-10-18 1983-10-18 Storage management system of program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP58195755A JPS6086638A (en) 1983-10-18 1983-10-18 Storage management system of program

Publications (1)

Publication Number Publication Date
JPS6086638A true JPS6086638A (en) 1985-05-16

Family

ID=16346419

Family Applications (1)

Application Number Title Priority Date Filing Date
JP58195755A Pending JPS6086638A (en) 1983-10-18 1983-10-18 Storage management system of program

Country Status (1)

Country Link
JP (1) JPS6086638A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008544422A (en) * 2005-06-27 2008-12-04 エービー イニティオ ソフトウェア コーポレーション Memory page management

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008544422A (en) * 2005-06-27 2008-12-04 エービー イニティオ ソフトウェア コーポレーション Memory page management

Similar Documents

Publication Publication Date Title
US4951195A (en) Condition code graph analysis for simulating a CPU processor
EP0950216B1 (en) A processing device for executing virtual machine instructions
EP0327195B1 (en) Processor simulation
JP2000035893A (en) Method for statically initializing arrangement of data processing system, data processing method, data processing system and computer readable storage medium storing program making computer execute its control procedure
JP2001508909A (en) Data processing device for processing virtual machine instructions
JP2001202253A (en) Data processing method and data processor
EP0327198B1 (en) Processor simulation
JPH0683615A (en) Computer for executing instruction set emulation
JPS6086638A (en) Storage management system of program
JP2002182926A (en) Compiling method and computer readable recording medium
US6243798B1 (en) Computer system for allowing a two word jump instruction to be executed in the same number of cycles as a single word jump instruction
JPS6156816B2 (en)
JPS5918787B2 (en) TLB partition method
JP2721377B2 (en) BASIC program compression method
JPH0553827A (en) Dynamic link optimizing system
JP2573391B2 (en) Programmable controller
Djordjević et al. An operating system accelerator
JPH04147340A (en) Data management calling system
JPH0293948A (en) Computer system
JPS62182843A (en) Fast compiling/linking system
JP2000339171A (en) Compile device, its method and recording medium
JPS63172346A (en) Stack allocating method
JPS60214039A (en) Data processor
JPH0744372A (en) Patch processing system for compiled code object
JPH10133886A (en) Data processor