JPS63149741A - Descriptor table control system - Google Patents

Descriptor table control system

Info

Publication number
JPS63149741A
JPS63149741A JP61297150A JP29715086A JPS63149741A JP S63149741 A JPS63149741 A JP S63149741A JP 61297150 A JP61297150 A JP 61297150A JP 29715086 A JP29715086 A JP 29715086A JP S63149741 A JPS63149741 A JP S63149741A
Authority
JP
Japan
Prior art keywords
area
ldt
memory
descriptor
descriptor table
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
JP61297150A
Other languages
Japanese (ja)
Inventor
Tamotsu Mizuguchi
有 水口
Tokuhiro Aritaka
有高 徳裕
Haruo Moritomo
春男 森友
Naoto Ito
直人 伊藤
Hiromi Hasegawa
長谷川 博己
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 JP61297150A priority Critical patent/JPS63149741A/en
Publication of JPS63149741A publication Critical patent/JPS63149741A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To improve the using efficiency of a memory by constituting a local descriptor table (LDT) so as to include increases descriptors and arranging the LDT on a position capable of storing it in the whole memory. CONSTITUTION:The whole memory area 1 is used as a storage area of the LDT, and when an LDT area 50 to be increased can not be increased as it is, a blank memory area 51 capable of storing the area 50 is detected by a table processing means 2, the original LDT is copied in the area 51 and the increased descriptor is written in the area. Since it is unnecessary to prepare an area capable of storing the maximum number of possible descriptors in each LDT, the area using the memory as the LDT can be reduced and the using efficiency of the memory can be improved.

Description

【発明の詳細な説明】 〔概要〕 タスク(1つのプロセス)毎のコード、データ。[Detailed description of the invention] 〔overview〕 Code and data for each task (one process).

スタック等のセグメント(ブロック)単位のディスクリ
プタ(記述子)よりなるローカル・ディスクリプタテー
ブル(以下LDTと称す)を用い、メモリ使用アドレス
空間をプロセッサが管理するディスクリプタテーブル管
理方式において、LDTはタスク毎に持つ点では従来と
同じだが、ディスクリプタが増加する場合は、LDTの
構成としては、この増加するディスクリプタを含む構成
に替え、且つこの配置は、全メ−そり上でこれを収容出
来る位置とすることで、LDT毎に、増加する可能性の
ある最大数のディスクリプタを記憶出来る領域を持たせ
る必要をなくし、メモリの使用効率を向上したものであ
る。
In a descriptor table management method in which the processor manages the memory address space using a local descriptor table (hereinafter referred to as LDT) consisting of descriptors in units of segments (blocks) such as stacks, the LDT is held for each task. This is the same as before, but when the number of descriptors increases, the LDT configuration is changed to a configuration that includes the increased number of descriptors, and this arrangement is set at a position on the entire matrix that can accommodate the increased number of descriptors. This eliminates the need for each LDT to have an area capable of storing the maximum number of descriptors that may increase, thereby improving memory usage efficiency.

〔産業上の利用分野〕[Industrial application field]

本発明は、タスク毎のコード、データ、スタック等のセ
グメント単位のディスクリプタよりなるLDTを用い、
メモリ使用アドレス空間を仮想記憶機能を持つプロセッ
サが管理するディスクリプタテーブル管理方式の改良に
関する。
The present invention uses an LDT consisting of descriptors for each segment such as code, data, and stack for each task.
This paper relates to an improvement in a descriptor table management method in which a processor with a virtual memory function manages a memory address space.

インテル社が最初考案し現在各社が製造している仮想記
憶機能を持つマイクロプロセッサでは、各タスク毎に使
用されるメモリ空間を完全に分離するという思想でつく
られており、従って、メモリ上に、LDTと言う記述子
テーブルを各タスク毎に持たせ、メモリ使用アドレス空
間を管理するハードウェア構造となっている。
Microprocessors with a virtual memory function, first devised by Intel and now manufactured by various companies, are created with the idea of completely separating the memory space used for each task. It has a hardware structure in which each task has a descriptor table called LDT to manage the memory address space.

LDTを用い管理する場合、ディスクリプタとしては、
少なくとも、使用アドレス空間の先頭アドレス及び記憶
している内容(例えばコード)を登録した例えば8バイ
トの一定サイズのものとしている。
When managing using LDT, the descriptor is as follows:
At least, the start address of the used address space and the stored contents (for example, code) are registered and are of a fixed size of, for example, 8 bytes.

この場合、タスクの基本的な要素であるプログラムのコ
ード、データ、スタック等に対応するディスクリプタの
数は略変わらないが、例えばタスクの中に、外部記憶装
置からデータをメモリにロードするものがあると、この
データに対応するディスクリプタの増加要求が発生し、
又データを外部記憶装置に退避させるものがあると、デ
ィスクリプタ削除要求が発生する。
In this case, the number of descriptors corresponding to the basic elements of the task, such as program code, data, stack, etc., remains almost the same, but for example, some tasks load data from an external storage device into memory. Then, a request to increase the descriptor corresponding to this data occurs,
Also, if there is data to be saved to an external storage device, a descriptor deletion request is generated.

従・うて、LDTの記憶領域としては増加する可能性の
ある最大数のディスクリプタを記憶出来る領域が必要と
なるが、LDTの記憶領域としては出来るだけ小さく出
来、メモリの使用効率を向上出来ることが望ましい。
Therefore, the LDT storage area requires an area that can store the maximum number of descriptors that may increase, but the LDT storage area can be made as small as possible and memory usage efficiency can be improved. is desirable.

〔従来の技術〕[Conventional technology]

以下従来例を図を用いて説明する。 A conventional example will be explained below using figures.

第3図は従来例のディスクリプタテーブル管理方式のブ
ロック図である。
FIG. 3 is a block diagram of a conventional descriptor table management system.

従来方式ではLDTを管理し易くする為に、各タスクの
LDTを第3図に示す如く、メモリ上のある連続する領
域に集め、且つ各LDTにはプログラム実行中の最大限
のメモリ獲得要求に伴うディスクリプタの増加を考慮し
て未使用の空きディスクリプタが用意されている。
In the conventional method, in order to easily manage the LDT, the LDT of each task is collected in a certain continuous area in memory, as shown in Figure 3, and each LDT is allocated to meet the maximum memory acquisition request during program execution. In consideration of the accompanying increase in descriptors, unused empty descriptors are prepared.

第3図について説明すると、ディスクリプタテーブル領
域としては、例えば、タスク1.2.3毎の、LDT領
域30.31.32を持ち、各LDT領域には、初期作
業時より必要な、コード・セグメント・ディスクリプタ
40.データ・セグメント・ディスクリプタ41.スタ
ック・セグメント・ディスクリプタ42とプログラム実
行中の最大限のメモリ獲得要求に伴って登録される空き
ディスクリプタ領域43〜4nを持っている。
To explain FIG. 3, the descriptor table area has, for example, LDT areas 30, 31, and 32 for each task 1, 2, and 3, and each LDT area contains code segments necessary from the initial work.・Descriptor 40. Data segment descriptor 41. It has a stack segment descriptor 42 and free descriptor areas 43 to 4n that are registered according to the maximum memory acquisition request during program execution.

プログラム実行中に、メモリ獲得要求又は使用している
メモリが不要になり消去要求が発生すると、ディスクリ
プタ処理部3゛の要求分析部4では、どのタスクのもの
で、その内容及び何ディスクリプタ分の獲得要求か消去
要求かを分析し、例えばタスクlの2デイスクリブタ獲
得要求であれば、検索・判定部5′にて、LDTel域
30の空きディスクリプタ領域を検索し、この部分に収
容出来るか判定し、判定された空きディスクリプタ領域
43.44に、登録・抹消部6゛にて必要な内容を登録
する。
During program execution, when a memory acquisition request or a memory erase request occurs because the memory in use becomes unnecessary, the request analysis unit 4 of the descriptor processing unit 3' determines which task it belongs to, its contents, and how many descriptors are acquired. For example, if it is a 2-disc descriptor acquisition request for task l, the search/determination unit 5' searches for an empty descriptor area in the LDTel area 30 and determines whether it can be accommodated in this area. The registration/deletion unit 6' registers necessary contents in the determined free descriptor areas 43 and 44.

消去要求であれば、消去要求のディスクリプタを検索・
判定部5゛にて検索し、その部分を登録・抹消部6°に
て抹消して空きディスクリプタ領域とする。
If it is an erasure request, search for the erasure request descriptor.
A determination unit 5' searches for the area, and a registration/deletion unit 6' erases that portion to create a free descriptor area.

このように、各タスク毎のLDTを、メモリ上のある連
続する領域に集め、ディスクリプタ処理部3゛を用いプ
ロセッサはディスクリプタテーブルを管理している。
In this way, the LDT for each task is collected in a certain continuous area on the memory, and the processor manages the descriptor table using the descriptor processing section 3'.

(発明が解決しようとする問題点〕 L D T 6J[域としては、プログラム実行中のメ
モリ獲得要求に対応してのディスクリプタ獲得要求に応
じられないとシステムダウンとなるので、獲得要求に応
するだけの空きディスクリプタを持った領域が必要であ
る。ところが、上記従来の方法では、L D T 領域
はタスク毎に区切られており、各LDT毎に獲得要求に
応するだけの空きディスクリプタを持った領域としてい
るので、メモリに占める領域が大きくなり、メモリの使
用効率が悪い問題点がある。
(Problem to be solved by the invention) L D T 6J [In terms of area, if a descriptor acquisition request in response to a memory acquisition request during program execution cannot be responded to, the system will go down, so it is necessary to respond to the acquisition request. However, in the conventional method described above, the LDT area is divided for each task, and each LDT requires an area with enough free descriptors to meet acquisition requests. Since it is a region, it occupies a large area in the memory, and there is a problem that the memory usage efficiency is poor.

〔問題点を解決するための手段〕[Means for solving problems]

上記問題点は、第1図の本発明の原理ブロックよりLD
Tの領域50を増加する時、その侭増加該領域51に元
のLDTを複写し且つ増加したディスクリプタを書き込
ませる処理をするテーブル処理手段2を持たせ、プロセ
ッサがメモリ使用アドレス空間を管理する、本発明のデ
ィスクリプタテーブル管理方式により解決される。
The above problem can be solved by the principle block of the present invention shown in FIG.
When increasing the area 50 of T, a table processing means 2 is provided for copying the original LDT and writing the increased descriptor to the increasing area 51, and the processor manages the memory address space. This problem is solved by the descriptor table management method of the present invention.

〔作用〕[Effect]

する時、その侭増加出来ないときは、テーブル処理手段
2にて、これが収容出来る空きメモリ領域51を見つけ
、該領域51に元のLDTを複写し且つ増加したディス
クリプタを書き込ませる処理をするようにすることで、
LDT毎に可能性のある最大数のディスクリプタを記憶
出来る領域を持たせる必要をなくしているので、LDT
としてメモリを使用する領域を小さく出来、メモリの使
用効率を向上することが出来る。
When the descriptor cannot be increased, the table processing means 2 finds a free memory area 51 that can accommodate it, copies the original LDT and writes the increased descriptor to the area 51. by doing,
This eliminates the need for each LDT to have an area that can store the maximum possible number of descriptors.
As a result, the memory area used can be reduced, and memory usage efficiency can be improved.

〔実施例〕〔Example〕

以下本発明の1実施例に付き図に従って説明する。 An embodiment of the present invention will be described below with reference to the accompanying drawings.

第2図は本発明の実施例のディスクリプタテーブル管理
方式のブロック図である。
FIG. 2 is a block diagram of a descriptor table management system according to an embodiment of the present invention.

第2図では全メモリ領域1は、データ、コード。In FIG. 2, the entire memory area 1 is data and code.

スタック、LDT等に共通に使用出来るようにしている
It can be used commonly for stacks, LDTs, etc.

そこで、第2図を用い、例えば、タスクlのデータ実体
30が増加し、3デイスクリブタのLDT20に対して
1デイスクリブタの増加要求があった場合を例にとり説
明する。
Therefore, with reference to FIG. 2, a case will be explained in which, for example, the data entity 30 of task l increases and a request is made to increase the LDT 20 of the 3-disk scriber by 1 disk scriber.

(a)(b)に示す全メモリ領域1の状態はある時間た
った状態を示しくa)の状態から(b)の状態に移るも
ので、斜線部分は空きメモリ領域である。
The states of the entire memory area 1 shown in (a) and (b) indicate the state after a certain period of time, and the state changes from the state of a) to the state of (b), and the shaded area is an empty memory area.

タスク1の3デイスクリブタのLDT20に対してlデ
ィスクリプタの獲得要求があると、要求分析部4にてこ
れを分析し、タスク1のもので、その内容及び1デイス
クリブタ分の獲得要求であることを分析し、この旨を検
索・判定部5に送る。
When there is a request to acquire an l descriptor to the LDT 20 of the 3-disc scriber in task 1, the request analysis unit 4 analyzes this request and determines that it is from task 1, its contents, and that it is an acquisition request for 1-disc scriber. is analyzed and this fact is sent to the search/judgment section 5.

検索・判定部5では、テーブル処理部2の、ハント部7
に命じ(a)に示すメモリ領域1内で、4デイスクリブ
タ分以上の空き領域、この場合は空きメモリ領域12を
見つけ、ここに4デイスクリブタ分の領域を確保し、複
写部8にてLDT20の内容をここに複写し、増・加し
た1デイスクリブタ分には登録・抹消部6にて新しい内
容を登録し、元のLDT20部分を抹消し空きディスク
リプタ領域とする。
In the search/judgment section 5, the hunt section 7 of the table processing section 2
In the memory area 1 shown in FIG. The contents of the LDT 20 are copied here, and the new contents are registered in the registration/deletion section 6 for the added one disk descriptor, and the original LDT 20 portion is deleted and made into a free descriptor area.

このようにした結果は(b)に示す如くなる。The result obtained in this manner is shown in (b).

消去要求の場合は、その要求を要求分析部4にて分析し
、この旨を検索・判定部5に伝え、テーブル処理部2の
、ハント部7を介してこれに該当するLDTの消去部分
を探し、登録・抹消部6にて抹消し、空きディスクリプ
タ領域とする。
In the case of a deletion request, the request analysis section 4 analyzes the request, informs the search/judgment section 5 of the request, and sends the corresponding deletion portion of the LDT via the hunt section 7 of the table processing section 2. The descriptor area is searched and deleted by the registration/deletion unit 6 to become a free descriptor area.

このように、ディスクリプタ増加要求に対しては、全メ
モリ領域lの、これが収容出来る空き領域を適宜使用す
るので、各L D T SI域を最大ディスクリプタ増
加要求に対応出来る領域とする必要がなくなるので、L
DTとしてメモリを使用する領域を小さく出来、メモリ
を有効に利用出来るようになる。
In this way, in response to a descriptor increase request, the free area of the entire memory area l that can accommodate this is used as appropriate, so there is no need to make each LDTSI area an area that can accommodate the maximum descriptor increase request. , L
The memory area used as a DT can be made smaller and the memory can be used more effectively.

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

以上詳細に説明せる如く本発明によれば、ディスクリプ
タ増加要求に対しては、全メモリ領域lの、これが収容
出来る空き領域を適宜使用するので、各LD′r領域を
最大ディスクリプタ増加要求に対応出来る領域とする必
要がなくなるので、LDTとしてメモリを使用する領域
を小さく出来、メモリを有効に利用出来る効果がある。
As explained in detail above, according to the present invention, in response to a descriptor increase request, the free area of the entire memory area l that can accommodate this is used appropriately, so each LD'r area can respond to the maximum descriptor increase request. Since there is no need to use a memory area, the memory area used as the LDT can be made smaller, and the memory can be used more effectively.

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

第1図は本発明の原理ブロック図、 第2図は本発明の実施例のディスクリプタテーブル管理
方式のブロック図、 第3図は従来例のディスクリプタテーブル管理方式のブ
ロック図である。 図において、 ■は全メモリ領域、 2はテーブル処理部、テーブル処理手段、3.3”はデ
ィスクリプタ処理部、 4は要求分析部、 5.5゛は検索・判定部、 6.6”は登録・抹消部、 7はハント部、 8は複写部、 10.11,12.51は空きメモリ領域、43〜4n
は空きディスクリプタ領域、30.31.32.50は
ローカル・ディスクリプタテーブル領域を示す。 第 3 乏2,1っ。
FIG. 1 is a block diagram of the principle of the present invention, FIG. 2 is a block diagram of a descriptor table management system according to an embodiment of the invention, and FIG. 3 is a block diagram of a conventional descriptor table management system. In the figure, ■ is the entire memory area, 2 is the table processing section, table processing means, 3.3" is the descriptor processing section, 4 is the request analysis section, 5.5" is the search/judgment section, and 6.6" is the registration.・Delete section, 7 is hunt section, 8 is copy section, 10.11, 12.51 are free memory areas, 43 to 4n
indicates a free descriptor area, and 30.31.32.50 indicates a local descriptor table area. 3rd scarcity 2,1.

Claims (1)

【特許請求の範囲】 タスク毎のコード、データ、スタック等のセグメント単
位のディスクリプタよりなるローカル・ディスクリプタ
テーブルを用い、プロセッサがメモリ使用アドレス空間
を管理するディスクリプタテーブル管理方式において、 ローカル・ディスクリプタテーブルの記憶領域としては
、全メモリ領域(1)とし、且つディスクリプタ増加要
求によりローカル・ディスクリプタテーブルの領域(5
0)を増加する時その儘増加出来ない時は、増加するロ
ーカル・ディスクリプタテーブルが収容出来る、全メモ
リ領域(1)内の空きメモリ領域(51)を見つけ、該
領域(51)に元のローカル・ディスクリプタテーブル
を複写し且つ増加したディスクリプタを書き込ませる処
理をするテーブル処理手段(2)を持たせたことを特徴
とするディスクリプタテーブル管理方式。
[Scope of Claims] A descriptor table management method in which a processor manages a memory address space using a local descriptor table consisting of descriptors for each segment such as code, data, and stack for each task, comprising: storage of the local descriptor table; The area is the entire memory area (1), and the local descriptor table area (5) due to a descriptor increase request.
0), if it cannot be increased immediately, find a free memory area (51) within the total memory area (1) that can accommodate the increasing local descriptor table, and add the original local descriptor table to this area (51). - A descriptor table management system characterized by having table processing means (2) for copying the descriptor table and writing increased descriptors.
JP61297150A 1986-12-12 1986-12-12 Descriptor table control system Pending JPS63149741A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP61297150A JPS63149741A (en) 1986-12-12 1986-12-12 Descriptor table control system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61297150A JPS63149741A (en) 1986-12-12 1986-12-12 Descriptor table control system

Publications (1)

Publication Number Publication Date
JPS63149741A true JPS63149741A (en) 1988-06-22

Family

ID=17842844

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61297150A Pending JPS63149741A (en) 1986-12-12 1986-12-12 Descriptor table control system

Country Status (1)

Country Link
JP (1) JPS63149741A (en)

Similar Documents

Publication Publication Date Title
US4912629A (en) Real-time garbage collection for list processing using restructured cells for increased reference counter size
US4812981A (en) Memory management system improving the efficiency of fork operations
JPS62165250A (en) Virtual memory
JPH10254756A (en) Use of three-state reference for managing referred object
US5678024A (en) Method and system for dynamic performance resource management within a computer based system
Russo et al. C++ and operating systems performance: a case study
JPH0622015B2 (en) Data processing system control method
JPS63149741A (en) Descriptor table control system
JPH02212949A (en) Reorganization processing system for data base in on-line operation
JP3030030B2 (en) Area management processing method
JP2990609B2 (en) Computer system
JPH06266619A (en) Page saving/restoring device
JP2787107B2 (en) Buffer control system and device
JPS62160545A (en) System for managing unused area of direct access storage device
JPH0337748A (en) External storage accessing system utilizing main storage
JPH03222047A (en) Area control system
JPH05151089A (en) System for data guarantee in memory space
JPH02193231A (en) File space free area management system
JPS6358555A (en) Control system for file space
JPH05225059A (en) Cache memory management system
JPS61285555A (en) Computer system
JPS62241047A (en) Shared control method for input/output buffer by data base control system
JPS63140347A (en) File managing system
JPH03204034A (en) Inter-job data transfer mechanism
JPS6349255B2 (en)