JPH0651980A - Arranging system for stack of information processor - Google Patents
Arranging system for stack of information processorInfo
- Publication number
- JPH0651980A JPH0651980A JP21959192A JP21959192A JPH0651980A JP H0651980 A JPH0651980 A JP H0651980A JP 21959192 A JP21959192 A JP 21959192A JP 21959192 A JP21959192 A JP 21959192A JP H0651980 A JPH0651980 A JP H0651980A
- Authority
- JP
- Japan
- Prior art keywords
- stack
- area
- thread
- file
- swap
- 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
Landscapes
- Executing Machine-Instructions (AREA)
Abstract
Description
【0001】[0001]
【産業上の利用分野】この発明は情報処理装置のスタッ
クの配置方式に関し、特にマルチスレッド環境における
スタックの配置方式に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a stack arranging method for an information processing apparatus, and more particularly to a stack arranging method in a multithread environment.
【0002】[0002]
【従来の技術】マルチスレッド環境は、複数のプロセス
(スレッド)がアドレス空間およびファイル等の資源を
共有する環境であり、スレッドの生成および消滅がダイ
ナミックに起こるのが普通である。このため、該スレッ
ドを格納するスタックが複数必要になり、また該スタッ
クの生成、消滅もダイナミックに起きる。2. Description of the Related Art A multi-thread environment is an environment in which a plurality of processes (threads) share resources such as an address space and files, and threads are normally created and destroyed dynamically. Therefore, a plurality of stacks for storing the threads are required, and the stacks are dynamically created and deleted.
【0003】従来、ファイル領域とは別に、スワップ領
域をもつシステムにおいて、マルチスレッド環境を実現
する場合、スタックを含むプログラム領域はスワップ領
域に取られるのが普通であった。Conventionally, when a multi-thread environment is realized in a system having a swap area in addition to the file area, the program area including the stack is usually taken as the swap area.
【0004】例えば、図4に示されているように、テキ
スト、データ、ヒープおよびスタックからなるマルチス
レッド環境を実現するプログラム10があった場合、テ
キスト、データ、ヒープおよびスタックのためのプログ
ラム領域はスワップ領域11内に取られていた。For example, as shown in FIG. 4, when there is a program 10 that realizes a multi-thread environment consisting of text, data, heap and stack, the program areas for the text, data, heap and stack are It was taken in the swap area 11.
【0005】[0005]
【発明が解決しようとする課題】ところで、従来は、ス
タック用の領域11aは、前記スワップ領域11内にお
いて、最大のスレッド数を予想して用意されていた。こ
のため、殆ど使用されないスタック用の領域もスワップ
領域11に確保されることとなり、スワップ領域11が
圧迫され、その使用効率が悪いという問題があった。By the way, conventionally, the stack area 11a has been prepared in anticipation of the maximum number of threads in the swap area 11. For this reason, a stack area that is rarely used is secured in the swap area 11, and the swap area 11 is squeezed, resulting in a problem that the usage efficiency is low.
【0006】なお、前記従来技術と関連する技術を開示
した資料として、例えば特開昭3−125223号公報
がある。As a material disclosing the technique related to the above-mentioned conventional technique, there is, for example, Japanese Patent Application Laid-Open No. 3-125223.
【0007】本発明の目的は、前記した従来技術の問題
点を除去し、マルチスレッド環境において、スワップ領
域がスタックを含むプログラム領域によって圧迫される
ことのないスタックの配置方式を提供することにある。An object of the present invention is to eliminate the above-mentioned problems of the prior art and to provide a stack arrangement method in which a swap area is not squeezed by a program area including the stack in a multithread environment. .
【0008】[0008]
【課題を解決するための手段】前記目的を達成するため
に、請求項1の発明は、複数のスレッドが記憶空間を共
有して動作する情報処理装置のスタックの配置方式にお
いて、スレッドの生成に伴うスタック領域をスワップ領
域とは別のファイル領域に確保するようにした点に特徴
がある。In order to achieve the above object, the invention according to claim 1 is to generate threads in an arrangement method of a stack of an information processing apparatus in which a plurality of threads operate by sharing a storage space. The feature is that the accompanying stack area is secured in a file area different from the swap area.
【0009】また、請求項2の発明は前記スレッドの消
滅に際して、スタックを前記ファイル領域から削除する
ようにした点に特徴がある。A second aspect of the invention is characterized in that the stack is deleted from the file area when the thread disappears.
【0010】[0010]
【作用】請求項1の発明によれば、各スレッドのスタッ
ク領域が、スワップ領域とは別のファイル領域に確保さ
れるので、スワップ領域がスレッドスタックにより圧迫
されることがなくなる。According to the first aspect of the invention, the stack area of each thread is secured in a file area different from the swap area, so that the swap area is not pressed by the thread stack.
【0011】また、請求項2の発明によれば、ファイル
領域からスタックを自由に削除できるので、ファイル領
域を効率的に使用することができる。According to the second aspect of the invention, the stack can be freely deleted from the file area, so that the file area can be used efficiently.
【0012】[0012]
【実施例】以下に、図面を参照して、本発明を詳細に説
明する。図1は本発明の一実施例の概念図を示してい
る。DESCRIPTION OF THE PREFERRED EMBODIMENTS The present invention will be described in detail below with reference to the drawings. FIG. 1 shows a conceptual diagram of an embodiment of the present invention.
【0013】図において、10は図4に示したマルチス
レッド環境を実現するプログラムであり、テキスト、デ
ータ、ヒープおよび複数個のスレッドスタックから構成
されている。また、11はスワップ領域、12はファイ
ル領域であり、これらの領域はディスク内に形成され、
例えばOSにより分けられている。In the figure, 10 is a program that realizes the multithread environment shown in FIG. 4, and is composed of text, data, a heap, and a plurality of thread stacks. Further, 11 is a swap area and 12 is a file area. These areas are formed in the disk,
For example, it is divided by the OS.
【0014】本実施例では、前記テキスト、データおよ
びヒープのプログラムはスワップ領域11に割り付けら
れ、スレッドスタックはファイル領域12に割り付けら
れている。In the present embodiment, the text, data and heap programs are allocated to the swap area 11, and the thread stack is allocated to the file area 12.
【0015】スレッドの生成および消滅はダイナミック
に起こるのが普通であり、前記テキストはスレッドスタ
ックの生成と消滅を行うプログラムを含んでいる。Thread creation and death typically occurs dynamically, and the text includes programs that create and destroy thread stacks.
【0016】スレッドスタックの生成を行うプログラム
を、図2のフローチャートを参照して説明する。A program for creating a thread stack will be described with reference to the flowchart of FIG.
【0017】ステップS1では、スタック用のファイル
名を得る動作が行われ、ステップS2では、該ファイル
をオープンして、アドレス空間にマッピングする動作が
行われる。次に、ステップS3に進んで、スレッドのス
タックポインタを、前記マッピングしたアドレス領域の
最上位のアドレスに割り付ける。In step S1, the operation of obtaining the file name for the stack is performed, and in step S2, the file is opened and the operation of mapping in the address space is performed. Next, in step S3, the stack pointer of the thread is allocated to the highest address of the mapped address area.
【0018】以上の処理により、前記ファイル領域12
上に、スレッドスタックを生成することができる。By the above processing, the file area 12
On top, you can create a thread stack.
【0019】次に、スレッドスタックの消滅を行うプロ
グラムを、図3のフローチャートを参照して説明する。Next, a program for eliminating the thread stack will be described with reference to the flowchart of FIG.
【0020】まず、ステップS4において、スレッドス
タックのマップを外す動作が行われる。次いで、ステッ
プS5に進み、スレッドスタック用のファイルを削除す
る動作が行われる。First, in step S4, the operation of removing the map of the thread stack is performed. Next, in step S5, an operation of deleting the file for thread stack is performed.
【0021】以上の処理により、前記ファイル領域12
からスレッドスタックを消滅させることができる。By the above processing, the file area 12
You can kill the thread stack from.
【0022】以上のように、本実施例によれば、ファイ
ルをオープンして、この領域にスレッドスタックをマッ
ピングするようにしたので、スレッドスタック用の領域
を最大のスレッド数を予想して用意しても、スワップ領
域が圧迫されることはなくなる。As described above, according to this embodiment, the file is opened and the thread stack is mapped in this area. Therefore, the area for the thread stack is prepared in anticipation of the maximum number of threads. However, the swap area will not be squeezed.
【0023】[0023]
【発明の効果】以上の説明から明らかなように、本発明
によれば、各スレッドのスタック領域をスワップ領域と
は別のファイル領域に確保するようにしたので、スワッ
プ領域を効率良く使用することができるという効果があ
る。As is apparent from the above description, according to the present invention, the stack area of each thread is secured in a file area different from the swap area, so that the swap area can be used efficiently. There is an effect that can be.
【0024】また、スレッドのスタック領域がファイル
領域に確保されるので、スタックの最大長や大きさの変
化等を簡単に観察することができるという効果がある。Further, since the thread stack area is secured in the file area, there is an effect that changes in the maximum length and size of the stack can be easily observed.
【図1】 本発明の一実施例の説明図である。FIG. 1 is an explanatory diagram of an embodiment of the present invention.
【図2】 スレッドスタックの生成処理を説明するフロ
ーチャートである。FIG. 2 is a flowchart illustrating a thread stack generation process.
【図3】 スレッドスタックの消滅処理を説明するフロ
ーチャートである。FIG. 3 is a flowchart illustrating a thread stack extinction process.
【図4】 従来のスレッドスタック領域とスワップ領域
との関係を示す説明図である。FIG. 4 is an explanatory diagram showing a relationship between a conventional thread stack area and a swap area.
10…マルチスレッド環境、11…スワップ領域、12
…ファイル領域10 ... Multithread environment, 11 ... Swap area, 12
… File area
Claims (2)
作する情報処理装置のスタックの配置方式において、 スレッドの生成に伴うスタック領域をスワップ領域とは
別のファイル領域に確保するようにしたことを特徴とす
る情報処理装置のスタックの配置方式。1. In a stack arranging method of an information processing device in which a plurality of threads share a storage space and operate, a stack area associated with thread generation is secured in a file area different from a swap area. Arrangement method of stack of information processing device characterized by.
を前記ファイル領域から削除するようにしたことを特徴
とする請求項1記載の情報処理装置のスタックの配置方
式。2. The stack arrangement method for an information processing apparatus according to claim 1, wherein the stack is deleted from the file area when the thread disappears.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP21959192A JPH0651980A (en) | 1992-07-28 | 1992-07-28 | Arranging system for stack of information processor |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP21959192A JPH0651980A (en) | 1992-07-28 | 1992-07-28 | Arranging system for stack of information processor |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH0651980A true JPH0651980A (en) | 1994-02-25 |
Family
ID=16737939
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP21959192A Pending JPH0651980A (en) | 1992-07-28 | 1992-07-28 | Arranging system for stack of information processor |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH0651980A (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08227364A (en) * | 1994-12-20 | 1996-09-03 | Nec Corp | Method and device for executing sequential multithread |
JP2009294695A (en) * | 2008-06-02 | 2009-12-17 | Hitachi Ltd | Transaction parallel control method, database management system, and program |
US9448844B2 (en) | 2009-11-13 | 2016-09-20 | Samsung Electronics Co., Ltd. | Computing system and method controlling memory of computing system |
-
1992
- 1992-07-28 JP JP21959192A patent/JPH0651980A/en active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08227364A (en) * | 1994-12-20 | 1996-09-03 | Nec Corp | Method and device for executing sequential multithread |
JP2009294695A (en) * | 2008-06-02 | 2009-12-17 | Hitachi Ltd | Transaction parallel control method, database management system, and program |
JP4612710B2 (en) * | 2008-06-02 | 2011-01-12 | 株式会社日立製作所 | Transaction parallel control method, database management system, and program |
US9448844B2 (en) | 2009-11-13 | 2016-09-20 | Samsung Electronics Co., Ltd. | Computing system and method controlling memory of computing system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6948034B2 (en) | Method for use of stack | |
KR870007462A (en) | How to use the data processing system | |
JPH05233452A (en) | Information processor | |
US6138210A (en) | Multi-stack memory architecture | |
US7797505B2 (en) | Program stack handling | |
JPH0651980A (en) | Arranging system for stack of information processor | |
US6058457A (en) | Method for storing method frames in multiple stacks | |
US6067602A (en) | Multi-stack-caching memory architecture | |
US6092152A (en) | Method for stack-caching method frames | |
WO2017001900A1 (en) | A data processing method | |
JPH0324695B2 (en) | ||
JPH06266619A (en) | Page saving/restoring device | |
JP2003076562A (en) | Method, device for quantitatively controlling memory, computer program and recording medium | |
JPS6353650A (en) | Computer | |
JPH05233307A (en) | Plural process generating method | |
JP2663600B2 (en) | Control table relocation processing method | |
JPS63177234A (en) | File save loading method | |
JP2533188B2 (en) | Spooling method | |
JPS6298431A (en) | Information processor | |
JPS6275845A (en) | Symbol name storing system | |
JPH0486938A (en) | Application start-up device | |
JPH06161719A (en) | Program executing device | |
JPH06161720A (en) | Computer system | |
JPH11353455A (en) | Method, device, and computer program product for deleting edge condition from area image processing operation on tiled image data | |
JPH03139723A (en) | Data processor |