JPH0518139B2 - - Google Patents
Info
- Publication number
- JPH0518139B2 JPH0518139B2 JP60065241A JP6524185A JPH0518139B2 JP H0518139 B2 JPH0518139 B2 JP H0518139B2 JP 60065241 A JP60065241 A JP 60065241A JP 6524185 A JP6524185 A JP 6524185A JP H0518139 B2 JPH0518139 B2 JP H0518139B2
- Authority
- JP
- Japan
- Prior art keywords
- time
- real
- cpu
- processes
- sharing
- 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.)
- Expired - Lifetime
Links
- 238000000034 method Methods 0.000 claims description 149
- 230000007246 mechanism Effects 0.000 description 28
- 238000010586 diagram Methods 0.000 description 6
- FFBHFFJDDLITSX-UHFFFAOYSA-N benzyl N-[2-hydroxy-4-(3-oxomorpholin-4-yl)phenyl]carbamate Chemical compound OC1=C(NC(=O)OCC2=CC=CC=C2)C=CC(=C1)N1CCOCC1=O FFBHFFJDDLITSX-UHFFFAOYSA-N 0.000 description 4
- 238000004886 process control Methods 0.000 description 3
- 238000011112 process operation Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 2
- 238000005259 measurement Methods 0.000 description 1
- 230000006386 memory function Effects 0.000 description 1
Description
【発明の詳細な説明】
〔発明の技術分野〕
本発明は電子計算機に用いられるスケジユーラ
に係り、特に特定のプロセスを最優先処理するリ
アルタイム処理機能をもつスケジユーラに関す
る。DETAILED DESCRIPTION OF THE INVENTION [Technical Field of the Invention] The present invention relates to a scheduler used in an electronic computer, and particularly to a scheduler having a real-time processing function that gives priority to a specific process.
従来、電子計算機に於けるスケジユーラは第4
図のように構成され、動作は各ユーザプロセス毎
に均等にCPU時間が割り付けられる、所謂時分
割スケジユーリング方式であつた。尚、図中、
KPはカーネルプロセス、UPはユーザプロセス、
SCMはスケジユール機構、TPRQは時分割キユ
ーである。
Traditionally, the scheduler in electronic computers was the fourth
It was configured as shown in the figure, and operated using a so-called time-sharing scheduling method in which CPU time was allocated equally to each user process. In addition, in the figure,
KP is kernel process, UP is user process,
SCM is a scheduling mechanism, and TPRQ is a time-sharing queue.
したがつて、従来では一つのプロセスから他の
プロセスへ制御が移る場合、必ず一定時間、他の
プロセスでCPU時間を消費した後でなければな
らなかつた。このため、従来では、緊急に或る業
務を処理する事態に対処できないという不都合が
あつた。 Therefore, conventionally, when control is transferred from one process to another, it must be done only after the CPU time has been consumed by the other process for a certain period of time. For this reason, in the past, there was a problem that it was not possible to deal with a situation where a certain task was urgently processed.
本発明は上記実情に鑑みなされたもので、特定
のプロセスに対し一定時間、最優先に処理装置の
残用権を与えることができ、これにより緊急度の
高いプロセス業務を扱うシステムに於いて効率の
良いプロセス制御を行なうことのできるスケジユ
ーラを提供することを目的とする。
The present invention has been developed in view of the above-mentioned circumstances, and it is possible to give priority to a specific process for a certain period of time to give the right to use the processing equipment, thereby increasing the efficiency of a system that handles highly urgent process operations. The purpose of this invention is to provide a scheduler that can perform good process control.
本発明は、電子式計算機のスケジユーラに於い
て、時分割方式のスケジユーリングだけでなく、
或る特定のプロセスからの実行要求があつた際
に、そのプロセスを最優先に実行させるリアルタ
イム処理機構を持たせたもので、これにより或る
一定時間内に処理することを要求しているプロセ
スに対し一定時間、最優先に処理装置の使用権を
許可することができ、緊急度の高いプロセス業務
を扱うシステムに於いて効率の良いプロセス制御
が行なえる。
The present invention provides not only time-sharing scheduling in a scheduler for an electronic calculator.
A process that has a real-time processing mechanism that gives top priority to execution when an execution request is received from a certain process, and thereby requests processing within a certain period of time. The right to use the processing equipment can be granted with the highest priority for a certain period of time, and efficient process control can be performed in a system that handles highly urgent process operations.
第1図はこの発明に係る装置の一実施例を示す
ブロツク図である。図中、1はカーネルプロセス
(KP)であり、ユーザプロセス(UP)からの
様々な要求を処理する。2はユーザプロセスであ
り、大別すると時分割プロセスとリアルタイムプ
ロセスがある。3はリアルタイムプロセス登録処
理器(RTPR)であり、4は時分割プロセス登
録処理器(TDPR)である。5はリアルタイム
プロセス登録キユー(RPRQ)、6は時分割プロ
セス登録キユー(TPRQ)である。7はリアル
タイムプロセス作成器(RTPG)であり、リア
ルタイムプロセス登録キユー5に登録されている
プロセスをリアルタイムプロセスに変換する。8
はユーザプロセスの状態識別器(UPSI)であり、
それぞれのプロセスの状態はプロセス優先度処理
機構(PPD)9に引き継がれる。10はプロセ
ス選択機構(PSM)であり、最も優先度の高い
プロセスを選択する。11はカーネルプロセス1
を選択したときのデイスパツチ機構(KPD)、1
2はユーザプロセス2のうちのリアルタイムプロ
セスを選択したときのデイスパツチ機構
(RPD)、13及び14は同時分割プロセスを選
択したときのデイスパツチ機構(TPD)である。
15は選択されたカーネルプロセス、16は同ユ
ーザプロセスを示す。17はリアルタイム処理機
構を含むスケジユール機構(SCM)である。
FIG. 1 is a block diagram showing an embodiment of the apparatus according to the present invention. In the figure, 1 is a kernel process (KP), which processes various requests from user processes (UP). 2 is a user process, which can be roughly divided into a time-sharing process and a real-time process. 3 is a real-time process registration processor (RTPR), and 4 is a time-sharing process registration processor (TDPR). 5 is a real-time process registration queue (RPRQ), and 6 is a time-sharing process registration queue (TPRQ). 7 is a real-time process generator (RTPG), which converts the process registered in the real-time process registration queue 5 into a real-time process. 8
is the user process state identifier (UPSI),
The status of each process is taken over by a process priority processing mechanism (PPD) 9. 10 is a process selection mechanism (PSM) that selects the process with the highest priority. 11 is kernel process 1
Dispatch mechanism (KPD) when selecting 1
2 is a dispatch mechanism (RPD) when a real-time process is selected from among the user processes 2, and 13 and 14 are dispatch mechanisms (TPD) when a simultaneous split process is selected.
15 indicates the selected kernel process, and 16 indicates the same user process. 17 is a scheduling mechanism (SCM) including a real-time processing mechanism.
ここで、上記第1図に示す構成の動作を説明す
る。カーネルプロセス1がスリープ状態になる
と、直ちにプロセス優先度処理機構9に制御が移
り、優先度の最も高いプロセスを作成する。リア
ルタイムプロセスは最高優先度に設定される。最
高優先度のプロセスはプロセス選択機構10で選
択される。カーネルプロセス1が選択された場合
はカーネルデイスパツチ機構11に制御が移り、
再びカーネルプロセス1がCPU使用権を得る。
ユーザプロセス2でリアルタイムプロセスのシス
テムコールを発するとリアルタイムプロセス登録
器3によつてリアルタイムプロセス登録キユー5
に登録される。このキユーはスケジユール機構1
7で参照される。ユーザプロセスはリアルタイム
プロセス作成器7によつてリアルタイムプロセス
の属性をもつようになる。このリアルタイムプロ
セス作成器7で作成されたリアルタイムプロセス
はユーザプロセス状態識別器8によつて時分割プ
ロセスと区別される。区別されたリアルタイムプ
ロセスはプロセス選択機構10によつて時分割プ
ロセスよりも優先して選択される。リアルタイム
プロセスが複数個ある場合はCPU使用状況、メ
モリ使用状況、優先度値等をもとに適当なものが
選択される。選択されたリアルタイムプロセスは
リアルタイムプロセスデイスパツチ機構12によ
つてCPU専有時間と他プロセスへデイスパツチ
を許す時間が与えられデイスパツチされる。与え
られた時間、CPUを使用すると、他プロセスへ
のデイスパツチが許される。 Here, the operation of the configuration shown in FIG. 1 will be explained. When the kernel process 1 goes to sleep, control immediately passes to the process priority processing mechanism 9, which creates the process with the highest priority. Real-time processes are set to the highest priority. The process with the highest priority is selected by the process selection mechanism 10. If kernel process 1 is selected, control is transferred to kernel dispatch mechanism 11,
Kernel process 1 gains the right to use the CPU again.
When the user process 2 issues a real-time process system call, the real-time process register 3 sends a real-time process registration queue 5.
will be registered. This cue is schedule mechanism 1
Referenced in 7. The user process comes to have the attributes of a real-time process by the real-time process generator 7. A real-time process created by this real-time process creator 7 is distinguished from a time-sharing process by a user process state identifier 8. The differentiated real-time processes are selected by the process selection mechanism 10 in preference to time-sharing processes. If there are multiple real-time processes, the appropriate one is selected based on CPU usage, memory usage, priority value, etc. The selected real-time process is dispatched by the real-time process dispatch mechanism 12 by giving it exclusive CPU time and time to allow dispatch to other processes. After using the CPU for a given amount of time, dispatch to other processes is allowed.
ここで、上記第1図に於ける要部の動作につい
て第2図及び第3図を参照し、より詳細に説明す
る。 Here, the operation of the main parts in FIG. 1 will be explained in more detail with reference to FIGS. 2 and 3.
1 リアルタイムプロセスのキユー登録
リアルタイムプロセス処理器3では、第2図
に示すように、時分割プロセス登録キユー6と
は別に、リアルタイムプロセス登録キユー5を
作成する。新たなリアルタイムプロセス
(RTP(N))はこの最前部に登録される。リアル
タイムキユーポインタ(RQP)より走査を開
始するので最前部に高速に登録できる。1 Real-time process queue registration In the real-time process processor 3, as shown in FIG. 2, a real-time process registration queue 5 is created separately from the time-sharing process registration queue 6. A new real-time process (RTP (N) ) is registered at the forefront. Scanning starts from the real-time queue pointer (RQP), so it can be quickly registered at the forefront.
2 リアルタイムプロセス作成器
リアルタイムプロセス作成器7では、第3図
に示すようにプロセステーブル(P−TBL)
の特定の場所に、リアルタイム指示子(A)、
CPU専有時間量(B)、他プロセスに対し許可
するCPU使用量(C)を設定する。2 Real-time process creator The real-time process creator 7 creates a process table (P-TBL) as shown in Figure 3.
a real-time indicator (A) at a specific location of
Set the amount of CPU exclusive time (B) and the amount of CPU usage allowed for other processes (C).
3 プロセス選択機構
プロセス選択機構10では、まずリアルタイ
ムプロセス登録キユー5を走査し、次に時分割
プロセス登録キユー6を走査する。リアルタイ
ムプロセス登録キユー5に登録されているもの
があれば、その内で優先度の高いものが選ばれ
る。この場合、時分割プロセス登録キユー6の
走査は行なわない、リアルタイムプロセス登録
キユー5に登録されているものがない場合、も
しくは、リアルタイムプロセスがイベント待ち
であるような場合に、時分割プロセス登録キユ
ー6が走査される。3 Process Selection Mechanism The process selection mechanism 10 first scans the real-time process registration queue 5 and then scans the time-sharing process registration queue 6. If there are any processes registered in the real-time process registration queue 5, the one with the highest priority is selected. In this case, the time-sharing process registration queue 6 is not scanned; if there is nothing registered in the real-time process registration queue 5, or if a real-time process is waiting for an event, the time-sharing process registration queue 6 is scanned. is scanned.
4 リアルタイムプロセスデイスパツチ機構
リアルタイムプロセスデイスパツチ機構12
では、選ばれたリアルタイムプロセスに対し、
第3図のプロセステーブル(P−TBL)に登
録されているCPU専有時間量を連続的に該当
プロセスに対しデイスパツチする。このプロセ
スが実行可能な状態なら他からの割り込みやト
ラツプが発生してもそれらの処理後、直ちに再
び該当リアルタイムプロセスに制御が移され、
他のプロセスは実行され得ない。プロセステー
ブル(P−TBL)に登録されたCPU専有時間
量を該当プロセスが消費すると、プロセステー
ブル(P−TBL)に登録されている他のプロ
セスに対し許可するCPU使用量を用いて他の
プロセスにCPU使用権を与える。他のプロセ
スがこのCPU使用量を消費すると、再びプロ
セス優先度処理機構9から始まるプロセスのス
ケジユーリングが開始される。4 Real-time process dispatch mechanism Real-time process dispatch mechanism 12
Now, for the selected real-time process,
The amount of CPU exclusive time registered in the process table (P-TBL) in FIG. 3 is continuously dispatched to the corresponding process. If this process is executable, even if interrupts or traps occur from other sources, control is immediately transferred to the relevant real-time process again after processing them.
No other processes can be executed. When the corresponding process consumes the amount of CPU exclusive time registered in the process table (P-TBL), other processes will use the amount of CPU usage allowed for other processes registered in the process table (P-TBL). gives CPU usage rights to When another process consumes this CPU usage, process scheduling starts again from the process priority processing mechanism 9.
このようなリアルタイムスケジユール機構をも
たせることにより、プロセスのCPU専有時間が
指定できるので、優先的に或るプロセスの業務を
処理できる。又、リアルタイムプロセスから時分
割プロセスへ、又は時分割プロセスからリアルタ
イムプロセスへと状態を変更することができる。
又、リアルタイム性を要求する計測機器のサポー
トができる。 By providing such a real-time scheduling mechanism, it is possible to specify the CPU exclusive time for a process, so that tasks for a certain process can be processed preferentially. Also, the state can be changed from a real-time process to a time-sharing process, or from a time-sharing process to a real-time process.
Additionally, it can support measurement equipment that requires real-time performance.
以上はプロセスのCPU専有時間が可変である
こと、又、リアルタイムプロセスは時分割プロセ
スよりも優先的にCPU使用権が与えられること
について述べてきたが、入出力ドライズのリアル
タイム化、プロセスのメモリ張り付け機能、共有
メモリ機能、セマフオ等と組み合わせシステムを
設計すれば、より充実したリアルタイムサブシス
テム系を構築することができる。 Above, we have discussed that the CPU exclusive time of a process is variable, and that real-time processes are given CPU usage rights preferentially over time-sharing processes. By designing a system that combines functions, shared memory functions, semaphore, etc., it is possible to construct a more complete real-time subsystem system.
以上詳記したように本発明のスケジユーラによ
れば、時分割方式のスケジユーリングだけでな
く、或る特定のプロセスからの実行要求があつた
際に、そのプロセスを最優先に実行させるリアル
タイム処理機構を持たせた構成としたことによ
り、一定時間内に処理することを要求しているプ
ロセスに対し一定時間、最優先に処理装置の使用
権を許可することができ、これにより緊急度の高
いプロセス業務を扱うシステムに於いて効率の良
いプロセス制御を行なうことができる。
As detailed above, the scheduler of the present invention not only performs time-sharing scheduling, but also real-time processing that executes a specific process with top priority when an execution request is received from that process. By adopting a structure that includes a mechanism, it is possible to grant the right to use the processing device with the highest priority for a certain period of time to a process that requests processing within a certain period of time. Efficient process control can be performed in a system that handles process operations.
第1図は本発明の一実施例を示すブロツク図、
第2図は上記実施例に於けるリアルタイムプロセ
ス登録処理器の動作を説明するための図、第3図
は上記実施例に於けるプロセステーブルを示す
図、第4図は従来のスケジユーラを示すブロツク
図である。
1,15……カーネルプロセス(KP)、2,1
6……ユーザプロセス(UP)、3……リアルタイ
ムプロセス登録処理器(RTPR)、4……時分割
プロセス登録処理器(TDPR)、5……リアルタ
イムプロセス登録キユー(RPRQ)、6……時分
割プロセス登録キユー(TPRQ)、7……リアル
タイムプロセス作成器(RTPG)、8……ユーザ
プロセス状態識別器(UPSI)、9……プロセス優
先度処理機構(PPD)、10……プロセス選択機
構(PSM)、11……カーネルプロセスデイスパ
ツチ機構(KPD)、12……リアルタイムプロセ
スデイスパツチ機構(RPD)、13,14……時
分割プロセスデイスパツチ機構(TPD)、17…
…スケジユール機構。
FIG. 1 is a block diagram showing one embodiment of the present invention;
Fig. 2 is a diagram for explaining the operation of the real-time process registration processor in the above embodiment, Fig. 3 is a diagram showing a process table in the above embodiment, and Fig. 4 is a block diagram showing a conventional scheduler. It is a diagram. 1,15...Kernel process (KP), 2,1
6... User process (UP), 3... Real-time process registration processor (RTPR), 4... Time-sharing process registration processor (TDPR), 5... Real-time process registration queue (RPRQ), 6... Time-sharing Process registration queue (TPRQ), 7...Real-time process creator (RTPG), 8...User process state identifier (UPSI), 9...Process priority processing mechanism (PPD), 10...Process selection mechanism (PSM) ), 11... kernel process dispatch mechanism (KPD), 12... real-time process dispatch mechanism (RPD), 13, 14... time-sharing process dispatch mechanism (TPD), 17...
...Schedule mechanism.
Claims (1)
をリアルタイムプロセスとして登録処理するリア
ルタイムプロセスの登録処理手段と、この登録処
理手段により登録処理されたリアルタイムプロセ
スが登録されるリアルタイムプロセスの待ち行列
登録手段と、この待ち行列登録手段を参照して対
象プロセスをリアルタイムプロセスとして作成す
ると共に、そのリアルタイムプロセスに対応する
CPU専有時間と他プロセスに与えるCPU使用許
可時間とをプロセステーブルに登録するリアルタ
イムプロセス作成手段と、このリアルタイムプロ
セス作成手段で作成されたリアルタイムプロセス
を時分割プロセスと区別するユーザプロセス状態
識別手段と、このユーザプロセス状態識別手段に
より識別されたリアルタイムプロセスを時分割プ
ロセスに優先して選択するプロセス選択手段と、
このプロセス選択手段で選択されたリアルタイム
プロセスに対し、前記プロセステーブルに登録さ
れているCPU専有時間を割り当て、そのCPU専
有時間が消費された後に他のプロセスに対して前
記プロセステーブルに登録されているCPU使用
許可時間だけCPU使用権を与えるデイスパツチ
手段とを具備し、優先して選択された各リアルタ
イムプロセスの処理毎に、他のプロセスに対して
所定期間CPU使用権を与えるように構成したこ
とを特徴とするスケジユーラ。1. A real-time process registration processing means for registering a specific process as a real-time process from the processes to be executed; a real-time process queue registration means for registering the real-time process registered by the registration processing means; Create the target process as a real-time process by referring to the queue registration means, and respond to the real-time process.
real-time process creation means for registering CPU exclusive time and CPU usage permission time given to other processes in a process table; user process state identification means for distinguishing the real-time process created by the real-time process creation means from a time-sharing process; process selection means for selecting the real-time process identified by the user process state identification means with priority over the time-sharing process;
The CPU exclusive time registered in the process table is allocated to the real-time process selected by the process selection means, and after the CPU exclusive time is consumed, the real time process selected by the process selection means is assigned the CPU exclusive time registered in the process table to other processes. and a dispatch means that grants CPU usage rights for the CPU usage permission time, and is configured to grant CPU usage rights to other processes for a predetermined period of time for each processing of each real-time process selected as a priority. Featured scheduler.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP6524185A JPS61223950A (en) | 1985-03-29 | 1985-03-29 | Scheduler |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP6524185A JPS61223950A (en) | 1985-03-29 | 1985-03-29 | Scheduler |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS61223950A JPS61223950A (en) | 1986-10-04 |
JPH0518139B2 true JPH0518139B2 (en) | 1993-03-11 |
Family
ID=13281222
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP6524185A Granted JPS61223950A (en) | 1985-03-29 | 1985-03-29 | Scheduler |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS61223950A (en) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0644234B2 (en) * | 1987-07-17 | 1994-06-08 | 日本電気株式会社 | Task management device |
CA2052108A1 (en) * | 1990-10-23 | 1992-04-24 | Hermant R. Kanakia | Rate-based scheduling of multiplexed resources |
JP2575973B2 (en) * | 1991-06-20 | 1997-01-29 | 株式会社ミツトヨ | Task scheduling method for measurement data processing system |
JP2574983B2 (en) * | 1993-04-06 | 1997-01-22 | 本田技研工業株式会社 | Multitask control system |
JPH06301559A (en) * | 1993-04-12 | 1994-10-28 | Nec Corp | Task driver |
US5487170A (en) * | 1993-12-16 | 1996-01-23 | International Business Machines Corporation | Data processing system having dynamic priority task scheduling capabilities |
JP2006244293A (en) * | 2005-03-04 | 2006-09-14 | Nippon Telegr & Teleph Corp <Ntt> | Tag execution control method and device |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5523527A (en) * | 1978-08-02 | 1980-02-20 | Nec Corp | Dispatching system |
JPS59117642A (en) * | 1982-12-24 | 1984-07-07 | Hitachi Ltd | System for allocating processing to computer |
-
1985
- 1985-03-29 JP JP6524185A patent/JPS61223950A/en active Granted
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5523527A (en) * | 1978-08-02 | 1980-02-20 | Nec Corp | Dispatching system |
JPS59117642A (en) * | 1982-12-24 | 1984-07-07 | Hitachi Ltd | System for allocating processing to computer |
Also Published As
Publication number | Publication date |
---|---|
JPS61223950A (en) | 1986-10-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101896886B (en) | Uniform synchronization between multiple kernels running on single computer systems | |
TWI233545B (en) | Mechanism for processor power state aware distribution of lowest priority interrupts | |
AU2001297946B2 (en) | Computer multi-tasking via virtual threading | |
EP1788486B1 (en) | Cooperative scheduling using coroutines and threads | |
US8789051B2 (en) | Operating system and architecture for embedded system | |
HU219533B (en) | Multimedia computer system as well as method of controlling operation of the multimedia computer system | |
CN105378668B (en) | The interruption of operating system management in multicomputer system guides | |
Panneerselvam et al. | Rinnegan: Efficient resource use in heterogeneous architectures | |
US20130219395A1 (en) | Batch scheduler management of tasks | |
JPH0518139B2 (en) | ||
JP2007179190A (en) | Semaphore management method and semaphore management program | |
US6829765B1 (en) | Job scheduling based upon availability of real and/or virtual resources | |
Bruyninckx | Real-time and embedded guide | |
Nutt | A parallel processor operating system comparison | |
Rincón et al. | SITSA-RT: an information theory inspired real-time multiprocessor scheduler | |
Lee et al. | Interrupt handler migration and direct interrupt scheduling for rapid scheduling of interrupt-driven tasks | |
JP2006004092A (en) | Computer system | |
Murti et al. | Real-Time Operating Systems (RTOS) | |
Guha et al. | Real-Time Scheduling: Background and Trends | |
Bitterling | Operating System Kernels | |
Neeracher | Scheduling for heterogeneous opportunistic workstation clusters | |
Joshi | Operating Systems | |
JPS62184543A (en) | Job scheduling system | |
JPS63136140A (en) | Optimum job scheduling system | |
Takeyama et al. | HI8: A Realtime Operating System with μITRON Specifications for the H8/500 |