JPH03217952A - Memory block control system - Google Patents
Memory block control systemInfo
- Publication number
- JPH03217952A JPH03217952A JP2013922A JP1392290A JPH03217952A JP H03217952 A JPH03217952 A JP H03217952A JP 2013922 A JP2013922 A JP 2013922A JP 1392290 A JP1392290 A JP 1392290A JP H03217952 A JPH03217952 A JP H03217952A
- Authority
- JP
- Japan
- Prior art keywords
- memory block
- address
- program
- memory
- bus
- 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
- 238000007726 management method Methods 0.000 claims description 6
- 238000000034 method Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 4
- 230000004044 response Effects 0.000 description 1
Landscapes
- Memory System (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は8086CPUを用いたソフトウェアシステム
においてシステムの共通リソースであるメモリブロック
を管理するメモリブロック管理方式に関する。DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to a memory block management method for managing memory blocks, which are common resources of the system, in a software system using an 8086 CPU.
従来8086CPUのシステムにおいてセグメントを越
えるメモリブロックの管理方式には次に示す3つの方法
がある。すなわち、個々のプログラムがメモリブロック
にアクセスする際には、メモリブロックのセグメントに
切り替えてアクセスする第1の方法、プログラムシステ
ムで用いるアドレスの取扱いをセグメントとオフセット
を合わせた32ビットとする第2の方法、個々のプログ
ラムが用いるメモリブロックをそのプログラムのデータ
セグメント内に設け、他のプログラムにメモリブロック
内のデータを引き渡す際には、送り先プログラムのメモ
リブロックにコピーを行う第3の方法である。In the conventional 8086 CPU system, there are the following three methods for managing memory blocks that exceed segments. That is, when an individual program accesses a memory block, the first method is to switch to and access the segment of the memory block, and the second method is to handle the address used in the program system as 32 bits, which is the sum of the segment and offset. A third method is to provide a memory block used by an individual program in the data segment of that program, and when transferring data in the memory block to another program, copy the data to the memory block of the destination program.
上述した従来のメモリブロックの管理方法では、それぞ
れ次に示す問題点がある。すなわち第1の方法では個々
のプログラムがセグメントを切り替えなければならない
ので処理が複雑となる。The conventional memory block management methods described above each have the following problems. That is, in the first method, each program must switch segments, which complicates the processing.
また第2の方法では主に高級言語で用いられている方法
だが、メモリブロックのアクセスに応じてセグメント切
替えが発生し処理能力の低下となる。In the second method, which is mainly used in high-level languages, segment switching occurs in response to memory block accesses, resulting in a reduction in processing performance.
さらに第3の方法では個々のプログラムにメモリブロッ
クを割り付けるため、セグメント切替えの複雑さは避け
られるもののシステム全体のメモリの利用効率は悪くな
る。また、プログラム間のデータ引渡しの際にはセグメ
ント間のメモリブロックからメモリブロックへのデータ
コピーを行わなければならないので処理能力の低下とな
る。Furthermore, in the third method, memory blocks are allocated to individual programs, so although the complexity of segment switching can be avoided, the memory utilization efficiency of the entire system deteriorates. Furthermore, when transferring data between programs, data must be copied from memory block to memory block between segments, resulting in a reduction in processing performance.
本発明のメモリブロック管理方式は、マイクロプロセッ
サを用いたシステムにおいて、個々のプログラムのデー
タセグメント内に設けられた仮想メモリブロックアクセ
スエリアと、前記システム共通として設けられた実メモ
リブロックと、前記仮想メモリブロックアクセスエリア
のアドレスと前記実メモリブロックのアドレスを対応づ
けるアドレス変換装置と、前記仮想メモリブロックアク
セスエリアと前記実メモリブロックの空き塞がりを管理
して前記アドレス変換装置を制御するプログラムとを備
えることを特徴とする。The memory block management method of the present invention, in a system using a microprocessor, has a virtual memory block access area provided in a data segment of each program, a real memory block provided commonly to the system, and the virtual memory The present invention includes an address translation device that associates an address of a block access area with an address of the real memory block, and a program that controls the address translation device by managing free/occupied spaces in the virtual memory block access area and the real memory block. It is characterized by
次に本発明について図面を参照して説明する。 Next, the present invention will be explained with reference to the drawings.
第1図は本発明のメモリブロック管理方式の一実施例に
よるメモリ構成図である。FIG. 1 is a memory configuration diagram according to an embodiment of the memory block management method of the present invention.
第1図において、プログラムAはプログラムAコード部
11とプログラムAデータ部12とから構成され、そし
てプログラムAデータセグメント14の中にプログラム
Aメモリブロックアクセスエリア13が置かれる。ここ
でプログラムAデータセグメントとはプログラムAのア
クセスできるデータエリアであり、この範囲外にはプロ
グラムAがメモリにアクセスすることはできない。プロ
グラムAがプログラムAメモリブロックアクセスエリア
13にアクセスすると、その際のアドレスが実メモリブ
ロック19のアドレスに変換される。また、プログラム
Aとは別セグメントを持つプログラムBもメモリ上に存
在し、その説明はプログラムAと同様である。In FIG. 1, program A is composed of a program A code section 11 and a program A data section 12, and a program A memory block access area 13 is placed in a program A data segment 14. Here, the program A data segment is a data area that program A can access, and program A cannot access memory outside this range. When program A accesses the program A memory block access area 13, the address at that time is converted to the address of the real memory block 19. Further, a program B having a separate segment from program A also exists on the memory, and its explanation is the same as that of program A.
第2図は第1図におけるメモリブロックアクセスエリア
のアドレスと実メモリブロックのアドレスを対応づける
アドレス変換装置の収容位置を示す構成図である。FIG. 2 is a configuration diagram showing the housing position of an address translation device that associates the address of the memory block access area and the address of the real memory block in FIG. 1.
アドレス変換装置24は8086CPU21とメモリ2
6のアドレスバスの間に置かれ、8086CPU2 1
からのアドレスバス23上のアドレスが予め規定された
メモリブロックアクセスエリア13.17のアドレスで
あれば、これに対応する実メモリブロック19のアドレ
スに変換してアドレスバス25を介してメモリ26へ示
す。メモリ26はアドレス変換装置24から示されたア
ドレスに従ってデータバス22を介して8086CPU
21とデータのやりとりを行う。Address translation device 24 includes 8086 CPU 21 and memory 2
6 address buses, 8086CPU2 1
If the address on the address bus 23 from 13.17 is an address in a predefined memory block access area 13.17, it is converted to the corresponding address in the real memory block 19 and shown to the memory 26 via the address bus 25. . The memory 26 is connected to the 8086 CPU via the data bus 22 according to the address indicated by the address translation device 24.
21 and exchanges data.
第3図,第4図はアドレス変換装置の制御を行うプログ
ラムの動作を示すフローチャートである。3 and 4 are flowcharts showing the operation of a program that controls the address translation device.
プログラムAがメモリブロックを使用する場合を例にし
て説明する。プログラムAはメモリブロックの確保をア
ドレス変換装置制御プログラムに要求すると、アドレス
変換装置制御プログラムは第3図に示すようにプログラ
ムAメモリブロックアクセスエリア13の空きエリアを
確保する(ステップ31)。そして確保に成功したかど
うかを判断しくステップ32)、確保成功の場合にはス
テップ33へ進む。次に実メモリブロック19の空きエ
リアを確保する(ステップ33)。An example in which program A uses memory blocks will be explained. When program A requests the address translation device control program to reserve a memory block, the address translation device control program reserves a free area in the program A memory block access area 13 as shown in FIG. 3 (step 31). Then, it is determined whether or not the securing has been successful (step 32), and if the securing has been successful, the process proceeds to step 33. Next, a free area in the real memory block 19 is secured (step 33).
次に確保に成功したかどうかを判断しくステップ34)
、確保成功の場合にはステップ35へ進む。そして確保
したプログラムAメモリブロックアクセスエリア13と
実メモリブロック19の対応づけをアドレス変換装置2
4へ指示する(ステップ35〉。Next, determine whether the securement was successful or not (Step 34)
, if the securing is successful, proceed to step 35. Then, the address translation device 2 associates the secured program A memory block access area 13 with the real memory block 19.
4 (step 35).
またプログラムAがメモリブロックの使用が終了した場
合には、メモリブロックの解放をアドレス変換装置プロ
グラムに要求する。アドレス変換装置制御プログラムは
、第4図に示すように要求されたメモリブロックに対応
するプログラムAメモリブロックアクセスエリア13を
解放しくステップ41)、実メモリブロック19を解放
する(ステップ42).そしてアドレス変換装置24に
対してプログラムAメモリブロックアクセスエリア13
と実メモリブロック19の対応づけを解除するように指
示する(ステップ43)。Furthermore, when program A finishes using the memory block, it requests the address translation device program to release the memory block. As shown in FIG. 4, the address translation device control program releases the program A memory block access area 13 corresponding to the requested memory block (step 41), and releases the real memory block 19 (step 42). Then, the program A memory block access area 13 for the address translation device 24
and to cancel the association between the real memory blocks 19 (step 43).
以上説明したように本発明は、以下に示す効果がある。 As explained above, the present invention has the following effects.
すなわち、個々のプログラムは同時にアクセスするのに
必要なサイズのメモリブロックアクセスエリアを用意す
るだけで、システムで用意された実メモリブロックのエ
リアにアクセスすることができる。またメモリアクセス
エリアとシステム共有の実メモリブロックの対応づけは
メモリブロックの捕捉時に行うので、メモリブロックの
ユーザであるプログラムは各自のデータセグメント内に
アクセスすることになり、セグメント切替えの複雑さお
よびセグメント切替えによる処理能力の低下を避けこと
ができる。さらに実メモリブロックはシステム内のどの
プログラムからも参照可能であり、プログラム間のデー
タの受渡しをセグメント間のコピーを伴わないで行える
ので、コピー処理による処理能力の低下を避けることが
できる。That is, individual programs can access real memory block areas prepared by the system simply by preparing a memory block access area of the size necessary for simultaneous access. In addition, since the memory access area and the system-shared real memory block are associated with each other when the memory block is acquired, programs that are memory block users access their own data segments, which increases the complexity of segment switching and segment Decrease in processing capacity due to switching can be avoided. Furthermore, the real memory block can be referenced by any program in the system, and data can be transferred between programs without copying between segments, so it is possible to avoid a reduction in processing performance due to copy processing.
第1図は本発明のメモリブロック管理方式の一実施例に
よるメモリ構成図、第2図は第1図におけるアドレス変
換装置の収容位置を示す構成図、第3図,第4図はアド
レス変換装置を行う管理プログラムの動作を示すフロー
チャートである。
11・・・プログラムAコード部、12・・・プログラ
ムAデータ部、13・・・プログラムAメモリブロック
アクセスエリア、14・・・プログラムAデータセグメ
ント、15・・・プログラムBコード部、16・・・プ
ログラムBデータ部、17・・・プログラムBメモリブ
ロックアクセスエリア、18・・・プログラムBデータ
セグメント、19・・・実メモリブロック、21・・・
8086CPU、22・・・データパス、232
5・・・アドレスバス、
24・・・アドレス変換装置、
2
6・・・メモリ。FIG. 1 is a memory configuration diagram according to an embodiment of the memory block management system of the present invention, FIG. 2 is a configuration diagram showing the housing position of the address translation device in FIG. 1, and FIGS. 3 and 4 are the address translation device 3 is a flowchart showing the operation of a management program that performs. 11...Program A code section, 12...Program A data section, 13...Program A memory block access area, 14...Program A data segment, 15...Program B code section, 16... - Program B data section, 17... Program B memory block access area, 18... Program B data segment, 19... Real memory block, 21...
8086 CPU, 22... Data path, 232 5... Address bus, 24... Address translation device, 2 6... Memory.
Claims (1)
プログラムのデータセグメント内に設けられた仮想メモ
リブロックアクセスエリアと、前記システム共通として
設けられた実メモリブロックと、前記仮想メモリブロッ
クアクセスエリアのアドレスと前記実メモリブロックの
アドレスを対応づけるアドレス変換装置と、前記仮想メ
モリブロックアクセスエリアと前記実メモリブロックの
空き塞がりを管理して前記アドレス変換装置を制御する
プログラムとを備えることを特徴とするメモリブロック
管理方式。In a system using a microprocessor, a virtual memory block access area provided in a data segment of each program, a real memory block provided commonly to the system, an address of the virtual memory block access area, and the real memory A memory block management method comprising: an address translation device that associates addresses of blocks; and a program that controls the address translation device by managing free/occupied areas of the virtual memory block access area and the real memory block.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2013922A JPH03217952A (en) | 1990-01-23 | 1990-01-23 | Memory block control system |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2013922A JPH03217952A (en) | 1990-01-23 | 1990-01-23 | Memory block control system |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH03217952A true JPH03217952A (en) | 1991-09-25 |
Family
ID=11846676
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2013922A Pending JPH03217952A (en) | 1990-01-23 | 1990-01-23 | Memory block control system |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH03217952A (en) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2013111769A1 (en) * | 2012-01-27 | 2013-08-01 | 京セラドキュメントソリューションズ株式会社 | Memory management device and image processing device |
-
1990
- 1990-01-23 JP JP2013922A patent/JPH03217952A/en active Pending
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2013111769A1 (en) * | 2012-01-27 | 2013-08-01 | 京セラドキュメントソリューションズ株式会社 | Memory management device and image processing device |
| JP2013156781A (en) * | 2012-01-27 | 2013-08-15 | Kyocera Document Solutions Inc | Memory management device and image processing device |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5386566A (en) | Inter-processor communication method for transmitting data and processor dependent information predetermined for a receiving process of another processor | |
| US6205528B1 (en) | User specifiable allocation of memory for processes in a multiprocessor computer having a non-uniform memory architecture | |
| CN101246466B (en) | Management method and device for sharing internal memory in multi-core system | |
| JP2945498B2 (en) | Communication method between systems | |
| EP0205945B1 (en) | Process transparent multi storage mode data transfer and buffer control | |
| US5239643A (en) | Method for reducing disk I/O accesses in a multi-processor clustered type data processing system | |
| JPH01200467A (en) | Apparatus and method for data processing system having equal relationship between a plurality of central processors | |
| JPH10289214A5 (en) | ||
| US6826622B2 (en) | Method of transferring data between memories of computers | |
| JP3169624B2 (en) | Interprocessor communication method and parallel processor therefor | |
| JP2001333137A (en) | Self-operation communication control device and self-operation communication control method | |
| JPH03217952A (en) | Memory block control system | |
| JP3375649B2 (en) | Parallel computer | |
| JP2664827B2 (en) | Real-time information transfer control method | |
| JPH03265945A (en) | Data sharing system for operating systems of different types | |
| JPH07319839A (en) | Distributed shared memory management method and network computer system | |
| JPH04264652A (en) | Dma control system | |
| JPS62286155A (en) | Multi cpu control system | |
| JPS61143858A (en) | How to share files under multiple operating systems | |
| JPH0675793A (en) | Processing method for transmitting and receiving data between virtual computers | |
| JPH10240632A (en) | Online storage device replacement method | |
| CN120631827A (en) | A unified memory and data transmission system and management method for FPGA heterogeneous platforms | |
| CN118779126A (en) | Inter-process communication method, device, storage medium and electronic device | |
| JPH03251926A (en) | Object controller | |
| JPH03154940A (en) | Multi-file processor |