JPH07141207A - Information processing system - Google Patents

Information processing system

Info

Publication number
JPH07141207A
JPH07141207A JP5285198A JP28519893A JPH07141207A JP H07141207 A JPH07141207 A JP H07141207A JP 5285198 A JP5285198 A JP 5285198A JP 28519893 A JP28519893 A JP 28519893A JP H07141207 A JPH07141207 A JP H07141207A
Authority
JP
Japan
Prior art keywords
data
process management
temporary storage
priority
unit
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
JP5285198A
Other languages
Japanese (ja)
Inventor
Kunihiko Tsunetomi
邦彦 恒冨
Shinichiro Yamaguchi
伸一朗 山口
Takanori Yokoyama
孝典 横山
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 JP5285198A priority Critical patent/JPH07141207A/en
Publication of JPH07141207A publication Critical patent/JPH07141207A/en
Pending legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

PURPOSE:To reduce the frequency of a switching processing for virtual spaces and to shorten the program processing time by providing a equality means which decide whether or not data stored in a temporary storage means are altered according to a system call and stores them in a data storage area for process management when the data are altered. CONSTITUTION:A process management part 3 is provided with the equality part 33 which is executed before the process management part 3 performs a processing using data. This equality part 33 decides whether the data held in the temporary storage part 22 are already altered by a processing executed with the system call for altering data for process management. When the data are already altered, the equality part 33 stores the data, held in the temporary storage part 22, in a data storage area for process management. Consequently, the processing which uses the data of the process management part 3 is performed by using the latest data at all times and the frequency of the switching processing for virtual spaces can be decreased.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、ユーザの仮想空間(以
下ユーザ空間と呼ぶ)とオペレーティングシステムの仮
想空間(以下システム空間と呼ぶ)とを個別に有し、制
御する情報処理システムに関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an information processing system which individually has a virtual space of a user (hereinafter referred to as user space) and a virtual space of an operating system (hereinafter referred to as system space), and controls the virtual space.

【0002】[0002]

【従来の技術】ユニックス(UNIX:Unix System Labora
tories(USL)のライセンスしているオペレーティングシ
ステム)などの従来のオペレーティングシステムは、ユ
ーザ空間とシステム空間を個別に有しており、オペレー
ティングシステムのデータはシステム空間にマッピング
されている。ユーザ空間にはユーザプログラムがマッピ
ングされており、これを各仮想空間ごとにあるプロセス
が実行する。プロセスは仮想空間の異なるデータへのメ
モリアクセスがオペレーティングシステムにより禁止さ
れている。これにより、オペレーティングシステムのデ
ータをプロセスの不当なアクセスから保護している。
2. Description of the Related Art Unix (UNIX: Unix System Labora
Conventional operating systems (such as tories (USL) licensed operating systems) have separate user space and system space, and operating system data is mapped to the system space. A user program is mapped in the user space, and a process for each virtual space executes this. A process prohibits memory access to data in different virtual spaces by the operating system. This protects the operating system data from unauthorized access by the process.

【0003】プロセスは、オペレーティングシステムが
用意するシステムコールを用いることによりオペレーテ
ィングシステムのデータ処理を依頼することができる。
システムコールがプロセスによりコールされるとトラッ
プが発生し、実行命令やデータのアクセス先がユーザ空
間からシステム空間に切り換えられる。そして、システ
ムコールが実行されオペレーティングシステムのデータ
処理を行う。ユニックスの仮想空間とシステムコール処
理については、”ユニックス4.3ビーエスディー(BSD)
の設計と実装”(S. J. Lefflerら著、丸善株式会社
刊)に詳しい。
A process can request data processing of the operating system by using a system call prepared by the operating system.
When a system call is called by a process, a trap occurs and the access destination of the execution instruction or data is switched from the user space to the system space. Then, a system call is executed to perform data processing of the operating system. For more information on Unix virtual space and system call processing, see “Unix 4.3 BS (BSD)”.
Design and implementation ”by SJ Leffler et al., Published by Maruzen Co., Ltd.

【0004】[0004]

【発明が解決しようとする課題】仮想空間の切り換え
は、コンテキスト(プロセッサのレジスタ、プログラム
カウンタ、スタックポインタの値)の保存回復とページ
テーブル領域をさすレジスタの保存回復が主な処理であ
り、オーバヘッドになる。オペレーティングシステム内
のデータの変更や読みだしが頻繁に発生するプログラム
では、仮想空間の切り換えが多くなる。したがって、プ
ロセスのプログラム処理時間を増大させていた。
The virtual space switching is mainly performed by saving and restoring contexts (processor registers, program counters, stack pointer values) and saving and restoring registers that point to the page table area. become. Programs that frequently change or read data in the operating system often switch between virtual spaces. Therefore, the program processing time of the process is increased.

【0005】図2に示す従来のプロセス管理部を例にと
り、上記の問題を具体的に説明する。図2において、1
1、12、13は、各プロセスが実行するプログラムで
ある。各プロセスの情報は、プロセス管理部3により管
理される。プロセスはユーザ空間に、プロセス管理部3
はシステム空間に、それぞれマッピングされる。
The above problem will be described in detail by taking the conventional process management unit shown in FIG. 2 as an example. In FIG. 2, 1
Reference numerals 1, 12, and 13 are programs executed by each process. Information of each process is managed by the process management unit 3. The process is in the user space, and the process management unit 3
Are respectively mapped to the system space.

【0006】各プロセスは実行する順序を決定するため
の優先順位が定められており、優先順位データはプロセ
ス管理部3の優先順位記憶部34に保持されている。プ
ロセスが優先順位を変更するときは、優先順位変更のシ
ステムコール110を実行する。このシステムコールに
より、プロセス管理部3のコンテキスト保存操作部31
が、仮想空間をシステム空間に切り換える。その後、コ
ンテキスト保存操作部31は、現在実行中のプロセス
(図2の例では、プロセス1)のコンテキスト情報を、
コンテキスト記憶部32に保存する。つぎに、スケジュ
ーラ35が、優先順位記憶部34に保持された該プロセ
ス1の優先順位の値を変更し、優先順位記憶部34を検
索して、最高の優先順位を有するプロセスを検知し、コ
ンテキスト回復操作部36が、この最高の優先順位を有
するプロセスのコンテキストを、コンテキスト記憶部3
2からプロセッサに読み込み、ユーザ空間を当該プロセ
スの仮想空間に切り換える。以上の処理により、最高の
優先順位の値を有するプロセスの処理が開始される。
Each process has a priority order for determining the order of execution, and the priority order data is held in the priority order storage unit 34 of the process management unit 3. When a process changes its priority, it executes a priority change system call 110. By this system call, the context save operation unit 31 of the process management unit 3
Switch the virtual space to the system space. After that, the context save operation unit 31 changes the context information of the currently executing process (process 1 in the example of FIG. 2) to
Save in the context storage unit 32. Next, the scheduler 35 changes the priority value of the process 1 held in the priority storage unit 34, searches the priority storage unit 34, detects the process having the highest priority, and The recovery operation unit 36 stores the context of the process having the highest priority in the context storage unit 3.
From 2 to the processor, the user space is switched to the virtual space of the process. Through the above processing, the processing of the process having the highest priority value is started.

【0007】以上のように、優先順位がプロセス管理部
3により変更されると、プロセス管理部3は、実行する
プロセスを再選択するスケジューリングを行なう。これ
は、実行中のプロセス(すなわち、稼動可能なプロセス
のうち最も高い優先順位を持っていたプロセス)の、優
先順位が変更されてしまったため、現在実行中のプロセ
ス以外のプロセスの優先順位が最高値になってしまった
可能性があるからである。
As described above, when the priority order is changed by the process management unit 3, the process management unit 3 performs scheduling for reselecting the process to be executed. This is because the priority of the running process (that is, the process that has the highest priority among the runnable processes) has been changed, so the process other than the currently running process has the highest priority. This is because there is a possibility that it has become a value.

【0008】しかし、プロセスが自らの優先順位を上昇
する場合、すでにスケジューリングされている以上、そ
のプロセスの優先順位は、通常の場合、システム内の稼
動可能なプロセス中で最も高いものであるから、上記の
スケジューリングにより選択されるプロセスは、実行中
のものである。したがって、このような場合には、無駄
なシステムコールにより仮想空間を切り換える処理とス
ケジューリング処理とが実行されることになる。
However, when a process raises its priority, the priority of the process is normally the highest among the operable processes in the system because it is already scheduled. The process selected by the above scheduling is running. Therefore, in such a case, the process of switching the virtual space and the scheduling process are executed by useless system calls.

【0009】上記の例では、優先順位の値をシステム空
間内にマッピングし、この値の変更に応じて、仮想空間
切り換えが発生する場合を考えたが、これ以外にも、な
んらかのシステム空間内の値を、プロセスがオペレーテ
ィングシステムに変更させる場合には、上記システム空
間内の値を変更するために、つねに、仮想空間をユーザ
空間からシステム空間に切り換える処理が発生し、さら
に、プロセスに再度制御を戻すために、仮想空間を、シ
ステム空間からユーザ空間に戻す処理を行なわなければ
ならない。しかし、上記システム空間内の値は、常にオ
ペレーティングシステムによって参照される必要がある
とは限らない。このため、オペレーティングシステムが
参照する必要がない場合には、上記の仮想空間の切り換
え処理は、実質的に無駄な処理であるといえる。参照す
る必要がある場合のみ、切り替えればすむと考えられる
からである。
In the above example, the priority value is mapped in the system space, and the virtual space switching occurs in accordance with the change of the value. However, in addition to this, in some system space. When the process causes the operating system to change the value, in order to change the value in the system space, the process of switching the virtual space from the user space to the system space always occurs, and the process is controlled again. In order to return, the process of returning the virtual space from the system space to the user space must be performed. However, the values in the system space do not always need to be referenced by the operating system. Therefore, when the operating system does not need to refer to it, it can be said that the above virtual space switching processing is substantially useless processing. This is because it is considered possible to switch only when it is necessary to refer to it.

【0010】そこで、本発明は、仮想空間の切り換え処
理の回数を低減することにより、プログラム処理時間を
短縮した情報処理システムを提供することを目的とす
る。
Therefore, an object of the present invention is to provide an information processing system in which the program processing time is shortened by reducing the number of times of virtual space switching processing.

【0011】[0011]

【課題を解決するための手段】上記目的を達成するた
め、本発明では、システム空間内に実現されるオペレー
ティングシステムと、ユーザのプログラムを実行する、
ユーザ空間内に実現されるプロセスとを備え、上記オペ
レーティングシステムは、上記プロセスの管理を行なう
プロセス管理手段を有し、該プロセス管理手段は、プロ
セス管理用データの格納領域と、該プロセス管理用デー
タに応じて、あらかじめ定められた処理を行なう手段と
を備え、上記プロセスは、上記あらかじめ定められた処
理をプロセス管理手段に行なわせるためのシステムコー
ルを実行する手段を有する情報処理システムにおいて、
上記プロセスは、上記プロセス管理用データを保持する
一時記憶手段と、上記プロセス管理用データを変更する
要求が生じた場合、上記一時記憶手段の保持する値を変
更する一時記憶変更手段とを有し、上記プロセス管理手
段は、上記システムコールに応じて、上記一時記憶手段
に保持されたデータが変更されたかどうかを判定し、変
更された場合は、上記一時記憶手段に保持された該デー
タを上記プロセス管理用データ格納領域に格納する、一
致化手段を備えることを特徴とする情報処理システムが
提供される。
In order to achieve the above object, the present invention executes an operating system realized in a system space and a user program.
A process realized in a user space, the operating system has a process management means for managing the process, and the process management means includes a process management data storage area and the process management data. According to the above, the process comprises a means for performing a predetermined process, wherein the process has a means for executing a system call for causing the process management means to perform the predetermined process,
The process has a temporary storage unit for holding the process management data and a temporary storage changing unit for changing the value held by the temporary storage unit when a request for changing the process management data is made. The process management means determines whether or not the data held in the temporary storage means is changed according to the system call, and if the data is changed, the data held in the temporary storage means is changed to the above-mentioned data. There is provided an information processing system characterized by comprising a matching means for storing in a process management data storage area.

【0012】また、本発明では、前記プロセスは、前記
プロセス管理用データを変更する要求が生じた際、上記
システムコールの実行の要否を判定し、該判定により実
行が必要とされた場合は、該システムコールを実行する
変更判定手段を有する情報処理システムと、上記一時記
憶手段は、一以上のプロセスが共通にアクセスすること
のできる上記ユーザ空間に備えられることを特徴とする
情報処理システムとが提供される。
Further, according to the present invention, the process determines whether or not the system call is required to be executed when a request to change the process management data is made, and if the determination requires the execution, An information processing system having a change determination means for executing the system call; and the temporary storage means provided in the user space that can be commonly accessed by one or more processes, Will be provided.

【0013】さらに、本発明では、前記プロセス管理用
データは、プロセスの優先順位とすることができる。前
記プロセス管理手段のあらかじめ定められた処理は、ス
ケジューリング処理であり、前記変更判定手段は、変更
後の上記プロセス管理用データが、最優先の優先順位で
あるかどうか判定し、最優先でなければ前記システムコ
ールを実行する手段を備える情報処理システムも提供さ
れる。なお、前記プロセス管理用データを、実効ユーザ
IDとすることもできる。この場合、前記プロセス管理
手段のあらかじめ定められた処理は、ファイルのアクセ
ス許可調査処理とすることもできる。
Further, according to the present invention, the process management data may be a process priority. The predetermined process of the process management unit is a scheduling process, and the change determination unit determines whether the changed process management data has the highest priority order. There is also provided an information processing system including means for executing the system call. The process management data may be the effective user ID. In this case, the predetermined process of the process management means may be a file access permission examination process.

【0014】[0014]

【作用】本発明では、プロセスによって上記プロセス管
理用データの変更が指示された場合であっても、常に仮
想空間の切り換えが行なわれるわけではない。無駄な空
間切り換え処理をなくすために、本発明では、上記プロ
セス管理用データをプロセスが参照、変更することがで
きるように、ユーザ空間内の該データの格納領域である
一時記憶手段を設ける。プロセスは、一時記憶変更手段
により、一時記憶手段の内容を変更することができる。
さらに、本発明では、プロセスに、変更判定手段を設け
る。変更判定手段は、上記プロセス管理用データを変更
する要求が生じた際、前記一時記憶変更手段および前記
システムコールのいずれを実行するか決定する。
In the present invention, the virtual space is not always switched even when the process instructs the process management data to be changed. In order to eliminate useless space switching processing, the present invention provides a temporary storage means which is a storage area of the data in the user space so that the process can refer to and change the process management data. The process can change the contents of the temporary storage means by the temporary storage changing means.
Furthermore, in the present invention, the process is provided with a change determination means. The change determination means determines which of the temporary storage change means and the system call is to be executed when a request to change the process management data is made.

【0015】これにより、本発明では、上記プロセス管
理用データを変更する場合であっても、実際にシステム
に該データを用いた処理を行なわせる必要が生じるま
で、一時記憶変更手段によるユーザ空間内の該データを
変更する処理が行なわれるのみで、システムコールが実
行されない。ゆえに、このような場合、システムコール
に伴う、仮想空間のシステム空間への切り換え処理、お
よび、システム空間からユーザ空間への切り換え処理
が、行なわれないことになる。
As a result, according to the present invention, even when the above-mentioned process management data is changed, the temporary storage changing means can be used in the user space until the system actually needs to perform processing using the data. The system call is not executed, only the processing for changing the data of the above is performed. Therefore, in such a case, the process of switching the virtual space to the system space and the process of switching the system space to the user space associated with the system call are not performed.

【0016】また、上記プロセス管理手段に、プロセス
管理部が該データを用いた処理を行なう前に実行され
る、一致化手段を設ける。一致化手段は、プロセス管理
用データの変更のためのシステムコールにより実行され
る処理において、上記一時記憶手段に保持されたデータ
が、すでにプロセスによって変更されているかどうかを
判定する。すでに変更されている場合、一致化手段は、
上記一時記憶手段に保持された該データを上記プロセス
管理用データ格納領域に格納する。
Further, the process management means is provided with a matching means that is executed before the process management section performs the processing using the data. The matching means determines whether or not the data held in the temporary storage means has already been changed by the process in the process executed by the system call for changing the process management data. If it has already been changed, the matching means
The data held in the temporary storage means is stored in the process management data storage area.

【0017】これにより、システムコールが実行される
際には、プロセス管理部が、該データを用いた処理を行
なう前に、ユーザ空間の一時記憶手段の内容と、システ
ム空間の該データの格納領域の内容が、一致しているこ
とになり、プロセス管理部の該データを用いた処理は、
常に最新のデータを用いて行なわれる。
As a result, when the system call is executed, before the process management unit performs the processing using the data, the contents of the temporary storage means in the user space and the storage area of the data in the system space are stored. The contents of are in agreement, and the process using the data of the process management unit is
The latest data is always used.

【0018】前述の図2を用いた例と同様の場合におい
て、本発明を優先順位データの保持と管理とに適応した
場合を例にして、本発明の作用を説明する。優先順位デ
ータを参照、変更するためのシステムコールを実行する
プロセス管理部3は、システム空間にマッピングされて
いる。プロセス管理部3は、優先順位データを保持する
ための優先順位記憶部34を備えている。この例におい
ては、上記プロセス管理用データは、優先順位を表わす
データである。
In the case similar to the example using FIG. 2 described above, the operation of the present invention will be described by exemplifying a case where the present invention is applied to holding and management of priority order data. The process management unit 3 that executes a system call for referring to and changing priority data is mapped in the system space. The process management unit 3 includes a priority order storage unit 34 for holding priority order data. In this example, the process management data is data representing a priority order.

【0019】プロセスがシステムコールを実行すると、
仮想空間がシステム空間に切り換えられ、プロセス管理
部3に制御が渡される。本発明のプロセス管理部3で
は、まず、一致化部による一時記憶部内の変更されたデ
ータの優先順位記憶部34への複写が行なわれ、システ
ム空間内の優先順位記憶部34の内容が、最新のものに
なる。つぎに、プロセス管理部3は、この最新の内容に
なった優先順位記憶部34に保持されたデータを用い
て、スケジューリング処理を行ない、最優先のプロセス
のユーザ空間に仮想空間を切り換え、該プロセスに制御
を渡す。
When a process makes a system call,
The virtual space is switched to the system space, and control is passed to the process management unit 3. In the process management unit 3 of the present invention, first, the matching unit copies the changed data in the temporary storage unit to the priority storage unit 34, and the contents of the priority storage unit 34 in the system space are updated. Will be Next, the process management unit 3 performs a scheduling process by using the data held in the priority storage unit 34 having the latest contents, switches the virtual space to the user space of the highest priority process, and Pass control to.

【0020】プロセスが優先順位の変更を要求する場合
であっても、変更後の優先順位が、現在と同様、最優先
の優先順位であれば、プロセス管理部3は、スケジュー
リング処理を行う必要はない。したがって、プロセス
は、実際に、プロセス管理部3がスケジューリング処理
を行なう必要がある場合にのみ、システムコールをすれ
ばよいといえる。
Even when the process requests the change of the priority order, if the changed priority order is the highest priority order as in the present case, the process management section 3 need not perform the scheduling process. Absent. Therefore, it can be said that a process may make a system call only when the process management unit 3 actually needs to perform the scheduling process.

【0021】そこで、本発明では、プロセスは、変更判
定手段を備える。この例では、変更判定手段は、変更後
の優先順位が、最優先の優先順位であるかどうか判定
し、最優先であれば前記一時記憶変更手段を実行し、最
優先でなければ前記システムコールを実行する。これに
より、本発明では、変更により実行中のプロセスの優先
順位が最優先ではなくなった場合のみ、システムコール
が実行される。
Therefore, in the present invention, the process includes a change determination means. In this example, the change determination means determines whether or not the changed priority is the highest priority, and if the highest priority is given, the temporary storage changing means is executed, and if the highest priority is not given, the system call is made. To execute. As a result, in the present invention, the system call is executed only when the priority of the process being executed is not the highest priority due to the change.

【0022】このように、本発明によれば、仮想空間の
切り換え処理の回数を減らすことができ、プログラム処
理時間を短縮することができる。本発明は、特願平5-10
8417号により提案されているような、優先順位の変更が
頻繁に発生するプログラムの実行に、特に効果的であ
る。
As described above, according to the present invention, the number of virtual space switching processes can be reduced, and the program processing time can be shortened. The present invention is directed to Japanese Patent Application No. 5-10.
It is especially effective for running programs that frequently change priorities, as proposed by 8417.

【0023】[0023]

【実施例】以下に、本発明の実施例を図面を用いて説明
する。 (実施例1)まず、本実施例を計算機上で実現したとき
の構成例を、図3を用いて説明する。プロセスの実行す
るプログラム11、12、13と、一時記憶管理部2
と、プロセス管理部3とが、システムの動作時に、ディ
スク42からメモリ43にローディングされる。そし
て、これらのプログラムや管理部を、プロセッサ41が
実行する。なお、本実施例の計算機4は、入出力装置と
して、ディスプレイ44、マウス45、およびキーボー
ド46を備えているが、入出力装置は、これらに限られ
ない。
Embodiments of the present invention will be described below with reference to the drawings. (Embodiment 1) First, a configuration example when this embodiment is realized on a computer will be described with reference to FIG. Programs 11, 12 and 13 executed by the process, and temporary storage management unit 2
Then, the process management unit 3 is loaded from the disk 42 to the memory 43 during system operation. Then, the processor 41 executes these programs and the management unit. The computer 4 of this embodiment includes the display 44, the mouse 45, and the keyboard 46 as input / output devices, but the input / output devices are not limited to these.

【0024】本実施例の一時記憶管理部2とプロセス管
理部3と構成を図1に示す。図1において、11、1
2、13は各プロセス(1〜N)の実行するプログラム
である。なお、図1において、点線の矢印はデータの流
れを示し、実線の矢印は制御の流れを示している。
FIG. 1 shows the configuration of the temporary storage management unit 2 and the process management unit 3 of this embodiment. In FIG. 1, 11, 1
Reference numerals 2 and 13 are programs executed by each process (1 to N). In addition, in FIG. 1, a dotted arrow indicates a data flow, and a solid arrow indicates a control flow.

【0025】プログラム11〜13は、各プロセスの仮
想空間にマッピングされている。一時記憶部の優先順位
の変更や読みだしを行う一時記憶管理部2は、各プロセ
スに共通のユーザ空間(各プロセスおよびシステムが、
仮想空間を切り換えることなく参照、更新することので
きる空間)にマッピングされており、各プロセスは、仮
想空間を切り換えることなく、一時記憶管理部2に処理
を行なわせることができる。なお、本実施例の一時記憶
管理部2は、ライブラリルーチン「SETPRIO」として実
現されている。プロセスの情報を管理するプロセス管理
部3は、オペレーティングシステムの一部であり、シス
テム空間にマッピングされる。
The programs 11 to 13 are mapped in the virtual space of each process. The temporary storage management unit 2 for changing the priority order of the temporary storage unit and for reading the temporary storage unit 2 has a user space common to each process (
It is mapped to a space that can be referred to and updated without switching the virtual space), and each process can cause the temporary storage management unit 2 to perform processing without switching the virtual space. The temporary storage management unit 2 of this embodiment is realized as a library routine "SETPRIO". The process management unit 3 that manages process information is a part of the operating system and is mapped in the system space.

【0026】一時記憶管理部2は、各プロセスの優先順
位が登録されている一時記憶部22と、一時記憶部22
に登録された全てのプロセスの優先順位のうち2番目に
高い値を保持する次期候補記憶部23と、次期候補記憶
部23の保持する内容をもとに、プロセス管理部3の優
先順位記憶部34を変更するかどうか判定する変更判定
部21(変更判定手段)とを備えている。
The temporary storage management unit 2 includes a temporary storage unit 22 in which the priority of each process is registered, and a temporary storage unit 22.
Based on the contents stored in the next candidate storage unit 23 and the next candidate storage unit 23, which holds the second highest value among the priorities of all the processes registered in the process management unit 3, A change determination unit 21 (change determination means) for determining whether to change 34 is provided.

【0027】プロセス管理部3は、システム空間の処理
を行うために現在のコンテキストを保存するコンテキス
ト保存操作部31と、プロセスごとのコンテキスト保存
領域であるコンテキスト記憶部32と、一時記憶部22
に保持された優先順位の変更情報を優先順位記憶部34
に記録する一致化部33(一致化手段)と、稼動可能な
全プロセスごとの優先順位を保持する優先順位記憶部3
4と、前述の優先順位記憶部34に基づき次に実行する
プロセスを選択するスケジューラと35、スケジューラ
35により選択されたプロセスのコンテキストを、コン
テキスト記憶部32からプロセッサにロードするコンテ
キスト回復操作部36とを備えている。
The process management section 3 stores a context saving operation section 31 for saving the current context in order to process the system space, a context storage section 32 as a context saving area for each process, and a temporary storage section 22.
The priority change information stored in the priority storage unit 34 is stored in the priority storage unit 34.
And a priority order storage section 3 for holding the priority order of all operable processes.
4, a scheduler for selecting a process to be executed next based on the priority storage unit 34, and a context recovery operation unit 36 for loading the context of the process selected by the scheduler 35 from the context storage unit 32 into the processor. Is equipped with.

【0028】一時記憶部22は、一時記憶手段としての
役割を果たし、図6に示すように、プロセスごとに、該
プロセスのプロセス名を保持するためのプロセス名格納
領域221と、該プロセスの優先順位を保持するための
優先順位格納領域222と、一時記憶管理部2におい
て、該プロセスの優先順位の変更が行なわれたかどうか
を示す変更フラグを保持するための、変更フラグ格納領
域223とを有する。変更フラグは通常は全て”0”に
クリアされており、優先順位が変更されると、その優先
順位が変更されたプロセスに対応するフラグが”1”に
なる。なお、一時記憶部22のための空間は、最初に稼
動したプロセスにより作成される。その後生成されるプ
ロセスは、各々、一時記憶部22内の空き領域を、自分
に割り当て、該領域のプロセス名格納領域221に自分
のプロセス名を格納して、使用する。
The temporary storage unit 22 serves as a temporary storage means, and as shown in FIG. 6, a process name storage area 221 for holding the process name of the process for each process, and the priority of the process. It has a priority storage area 222 for holding the order and a change flag storage area 223 for holding the change flag indicating whether or not the priority of the process is changed in the temporary storage management unit 2. . All the change flags are normally cleared to "0", and when the priority is changed, the flag corresponding to the process whose priority has been changed becomes "1". The space for the temporary storage unit 22 is created by the process that operates first. Each of the processes generated thereafter allocates a free area in the temporary storage unit 22 to itself, stores the own process name in the process name storage area 221 of the area, and uses it.

【0029】次期候補記憶部23は、図7に示すよう
に、一時記憶部22に登録された全プロセスの優先順位
のうち、2番目に高い優先順位の値、すなわち、次期候
補のプロセスの優先順位の値を保持するための格納領域
である。これは、後述するプロセス管理部3のスケジュ
ーラ35により管理されて、プロセスのスケジューリン
グ必要かどうかの判定に用いられる。次期候補記憶部2
3は必ずしも必要ではない。なぜならば、「SETPRIO」
のコールにより、プロセスのスケジューリングが必要に
なったかどうかは、一時記憶部22内の全ての優先順位
格納領域222に保持された値を、「SETPRIO」コール
の引き数と比較すれば、判定できるからである。しか
し、あらかじめ次期候補記憶部23を用意し、2番目に
高い優先順位の値を格納しておけば、次期候補記憶部2
3の値と、「SETPRIO」の引き数とを比較するだけで、
高速にプロセスのスケジューリングが必要かどうかを判
定できる利点がある。
As shown in FIG. 7, the next candidate storage unit 23 has the second highest priority value among the priorities of all the processes registered in the temporary storage unit 22, that is, the priority of the next candidate process. This is a storage area for holding rank values. This is managed by the scheduler 35 of the process management unit 3 which will be described later, and is used for determining whether process scheduling is necessary. Next candidate storage unit 2
3 is not always necessary. Because, "SET PRIO"
It is possible to determine whether or not the process scheduling is required by the call of by comparing the values held in all the priority storage areas 222 in the temporary storage unit 22 with the arguments of the "SETPRIO" call. Is. However, if the next candidate storage unit 23 is prepared in advance and the value of the second highest priority is stored, the next candidate storage unit 2
Just compare the value of 3 and the argument of "SET PRIO",
There is an advantage that it is possible to determine whether process scheduling is required at high speed.

【0030】コンテキスト記憶部32は、図4に示すよ
うに、プロセスごとに、該プロセスのプロセス名を保持
するためのプロセス名格納領域321と、該プロセス
の、レジスタの内容を保存するためのレジスタ保存領域
322とを有する。レジスタ保存領域322には、プロ
セッサのレジスタの内容を保存するための領域322
と、仮想空間を指定するためのレジスタの内容を保存す
るための領域とがある。
As shown in FIG. 4, the context storage unit 32 includes, for each process, a process name storage area 321 for holding the process name of the process and a register for saving the register contents of the process. And a storage area 322. The register saving area 322 is an area 322 for saving the contents of the registers of the processor.
And an area for storing the contents of registers for specifying the virtual space.

【0031】優先順位記憶部34は、図5に示すよう
に、プロセス名と優先順位対応付ける優先順位記録テー
ブル340をプロセスごとに有し、この優先順位記録テ
ーブル340は、ポインタにより連結されている。優先
順位記録テーブル340は、プロセス名を保持するプロ
セス名格納領域341と、優先順位の値を保持する優先
順位格納領域342と、ポインタ格納領域343とを備
える。オペレーティングシステムは、プロセスを生成す
ると、該プロセスのプロセス名と優先順位を保持する優
先順位記録テーブル340を生成し、この新たに作成さ
れた優先順位記録テーブル340を、該テーブルの優先
順位格納領域342の保持する値に応じて、すでに存在
している優先順位記憶部34内のリンクに参加させる。
なお、ポインタ格納領域343に保持されるポインタ
は、優先順位343の高い順番に、優先順位記録テーブル
340を連結するような値になっている。優先順位が変
更され、順番が変わる場合には、優先順位の高い順に優
先順位記録テーブル340が連結されるように、ポイン
タ格納領域343の内容も変更される。
As shown in FIG. 5, the priority storage unit 34 has a priority recording table 340 for associating the process name with the priority for each process, and the priority recording table 340 is linked by a pointer. The priority record table 340 includes a process name storage area 341 that holds a process name, a priority order storage area 342 that holds a priority value, and a pointer storage area 343. When the operating system creates a process, the operating system creates a priority record table 340 holding the process name and priority of the process, and the newly created priority record table 340 is stored in the priority storage area 342 of the table. According to the value held by, the existing link in the priority storage unit 34 is allowed to participate.
The pointers stored in the pointer storage area 343 have such values that the priority record tables 340 are linked in descending order of priority 343. When the priority order is changed and the order is changed, the content of the pointer storage area 343 is also changed so that the priority order recording tables 340 are linked in descending order of priority.

【0032】A.一時記憶管理部2の処理 プログラムに、プロセスの優先順位を変更するためのラ
イブラリコール(本実施例では、「SETPRIO」のコー
ル)が記述されていると、該ライブラリコールの実行に
より、制御が一時記憶管理部2に移される。該ライブラ
リコールは、優先順位の変更後の値を引き数とする。
A. When a library call for changing the process priority (call of "SETPRIO" in this embodiment) is described in the processing program of the temporary storage management unit 2, control is temporarily performed by executing the library call. It is moved to the storage management unit 2. The library call takes a value after changing the priority as an argument.

【0033】プロセス1から、プログラムに記述された
コードに従って、ライブラリルーチン「SETPRIO」がコ
ールされると(図1の111に図示)、まず、一時記憶
管理部2の変更判定部21に制御が移される。変更判定
部21の動作を表わすフローチャートを、図8に示す。
When the library routine "SETPRIO" is called from the process 1 according to the code described in the program (shown by 111 in FIG. 1), the control is first transferred to the change determination unit 21 of the temporary storage management unit 2. Be done. A flowchart showing the operation of the change determination unit 21 is shown in FIG.

【0034】(1)まず、変更判定部21は、一時記憶
部22の、当該プロセスに対応する優先順位格納領域2
22に、「SETPRIO」のコールの引き数を格納変更し
(これは、本実施例の変更判定部21の一時記憶変更手
段としての機能である)、当該プロセスに対応する変更
フラグ格納領域223に、”1”を格納する(ステップ
81)。
(1) First, the change determining unit 21 stores the priority order storage area 2 corresponding to the process in the temporary storage unit 22.
22 stores and modifies the argument of the call of "SETPRIO" (this is a function as a temporary memory modification means of the modification judgment unit 21 of the present embodiment), and modifies the modification flag storage area 223 corresponding to the process. , "1" are stored (step 81).

【0035】(2)つぎに、変更判定部21は、次期候
補記憶部23の保持する値を読み(ステップ82)、次
期候補記憶部23の保持する値と、「SETPRO」コールの
引き数とを比較する(ステップ83)。次期候補記憶部
23の保持する値の方が小さい場合には、変更判定部2
1の処理を終了し、プロセスの処理を再開する。次期候
補のプロセスより、現在スケジューリングされているプ
ロセス1の方が、変更後も依然として高い優先順位を持
っているからである。
(2) Next, the change determination unit 21 reads the value held in the next candidate storage unit 23 (step 82), and the value held in the next candidate storage unit 23 and the argument of the "SETPRO" call. Are compared (step 83). If the value held in the next candidate storage unit 23 is smaller, the change determination unit 2
The processing of No. 1 is ended, and the processing of the process is restarted. This is because the currently scheduled process 1 still has a higher priority after the change than the next candidate process.

【0036】(3)次期候補記憶部23に保持された値
の方が大きい場合、変更判定部21は、次期候補のプロ
セスを優先して実行するために、プロセス管理部3にス
ケジューリングの処理を行わせる必要がある。そのた
め、変更判定部21は、優先順位データを変更するシス
テムコール(「setprio」)を実行する(図1の211
に図示)。「setprio」コール211により、制御がプ
ロセス管理部3に移され(ステップ84)、変更判定部
21の処理は終了する。なお、システムコール「setpri
o」は引き数を持たない。また、本実施例では、「SETPR
IO」および「setprio」は、自プロセスの優先順位のみ
を変更可能であるとするが、他のプロセスの優先順位を
変更可能とする場合にも本発明は適用できる。
(3) When the value held in the next candidate storage unit 23 is larger, the change determination unit 21 causes the process management unit 3 to perform scheduling processing in order to preferentially execute the process of the next candidate. It needs to be done. Therefore, the change determination unit 21 executes a system call (“setprio”) for changing the priority order data (211 in FIG. 1).
(Illustrated in). By the "setprio" call 211, control is transferred to the process management unit 3 (step 84), and the processing of the change determination unit 21 ends. The system call "setpri
"o" has no arguments. In addition, in this embodiment, "SETPR
It is assumed that “IO” and “setprio” can change only the priority of the own process, but the present invention can be applied to the case where the priority of another process can be changed.

【0037】B.プロセス管理部3の処理 システムコール「setprio」が実行されると、制御はプ
ロセス管理部3に移される。以下に、プロセス管理部3
の動作を説明する。プロセス管理部3の動作を図9に示
す。
B. When the processing system call “setprio” of the process management unit 3 is executed, the control is transferred to the process management unit 3. Below, the process management unit 3
The operation of will be described. The operation of the process management unit 3 is shown in FIG.

【0038】(1)まず、プロセス管理部3のコンテキ
スト保存操作部31が、仮想空間をシステム空間に切り
換える。その後、コンテキスト保存操作部31は、現在
実行中のプロセス(この例ではプロセス1)のコンテキ
スト情報を、コンテキスト記憶部32内の当該プロセス
に割り当てられたレジスタ保存領域322に格納する
(ステップ91)。
(1) First, the context save operation unit 31 of the process management unit 3 switches the virtual space to the system space. After that, the context save operation unit 31 stores the context information of the currently executing process (process 1 in this example) in the register save area 322 assigned to the process in the context storage unit 32 (step 91).

【0039】(2)つぎに、プロセス管理部3の一致化
部33が、一時記憶部22の変更フラグ格納領域223
の内容が”1”であるプロセスを探す(ステップ9
2)。フラグが”1”のプロセスが存在すれば、一致化
部33は、一時記憶部22の当該プロセスの優先順位格
納領域222の内容を、優先順位記憶部34の当該プロ
セスのプロセス名がプロセス名格納領域341に保持さ
れている優先順位記録テーブル340の優先順位格納領
域343に格納し、当該プロセスの変更フラグ格納領域
223に”0”を格納する(ステップ93)。一致化部
33は、このステップ92および93の処理を、変更フ
ラグが”1”のプロセスがなくなるまで繰り返す。これ
により、変更された優先順位の値が、システム空間の優
先順位記憶部34内に複写される。
(2) Next, the matching unit 33 of the process management unit 3 causes the change flag storage area 223 of the temporary storage unit 22.
Search for processes whose contents are "1" (step 9)
2). If there is a process whose flag is "1", the matching unit 33 stores the contents of the priority storage area 222 of the process in the temporary storage unit 22 and the process name of the process in the priority storage unit 34 as the process name. The data is stored in the priority storage area 343 of the priority recording table 340 held in the area 341, and "0" is stored in the change flag storage area 223 of the process (step 93). The matching unit 33 repeats the processes of steps 92 and 93 until there is no process having the change flag of "1". As a result, the changed priority value is copied into the priority storage unit 34 in the system space.

【0040】(3)優先順位の値の複写が完了すると、
プロセス管理部3のスケジューラ35が、優先順位記憶
部34を検索して、最高の優先順位の値と2番目の優先
順位の値とを検知し(ステップ94)、2番目の優先順
位の値を、次期候補記憶部23に格納する(ステップ9
5)。
(3) When the copying of the priority values is completed,
The scheduler 35 of the process management unit 3 searches the priority storage unit 34 to detect the highest priority value and the second priority value (step 94), and determines the second priority value. , Next candidate storage unit 23 (step 9)
5).

【0041】(4)最後に、プロセス管理部3のコンテ
キスト回復操作部36が、上記ステップ94において、
スケジューラ35により検知された、最高の優先順位の
値を有するプロセスのコンテキストを、コンテキスト記
憶部32からプロセッサに読み込み、ユーザ空間を当該
プロセスの仮想空間に切り換え、制御を該プロセスに渡
す(ステップ96)。以上で、プロセス管理部3の処理
が終了する。ステップ96を経て、最高の優先順位の値
を有するプロセスの処理が開始される。なお、図1で
は、例として、プロセス1の優先順位が変更されたため
に、プロセスNが最高の優先順位を有するようになった
場合の、制御の流れを、矢印212により図示してい
る。
(4) Finally, in step 94, the context recovery operation unit 36 of the process management unit 3
The context of the process having the highest priority value detected by the scheduler 35 is read from the context storage unit 32 into the processor, the user space is switched to the virtual space of the process, and control is passed to the process (step 96). . With that, the process of the process management unit 3 is completed. Through step 96, the process with the highest priority value begins processing. In FIG. 1, as an example, the flow of control in the case where the process N has the highest priority because the priority of the process 1 has been changed is illustrated by an arrow 212.

【0042】なお、本実施例において、「プロセス」
は、内部に複数の「スレッド」(特願平5-108417号を参
照されたい)または「ライトウェイトプロセス」を有し
ていてもよい。また、本実施例は、優先順位情報を一時
記憶管理部2および一致化部33の処理対象としたが、
カーネル内の他のデータを対象としてもかまわない。例
えば、実効ユーザID(識別子)や実ユーザID、プロ
セスグループ識別子などのプロセスの属性データのよう
に、ユーザが明示的、非明示的に更新することのある情
報に有効である。
In the present embodiment, "process"
May have a plurality of "threads" (see Japanese Patent Application No. 5-108417) or "lightweight processes" inside. Further, in this embodiment, the priority order information is processed by the temporary storage management unit 2 and the matching unit 33.
You can also target other data in the kernel. For example, it is effective for information that a user may explicitly or implicitly update, such as process attribute data such as an effective user ID (identifier), a real user ID, and a process group identifier.

【0043】(実施例2)本発明を実効ユーザIDに適
用した場合の一時記憶管理部2およびプロセス管理部3
の構成の一例を図10に示す。
(Embodiment 2) Temporary storage manager 2 and process manager 3 when the present invention is applied to an effective user ID.
10 shows an example of the configuration of the above.

【0044】本実施例2の一時記憶管理部2は、実効ユ
ーザIDを一時的に保持する実効ユーザID一時記憶部
25と、実効ユーザID一時記憶部25の内容を更新す
る一時記憶変更部24とを備える。実効ユーザID一時
記憶部25は、プロセス名格納領域と、実効ユーザID
格納領域と、変更フラグ格納領域とを備えている。変更
フラグの初期値は、実施例1と同様”0”である。
The temporary storage management unit 2 according to the second embodiment includes an effective user ID temporary storage unit 25 that temporarily holds an effective user ID and a temporary storage change unit 24 that updates the contents of the effective user ID temporary storage unit 25. With. The effective user ID temporary storage unit 25 stores a process name storage area and an effective user ID.
A storage area and a change flag storage area are provided. The initial value of the change flag is "0" as in the first embodiment.

【0045】本実施例2のプロセス管理部3は、コンテ
キスト保存操作部31と、実効ユーザIDをシステム空
間に複写するための実効ユーザID一致化部(一致化手
段)39と、実効ユーザIDのシステム空間内の保存領
域である実効ユーザID記憶部37と、実効ユーザID
を参照して処理を行なう実効ユーザID処理部38と、
コンテキスト記憶部32と、コンテキスト回復操作部3
6とを備える。
The process management unit 3 according to the second embodiment includes a context save operation unit 31, an effective user ID matching unit (matching unit) 39 for copying an effective user ID into the system space, and an effective user ID. An effective user ID storage unit 37, which is a storage area in the system space, and an effective user ID
And an effective user ID processing unit 38 which performs processing by referring to
Context storage unit 32 and context recovery operation unit 3
6 and 6.

【0046】本実施例では、プロセスは、実効ユーザI
Dを変更する必要が生じると、一時記憶管理部2へのラ
イブラリコール112により、一時記憶変更部24に実
効ユーザID一時記憶部25の保持する実効ユーザID
を変更させる。この時、一時記憶変更部24は、該プロ
セスに割り当てられた変更フラグ格納領域に”1”を格
納する。
In this embodiment, the process is the effective user I
When it becomes necessary to change D, the library call 112 to the temporary storage management unit 2 causes the temporary storage changing unit 24 to store the effective user ID stored in the effective user ID temporary storage unit 25.
To change. At this time, the temporary storage changing unit 24 stores "1" in the change flag storage area assigned to the process.

【0047】一方、実効ユーザIDをオペレーティング
システムが参照する必要のあるシステムコール例えば、
通信処理のためのシステムコールなど(図10では、2
13として図示)がプロセスにより実行されると、プロ
セス管理部3は、つぎの処理を行なう。
On the other hand, a system call that requires the operating system to refer to the effective user ID, for example,
System calls for communication processing, etc. (2 in FIG. 10)
13) is performed by the process, the process management unit 3 performs the following processing.

【0048】(1)まず、実施例1と同様、コンテキス
ト保存操作部31が、仮想空間をシステム空間に切り換
え、現在実行中のプロセスのコンテキスト情報を、コン
テキスト記憶部32に格納する。
(1) First, as in the first embodiment, the context save operation unit 31 switches the virtual space to the system space and stores the context information of the process currently being executed in the context storage unit 32.

【0049】(2)つぎに、実効ユーザID一致化部3
9が、現在実行中のプロセスの実効ユーザID一時記憶
部25の変更フラグ格納領域223の内容が”1”であ
れば、実効ユーザID一時記憶部25に保持された当該
プロセスの実効ユーザIDを、実効ユーザID記憶部3
7の当該プロセスに割り当てられた実効ユーザID格納
領域に格納し、当該プロセスの変更フラグ格納領域に”
0”を格納する。
(2) Next, the effective user ID matching unit 3
If the content of the change flag storage area 223 of the effective user ID temporary storage unit 25 of the process currently being executed is "1", the effective user ID of the process held in the effective user ID temporary storage unit 25 is , Effective user ID storage unit 3
7 is stored in the effective user ID storage area assigned to the process, and is stored in the change flag storage area of the process.
0 "is stored.

【0050】(3)上記(2)の処理により、システム
空間内の実効ユーザID記憶部37の値が最新のものと
一致したので、実効ユーザID処理部38は、実効ユー
ザID記憶部37の保持する値を参照して、処理を行な
う。例えば、ファイルアクセス処理における、ファイル
の所有者アクセス許可調査などの処理がこれにあたる。
実効ユーザID処理部38は、アクセス許可調査処理に
おいては、実効ユーザID記憶部37に保持された実効
ユーザIDをもとに、アクセス権の有無を調べる処理が
行なわれる。
(3) Since the value of the effective user ID storage unit 37 in the system space matches the latest value by the processing of (2) above, the effective user ID processing unit 38 stores the effective user ID storage unit 37 in the effective user ID storage unit 37. The processing is performed by referring to the value held. For example, this is a process such as a file owner access permission check in the file access process.
In the access permission examination process, the effective user ID processing unit 38 performs a process for checking whether or not there is an access right based on the effective user ID held in the effective user ID storage unit 37.

【0051】(4)最後に、実施例1と同様に、コンテ
キスト回復操作部36が、実行中のプロセス(図10の
例ではプロセス1)のコンテキストを、コンテキスト記
憶部32からプロセッサに読み込み、ユーザ空間を当該
プロセスの仮想空間に切り換え、制御を該プロセスに渡
す。
(4) Finally, as in the first embodiment, the context recovery operation unit 36 reads the context of the process being executed (process 1 in the example of FIG. 10) from the context storage unit 32 into the processor, and the user The space is switched to the virtual space of the process and control is passed to the process.

【0052】(上記各実施例の効果)上記各実施例によ
れば、優先順位の変更の処理をプロセスが要求したとき
であっても、すぐにスケジューリングの処理が必要な場
合のみ、仮想空間をシステム空間に切り換え、そうでな
い場合には、システムコールを行なわす、ユーザ空間内
部の一時記憶部のデータのみを変更する。これにより、
システムコールの回数を低減し、プログラム処理時間を
低減させることができる。さらに、本実施例において
は、スケジューリングの回数を低減させることができ、
プログラム処理時間をさらに低減させることができる。
(Effect of each of the above embodiments) According to each of the above embodiments, even when the process requests the process of changing the priority order, the virtual space is set only when the scheduling process is required immediately. Switch to system space, otherwise make a system call and change only data in temporary storage inside user space. This allows
The number of system calls can be reduced and the program processing time can be reduced. Furthermore, in this embodiment, the number of scheduling can be reduced,
The program processing time can be further reduced.

【0053】[0053]

【発明の効果】本発明によれば、仮想空間の切り換え処
理の回数を低減することにより、プログラム処理時間を
短縮した情報処理システムが提供される。
According to the present invention, there is provided an information processing system in which the program processing time is shortened by reducing the number of virtual space switching processes.

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

【図1】本発明を優先順位の保持と更新とに適用した場
合の一時記憶管理部およびプロセス管理部の構成図であ
る。
FIG. 1 is a configuration diagram of a temporary storage management unit and a process management unit when the present invention is applied to holding and updating a priority order.

【図2】従来のプロセス管理部の構成図である。FIG. 2 is a configuration diagram of a conventional process management unit.

【図3】一時記憶管理部およびプロセス管理部を計算機
上に実現した構成図の一例である。
FIG. 3 is an example of a configuration diagram in which a temporary storage management unit and a process management unit are realized on a computer.

【図4】コンテキスト記憶部の構成図である。FIG. 4 is a configuration diagram of a context storage unit.

【図5】優先順位記憶部の構成図である。FIG. 5 is a configuration diagram of a priority order storage unit.

【図6】一時記憶部の構成図である。FIG. 6 is a configuration diagram of a temporary storage unit.

【図7】次期候補優先順位記憶部の構成図である。FIG. 7 is a configuration diagram of a next candidate priority storage unit.

【図8】変更判定部の動作を示すフローチャートであ
る。
FIG. 8 is a flowchart showing an operation of a change determination unit.

【図9】プロセス管理部の動作を示すフローチャートで
ある。
FIG. 9 is a flowchart showing an operation of a process management unit.

【図10】本発明を実効ユーザIDの保持と更新とに適
用した場合の一時記憶管理部およびプロセス管理部の構
成図である。
FIG. 10 is a configuration diagram of a temporary storage management unit and a process management unit when the present invention is applied to holding and updating an effective user ID.

【符号の説明】[Explanation of symbols]

11,12,13…プロセスの実行するプログラム、
2…一時記憶管理部、3…プロセス管理部、 21…変
更判定部、 22…一時記憶部、 23…次期候補記憶
部、 24…一時記憶変更部、 25…実効ユーザID
一時記憶部、31…コンテキスト保存操作部、 32…
コンテキスト記憶部 33…一致化部、 34…優先順
位記憶部、 35…スケジューラ、 36…コンテキス
ト回復操作部、 37…実効ユーザID記憶部、 38
…実効ユーザID処理部、39…実効ユーザID一致化
部、 4…計算機、 41…プロセッサ、 42…磁気
ディスク装置、 43…主記憶装置、 44…ディスプ
レイ、 45…マウス、 46…キーボード。
11, 12, 13 ... Program executed by the process,
2 ... Temporary storage management unit, 3 ... Process management unit, 21 ... Change determination unit, 22 ... Temporary storage unit, 23 ... Next candidate storage unit, 24 ... Temporary storage change unit, 25 ... Effective user ID
Temporary storage unit, 31 ... Context save operation unit, 32 ...
Context storage unit 33 ... Matching unit, 34 ... Priority order storage unit, 35 ... Scheduler, 36 ... Context recovery operation unit, 37 ... Effective user ID storage unit, 38
... Effective user ID processing unit, 39 ... Effective user ID matching unit, 4 ... Calculator, 41 ... Processor, 42 ... Magnetic disk device, 43 ... Main storage device, 44 ... Display, 45 ... Mouse, 46 ... Keyboard.

Claims (8)

【特許請求の範囲】[Claims] 【請求項1】システム空間内に実現されるオペレーティ
ングシステムと、ユーザのプログラムを実行する、ユー
ザ空間内に実現されるプロセスとを備え、上記オペレー
ティングシステムは、上記プロセスの管理を行なうプロ
セス管理手段を有し、該プロセス管理手段は、プロセス
管理用データの格納領域と、該プロセス管理用データに
応じて、あらかじめ定められた処理を行なう手段とを備
え、上記プロセスは、上記あらかじめ定められた処理を
プロセス管理手段に行なわせるためのシステムコールを
実行する手段を有する情報処理システムにおいて、 上記プロセスは、 上記プロセス管理用データを保持する一時記憶手段と、 上記プロセス管理用データを変更する要求が生じた場
合、上記一時記憶手段の保持する値を変更する一時記憶
変更手段とを有し、 上記プロセス管理手段は、 上記システムコールに応じて、上記一時記憶手段に保持
されたデータが変更されたかどうかを判定し、変更され
た場合は、上記一時記憶手段に保持された該データを上
記プロセス管理用データ格納領域に格納する、一致化手
段を備えることを特徴とする情報処理システム。
1. An operating system realized in a system space and a process realized in a user space for executing a user's program, wherein the operating system comprises process management means for managing the process. The process management means includes a storage area for process management data and a means for performing a predetermined process according to the process management data, and the process performs the predetermined process. In the information processing system having means for executing a system call for causing the process management means to perform, in the process, a temporary storage means for holding the process management data and a request for changing the process management data are generated. In this case, change the temporary memory to change the value held in the temporary memory. The process management means determines whether or not the data held in the temporary storage means is changed according to the system call, and if the data is changed, the process management means holds the data in the temporary storage means. An information processing system comprising a matching means for storing the data in the process management data storage area.
【請求項2】請求項1において、 前記プロセスは、 前記プロセス管理用データを変更する要求が生じた際、
上記システムコールの実行の要否を判定し、該判定によ
り実行が必要とされた場合は、該システムコールを実行
する変更判定手段を有することを特徴とする情報処理シ
ステム。
2. The process according to claim 1, wherein the process receives a request to change the process management data,
An information processing system, comprising: a change determining unit that determines whether or not to execute the system call and executes the system call when the system call is required by the determination.
【請求項3】請求項1において、 前記一時記憶手段は、 一以上のプロセスが共通にアクセスすることのできる上
記ユーザ空間に備えられることを特徴とする情報処理シ
ステム。
3. The information processing system according to claim 1, wherein the temporary storage unit is provided in the user space that can be commonly accessed by one or more processes.
【請求項4】請求項2において、 前記一時記憶手段は、 一以上のプロセスが共通にアクセスすることのできる上
記ユーザ空間に備えられることを特徴とする情報処理シ
ステム。
4. The information processing system according to claim 2, wherein the temporary storage unit is provided in the user space that can be commonly accessed by one or more processes.
【請求項5】請求項4において、 前記プロセス管理用データは、プロセスの優先順位であ
ることを特徴とする情報処理システム。
5. The information processing system according to claim 4, wherein the process management data is a process priority.
【請求項6】請求項5において、 前記プロセス管理手段のあらかじめ定められた処理は、
スケジューリング処理であり、 前記変更判定手段は、 変更後の上記プロセス管理用データが、最優先の優先順
位であるかどうか判定し、最優先でなければ前記システ
ムコールを実行する手段を備えることを特徴とする情報
処理システム。
6. The predetermined process of the process management means according to claim 5,
Scheduling processing, wherein the change determination means includes means for determining whether or not the changed process management data has the highest priority, and executing the system call if not the highest priority. Information processing system.
【請求項7】請求項1において、 前記プロセス管理用データは、実効ユーザIDであるこ
とを特徴とする情報処理システム。
7. The information processing system according to claim 1, wherein the process management data is an effective user ID.
【請求項8】請求項7において、 前記プロセス管理手段のあらかじめ定められた処理は、
ファイルのアクセス許可調査処理であることを特徴とす
る情報処理システム。
8. The predetermined process of the process management means according to claim 7,
An information processing system characterized by a file access permission investigation process.
JP5285198A 1993-11-15 1993-11-15 Information processing system Pending JPH07141207A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5285198A JPH07141207A (en) 1993-11-15 1993-11-15 Information processing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5285198A JPH07141207A (en) 1993-11-15 1993-11-15 Information processing system

Publications (1)

Publication Number Publication Date
JPH07141207A true JPH07141207A (en) 1995-06-02

Family

ID=17688381

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5285198A Pending JPH07141207A (en) 1993-11-15 1993-11-15 Information processing system

Country Status (1)

Country Link
JP (1) JPH07141207A (en)

Similar Documents

Publication Publication Date Title
US7765395B2 (en) Operating system rebooting method and apparatus for continuing to execute a non-stop module even during rebooting
US9798595B2 (en) Transparent user mode scheduling on traditional threading systems
US8433902B2 (en) Computer system with dual operating modes
US6996828B1 (en) Multi-OS configuration method
US6772419B1 (en) Multi OS configuration system having an interrupt process program executes independently of operation of the multi OS
JP3765201B2 (en) Computer system
US5241634A (en) Method of handling system calls to an operating system of a computer by system service routines stored as firmware
JPH07141207A (en) Information processing system
JP3585510B2 (en) Program execution management device and program execution management method
JPH06222916A (en) On-line real-time processor
JP2001184242A (en) Cache control method and computer system
JP2787107B2 (en) Buffer control system and device
JP2591818B2 (en) Auxiliary function selection control method
JPH06119190A (en) Task switching processing system
KR960012658B1 (en) Information processing system
JP3022398B2 (en) Virtual computer system
JPH09134292A (en) Interruption control method
JP2004021610A (en) Task managing device
JPH01116851A (en) Program load control system
JPH07175762A (en) Job scheduling method in distributed processing system
JPH0546452A (en) Commitment control system
JPH0546415A (en) Exclusive management control system
JPH09305553A (en) Parallel computer system
Chalk et al. Operating systems
JPH041370B2 (en)