JPH07295840A - Event management system for multiprogramming system - Google Patents

Event management system for multiprogramming system

Info

Publication number
JPH07295840A
JPH07295840A JP9087994A JP9087994A JPH07295840A JP H07295840 A JPH07295840 A JP H07295840A JP 9087994 A JP9087994 A JP 9087994A JP 9087994 A JP9087994 A JP 9087994A JP H07295840 A JPH07295840 A JP H07295840A
Authority
JP
Japan
Prior art keywords
event
task
waiting
wait
execution
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.)
Granted
Application number
JP9087994A
Other languages
Japanese (ja)
Other versions
JP3245500B2 (en
Inventor
Yoshinori Hanesaka
佳典 羽坂
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.)
NEC IC Microcomputer Systems Co Ltd
Original Assignee
NEC IC Microcomputer Systems Co 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 NEC IC Microcomputer Systems Co Ltd filed Critical NEC IC Microcomputer Systems Co Ltd
Priority to JP09087994A priority Critical patent/JP3245500B2/en
Publication of JPH07295840A publication Critical patent/JPH07295840A/en
Application granted granted Critical
Publication of JP3245500B2 publication Critical patent/JP3245500B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

PURPOSE:To improve the using efficiency of resources and also to improve the productivity and the maintenance performance in a multiprogramming system by decreasing the storage areas and the program steps used by the OS of the system which is applied to a built-in system. CONSTITUTION:An event management system includes a task management means 1, a task attached event management means 2, a task attached event wait management means 3, a task control block group 4, an under-execution task 5, an execution wait task group 6, an event wait task group 7, an interruption handler 8, an event establishment condition storage area group 9, and an event wait condition storage area group 10. The information included in the task 5, the groups 6 and 7, and the handler 8 are stored in a program storage part 50. Then the information included in the groups 4, 9 and 10 are stored in a data storage part 51.

Description

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

【0001】[0001]

【産業上の利用分野】本発明はマルチプログラミングに
おける事象管理方式に関し、特にマイクロコンピュータ
と周辺ハードウェアとのインタフェ−スを必要とする電
話およびファクシミリ等において、複数のタスクを事象
ごとに切替えるOSと、当該OS上において動作するア
プリケーション・プログラムとを、ROM等のファ−ム
ウェアとして記憶して組み込むシステムに適用されるマ
ルチプログラミングにおける事象管理方式に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an event management system in multi-programming, and more particularly to an OS for switching a plurality of tasks for each event in a telephone and a facsimile which require an interface between a microcomputer and peripheral hardware. The present invention relates to an event management method in multi-programming applied to a system in which an application program running on the OS is stored and incorporated as firmware such as ROM.

【0002】[0002]

【従来の技術】従来、複数のタスクを並行動作させる管
理プログラムとして機能するマルチプログラミングにお
ける事象管理方式(以下、マルチプログラミング・シス
テムと云う)は、複雑な制御用システムを小さな仕事の
単位であるタスクとして細分化するとともに、当該タス
ク間の関係およびタスクと入出力(外部システム)との
関係を明確にすることにより、生産性と保守性の向上を
図るために用いられている。例えば、CQ出版社の別冊
インタフェ−ス・ブートストラップNO.6、同じくC
Q出版社のインタフェ−ス1992年12月号、日本電
気(株)の78K/0シリーズ用リアルタイムOS R
X78K/0基礎編 資料番号EED−912A(第2
版)および日本電気(株)の78K/3リアルタイムO
Sアプリケーション 資料番号EEAー611A(第2
版)等に示されているように、一つしかないCPUに対
して複数のタスクを割り当てて、時間および外部システ
ムからの入力等をタスク切替えの要因(事象)として使
用し、タスク一つ一つに対するCPU割り当て時間を分
配することにより、前記管理プログラムを実現してい
る。このような管理プログラムは、マルチタスクOSま
たはリアルタイムOSとも呼ばれている。
2. Description of the Related Art Conventionally, an event management method in multi-programming (hereinafter referred to as a multi-programming system) that functions as a management program for operating a plurality of tasks in parallel is a task which is a unit of a small work for a complicated control system. Is used to improve productivity and maintainability by clarifying the relationship between the tasks and the relationship between the tasks and the input / output (external system). For example, a separate interface bootstrap NO. 6, also C
Q Publisher's interface December 1992 issue, NEC's real-time OS for 78K / 0 series R
X78K / 0 Basic Edition Material No. EED-912A (Second
Version) and 78K / 3 real-time O of NEC Corporation
S application document number EEA-611A (second
Version) etc., multiple tasks are assigned to a CPU with only one, and time and inputs from external systems are used as factors (events) for task switching, The management program is realized by distributing the CPU allocation time to each of the two. Such a management program is also called a multi-task OS or a real-time OS.

【0003】図14は、従来のOSを用いた一例を示す
マルチプログラミング・システムの内部構成図である。
図14に示されるように、本従来例は、タスク管理手段
1と、タスク制御ブロック4−1、4−2、……、4−
nを含むタスク制御ブロック群4と、実行中タスク5
と、実行待ちタスク6−1、6−2、……、6−nを含
む実行待ちタスク群6と、実行待ちタスク7−1、7−
2、……、7−nを含む実行待ちタスク群7と、割り込
みハンドラ8と、メール・ボックス12ー1、イベント
・フラグ12ー2、時間待ちタイマ12−3および起床
要求カウンタ12−4を含む事象状態記憶領域12と、
事象待ち管理手段13とを備えて構成される。なお、実
行中タスク5、実行待ちタスク群6、事象待ちタスク群
7および割り込みハンドラ8は、当該システム全体を制
御するためのプログラムの集合であり、これらは全てプ
ログラム記憶部50内に格納されている。このプログラ
ム記憶部50の例としてはROM等が用いられている。
また、タスク制御ブロック群4および事象状態記憶領域
12に、プログラム記憶部50に格納されているタスク
を制御するための情報が格納されるデータ記憶部51に
包含されている。このデータ記憶部51の例としてはR
AM等が用いられる。
FIG. 14 is an internal block diagram of a multi-programming system showing an example using a conventional OS.
As shown in FIG. 14, in this conventional example, the task management means 1 and the task control blocks 4-1, 4-2, ..., 4-
Task control block group 4 including n and running task 5
, A waiting task group 6 including the waiting tasks 6-1, 6-2, ..., 6-n, and waiting tasks 7-1, 7-
2, ..., 7-n, the waiting task group 7, the interrupt handler 8, the mail box 12-1, the event flag 12-2, the time waiting timer 12-3 and the wakeup request counter 12-4. An event state storage area 12 including
The event waiting management means 13 is provided. The running task 5, the waiting task group 6, the event waiting task group 7 and the interrupt handler 8 are a set of programs for controlling the entire system, and all of them are stored in the program storage unit 50. There is. A ROM or the like is used as an example of the program storage unit 50.
Further, the task control block group 4 and the event state storage area 12 are included in the data storage section 51 in which information for controlling the tasks stored in the program storage section 50 is stored. An example of this data storage unit 51 is R
AM or the like is used.

【0004】図14において、実行中タスク5は、プロ
グラム記憶部50に格納されているプログラムであり、
現在時点において、CPUにおいて処理されているプロ
グラムの内容を意味している。この実行中タスク5を処
理している状態は実行状態(RUN状態)と呼ばれてい
る。実行待ちタスク群6は、いつでも実行することがで
きる状態にあるが、前記CPUが、実行中タスク5より
解放されるのを待機しているプログラムであり、この待
機状態は、実行待ち状態(READY状態)または実行
可能状態と呼ばれている。事象待ちタスク群7は、或る
事象が成立することを待機しているプログラムであり、
この待機状態は、事象待ち状態(WAIT状態)と呼ば
れている。また、割り込みハンドラ8は、当該システム
全体を制御するためのプログラの集合体を意味してお
り、プログラム記憶部50に格納されている。
In FIG. 14, a running task 5 is a program stored in the program storage unit 50,
It means the contents of the program being processed by the CPU at the present time. The state in which the running task 5 is being processed is called the running state (RUN state). The execution waiting task group 6 is a program that is ready to be executed at any time, but is a program waiting for the CPU to be released from the executing task 5, and this waiting state is in the execution waiting state (READY). State) or ready state. The event waiting task group 7 is a program waiting for the establishment of an event,
This waiting state is called an event waiting state (WAIT state). The interrupt handler 8 means a set of programs for controlling the entire system, and is stored in the program storage unit 50.

【0005】タスク制御ブロック群4と事象状態記憶領
域12には、プログラム記憶部50を制御するための情
報が格納され、データ記憶部51に包含されて構成され
ており、それぞれRAM等により形成される。タスク制
御ブロック4は、タスクの実行が中断された時には、再
度、当該タスクの続きを実行することが可能な範囲の情
報が格納されており、TCBとも呼ばれている。プログ
ラム記憶部50内の実行待ちタスク群6および事象待ち
タスク群7は、タスク制御ブロック4に含まれているタ
スク持続アドレスにより管理され、一つのグループにま
とめられたプログラムであり、その構造は待ち行列(キ
ュー)と呼ばれている。事象状態記憶領域12は、メー
ル・ボックス12−1、イベント・ボックス12−2、
時間待ちタイマ12−3および起床要求カウンタ12−
4により形成されており、事象の条件であるメッセー
ジ、イベント、時間および起床要求等の現在の状態を示
す情報が格納されている領域である。
Information for controlling the program storage unit 50 is stored in the task control block group 4 and the event state storage area 12, and is contained in the data storage unit 51, each of which is formed by a RAM or the like. It The task control block 4 stores information of a range in which the continuation of the task can be executed again when the execution of the task is interrupted, and is also called TCB. The execution waiting task group 6 and the event waiting task group 7 in the program storage unit 50 are programs that are managed by the task persistent address included in the task control block 4 and are grouped into one group, and the structure thereof is waiting. It is called a queue. The event state storage area 12 includes a mail box 12-1, an event box 12-2,
Time waiting timer 12-3 and wakeup request counter 12-
4 is an area in which information indicating the current state such as a message as a condition of an event, an event, a time, and a wakeup request is stored.

【0006】タスク管理手段1および事象待ち管理手段
13は、プログラム記憶部50に格納されている、実行
中タスク5、実行待ちタスク群6および事象待ちタスク
群7等を含むタスクならびに割り込みハンドラ8を、デ
ータ記憶部に格納されている情報を基に制御する機能を
有する手段であり、この内のタスク管理手段1は、実行
状態にある実行中タスク5と、実行待ちタスク群6に含
まれているタスクの中から、或る取り決めにより一つの
タスクを選び出して、実行状態に移行させる機能を有し
ている。このタスク管理手段1による上記の動作は、ス
ケジューリングと呼ばれており、また当該タスク管理手
段1自体はスケジューラと呼ばれる。今、一例として、
タスク管理手段1により、実行待ちタスク群6から一つ
のタスクが選び出された場合には、現在、実行状態にあ
った実行中タスク5は実行待ち状態に遷移し、待ち状態
にあった実行待ちタスク群6の内の一つのタスクが実行
状態に遷移する。このタスクの遷移状態(切替状態)
は、ディスパッチと呼ばれており、実行中タスク5が中
断されていた時のレジスタ等の状態を保存する動作(コ
ンテキスト保存)と、実行待ち状態であったタスクが中
断された時のレジスタ等の状態を復元する動作(コンテ
キスト復元)とを合わせた状態を意味している。タスク
管理手段1のスケジューリングの方法としては、タスク
ごとに優先順位を与えて、当該優先順位の高いものから
順に実行する優先順位実行方式と、実行待ち状態になっ
た順に実行する先着実行方式と、タスクごとに実行可能
の時間を設けてその時間が経過した時に切替えるタイム
スライス方式等があるが、これらの方式を適当に組み合
わせて用いることが多い。なお、以後の説明において
は、優先順位方式と先着順方式とを組み合わせて行う方
式を例として説明するものとする。
The task management means 1 and the event wait management means 13 store a task including an executing task 5, an execution wait task group 6 and an event wait task group 7 stored in the program storage section 50 and an interrupt handler 8. , A means having a function of controlling based on the information stored in the data storage unit, and the task management means 1 therein is included in the running task 5 in the running state and the waiting task group 6. It has a function to select one task from the existing tasks according to a certain agreement and shift it to the execution state. The above operation by the task management means 1 is called scheduling, and the task management means 1 itself is called a scheduler. Now, as an example,
When one task is selected from the execution waiting task group 6 by the task management means 1, the executing task 5 which is currently in the execution state transits to the execution waiting state and the execution waiting state which is in the waiting state. One of the tasks in the task group 6 transits to the running state. Transition status (switching status) of this task
Is called dispatch, and the operation of saving the state of registers etc. when the running task 5 is suspended (context saving) and the register etc. when the task in the waiting state is suspended It means a state that is combined with the operation of restoring the state (context restoration). As a scheduling method of the task management means 1, a priority order execution method in which priorities are given to the respective tasks and the tasks are executed in descending order of priority, and a first-come-first-served execution method is executed in the order of waiting for execution. There is a time slicing method in which an executable time is provided for each task and switching is performed when the time elapses, but these methods are often used in an appropriate combination. In the following description, a method of combining the priority order method and the first-come-first-served method will be described as an example.

【0007】実行中タスク5より出力される事象制御情
報603は、実行状態のタスクから他のタスクに対して
送信される信号またはデータ等であり、1ビットのフラ
グ情報を持つイベント・フラグおよび1バイト以上のデ
ータ群であるメッセージ等が包含されており、タスク間
の同期をとるために使用される。割り込みハンドラ8よ
り出力される事象制御情報601は、事象を設定する信
号およびデータを含む信号であり、タスク管理手段1に
入力されて、当該タスク管理手段1による制御作用に関
与する。事象待ち管理手段13に入力される事象制御情
報602は、外部回路またはCPU(図示されない)の
タイマから入力されるタイマ割り込み信号等を含む信号
であり、事象待ち管理手段13におけるOSの時間管理
用の基準タイマとして使用される。事象待ち管理手段1
3は、上記の事象制御情報601、602および603
により、事象待ちタスク群7の中から事象待ちを解除す
るタスクを選択して、実行待ちタスク群6に移動させる
手段である。この事象待ちを解除するタスクを実行待ち
タスク群6に移動させる際には、前記タスク管理手段1
において行われたスケジューリングと同等のスケジュー
リングが行われる。
The event control information 603 output from the running task 5 is a signal or data transmitted from the task in the running state to another task, and is an event flag having 1-bit flag information and 1 It contains messages, which are data groups of more than bytes, and is used for synchronizing tasks. The event control information 601 output from the interrupt handler 8 is a signal including a signal for setting an event and data, is input to the task management means 1, and is involved in the control action by the task management means 1. The event control information 602 input to the event wait management unit 13 is a signal including a timer interrupt signal input from an external circuit or a timer of a CPU (not shown), and is used for time management of the OS in the event wait management unit 13. Is used as a reference timer. Event waiting management means 1
3 is the above event control information 601, 602 and 603.
Is a means for selecting a task to be released from event waiting from the event waiting task group 7 and moving it to the execution waiting task group 6. When the task to be released from this event waiting is moved to the execution waiting task group 6, the task management means 1 is used.
Scheduling equivalent to the scheduling performed in 1. is performed.

【0008】マルチプログラミング・システムのシステ
ム全体としては、通常、タスク管理手段1により、実行
中タスク5と実行待ちタスク群6とを頻繁に切替えるこ
とにより動作が行われている。しかしながら、このよう
にタスクの切替えが頻繁に行われると、コンテキストの
保存と復元に多くの時間を要する状態となり、一定時間
当りのタスク実行時間が短縮される結果となる。この問
題に対処するために、或る事象が発生するまで、タスク
を切替えの対象外とする機能を持った事象待ち管理手段
13が設けられている。
In the entire system of the multi-programming system, the task management means 1 normally operates by frequently switching between the running task 5 and the waiting task group 6. However, if the tasks are frequently switched in this way, it takes a long time to save and restore the context, which results in shortening the task execution time per certain time. In order to deal with this problem, an event waiting management means 13 having a function of excluding a task from switching targets until a certain event occurs is provided.

【0009】以下、図14および図15(a)を参照し
て、実行中タスク5が、事象待ち管理手段13により事
象待ち状態に移行する動作について説明する。まず、実
行タスク5において事象待ちが発生した場合には、事象
待ち管理手段13による制御作用に移行して、ステップ
B1においては、登録内容を事象状態記憶領域群12に
書き込む。次いでステップB2においては、実行中タス
ク5を事象待ちタスク群7に移動させて、当該実行中タ
スク5を事象待ち状態にする。実行中タスク5の移動終
了後には、タスク管理手段1に制御作用が移りスケジュ
ーリングが行われて、実行待ちタスク群6の中から優先
順位の高いタスクが実行中タスク5に移行する。
The operation of the running task 5 transitioning to the event waiting state by the event waiting management means 13 will be described below with reference to FIGS. 14 and 15A. First, when an event wait occurs in the execution task 5, the control action by the event wait management means 13 is entered, and the registered contents are written in the event state storage area group 12 in step B1. Next, in step B2, the executing task 5 is moved to the event waiting task group 7, and the executing task 5 is placed in the event waiting state. After the movement of the executing task 5 is completed, the control action is transferred to the task management means 1 and scheduling is performed, and the task with the higher priority from the execution waiting task group 6 is transferred to the executing task 5.

【0010】次に、図14および図15(b)を参照し
て、事象待ちタスク群7のタスクが、事象待ち管理手段
13により実行待ち状態にに移行する動作について説明
する。タイマ割り込みにより発生した事象制御情報60
2、または、実行中タスク5および割り込みバンドラ8
においてそれぞれ発生した事象制御情報603および6
01によって、事象待ち管理手段13に制御が移り、ス
テップB3においては、発生した事象を待つタスクが事
象待ちタスク群7に存在するか否かを調べる。ステップ
B3の判断処理において、当該タスクが事象待ちタスク
群7に存在しない場合には、タスク管理手段1に制御が
戻り処理は終了する。また、当該タスクが事象待ちタス
ク群6に存在する場合には、ステップB4において、事
象待ちタスク群7に含まれている対象事象を実行待ちタ
スク群5に移動させて実行待ち状態にする。当該対象事
象の移動後においてはタスク管理手段1に制御が移り、
スケジューリングが行われて、実行待ちタスク群6の中
から優先順位の高いタスクが実行中タスク5に移動す
る。
Next, with reference to FIGS. 14 and 15 (b), the operation of the task of the event waiting task group 7 shifting to the execution waiting state by the event waiting managing means 13 will be described. Event control information 60 generated by timer interrupt
2, or task 5 being executed and interrupt bundler 8
Event control information 603 and 6 respectively generated in
By 01, the control shifts to the event wait management means 13, and in step B3, it is checked whether or not a task waiting for the occurred event exists in the event wait task group 7. In the determination processing of step B3, when the task is not present in the event waiting task group 7, control is returned to the task management means 1 and the processing ends. If the task exists in the event waiting task group 6, in step B4, the target event included in the event waiting task group 7 is moved to the execution waiting task group 5 and put in the execution waiting state. After the movement of the target event, control is transferred to the task management means 1,
Scheduling is performed, and a task with a high priority is moved from the waiting task group 6 to the executing task 5.

【0011】図16は、それぞれ従来のOSを使用した
時の、実行待ち行列45、時間待ち行列46、イベント
待ち行列47およびメッセージ待ち行列48を含む事象
待ち行列の形成例である。ポインタ400、402、4
04および406は、ぞれぞれ、これらの実行待ち行列
45、時間待ち行列46、イベント待ち行列47および
メッセージ待ち行列48を含む事象待ち行列の先頭のタ
スク制御ブロックのタスク接続アドレスとして定義され
るポインタである。これらのポインタは、待ちタスクが
存在しない場合には、例えばヌルポインタ等のあり得な
いアドレスに設定される。またポインタ4011 、40
2 、4013 、4031 、4032 および405は、
次のタスク制御プロックのポインタである。この内、ポ
インタ4012 、4032 および405はターミネータ
であり、例えば、ヌルポインタ等のあり得ないアドレス
に設定される。 図14の従来のマルチプログラミング
・システムの内部構成図において、事象待ち管理手段1
3により、図16の時間待ち行列46、イベント待ち行
列47およびメッセージ待ち行列48を含む事象待ち行
列のタスクが、図16に示される実行待ち行列45に移
動する際には、このポインタを書き変えることにより実
現されている、また、実行中のタスクが、時間待ち行列
46、イベント待ち行列47およびメッセージ待ち行列
48を含む事象待ち行列のタスクに移動する時には、時
間待ち行列46、イベント待ち行列47、またはメッセ
ージ待ち行列48の先頭または後尾のポインタを書き変
えることにより実現されている。
FIG. 16 shows an example of forming an event queue including an execution queue 45, a time queue 46, an event queue 47 and a message queue 48 when using a conventional OS. Pointers 400, 402, 4
04 and 406 are defined as the task connection address of the task control block at the head of the event queue including the execution queue 45, the time queue 46, the event queue 47 and the message queue 48, respectively. It is a pointer. When there are no waiting tasks, these pointers are set to impossible addresses such as null pointers. In addition, pointers 401 1 and 40
1 2, 401 3, 403 1, 403 2 and 405,
A pointer to the next task control block. Among them, the pointer 401 2, 403 2 and 405 are terminators, for example, it is set to the address impossible null pointer or the like. In the internal configuration diagram of the conventional multi-programming system of FIG. 14, the event waiting management means 1
3 rewrites this pointer when a task in the event queue, including the time queue 46, event queue 47 and message queue 48 of FIG. 16 moves to the execution queue 45 shown in FIG. When an executing task, which is realized by the above, moves to a task in the event queue including the time queue 46, the event queue 47 and the message queue 48, the time queue 46, the event queue 47 , Or by rewriting the pointer at the head or tail of the message queue 48.

【0012】次に、図17に示されるOSの制御構造例
と合わせて動作について説明する。アプリケーション・
プログラムの観点から見ると、タスク管理手段1と事象
待ち管理手段13との間には、システム・コール14と
呼ばれるOS制御用の関数が、アプリケーションプログ
ラムとタスク管理手段1/事象待ち管理手段13との間
を取り持っている。例えば、図14の実行待ちタスク群
6に対して、新たにタスクを追加したい場合には、先
ず、タスク生成用システム・コールをすることによりタ
スク制御ブロック群4を生成し、その後、タスク起動シ
ステム・コールを発行することにより、実行待ちタスク
群6の最後にタスクを追加する。また、起動したタスク
の優先順位を変更したい時には、優先順位変更用のシス
テム・コールを発行することにより、タスク制御ブロッ
ク群4に含まれている優先順位番号を変更する。このよ
うに、現在時点における実行中タスク5の中で、発行さ
れたシステム・コール、またはOS自身が管理している
事象制御情報602により、タスク管理手段1と事象待
ち管理手段13に制御が移る。タスク管理手段1にいて
は、実行待ちタスク群6の優先順位の高いタスクから順
次切替えおよび実行が繰返して行われる。もしも、事象
待ち管理手段13により、新たに事象待ちタスク群7か
ら実行待ちタスク群6にタスクが移動してきた場合に
は、当該タスクが、実行中タスク5のタスクよりも優先
順位の高いものであれば、実行中のタスクが中断され
て、移動してきたタスクが実行される。
Next, the operation will be described together with the example of the control structure of the OS shown in FIG. application·
From the viewpoint of the program, an OS control function called a system call 14 is provided between the task management means 1 and the event wait management means 13 as an application program and task management means 1 / event wait management means 13. Have a room between. For example, when a new task is to be added to the execution waiting task group 6 of FIG. 14, first, the task control block group 4 is generated by making a task generation system call, and then the task activation system is generated. -By issuing a call, a task is added to the end of the pending task group 6. Further, when it is desired to change the priority order of the activated task, the priority order number included in the task control block group 4 is changed by issuing a system call for changing the priority order. As described above, in the currently executing task 5, control is transferred to the task management means 1 and the event wait management means 13 according to the issued system call or the event control information 602 managed by the OS itself. . In the task management means 1, the tasks in the execution waiting task group 6 are sequentially switched and executed in order from the task having the highest priority. If the event waiting management unit 13 newly moves a task from the event waiting task group 7 to the execution waiting task group 6, the task has a higher priority than the task of the executing task 5. If so, the task being executed is interrupted and the moved task is executed.

【0013】事象状態記憶領域12には、図16におい
て説明したメッセージ待ち行列48の情報を格納するメ
ール・ボックス12−1と、イベント待ち行列47の情
報を格納するイベント・フラグ12−2と、時間待ち行
列46の情報を格納する時間待ちタイマ12−3と、起
床待ち行列の情報を格納する起床要求カウンタ12−4
が、少なくとも存在している。以下においては、従来例
における問題点に関連して、上記のメール・ボックス1
2−1、イベント・フラグ12−2、時間待ちタイマ1
2−3および起床要求カウンタ12−4を、それぞれ利
用する場合の事象待ち管理手段13の動作について説明
する。
In the event state storage area 12, a mail box 12-1 for storing the information of the message queue 48 described in FIG. 16, an event flag 12-2 for storing the information of the event queue 47, A time waiting timer 12-3 for storing information on the time queue 46 and a wakeup request counter 12-4 for storing information on the wakeup queue
But at least it exists. In the following, in connection with the problems in the conventional example, the above-mentioned mail box 1
2-1, event flag 12-2, time waiting timer 1
The operation of the event waiting management unit 13 when the 2-3 and the wakeup request counter 12-4 are used will be described.

【0014】メール・ボックス12−1を利用する場合
の事象待ち管理手段13の動作について説明する。ま
ず、実行中タスク5の中から事象情報603が事象待ち
管理手段13に伝達され、これを受けて事象待ち管理手
段13において、当該事象情報603の内容、この場合
にはメッセージが伝達されているものと判断されると、
事象待ち管理手段13により、メール・ボックス12−
1に伝達されたメッセージが、当該メール・ボックス1
2−1に書き込まれる。更にまた、当該メール・ボック
ス12−1内にある事象待ち行列、即ち事象待ちタスク
群7のメッセージ待ちをしているタスクの情報の中に、
事象待ちタスク7−1、7−2、………、タスク7−n
に含まれる情報が存在している場合には、事象待ち管理
手段13により、その内の一つの事象待ちタスクが実行
待ちタスク群6に移動される。逆に、実行中タスク5か
ら、メッセージを要求する事象情報603が事象待ち管
理手段13に伝達され、事象待ち管理手段13におい
て、事象情報の内容、この場合にはメール・ボックスの
番号が伝達されているものと判断されると、メール・ボ
ックス12−1にメッセージがない場合には、実行中タ
スク5は事象待ちタスク群7に移動される。その際に、
既にメッセージを待つタスクが、事象待ちタスク群7内
に存在している場合には、当該事象待ちタスクに対応す
るタスク制御ブロック内にあるタスク接続アドレスがが
書き変えられる。
The operation of the event waiting management means 13 when using the mail box 12-1 will be described. First, the event information 603 is transmitted from the running task 5 to the event waiting management unit 13, and in response to this, the event waiting management unit 13 transmits the content of the event information 603, in this case, a message. When it is judged that
The event waiting management means 13 allows the mail box 12-
1 is the message delivered to mailbox 1
2-1 is written. Furthermore, in the event queue in the mail box 12-1, that is, in the information of the task waiting for the message of the event waiting task group 7,
Event waiting tasks 7-1, 7-2, ..., Task 7-n
If the information included in the item 1 exists, the event waiting management unit 13 moves one of the event waiting tasks to the execution waiting task group 6. Conversely, the event information 603 requesting a message is transmitted from the running task 5 to the event wait management means 13, and the event wait management means 13 transmits the content of the event information, in this case, the mail box number. If there is no message in the mail box 12-1, the running task 5 is moved to the event waiting task group 7. At that time,
When a task waiting for a message already exists in the event waiting task group 7, the task connection address in the task control block corresponding to the event waiting task is rewritten.

【0015】次に、イベント・フラグ12−2を利用す
る場合の事象待ち管理手段13の動作について説明す
る。まず、実行中タスク5から事象情報603が事象待
ち管理手段13に伝達され、これを受けて事象待ち管理
手段13において、当該事象情報603の内容、この場
合にはイベント番号が伝達されているものと判断される
と、事象待ち管理手段13により、イベント・フラグ1
2−2に伝達されたイベント・フラグの状態が、当該イ
ベント・フラグ12−2に書き込まれる。更にまた、当
該イベント・フラグ12−2内にある事象待ち行列、即
ち事象待ちタスク群7のイベント待ちをしているタスク
の情報の中に、事象待ちタスク7−1、7−2、……
…、タスク7−nに含まれる情報が存在してる場合に
は、事象待ち管理手段13により、その内の一つ以上の
事象待ちタスクが実行待ちタスク群6に移動される。逆
に、実行中タスク5から、イベント・フラグがセットさ
れるまで待つ事象情報603が事象待ち管理手段13に
伝達され、事象待ち管理手段13において、事象情報の
内容、この場合にはイベント番号が伝達されているもの
と判断されると、イベント・フラグ12−2に対象番号
のイベント・フラグがセットされていない場合には、実
行中タスク5は事象待ちタスク群7に移動される。その
際に、既にイベントを待つタスクが、事象待ちタスク群
7内に存在している場合には、当該事象待ちタスクに対
応するタスク制御ブロック内にあるタスク接続アドレス
が書き変えられる。
Next, the operation of the event waiting management means 13 when the event flag 12-2 is used will be described. First, the event information 603 is transmitted from the running task 5 to the event wait management means 13, and in response to this, the content of the event information 603, in this case, the event number is transmitted to the event wait management means 13. If it is determined that the event flag 1
The state of the event flag transmitted to 2-2 is written in the event flag 12-2. Furthermore, in the event queue in the event flag 12-2, that is, in the information of the task waiting for the event of the event waiting task group 7, the event waiting tasks 7-1, 7-2, ...
..., if the information included in the task 7-n exists, the event waiting management unit 13 moves one or more event waiting tasks to the execution waiting task group 6. Conversely, the event information 603 that waits until the event flag is set is transmitted from the running task 5 to the event wait management means 13, and the event wait management means 13 indicates the content of the event information, in this case the event number. When it is determined that the event flag 12-2 is transmitted, if the event flag of the target number is not set in the event flag 12-2, the running task 5 is moved to the event waiting task group 7. At this time, if a task waiting for an event already exists in the event waiting task group 7, the task connection address in the task control block corresponding to the event waiting task is rewritten.

【0016】次ぎに、時間待ちタイマ12−3を利用す
る場合の事象待ち管理手段13の動作について説明す
る。まず、外部からのタイマ割り込みにより発生する事
象制御情報602がが事象待ち管理手段13に伝達さ
れ、これを受けて事象待ち管理手段13の制御により、
時間待ちタイマ12−3内に時間待ちしているタスクが
存在している場合には、時間待ちタイマ12−3に対応
するタイム・カウンタがカウント・アップされる。そし
て、前記タイマ割り込みにより要求された時間の経過時
点において、事象待ち管理手段13により、事象待ちタ
スク群7内において時間待ちをしいるタスクの内の一つ
以上の事象待ちタスクが実行待ちタスク群6に移動され
る。逆に、実行中タスク5から、時間待ち要求である事
象情報603が事象待ち管理手段13に伝達され、事象
待ち管理手段13において、事象情報の内容、この場合
には時間情報が伝達されているものと判断されると、実
行中タスク5は事象待ちタスク群7に移動される。その
際に、既に時間待ちをするタスクが、事象待ちタスク群
7内に存在している場合には、当該事象待ちタスクに対
応するタスク制御ブロック内にあるタスク接続アドレス
が書き変えられる。
Next, the operation of the event waiting management means 13 when the time waiting timer 12-3 is used will be described. First, event control information 602 generated by a timer interrupt from the outside is transmitted to the event wait management means 13, and in response to this, by the control of the event wait management means 13,
When there is a task waiting for time in the time waiting timer 12-3, the time counter corresponding to the time waiting timer 12-3 is counted up. Then, when the time requested by the timer interrupt has elapsed, one or more event waiting tasks among the tasks waiting for the time in the event waiting task group 7 are processed by the event waiting management means 13 in the execution waiting task group. Moved to 6. On the contrary, the event information 603, which is a time waiting request, is transmitted from the running task 5 to the event waiting management unit 13, and the event waiting management unit 13 transmits the content of the event information, in this case the time information. If it is determined that the task is being executed, the executing task 5 is moved to the event waiting task group 7. At this time, if a task waiting for time is already present in the event waiting task group 7, the task connection address in the task control block corresponding to the event waiting task is rewritten.

【0017】次に、起床要求カウンタ12−4を利用す
る場合の事象待ち管理手段13の動作について説明す
る。まず、実行中タスク5から事象情報603が事象待
ち管理手段13に伝達され、これを受けて事象待ち管理
手段13において、当該事象情報603の内容、この場
合には起床要求先タスク番号が伝達されているものと判
断されると、事象待ち管理手段13により、起床要求カ
ウンタ12−4に伝達された起床要求先タスク番号ごと
に準備されている起床要求カウンタがインクリメントさ
れる。更にまた、当該起床要求カウンタ12−4内に起
床待ちしているタスクの情報の中、または時間待ちタイ
マ12−3内に時間待ちしているタスクの情報の中に、
事象待ちタスク7−1、7−2、………、7−nに吹ま
れる情報が存在している場合には、事象待ち管理手段1
3により、その内の事象待ちタスクが実行待ちタスク群
6に移動される。逆に、実行中タスク5から、起床待ち
要求である事象情報603が事象待ち管理手段13に伝
達され、事象待ち管理手段13において、事象情報の内
容、この場合には起床要求がくるまで待つ情報が伝達さ
れているものと判断されると、事象待ち管理手段13に
より、実行中タスク5は事象待ちタスク群7に移動され
る。その際に、既に起床待ちをするタスクが、事象待ち
タスク群7内に存在している場合には、当該事象待ちタ
スクに対応するタスク制御ブロック内にあるタスク接続
アドレスが書き変えられる。
Next, the operation of the event waiting management means 13 when using the wakeup request counter 12-4 will be described. First, the event information 603 is transmitted from the running task 5 to the event wait management means 13, and in response to this, the event wait management means 13 transmits the content of the event information 603, in this case, the wakeup request destination task number. If it is determined that the wakeup request counter 12 is prepared, the wakeup request counter prepared for each wakeup request destination task number transmitted to the wakeup request counter 12-4 is incremented. Furthermore, in the information on the task waiting to wake up in the wakeup request counter 12-4 or in the information on the task waiting for time in the time waiting timer 12-3,
If there is information related to the event waiting tasks 7-1, 7-2, ..., 7-n, the event waiting management means 1
3, the task waiting for an event therein is moved to the task group 6 waiting for execution. Conversely, the running task 5 transmits event information 603, which is a wake-up waiting request, to the event waiting management means 13, and the event waiting management means 13 waits until the content of the event information, in this case, a wake-up request comes. When it is determined that the task is being transmitted, the event waiting management unit 13 moves the running task 5 to the event waiting task group 7. At this time, if a task waiting to wake up already exists in the event waiting task group 7, the task connection address in the task control block corresponding to the event waiting task is rewritten.

【0018】このように、従来のマルチプログラミング
・システムにおいては、事象状態記憶領域12に格納さ
れている事象情報が、種別(メッセージ、イベント、時
間および起床要求等)ごとに分類されているために、事
象待ち管理手段13による各記憶領域に対する管理手順
が複雑化し、特に、当該マルチプログラミング・システ
ムを、組み込みシステムに適用する場合においては、実
行中タスク5、実行待ちタスク群6および事象待ちタス
ク群7等を含むプログラム記憶部50の記憶領域による
制約により、事象待ち管理手段13により、全ての種別
に対応する管理処理を行うことが困難になるという状態
となっている。また、事象状態記憶領域12には、待ち
行列を形成するためのタスク接続アドレスとして定義さ
れるポインタが格納されているために、前記組み込みシ
ステムに対応する場合には、タスク制御ブロック4およ
び事象状態記憶領域12を含むデータ記憶部51に求め
られる記憶領域が大幅に増大するという問題が存在して
いる。
As described above, in the conventional multi-programming system, the event information stored in the event state storage area 12 is classified by type (message, event, time, wakeup request, etc.). , The procedure for managing each storage area by the event waiting management means 13 becomes complicated, and particularly when the multi-programming system is applied to an embedded system, the executing task 5, the waiting task group 6 and the waiting task group Due to the restriction of the storage area of the program storage unit 50 including 7 and the like, it is difficult for the event waiting management means 13 to perform management processing corresponding to all types. Further, since the event state storage area 12 stores a pointer defined as a task connection address for forming a queue, the task control block 4 and the event state are stored when the embedded system is supported. There is a problem that the storage area required for the data storage unit 51 including the storage area 12 is significantly increased.

【0019】図18(a)、(b)および(c)は、テ
ープ録音式の留守番電話システムにおいて、OSを用い
たマルチプログラミング・システムを組み込みシステム
として実現した場合の手順を示すタイミング図である。
電話がかかってきた時に対応する留守番電話プログラム
は、相手に対して応答メッセージを発声し、当該発声後
に相手の声を録音する応答タスク30と、2msごとに
テープ制御回路の動作状態の監視および制御を行うテー
プ制御ハンドラ31と、これらの応答タスク30および
テープ制御ハンドラ31の余り時間でキーおよび受話器
の状態を監視するキー監視タスク32とが並行して動作
する。これらのタスクの内、優先順位は、テーブ制御ハ
ンドラ31が一番高く、応答タスク30およびキー監視
タスク32は優先順位が低く設定される。そして、それ
ぞれのタスク内には、予め定められた順序に従って実行
される処理(以下、シーケンスと云う)が用意されてい
る。上記の各タスクは、事象待ち状態になるか、または
優先順位が高い他のタスクの事象が成立した時には、他
のタスクに実行権を譲渡し、疑似的にマルチ・タスク動
作の状態となっている。
FIGS. 18 (a), 18 (b) and 18 (c) are timing charts showing a procedure when a multi-programming system using an OS is realized as an embedded system in a tape recording type answering machine. .
The answering machine program that responds to incoming calls utters a reply message to the other party and records the other party's voice after the utterance, and monitors and controls the operating state of the tape control circuit every 2 ms. The tape control handler 31 for performing the operation and the key monitoring task 32 for monitoring the state of the key and the handset in the remaining time of the response task 30 and the tape control handler 31 operate in parallel. Among these tasks, the table control handler 31 has the highest priority, and the response task 30 and the key monitoring task 32 have the lowest priority. Then, in each task, a process (hereinafter, referred to as a sequence) to be executed according to a predetermined order is prepared. Each of the above tasks transfers execution authority to another task when it enters the event wait state or when an event of another task with a high priority is established, and becomes a pseudo multi-task operation state. There is.

【0020】図18(a)、(b)および(c)は、そ
れぞれ応答タスク30、テープ制御ハンドラ31および
キー監視タスク32のシーケンスの一例を示すタイミン
グ図である。応答タスク30において実行権を譲渡する
タイミングとしては、電話がかかってくるのを待つタイ
ミングT1 と、応答メッセージの発声終了を待つタイミ
ングT2 と、相手の声を録音できる許容時間(30秒)
の経過を待つタイミングT3 と、録音した日付・時刻を
テープに記録するのを待つタイミングT4 とがある。シ
ーケンス301 においては、着信が検出された時点にお
いて事象待ち状態から復帰し、応答メッセージを発声し
て、発声終了待ちにおいて待ち状態に設定される。シー
ケンス302 においては、発声終了が検出された時点に
おいて事象待ち状態から復帰し、相手の声を録音した後
に30秒の時間待ちにて待ち状態にする。シーケンス3
3 においては、30秒が経過した時点において待ち状
態から復帰し、日付・時刻が記録されて記録終了待ち状
態に設定される。シーケンス304 においては、日付・
時刻の記録が終了した時点において待ち状態から復帰
し、着信待ちで待ち状態に設定される。シーケンス31
1 からシーケンス317 においては、2msの周期でテ
ープの動作制御(録音、再生および停止)が行われる。
またシーケンス321 からシーケンス327 において
は、シーケンス301 からシーケンス304 の間におけ
る動作が行われていない時に動作が行われて、キーおよ
び受話器の状態が常時監視される。例えば、応答動作中
に受話器が上げられた場合には、応答タスク30を強制
終了させるシーケンスが含まれている。人が違和感を感
じないように、少なくとも約100msごとに動作する
ことが必要である。
FIGS. 18A, 18B and 18C are timing charts showing an example of the sequence of the response task 30, the tape control handler 31 and the key monitoring task 32, respectively. As the timing for transferring the execution right in the response task 30, a timing T 1 for waiting for a telephone call, a timing T 2 for waiting for the end of utterance of a response message, and an allowable time (30 seconds) for recording the voice of the other party.
There is a timing T 3 for waiting the passage of time and a timing T 4 for waiting for recording the recorded date / time on the tape. In sequence 30 1, incoming return from the event waiting state at the time of the detected, by saying a response message, is set in a wait state in the utterance end wait. In the sequence 30 2, utterance end is restored from the event waiting state at the time it was detected, to the wait state at the time waiting for 30 seconds after recording the voice of the other party. Sequence 3
In 0 3 , the state returns from the waiting state when 30 seconds have elapsed, the date and time are recorded, and the recording end waiting state is set. In sequence 30 4 , the date
It returns from the waiting state when the time recording is completed, and is set to the waiting state when waiting for an incoming call. Sequence 31
In sequence 31 7 1, the tape operation control in a cycle of 2 ms (recording, playback and stop) are carried out.
Further, in the sequence 32 1 to the sequence 32 7 , the operation is performed when the operation between the sequence 30 1 and the sequence 30 4 is not performed, and the states of the key and the handset are constantly monitored. For example, a sequence for forcibly ending the response task 30 is included when the handset is picked up during the response operation. It is necessary to operate at least about every 100 ms so that the person does not feel uncomfortable.

【0021】図18におけるタイミングT1 からタイミ
ングT2 に至る期間においては、応答メッセージの発声
が終了したという事象の他に、相手が電話を切ったとい
う事象が検出されないと、応答メッセージの発声が終了
するまでの次のシーケンスに移行することができない。
また、タイミングT2 からタイミングT3 の期間におい
ては、相手の声を録音できる許容時間(30秒)が経過
したという事象の他に、相手が電話を切ったという事象
が検出されないと、相手が電話を切っても録音が継続し
て行われる状態となる。更に、タイミングT3 からタイ
ミングT4 の期間においては、録音中にテープが一杯に
なったという事象が発生するという可能性がある。
In the period from the timing T 1 to the timing T 2 in FIG. 18, if the event that the other party hangs up is not detected in addition to the event that the utterance of the response message is finished, the utterance of the response message is detected. It is not possible to move to the next sequence until the end.
Further, in the period from the timing T 2 to the timing T 3 , if the event that the other party hangs up is not detected in addition to the event that the allowable time (30 seconds) for recording the voice of the other party has passed, Recording will continue even if the phone is hung up. Furthermore, from timing T 3 to timing T 4 During the period, there is a possibility that the tape full event will occur during recording.

【0022】このように、複数の事象を検出する必要が
ある場合には、従来のマルチプログラミング・システム
における一つの対処方法としては、事象待ち状態に移行
することなく可能な限り実行状態とし、優先順位の高い
タスクのみを割り込みにより実行するという方法が採ら
れている。図19(a)、(b)および(c)は、それ
ぞれ応答タスク30、テープ制御ハンドラ31およびキ
ー監視タスク32のシーケンスの一例を示すタイミング
図であるが、この図19(a)、(b)および(c)に
は、上記の図18における電話を切ったという事象と、
録音中にテープが一杯になったという事象とを加えるこ
とにより、複数の事象待ちを検出する必要のある場合の
実現例におけるタイミング図が示されている。タイミン
グT1 とタイミングT2 とを検出するために、応答タス
ク30は、優先順位の高いテープ制御ハンドラ31が実
行されていない時に動作する。本例においては、タイミ
ングT1 またはT2 を事象待ちせずに検出しているため
に、当該応答タスク30よりも優先順位が低いキー監視
タスク32が動作することができず、応答メッセージを
再生して相手の声の録音が終了するか、または相手が電
話を切るまで、受話器を合げたことを検出することがで
きない。
As described above, when it is necessary to detect a plurality of events, one method of dealing with the conventional multi-programming system is to set the execution state as much as possible without shifting to the event waiting state, and prioritize it. A method is adopted in which only high-ranked tasks are executed by interruption. 19 (a), (b) and (c) are timing charts showing an example of the sequence of the response task 30, the tape control handler 31 and the key monitoring task 32, respectively. ) And (c), the event that the telephone was hung up in FIG. 18 above,
A timing diagram is shown in an implementation where it is necessary to detect multiple event waits by adding the event that the tape is full during recording. In order to detect the timing T 1 and the timing T 2 , the response task 30 operates when the high priority tape control handler 31 is not executed. In this example, since the timing T 1 or T 2 is detected without waiting for an event, the key monitoring task 32 having a lower priority than the response task 30 cannot operate, and the response message is reproduced. Then, until the other party's voice recording is completed or the other party hangs up, it cannot detect that the handset is picked up.

【0023】複数の事象を検出することを必要とする場
合の他の対処方法としては、それぞれの事象ごとに新た
に事象待ちタスクを起動させて、そのタスクから応答タ
スク30に対して、起床要求またはイベント、メッセー
ジ等を送信する方法がある。図20(b)および(c)
は、テープ制御ハンドラ31およびキー監視タスク32
のシーケンスの一例を示すタイミング図であるが、図2
0(a)には、上記の図18における電話を切ったとい
う事象と、録音中にテープが一杯になったという事象と
を加えることにより、複数の事象待ちを検出する必要が
ある場合の実現例におけるタイミング図が示されてい
る。
As another coping method when it is necessary to detect a plurality of events, an event waiting task is newly activated for each event and the task wakes up to the responding task 30. Alternatively, there is a method of transmitting an event, a message, or the like. 20 (b) and (c)
Is a tape control handler 31 and a key monitoring task 32.
2 is a timing diagram showing an example of the sequence of FIG.
Realization of the case where it is necessary to detect a plurality of event waits by adding to 0 (a) the event that the telephone is hung up in FIG. 18 and the event that the tape is full during recording. The timing diagram in the example is shown.

【0024】この場合は、シーケンス301 において
は、終了待シーケンス38、または切断待ちシーケンス
43をタスクとして起動し、タイミングT2 において、
応答タスク30は、終了待ちシーケンス38、または切
断待ちシーケンス43からの起床要求を受け、タイミン
グT3 においては、応答タスク30は、経過待ちシーケ
ンス39、切断待ちシーケンス43、または異常待ちシ
ーケンス44から起床要求を受ける点において、図18
のタイミング図とは異なっている。終了待ちシーケンス
38は、応答メッセージの発声終了が検出された時点に
おいて、応答タスク30に対して起床要求をし、経過待
ちシーケンス39は、相手の声を録音できる許容時間
(30秒)が経過した時に、応答タスク30に対して起
床要求をする。また、切断待ちシーケンス43は、相手
が電話を切った時に応答タスク30に対して起床要求す
る。異常待ちシーケンス44は、録音中にテープが一杯
になった時に、応答等タスク30に対して起床要求をす
る。なお、応答待ちシーケンス38および経過待ちシー
ケンス39は、シーケンス302 において強制終了され
るまで、事象待ちタスク群7、実行待ちタスク群6、ま
たは実行中タスク5に格納されており、経過待ちシーケ
ンス39、切断待ちシーケンス43および異常待ちシー
ケンス44は、シーケンス302 において、強制終了さ
れるまで、事象待ちタスク群7、実行待ちタスク群6、
または実行中タスク5に格納されている。
In this case, in the sequence 30 1 , the end waiting sequence 38 or the disconnect waiting sequence 43 is activated as a task, and at the timing T 2 ,
The reply task 30 receives the wake-up request from the end wait sequence 38 or the disconnect wait sequence 43, and at the timing T 3 , the reply task 30 wakes up from the elapsed wait sequence 39, the disconnect wait sequence 43, or the error wait sequence 44. In terms of receiving the request, FIG.
Is different from the timing diagram of. The end wait sequence 38 requests the reply task 30 to wake up at the time when the end of the utterance of the response message is detected, and the elapsed wait sequence 39 passes the allowable time (30 seconds) for recording the voice of the other party. At some time, the response task 30 is requested to wake up. The disconnection waiting sequence 43 requests the response task 30 to wake up when the other party hangs up. The abnormality waiting sequence 44 requests the task 30 such as response to wake up when the tape is full during recording. Incidentally, the response wait sequence 38 and the elapsed wait sequence 39 until it is terminated in the sequence 30 2, wait for event task group 7, is stored in the execution waiting task group 6 or running task 5, the elapsed waiting sequence 39 cutting wait sequence 43 and abnormal wait sequence 44, in the sequence 30 2, until it is terminated, wait for event task group 7, execution waiting task group 6,
Alternatively, it is stored in the running task 5.

【0025】本例においては、タイミングT2 におい
て、応答待ちシーケンス38が、応答タスク30に対し
て起床要求し、またタイミングT3 において、経過待ち
シーケンス39が、応答タスク30に対して起床要求を
している場合の動作例を示している。なお、本例におい
ては、タスクの起動、強制終了および終了等の処理を頻
繁に行う必要があるため、タスク管理が複雑化し、プロ
グラム容量が増大する傾向となる。更に、複数のタスク
を起動させることに起因して、事象待ち行列に対応する
格納領域が大量に消費されるという問題がある。
In the present embodiment, at timing T 2, waiting for response sequence 38, wakes up request to the response task 30, also at the timing T 3, the elapsed waiting sequence 39, a wakeup request to the response task 30 The operation example in the case of doing is shown. In this example, since it is necessary to frequently perform processing such as task activation, forced termination, and termination, task management becomes complicated and the program capacity tends to increase. Further, there is a problem that a large amount of storage area corresponding to the event queue is consumed due to starting a plurality of tasks.

【0026】[0026]

【発明が解決しようとする課題】上述した従来のマルチ
プログラミング・システムにおいては、事象ごとに待ち
行列が形成されているために、当該待ち行列のポインタ
接続に伴い前記事象状態記憶領域を含む記憶領域が増大
し複雑化するとともに、前記待ち行列を頻繁に生成/消
滅させる際には、その使用頻度に応じて多大の処理実行
時間が必要とするという欠点がある。
In the above-mentioned conventional multi-programming system, since a queue is formed for each event, the storage including the event state storage area is associated with the pointer connection of the queue. There is a drawback that the area increases and becomes complicated, and that when the queue is frequently created / erased, a large amount of processing execution time is required depending on the frequency of use.

【0027】また、更に、待ち解除を行うシステムコー
ル(特にイベント待ちを解除するシステムコール)の呼
出しに際しては、多くのプログラム・ステップを要する
という状態となり、プログラムをROMのようなファ−
ムウェアに具備し、且つ、記憶領域が限られたRAMに
見られるような組み込みシステムに適用する場合におい
ては事象の個数が制約され、大半近くがOS関連の処理
およびデータに消費される結果となり、当該マルチプロ
グラミング・システムの組み込みシステムに対する適用
性に重大な支障を生じるという欠点がある。
Furthermore, when a system call for releasing a wait (especially a system call for releasing an event wait) is called, many program steps are required, and the program is stored in a ROM-like file.
When it is applied to an embedded system that is equipped with hardware and is found in RAM with a limited storage area, the number of events is limited, and almost all of it is consumed by OS-related processing and data. There is a drawback that the applicability of the multi-programming system to an embedded system is seriously hindered.

【0028】更に、留守番電話システムのようにタイム
・シーケンスが多い場合には、当該シーケンスの分岐に
おいて、複数の事象を同時に判断することが求められる
が、そのためには実現する方法が複雑化し、逆にマルチ
プログラミング・システムを適用するという目的の一つ
である生産性を、却って悪化させる要因になるという欠
点がある。
Further, when there are many time sequences such as an answering machine, it is required to judge a plurality of events at the same time in the branch of the sequence, but for that purpose, the method to be realized becomes complicated and the reverse method is required. One of the purposes of applying a multi-programming system to a product is the drawback of deteriorating productivity.

【0029】[0029]

【課題を解決するための手段】第1の発明のマルチプロ
グラミングにおける事象管理方式は、プログラムを細分
化したタスクごとに設定される当該タスクの実行可能な
条件(以下、事象と云う)の種別(イベント待ち、メッ
セージ待ち、時間待ち、起床待ち等を少なくとも含む)
ならびに状態(事象待ち中、事象成立済み等を少なくと
も含む)の成立条件を格納する事象成立条件記憶手段
と、前記事象成立条件記憶手段に格納されている事象が
成立した時点に対応する事象待ち解除条件を格納する事
象待ち条件記憶手段と、前記タスクを制御するための制
御情報を格納するタスク制御ブロックと、タスクの事象
の発生するたびごとに、当該事象を前記事象成立条件格
納手段に格納されている事象成立条件と比較照合して、
対象とする事象の成立の可否を検出するタスク付属事象
管理手段と、前記制御情報を受けて、前記タスク付属事
象管理手段の検出機能により、事象待ちの状態となった
タスクを事象待ち状態に遷移させるとともに、当該事象
待ち状態のタスクに対する前記事象待ち解除条件が成立
した時点において、当該タスクを実行待ち状態に遷移さ
せるタスク付属事象待ち管理手段と、前記タスク付属事
象待ち管理手段により、事象待ち状態に遷移されたタス
クを一時的に格納する事象待ちタスク記憶手段と、前記
タスク付属事象待ち管理手段により、実行待ち状態に遷
移されたタスクを一時的に格納する実行待ちタスク記憶
手段と、所定のCPU(中央処理装置)において実行中
のタスクを格納する実行中タスク記憶手段と、前記制御
情報を受けて、前記実行中のタスクと、前記実行待ちタ
スク記憶手段に格納されている実行待ちタスクとの内よ
り一つのタスクを選択して実行状態に遷移させるタスク
管理手段と、を少なくとも備えることを特徴としてい
る。
The event management method in the multi-programming of the first invention is a type of an executable condition (hereinafter, referred to as an event) of the task which is set for each task in which the program is subdivided ( (At least include waiting for events, waiting for messages, waiting for time, waiting for getting up, etc.)
And an event satisfaction condition storage means for storing a satisfaction condition of a state (including at least an event waiting status, an event completion status, etc.), and an event wait corresponding to a time when the event stored in the event satisfaction condition storage means is satisfied. Event wait condition storage means for storing a release condition, a task control block for storing control information for controlling the task, and each time an event of the task occurs, the event is stored in the event satisfaction condition storage means. Compare and collate with the stored event satisfaction conditions,
A task adjunct event management unit that detects whether or not the target event is established, and the detection function of the task adjunct event management unit that receives the control information transitions the task in the event waiting state to the event waiting state. In addition, when the event wait release condition for the task in the event wait state is satisfied, the task adjunct event wait management means for transitioning the task to the execution wait state and the task adjunct event wait management means wait for the event An event-waiting task storage means for temporarily storing a task that has been transited to a state, an execution-waiting task storage means for temporarily storing a task that has been transited to an execution-waiting state by the task-attached event-waiting management means, and a predetermined task The CPU (central processing unit) of the executing task storing means for storing the task being executed and the control information, And executing task, it is characterized in that it comprises at least, a task management means for selecting one of the tasks makes a transition to the execution state from among the execution waiting tasks stored in the execution waiting task storing means.

【0030】また、第2の発明のマルチプログラミング
における事象管理方式は、プログラムを細分化したタス
クごとに設定される当該タスクの実行可能な条件(以
下、事象と云う)の種別(イベント待ち、メッセージ待
ち、時間待ち、起床待ち等を少なくとも含む)ならびに
状態(事象待ち中、事象成立済み等を少なくとも含む)
の成立条件を格納する事象成立条件記憶手段と、使用頻
度の高い特定事象の種別に対する成立条件と、当該種別
に対応する事象待ちの内容とを格納する事象成立条件テ
ーブルと、前記事象成立条件記憶手段または前記事象成
立条件テーブルに格納されている事象が成立した時点に
対応する事象待ち解除条件を格納する事象待ち条件記憶
手段と、前記タスクを制御するための制御情報を格納す
るタスク制御ブロックと、タスクの事象の発生するなび
ごとに、当該事象を前記事象成立条件記憶手段に格納さ
れている事象成立条件と比較照合して、対象とする事象
の成立の可否を検出するタスク付属事象管理手段と、前
記制御情報を受けて、前記タスク付属事象管理手段の検
出機能により、事象待ちの状態となったタスクを事象待
ち状態に遷移させるとともに、当該事象待ち状態のタス
クに対する前記事象待ち解除条件が成立した時点におい
て、当該タスクを実行待ち状態に遷移させるタスク付属
事象待ち管理手段と、前記タスク付属事象待ち管理手段
により、事象待ち状態に遷移されたタスクを一時的に格
納する事象待ちタスク記憶手段と、前記タスク付属事象
待ち管理手段により、実行待ち状態に遷移されたタスク
を一時的に格納する実行待ちタスク記憶手段と、所定の
CPU(中央処理装置)において実行中のタスクを格納
する実行中タスク記憶手段と、前記制御情報を受けて、
前記実行中のタスクと、前記実行待ちタスク記憶手段に
格納されている実行待ちタスクとの内より一つのタスク
を選択して実行状態に遷移させるタスク管理手段と、を
少なくとも備えることを特徴としている。
The event management method in the multi-programming of the second invention is the type of conditions (hereinafter, referred to as an event) that can be executed by the task, which is set for each task that divides the program (waiting for an event, message). Waiting, waiting for time, including at least waiting for getting up, etc.) and status (including at least waiting for event, including completion of event, etc.)
Event satisfaction condition storage means for storing a satisfaction condition of the event, an event satisfaction condition table for storing a satisfaction condition for a type of a specific event that is frequently used, and an event wait condition content corresponding to the type, and the event satisfaction condition Storage means or event waiting condition storage means for storing an event wait release condition corresponding to the time when the event stored in the event satisfaction condition table is satisfied, and task control for storing control information for controlling the task A task attachment that detects whether or not the target event is established by comparing the event with the event establishment condition stored in the event establishment condition storage means for each occurrence of the event of the block and the task Upon receiving the event management means and the control information, the detection function of the task adjunct event management means causes the task in the event waiting state to transition to the event waiting state. At the same time, when the event wait release condition for the task in the event wait state is satisfied, the task adjunct event wait management means for transitioning the task to the execution wait state and the task adjunct event wait management means Event-waiting task storage means for temporarily storing the task transitioned to, execution-waiting task storage means for temporarily storing the task transitioned to the execution-waiting state by the task-attached event wait management means, and a predetermined task A CPU (Central Processing Unit), which receives a task being executed and which stores a task being executed, and the control information,
It is characterized by at least comprising a task managing means for selecting one task from among the task in execution and the task waiting for execution stored in the task storing means for execution and transitioning to a running state. .

【0031】[0031]

【実施例】次に、本発明について図面を参照して説明す
る。
DESCRIPTION OF THE PREFERRED EMBODIMENTS Next, the present invention will be described with reference to the drawings.

【0032】図1は本発明の第1の実施例を示す内部構
成図である。図1に示されるように、本実施例は、タス
ク管理手段1と、タスク付属事象管理手段2と、タスク
付属事象待ち管理手段3と、タスク制御ブロック4−
1、4−2、……、4−nを含むタスク制御ブロック群
4と、実行中タスク5と、実行待ちタスク6−1、6−
2、……、6−nを含む実行待ちタスク群6と、事象待
ちタスク7−1、7−2、……、7−nを含む事象待ち
タスク群7と、割り込みハンドラ8と、事象成立条件記
憶領域9−1、9−2、……、9−nを含む事象成立条
件記憶領域群9と、事象待ち条件記憶領域10−1、1
0−2、……、10−nを含む事象待ち条件記憶領域群
10とを備えて構成される。なお、上記の実行中タスク
5、実行待ちタスク群6、事象待ちタスク群7および割
り込みハンドラ8に含まれる情報は、プログラム記憶部
50に格納されており、また、タスク制御ブロック群
4、事象成立条件記憶領域群9および事象待ち条件記憶
領域群10に含まれる情報は、データ記憶部51に格納
されている。また、図2(a)および(b)は、本実施
例における事象管理処理手順を示すフローチャートであ
る。
FIG. 1 is an internal block diagram showing a first embodiment of the present invention. As shown in FIG. 1, in this embodiment, a task management unit 1, a task adjunct event management unit 2, a task adjunct event wait management unit 3, and a task control block 4-
, 4-2, ..., 4-n, a task control block group 4, an in-execution task 5, and waiting tasks 6-1 and 6-
, ..., 6-n, waiting task group 6; event waiting tasks 7-1, 7-2, ..., 7-n including task waiting task group 7; interrupt handler 8; Event storage condition storage area group 9 including condition storage areas 9-1, 9-2, ..., 9-n, and event wait condition storage areas 10-1, 1
An event waiting condition storage area group 10 including 0-2, ..., 10-n. The information contained in the running task 5, the waiting task group 6, the event waiting task group 7 and the interrupt handler 8 is stored in the program storage unit 50, and the task control block group 4 and the event establishment are performed. The information included in the condition storage area group 9 and the event waiting condition storage area group 10 is stored in the data storage unit 51. 2A and 2B are flowcharts showing the event management processing procedure in this embodiment.

【0033】図1において、事象成立条件記憶領域群9
は、対応する実行中タスク5、実行待ちタスク群6、事
象待ちタスク群7において使用される事象の内、現在、
待ち状態にある事象の種別と、当該種別に対応する待ち
内容と、条件が成立した結果とを、それぞれ実行中タス
ク5、実行待ちタスク群6、事象待ちタスク群7におい
て使用される個数だけ格納する領域である。また、事象
待ち条件記憶領域10は、事象成立条件記憶領域9に複
数の条件が格納された時に、事象待ち状態から復帰する
ときの条件(ANDおよびOR等)と、復帰したとき
に、何れの事象成立条件によって復帰したかの情報を格
納しておく領域であり、タスク付属事象管理手段2は、
事象成立条件記憶領域9の事象が発生したときに、当該
事象成立条件記憶領域9の内容を更新する機能を有して
いる。タスク付属事象待ち管理手段3は、事象待ち条件
記憶領域10に示されている事象待ち解除条件が成立し
たときに、事象待ちタスク群7を実行待ちタスク群6に
移行させる役割を果す。
In FIG. 1, the event satisfaction condition storage area group 9
Of the events used in the corresponding executing task 5, execution waiting task group 6 and event waiting task group 7,
Stores the types of events in the waiting state, the contents of the wait corresponding to the types, and the results of satisfying the conditions, in the numbers used in the running task 5, the waiting task group 6, and the waiting task group 7, respectively. This is the area to be used. In addition, the event waiting condition storage area 10 includes a condition (AND and OR, etc.) for returning from the event waiting state when a plurality of conditions are stored in the event satisfaction condition storage area 9 and a condition for returning. This is an area for storing information as to whether or not the event has been restored depending on the event establishment condition.
It has a function of updating the contents of the event satisfaction condition storage area 9 when an event of the event satisfaction condition storage area 9 occurs. The task-attached event wait management means 3 plays a role of migrating the event wait task group 7 to the execution wait task group 6 when the event wait release condition shown in the event wait condition storage area 10 is satisfied.

【0034】まず、図1および図2(a)を参照して、
実行中タスク5が、タスク付属事象管理手段2とタスク
付属事象待ち管理手段3により、事象待ち状態に移行す
る処理手順について説明する。実行中タスク5において
事象待ちが発生した場合にはタスク付属事象管理手段2
に制御が移り、ステップA1においては、タスク付属事
象管理手段2により、登録内容が事象成立条件記憶領域
9に書き込まれて格納される。そしてステップA2に移
行して、更に継続して書き込む登録内容が存在する場合
には、ステップA1に戻り、再度当該登録内容が事象成
立条件記憶領域9に書き込まれて格納される。この処理
手順は、前記登録内容が無くなるまで継続して行われ
る。然る後に、登録内容が無くなった時点においてはタ
スク付属事象待ち管理手段3に制御が移り、ステップA
3において、タスク付属事象待ち管理手段3により、実
行中タスク5は事象待ちタスク群7に移動する。そして
実行中タスク5の移動後においては、タスク管理手段1
に制御が移り、このタスク管理手段1によりスケジュー
リングが行われ、実行待ちタスク群6の中から優先順位
の高いタスクが、新たに実行中タスク5として設定され
る。
First, referring to FIGS. 1 and 2A,
A processing procedure for the running task 5 to shift to the event waiting state by the task adjunct event management means 2 and the task adjunct event wait management means 3 will be described. When an event wait occurs in the running task 5, the task incidental event management means 2
The control moves to step A1, and in step A1, the task adjunct event management means 2 writes and stores the registered content in the event satisfaction condition storage area 9. Then, the process proceeds to step A2, and if there is registration content to be written continuously, the process returns to step A1 and the registration content is again written and stored in the event satisfaction condition storage area 9. This processing procedure is continuously performed until the registered contents are exhausted. After that, when the registered contents are lost, control is transferred to the task incidental event waiting management means 3, and step A
In 3, the task-attached event wait management means 3 moves the running task 5 to the event wait task group 7. Then, after the moving task 5 is moved, the task management means 1
The control is transferred to the task management means 1 and scheduling is performed by the task management means 1, and a task having a higher priority from the task group 6 to be executed is newly set as the executing task 5.

【0035】次に、図1および図2(b)を参照して、
事象待ちタスク群7に含まれるタスクが、実行待ちタス
ス群5に移動する処理手順について説明する。外部回路
またはCPUからのタイマ割り込みにより発生した事象
制御情報602、実行中タスク5において発生した事象
制御情報603、および割り込みハンドル8において発
生した事象制御情報601を含む何れかの事象制御情報
を受けて、タスク付属事象管理手段2に制御が移り、ま
ずステップA4においては、タスク付属事象管理手段2
により、発生した事象が事象成立条件記憶領域群9内に
存在するか否かが判定される。当該事象が事象成立条件
記憶領域群9内に存在しない場合には、タスク管理手段
1に制御が戻り当該処理手順は終了する。また、当該事
象が事象成立条件記憶領域群9内に存在する場合には、
ステップA5において、当該事象の登録されている条件
が成立しているか否かが判定され、成立していない場合
にはタスク管理手段1に制御が戻り当該処理手順は終了
する。また、登録されている条件が成立している場合に
は、ステップA6において、事象待ち条件記憶領域にあ
る条件が成立しているか否かが判定され、成立していな
い場合にはタスク管理手段1に制御が戻り当該処理手順
は終了となる。また、登録されている条件が成立してい
る場合には、ステップA7において、事象待ちタスク群
7の中から、対象とするタスクが実行待ちタスク群6に
移動する。そして、前記対象タスクの移動後において
は、タスク管理手段1に制御が移り、このタスク管理手
段1によりスケジューリングが行われ、実行待ちタスク
群6の中から優先順位の高いタスクが、新たに実行中タ
スク5として設定される。
Next, referring to FIGS. 1 and 2B,
A processing procedure in which a task included in the event waiting task group 7 moves to the execution waiting task group 5 will be described. Receiving any event control information including event control information 602 generated by a timer interrupt from an external circuit or CPU, event control information 603 generated in the executing task 5, and event control information 601 generated in the interrupt handle 8. Then, control is transferred to the task adjunct event management means 2, and first in step A4, the task adjunct event management means 2
Thus, it is determined whether or not the generated event exists in the event satisfaction condition storage area group 9. If the event does not exist in the event condition storage area group 9, the control returns to the task management means 1 and the processing procedure ends. If the event exists in the event satisfaction condition storage area group 9,
In step A5, it is determined whether or not the registered condition of the event is satisfied, and if not satisfied, control is returned to the task management means 1 and the processing procedure is ended. If the registered condition is satisfied, it is determined in step A6 whether or not the condition in the event wait condition storage area is satisfied. If not, the task management means 1 The control returns to and the processing procedure ends. If the registered condition is satisfied, the target task is moved from the event waiting task group 7 to the execution waiting task group 6 in step A7. Then, after the movement of the target task, control is transferred to the task management means 1, scheduling is performed by this task management means 1, and a task with a high priority is newly executed from the task group 6 waiting for execution. It is set as task 5.

【0036】図3は、本実施例における事象成立条件記
憶領域群9に含まれる事象成立条件記憶領域9−i(i
=1、2、……、n)、および事象待ち条件記憶領域群
10に含まれる事象待ち条件記憶領域10−i(i=
1、2、……、n)の一構成例を示すブロック図であ
る。事象成立条件記憶領域9−iには、それぞれ登録内
容1、登録内容2、……、登録内容mが格納されてい
る。これらの各登録内容には、それぞれ登録事象番号
1、2、……、mを含む登録事象番号100が割り当て
られており、システム・コールによって参照・登録する
ときに、この登録事象番号100によって登録内容が判
別される。また、事象待ち条件記憶領域群10−iに
は、条件識別番号101と待ち解除結果102が格納さ
れている。
FIG. 3 shows an event satisfaction condition storage area 9-i (i included in the event satisfaction condition storage area group 9 in this embodiment.
= 1, 2, ..., N) and the event wait condition storage area 10-i (i =) included in the event wait condition storage area group 10.
It is a block diagram which shows one structural example of 1, 2, ..., N). Registration contents 1, registration contents 2, ..., Registration contents m are stored in the event establishment condition storage area 9-i, respectively. A registered event number 100 including registered event numbers 1, 2, ..., M is assigned to each of these registered contents, and when the system call is referred to and registered, the registered event number 100 is registered. The content is determined. A condition identification number 101 and a wait release result 102 are stored in the event wait condition storage area group 10-i.

【0037】事象待ち条件記憶領域群10は、事象成立
条件記憶領域群9に登録されている事象が全て成立した
とき(AND条件:1)、何れかの事象が成立したとき
(OR条件:2)、または或る事象が成立したとき(単
一条件:0)に、待ち状態を復帰させるための条件を格
納する条件識別番号102と、待ち状態が解除されたと
きに、最後に待ち状態を解除した登録事象番号を格納す
る待ち解除結果103とにより構成されている。
The event waiting condition storage area group 10 is such that when all the events registered in the event establishment condition storage area group 9 are satisfied (AND condition: 1), when any event is satisfied (OR condition: 2). ), Or when a certain event is established (single condition: 0), the condition identification number 102 that stores the condition for returning the waiting state and the last waiting state when the waiting state is released. It is composed of a wait release result 103 that stores the released registration event number.

【0038】図4(a)、(b)、(c)、(d)、
(e)および(f)は、本実施例における事象成立条件
記憶領域群9の登録内容の一構成例を示すブロック図で
ある。事象の種別としては、イベント待ち、メッセージ
待ち、受信バッファ付きメッセージ待ち、範囲指定付き
メッセージ待ち、時間待ち、および起床待ちを持った場
合における例である。これらの事象は、それぞれ3バイ
トのデータにより構成されており、1バイト目100a
の事象種別の識別番号に対応して、2バイト目100b
と、3バイト目100cに待ち条件が格納されている。
図4(a)に示されるように、1バイト目100aがイ
ベント識別番号であった場合には、2バイト目100b
にはフラグ・アドレスが格納され、3バイト目100c
にはビット位置がその上位が格納され、現在のイベント
状態がその下位に格納される。また図4(b)に示され
るように、1バイト目100aがメッセージ識別番号で
あった場合には、2バイト目100bには待ちメッセー
ジが格納され、3バイト目100cには受信メッセージ
が格納される。以下同様に、1バイト目100aが受信
バッファ付きメッセージ識別番号であった場合には、2
バイト目100bにはバッファ・アドレスが格納され、
3バイト目100cにはバッファ・サイズが格納される
(図4(c)参照)。1バイト目100aが範囲指定付
きメッセージ識別番号であった場合には、2バイト目1
00bには待ちメッセージの上限が格納され、3バイト
目100cには待ちメッセージの下限が格納されるとと
もに、受信されたメッセージが重ね書きされて格納され
る(図4(d)参照)。1バイト目100aが時間識別
番号であった場合には、2バイト目100bおよび3バ
イト目100cには残り待ち時間が格納される(図4
(e)参照)。また、この待ち時間は、OSのタイマ割
り込みごとにカウント・ダウンされ、0になった時点に
おいて、当該待ち時間が経過したものと見做される。1
バイト目100aが起床識別番号であった場合には、2
バイト目100bおよび3バイト目100cには起床要
求カウンタが格納される(図4(f)参照)。なお、前
記起床要求カウンタが最大値の状態にある場合には、カ
ウント・アップすることなく、起床要求のシステム・コ
ールを発行したタスクにエラーを返す。本実施例におい
てはイベントに対する専用の領域を設けず、1ビットの
フラグ領域を静的に配置し、そのフラグ領域のアドレス
とビット位置とを登録内容として格納するものとする。
4 (a), (b), (c), (d),
(E) and (f) are block diagrams showing a configuration example of registered contents of the event satisfaction condition storage area group 9 in the present embodiment. The type of event is an example in the case of waiting for an event, waiting for a message, waiting for a message with a reception buffer, waiting for a message with a range specification, waiting for a time, and waiting for waking up. Each of these events is composed of 3-byte data, and the first byte 100a
2nd byte 100b corresponding to the event type identification number
Then, the wait condition is stored in the third byte 100c.
As shown in FIG. 4A, when the first byte 100a is the event identification number, the second byte 100b
The flag address is stored in the third byte 100c
The bit position is stored in the upper position, and the current event state is stored in the lower position. Further, as shown in FIG. 4B, when the first byte 100a is the message identification number, the second byte 100b stores the waiting message and the third byte 100c stores the received message. It Similarly, if the first byte 100a is a message identification number with a reception buffer, 2
The buffer address is stored in the byte 100b,
The buffer size is stored in the third byte 100c (see FIG. 4C). If the first byte 100a is the message identification number with range designation, the second byte 1
The upper limit of the waiting message is stored in 00b, the lower limit of the waiting message is stored in the third byte 100c, and the received message is overwritten and stored (see FIG. 4 (d)). When the first byte 100a is the time identification number, the remaining waiting time is stored in the second byte 100b and the third byte 100c (FIG. 4).
(See (e)). The waiting time is counted down for each timer interrupt of the OS, and when it reaches 0, it is considered that the waiting time has elapsed. 1
If the byte number 100a is the wakeup identification number, 2
A wakeup request counter is stored in the byte 100b and the third byte 100c (see FIG. 4 (f)). When the wakeup request counter is at the maximum value, an error is returned to the task that issued the wakeup request system call without counting up. In the present embodiment, a dedicated area for an event is not provided, a 1-bit flag area is statically arranged, and the address and bit position of the flag area are stored as registered contents.

【0039】また、メモリ・マップドI/Oであった場
合には、フラグを入力ポートおよび出力ポート等に割り
当てることも可能である。更に、イベントの前回の状態
とアクティブを指定することにより、エッジ検出により
タスクを起動することも可能となる。これにより、従来
行われているように、ポートの状態を加工して、イベン
ト・フラグをセット/リセットする必要がなくなる。た
だし、イベント・フラグを入力ポート等のOS管理外に
おいて変化する領域、即ち、システム・コールを使用す
ることなくフラグが変化する領域に割り当てた場合に
は、OSのタイマ割り込みにより検出される。メッセー
ジについては、メール・ボックスを設けず、当該メッセ
ージは直接タスクに対して送信される。メッセージ長を
1バイトにすることにより、ポインタ等を格納するとき
のオーバ・ヘッドが軽減され、指定メッセージまたは範
囲指定によりメーセージの受信を待つことにより、タス
クが実行状態となる頻度が減殺される。また、従来は、
時間待ち中に起床要求のシステム・コールが発行された
ときには時間待ちが解除されているが、本実施例におい
ては、起床待ちを設定しない限り時間待ちが解除されな
いようにすることもできる。
In the case of memory-mapped I / O, it is possible to assign flags to input ports and output ports. Furthermore, by designating the previous state and active of the event, it becomes possible to activate the task by edge detection. This eliminates the need for processing the state of the port and setting / resetting the event flag as is conventionally done. However, when the event flag is assigned to a region that changes outside the OS management such as an input port, that is, a region where the flag changes without using a system call, it is detected by a timer interrupt of the OS. For messages, no mailbox is provided and the message is sent directly to the task. By setting the message length to 1 byte, the overhead when storing the pointer and the like is reduced, and by waiting for the reception of the message by the designated message or the range designation, the frequency of the task being executed is reduced. Also, conventionally,
The time waiting is canceled when the system call for the wakeup request is issued during the time waiting, but in the present embodiment, it is also possible to prevent the time waiting from being canceled unless the wakeup waiting is set.

【0040】図5は、本実施例において、外部回路また
はCPUからのOSタイム割り込みを受けて、タスク付
属事象待ち管理手段3が起動されるまでの処理手順を示
すフローチャートの一例であり、図6および図7は、タ
スク付属事象管理手段2のシステム・コールを受けて、
タスク付属事象待ち管理手段3が起動されるまでの処理
手順を示すフローチャートの一例である。
FIG. 5 is an example of a flowchart showing a processing procedure until the task adjunct event waiting management means 3 is activated upon receipt of an OS time interrupt from an external circuit or a CPU in this embodiment, and FIG. 7 and FIG. 7, in response to the system call of the task adjunct event management means 2,
It is an example of a flowchart showing a processing procedure until the task attached event wait management means 3 is activated.

【0041】図5において、OSタイム割り込み200
は、一定時間ごとに、例えば1msごとにタスク等の処
理中に割り込まれる。これを受けて、ステップ204に
おいては、時間待ちのタスクが存在するか否かが判定さ
れ、存在しない場合にはステップ208に移行し、存在
する場合にはステップ205においてタイムカウントさ
れて、時間待ちを行っているタスクの事象内容の残り時
間がデクリメントされる。次いで、ステップ206にお
いては、タイムがUPであるか否かか判定されて、UP
でない場合にはステップ208に移行し、UPである場
合には、ステップ207において時間待ちが解除され
て、再度ステップ204に戻り以降の処理手順が繰返し
て実行される。
In FIG. 5, OS time interrupt 200
Is interrupted during processing of a task or the like at regular time intervals, for example, at 1 ms intervals. In response to this, in step 204, it is determined whether or not there is a task waiting for time, and if there is no task, the process proceeds to step 208, and if it exists, the time is counted in step 205, and the task waits for time. The remaining time of the event content of the task performing is decremented. Next, in step 206, it is judged whether or not the time is UP, and the time is UP.
If not, the process proceeds to step 208, and if it is UP, the time waiting is canceled in step 207, the process returns to step 204 again, and the subsequent processing procedure is repeatedly executed.

【0042】上記のステップ204およびステップ20
6の処理手順において判定条件が満たされない場合には
ステップ208に移行するが、ステップ208、209
および210の処理手順は、入力ポート等のOS管理外
において変化する領域にイベント・フラグを割り当てて
いる場合において、イベントの成立を管理する際の処理
手順である。この場合、OSのタイマ割り込み周期より
も短かい時間で変化するときには、上記のステップ20
8、209および210の処理手順を更に短かい周期で
動作させることにより、当該処理の精度を向上させるこ
とができる。まずステップ208においては、イベント
待ちのタスクが存在するか否かが判定されて、イベント
待ちのタスクが存在しない場合には、これを受けてタス
ク付属事象待ち管理手段3が起動される。またイベント
待ちのタスクが存在する場合には、ステップ209にお
いて当該イベントが満たされているか否かが判定され、
満たされていない場合には、これを受けてタスク付属事
象待ち管理手段3が起動される。またイベントが満たさ
れている場合には、ステップ210において、当該イベ
ント待ちが解除されてステップ208に戻り、以降の処
理手順が継続して実行される。
Steps 204 and 20 above
When the determination condition is not satisfied in the processing procedure of No. 6, the process proceeds to step 208, but steps 208 and 209.
The processing procedures 210 and 210 are processing procedures for managing the establishment of an event when an event flag is assigned to a region that changes outside the OS management such as an input port. In this case, when the change is made in a time shorter than the timer interrupt period of the OS, the above step 20 is performed.
By operating the processing procedures of Nos. 8, 209 and 210 in a shorter cycle, the accuracy of the processing can be improved. First, at step 208, it is judged whether or not there is a task waiting for an event, and if there is no task waiting for an event, the task adjunct event waiting management means 3 is activated in response to this. If there is a task waiting for an event, it is determined in step 209 whether the event is satisfied,
If not satisfied, the task adjunct event waiting management means 3 is activated in response to this. If the event is satisfied, the waiting for the event is released in step 210, the process returns to step 208, and the subsequent processing procedure is continuously executed.

【0043】図6においては、メッセージを送信するシ
ステム・コール201を受けて、まずステップ211に
おいて送信先のタスクが存在するか否かが判定され、当
外送信先タスクが存在しない場合には、ステップ217
に移行して、前記システム・コールの発行先に対して送
信エラーが返送されて復帰する。また、ステップ211
において送信先のタスクが存在する場合には、次のステ
ップ212に移行する。なお、以降のステップ212、
213および214の判断処理においても判定条件が満
たされない場合には、何れの場合においても同様にステ
ップ217に移行して、前記システム・コールの発行先
に対して送信エラーが返送されて復帰する。ステップ2
12においては送信タスクがメッセージ待ちしているか
否かが判定されて、メッセージ待ちしている場合には、
次のステップ213において、送信メッセージと待ちメ
ッセージが同一であるか否かが判定されて、同一である
場合には、ステップ214において、バッファに空き領
域が存在するか否かが判定され、バッファに空き領域が
存在する場合には、ステップ215に移行して、当該メ
ッセージは送信先の受信バッファに書き込まれる。次い
で、ステップ216においてはメッセージ待ちが解除さ
れ、これを受けて、タスク付属事象待ち管理手段3が起
動される。
In FIG. 6, in response to the system call 201 for transmitting a message, it is first determined in step 211 whether or not a destination task exists, and if there is no other destination task, Step 217
Then, a transmission error is returned to the issue destination of the system call and the system returns. Also, step 211
If there is a task of the transmission destination in, the process proceeds to the next step 212. Note that the subsequent steps 212,
If the judgment conditions are not satisfied in the judgment processes of 213 and 214, the process similarly goes to step 217 in any case, and a transmission error is returned to the issue destination of the system call to return. Step two
In 12, it is determined whether or not the sending task is waiting for a message. If the sending task is waiting for a message,
In the next step 213, it is determined whether or not the transmission message and the waiting message are the same, and if they are the same, it is determined in step 214 whether or not there is a free area in the buffer, and the buffer is stored in the buffer. If there is a free area, the process moves to step 215 and the message is written in the receiving buffer of the destination. Next, in step 216, the message waiting is released, and in response to this, the task adjunct event waiting management means 3 is activated.

【0044】次に、図7(a)においては、イベントを
設定するシステム・コール202を受けて、ステップ2
18においては、同じイベントのフラグ・アドレスを持
つタスクが存在するか否かが判定され、当該タスクが存
在しない場合には、ステップ222に移行して、イベン
ト・エラーがシステム・コールの発行先に返送されて復
帰状態となる。また、ステップ218において同じイベ
ントのフラグ・アドレスを持つタスクが存在する場合に
は、ステップ219において当該イベントが満たされて
いるか否かが判定されて、満たされていない場合にはス
テップ221に移行し、満たされている場合にはステッ
プ220において、イベント待ちが解除される。ステッ
プ221においては、同じイベントを持つタスクが存在
するか否かが判定されて、存在する場合にはステップ2
19に戻り、以降の処理手順が継続して実行される。ま
た当該タスクが存在しない場合には、これを受けて、タ
スク付属事象待ち管理手段3が起動される。
Next, in FIG. 7A, in response to the system call 202 for setting an event, step 2
In 18, it is determined whether or not there is a task having the same event flag address. If the task does not exist, the process proceeds to step 222, and the event error is issued to the system call issue destination. It will be returned and will be in a return state. If there is a task having the same event flag address in step 218, it is determined in step 219 whether or not the event is satisfied. If not, the process proceeds to step 221. If it is satisfied, the wait for the event is released in step 220. In step 221, it is judged whether or not there is a task having the same event, and if there is a task, step 2
Returning to step 19, the subsequent processing procedure is continuously executed. If the task does not exist, the task adjunct event waiting management means 3 is activated in response to this.

【0045】また、図7(b)においては、起床を要求
するシステム・コール203を受けて、ステップ223
において、起床要求先のタスクが存在するか否かが判定
され、存在しない場合にはステップ226に移行して、
起床要求エラーがシステム・コールの発行先に返送され
て復帰する。またステップ223において前記起床要求
先のタスクが存在する場合には、ステップ224におい
て、起床要求カウンタが最大値であるか否かが判定され
て、最大値である場合にはステップ226に移行して、
起床要求エラーがシステム・コールの発行先に返送され
て復帰する。また最大値ではない場合には、ステップ2
25において起床要求カウンタがインクリメントされ、
次いでステップ227において起床要求待ちが解除され
る。そして、これを受けてタスク付属事象待ち管理手段
3が起動される。
Further, in FIG. 7B, step 223 is executed in response to the system call 203 requesting to wake up.
At, it is determined whether or not the task of the wakeup request destination exists, and if not, the process proceeds to step 226.
A wakeup request error is returned to the system call issuer and returns. If the wakeup request destination task exists in step 223, it is determined in step 224 whether or not the wakeup request counter has the maximum value. If the task has the maximum value, the process proceeds to step 226. ,
A wakeup request error is returned to the system call issuer and returns. If it is not the maximum value, step 2
In 25, the wakeup request counter is incremented,
Next, at step 227, the wake-up request waiting state is released. Then, in response to this, the task adjunct event waiting management means 3 is activated.

【0046】図8は、本実施例におけるタスク付属事象
待ち管理手段3における処理手順を示すフローチャート
の一例である。まず、ステップ228において、事象待
ちタスク群7内の事象待ち行列にタスクが存在するか否
かが判定される。当該事象待ち行列にタスクが存在しな
い場合には、タスク管理手段1に制御が移り、タスク付
属事象待ち管理手段3の動作は終了する。また当該事象
待ち行列にタスクが存在する場合には、ステップ229
において、事象待ちが、待ち条件のとうりに解除されて
いるか否かが判定される。ステップ229において解除
されていない場合には、タスク管理手段1に制御が移
り、タスク付属事象待ち管理手段3の動作は終了する。
また、待ち条件のとうりに解除されている場合には、ス
テップ230において、事象待ちスタック群7内の事象
が解除されている事象待ち行列が、実行待ちスタック群
6内の実行待ち行列に移動する。このことは、既に、前
述の図5、図6および図7に示されるフローチャートに
より明らかなところである。但し、この場合、ステップ
229の判断処理において、条件識別番号により示され
る事象待ち条件が満たされている場合においてのみ、ス
テップ230においては、前記事象待ち行列が前記実行
待ち行列に移動するものとする。次いで、ステップ23
1においては、解除された事象の登録事象番号が待ち解
除結果に書き込まれる。また、実行待ちタスク群6に移
動したタスクは、タスク管理手段1において必要に応じ
て実行状態に遷移する。
FIG. 8 is an example of a flowchart showing the processing procedure in the task adjunct event wait management means 3 in this embodiment. First, at step 228, it is judged whether or not there is a task in the event queue in the event waiting task group 7. If there is no task in the event queue, control is transferred to the task management means 1 and the operation of the task-attached event wait management means 3 ends. If there is a task in the event queue, step 229
At, it is determined whether or not the event waiting is canceled as a result of the waiting condition. If it is not canceled in step 229, the control is transferred to the task managing means 1 and the operation of the task adjunct event waiting managing means 3 ends.
If the wait condition is released, the event queue in the event wait stack group 7 in which the event is released is moved to the execution queue in the execution wait stack group 6 in step 230. To do. This is already apparent from the flowcharts shown in FIGS. 5, 6 and 7 described above. However, in this case, the event queue is moved to the execution queue in step 230 only when the event wait condition indicated by the condition identification number is satisfied in the determination process of step 229. To do. Then step 23
In 1, the registered event number of the released event is written in the wait release result. Further, the task moved to the execution waiting task group 6 transits to the execution state in the task management means 1 as necessary.

【0047】図9は、本実施例における事象待ちに関す
るシステム・コールの一例を示す図である。システム・
コールsetーpheおよびwaiーpheは、図3に
示される登録内容1、登録内容2、……、登録内容nを
含む登録内容100に指定された事象の種別と事象の内
容を設定するシステム・コールであり、このsetーp
heにより複数の条件が指定され、またwaiーphe
により最後の条件および条件識別番号102が指定され
て、事象待ちの状態となる。また、clr−pheは、
上記のsetーpheまたはwaiーpheにより設定
された事象の内の不要となった登録内容100を解除す
るシステム・コールであり、pol−pheは、事象待
ちが解除されたときに、どの事象により解除されたか
を、各登録内容100に指定されている登録事象番号を
返すことにより知らせるシステム・コールである。そし
てget−pheは、各事象登録内容100の現在の状
態を取り出すシステム・コールである。例えば、メッセ
ージ待ちであれば受信メッセージを返し、時間待ちであ
れば残り時間を返すというように動作する。なお、本実
施例においては、システム・コール名の最後の3文字に
は、現象を意味する英文字の先頭のpheを用いてい
る。
FIG. 9 is a diagram showing an example of a system call relating to event waiting in this embodiment. system·
The call set-phe and wai-phe are the system for setting the event type and the event content specified in the registration content 100 including the registration content 1, registration content 2, ..., Registration content n shown in FIG. This is call and this set-p
Multiple conditions are specified by he, and wai-phe
Specifies the last condition and condition identification number 102, and enters the event waiting state. Also, clr-phe is
It is a system call that cancels unnecessary registration contents 100 among the events set by the above set-phe or wai-phe, and pol-phe is used depending on which event occurs when the event wait is canceled. This is a system call that informs whether or not it has been canceled by returning the registration event number specified in each registration content 100. And get-phe is a system call to retrieve the current state of each event registration content 100. For example, when a message is waiting, the received message is returned, and when waiting for a time, the remaining time is returned. In the present embodiment, the last three characters of the system call name are phe at the beginning of the English character that means the phenomenon.

【0048】なお、本発明は、種々の組み込みシステム
に対して適用されるが、一例として、本実施例が留守番
電話システムに適用される場合には、プログラム記憶部
50には、留守番電話システム全体を制御する情報が格
納され、特に、実行中タスク5、実行待ちタスク群6お
よび事象待ちタスク群7には、留守番電話システムの操
作情報が格納される。割り込みハンドラ8には、常時監
視の必要のある(例えば、10msごとに監視する)外
部情報が格納される。また、データ記憶部51には、留
守番電話システムの実行状態が格納される。特に、事象
成立条件記憶領域群9に対しては、事象待ちタスク群7
に遷移タイミング情報を少なくとも一つ以上格納し、事
象待ち条件記憶領域群10には、二つ以上の遷移タイミ
ングの組合わせ情報が格納される。そして、タスク制御
ブロック4には、実行中タスク5、実行待ちタスク群6
および事象待ちタスク群7の実行状態を制御する情報が
格納される。 図10は、本発明の第2の実施例を示す
内部構成図である。図10に示されるように、本実施例
は、タスク管理手段1と、タスク付属事象管理手段2
と、タスク付属事象待ち管理手段3と、タスク制御ブロ
ック4−1、4−2、……、4−nを含むタスク制御ブ
ロック群4と、実行中タスク5と、実行待ちタスク6−
1、6−2、……、6−nを含む実行待ちタスク群6
と、事象待ちタスク7−1、7−2、……、7−nを含
む事象待ちタスク群7と、割り込みハンドラ8と、事象
成立条件記憶領域9−1、9−2、……、9−nを含む
事象成立条件記憶領域群9と、事象待ち条件記憶領域1
0−1、10−2、……、10−nを含む事象待ち条件
記憶領域群10と、事象成立条件テーブル11とを備え
て構成される。なお、上記の実行中タスク5、実行待ち
タスク群6、事象待ちタスク群7、割り込みハンドラ8
および事象成立条件テーブル11に含まれる情報は、プ
ログラム記憶部50に格納されており、また、タスク制
御ブロック群4、事象成立条件記憶領域群9および事象
待ち条件記憶領域群10に含まれる情報は、データ記憶
部51に格納されている。図1の図10との対比により
明らかなように、本実施例と前述の第1の実施例との相
違点は、本実施例においては、プログラム記憶部50の
内部に事象成立条件テーブル11が新たに付加されてい
ることである。また、図11(a)および(b)は、本
実施例における事象管理処理手順を示すフローチャート
である。
Although the present invention is applied to various built-in systems, as an example, when the present embodiment is applied to an answering machine system, the program storing section 50 stores the entire answering machine system. Is stored, and in particular, the operating task 5, the waiting task group 6 and the event waiting task group 7 store operation information of the answering machine. The interrupt handler 8 stores external information that needs to be constantly monitored (for example, monitored every 10 ms). The data storage unit 51 also stores the execution state of the answering machine. Especially for the event condition storage area group 9, the event waiting task group 7
The event waiting condition storage area group 10 stores combination information of two or more transition timings. The task control block 4 includes a task 5 in execution and a task group 6 waiting for execution.
Information for controlling the execution state of the event waiting task group 7 is stored. FIG. 10 is an internal configuration diagram showing the second embodiment of the present invention. As shown in FIG. 10, in this embodiment, the task management means 1 and the task incidental event management means 2 are included.
, Task-dependent event wait management means 3, a task control block group 4 including task control blocks 4-1, 4-2, ..., 4-n, an executing task 5, and an execution waiting task 6-
Pending task group 6 including 1, 6-2, ..., 6-n
, Event wait task group 7 including event wait tasks 7-1, 7-2, ..., 7-n, interrupt handler 8, and event satisfaction condition storage areas 9-1, 9-2 ,. Event satisfaction condition storage area group 9 including -n and event wait condition storage area 1
An event waiting condition storage area group 10 including 0-1, 10-2, ..., 10-n and an event satisfaction condition table 11 are provided. The running task 5, the waiting task group 6, the event waiting task group 7, and the interrupt handler 8 are executed.
The information contained in the event establishment condition table 11 is stored in the program storage unit 50, and the information contained in the task control block group 4, the event establishment condition storage area group 9, and the event waiting condition storage area group 10 is , Stored in the data storage unit 51. As is apparent from the comparison between FIG. 1 and FIG. 10, the difference between this embodiment and the above-described first embodiment is that the event satisfaction condition table 11 is provided inside the program storage unit 50 in this embodiment. It is newly added. 11A and 11B are flowcharts showing the event management processing procedure in this embodiment.

【0049】図10において、新たに付加された事象成
立条件テーブル11は、図1の第1の実施例における事
象の種別と、当該種別に対応する待ち内容の内、頻繁に
使用するものを定数テーブルとして格納したものであ
り、組み込みシステムにおいてはROM領域に配置され
る。これによる第1の実施例との動作上の差異は、実行
状態のタスク5において事象待ちを要求した時に、事象
成立条件テーブル11における事象成立条件テーブル番
号が指定されていれば、タスク付属事象管理手段3によ
り、登録内容が事象成立条件として登録される。以後、
第1の実施例の場合と同様に動作が行われる。図3に示
される事象成立条件記憶領域群9に格納されている登録
内容100を含む事象を予めテーブル化して、システム
・コールでの条件記述をテーブル番号により記述して簡
略化することにより、プログラム・ステップ数を減少さ
せることが可能となる。
In FIG. 10, the newly added event establishment condition table 11 is a constant that indicates the type of event in the first embodiment of FIG. 1 and the wait contents corresponding to the type that are used frequently. It is stored as a table and is arranged in the ROM area in the embedded system. This is the difference in operation from the first embodiment. When an event wait is requested in the task 5 in the execution state, if the event satisfaction condition table number in the event satisfaction condition table 11 is specified, the task incidental event management The registration content is registered by the means 3 as an event establishment condition. After that,
The operation is performed similarly to the case of the first embodiment. By creating a table of events including the registered content 100 stored in the event satisfaction condition storage area group 9 shown in FIG. 3 in advance and describing the condition description in the system call by a table number to simplify the program, -The number of steps can be reduced.

【0050】図11(a)は、実行中タスク5が、タス
ク付属事象管理手段2とタスク付属事象待ち管理手段3
により事象待ちになる処理手順を示しており、また図1
1(b)は、事象待ちタスク群7のタスクが実行待ちタ
スク群6に移動する処理手順を示している。本実施例に
おける処理手順と、前述の第1の実施例における処理手
順との相違点は、図11(a)と、図2(a)との対比
により明らかなように、本実施例においては、図11
(a)にけるステップA8とステップA9において、事
象成立条件を事象成立条件テーブル11から読み出し
て、事象成立条件記憶領域9に書き込むことである。ま
た事象成立条件テーブル11に、予め複数条件の事象を
登録しておき、ステップA9以降においてはステップA
2における処理を行うことなく、ステップA3に移行す
ることも考えられる。それ以外のステップA1、ステッ
プA2、ステップA3、ステップA4、ステップA5、
ステップA6およびステップA7を含む各処理手順にけ
る処理内容については、第1の実施例の場合と同様であ
る。
In FIG. 11A, the running task 5 includes a task adjunct event management means 2 and a task adjunct event wait management means 3.
Shows the processing procedure to wait for an event, and Fig. 1
1 (b) shows a processing procedure in which a task in the event waiting task group 7 moves to the execution waiting task group 6. The difference between the processing procedure in the present embodiment and the processing procedure in the first embodiment described above is clear in the present embodiment, as is clear from the comparison between FIG. 11 (a) and FIG. 2 (a). , Fig. 11
In step A8 and step A9 in (a), the event satisfaction condition is read from the event satisfaction condition table 11 and written in the event satisfaction condition storage area 9. Further, events of a plurality of conditions are registered in advance in the event satisfaction condition table 11, and after step A9, step A
It is also conceivable to shift to step A3 without performing the processing in 2. Other steps A1, A2, A3, A4, A5,
The processing contents in each processing procedure including step A6 and step A7 are the same as in the case of the first embodiment.

【0051】図12は、本実施例における事象成立条件
テーブル11の構成例を示すブロック図である。図12
において、登録事象数300は、登録内容1、……、登
録内容nを含む登録内容301の個数を示している。こ
れらの登録内容301は、図3に示される事象成立条件
記憶領域9に設定される事象の種別と事象の条件とを初
期値としてテーブル化されている。図9に示されたシス
テム・コールset−pheまたはwai−pheによ
り、登録事象テーブル番号が指定された時には、対応す
る登録内容301が取り出され、事象成立条件記憶領域
群9に書き込まれる。また、図13(a)、(b)、
(c)、(d)、(e)および(f)は、本実施例にお
ける事象成立条件テーブル11の登録内容の構成例を示
すブロック図であり、図4に示される登録内容と同等で
はあるが、ROM領域であるために、図13(b)の3
バイト目301cが空き領域となっており、図13
(d)の3バイト目301cには、待ちメッセージ下限
のみが格納され、更に、図13(b)の3バイト目30
1cには、起床要求カウンタ初期値が格納されており、
メッセージ受信領域およびイベント状態領域等が考慮さ
れていない点に差異がある。
FIG. 12 is a block diagram showing a configuration example of the event establishment condition table 11 in this embodiment. 12
In, the number of registered events 300 indicates the number of registered contents 301 including registered contents 1, ..., Registered contents n. These registration contents 301 are tabulated with the event types and event conditions set in the event satisfaction condition storage area 9 shown in FIG. 3 as initial values. When the registration event table number is designated by the system call set-phe or wai-phe shown in FIG. 9, the corresponding registration content 301 is extracted and written in the event satisfaction condition storage area group 9. 13 (a), (b),
(C), (d), (e) and (f) are block diagrams showing a configuration example of registered contents of the event satisfaction condition table 11 in the present embodiment, and are equivalent to the registered contents shown in FIG. However, since it is the ROM area, 3 in FIG.
The byte position 301c is an empty area, and FIG.
Only the lower limit of the waiting message is stored in the third byte 301c of (d), and further, the third byte 30 of FIG.
The initial value of the wakeup request counter is stored in 1c,
The difference is that the message receiving area and event status area are not taken into consideration.

【0052】なお、第1の実施例の場合と同様に、本実
施例が留守番電話システムに適用される場合には、プロ
グラム記憶部50には、留守番電話システム全体を制御
する情報が格納され、特に、実行中タスク5、実行待ち
タスク群6および事象待ちタスク群7には、留守番電話
システムの操作情報が格納される。事象成立条件テーブ
ル11には、事象成立条件の内、留守番電話システムに
おいて頻繁に使用される事象の組み合わせ情報が格納さ
れる、割り込みハンドラ8には、常時監視の必要のある
(例えば、10msごとに監視する)外部情報が格納さ
れる。また、データ記憶部51には、留守番電話システ
ムの実行状態が格納される。特に、事象成立条件記憶領
域群9に対しては、事象待ちタスク群7に遷移タイミン
グ情報を少なくとも一つ以上格納し、事象待ち条件記憶
領域群10には、二つ以上の遷移タイミングの組合わせ
情報が格納される。そして、タスク制御ブロック4に
は、実行中タスク5、実行待ちタスク群6および事象待
ちタスク群7の実行状態を制御する情報が格納される。
As in the case of the first embodiment, when this embodiment is applied to an answering machine system, the program storage unit 50 stores information for controlling the entire answering machine system. In particular, the operating task 5, the waiting task group 6 and the event waiting task group 7 store operation information of the answering machine. The event establishment condition table 11 stores combination information of the events frequently used in the answering machine, among the event establishment conditions. The interrupt handler 8 needs to be constantly monitored (for example, every 10 ms). External information is stored. The data storage unit 51 also stores the execution state of the answering machine. In particular, at least one transition timing information is stored in the event waiting task group 7 for the event satisfaction condition storage area group 9, and a combination of two or more transition timings is stored in the event waiting condition storage area group 10. Information is stored. The task control block 4 stores information for controlling the execution states of the running task 5, the waiting task group 6 and the event waiting task group 7.

【0053】[0053]

【発明の効果】以上説明したように、本発明は、タスク
付属事象管理手段とタスク付属事象待ち管理手段とを備
えることにより、事象待ちタスク群に含まれる待ち行列
を簡略化することが可能となり、事象待ちタスクを頻繁
に生成・起動・終了・消去する際における実行時間と、
所要のプログラム・ステップとを削減することができる
という効果がある。
As described above, according to the present invention, by providing the task adjunct event management means and the task adjunct event wait management means, the queue included in the event waiting task group can be simplified. , The execution time when frequently creating, starting, terminating, and deleting event waiting tasks,
The effect is that the required program steps can be reduced.

【0054】更に、留守番電話のように、シーケンスと
条件判断処理の多いシステムに対して本発明を適用する
ことにより、極めて簡単に複数事象を判断することが可
能となるために不必要なタスクが減殺されるとともに、
シーケンスと条件判断との関係を考慮した当該システム
の構造化設計が容易となり、当該システムの生産性と保
守性を向上させることができるという効果がある。
Further, by applying the present invention to a system such as an answering machine, which has a lot of sequence and condition judgment processing, it is possible to judge a plurality of events extremely easily, and unnecessary tasks are eliminated. As well as being killed
There is an effect that the structured design of the system in consideration of the relationship between the sequence and the condition determination becomes easy, and the productivity and maintainability of the system can be improved.

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

【図1】本発明の第1の実施例を示すブロック図であ
る。
FIG. 1 is a block diagram showing a first embodiment of the present invention.

【図2】第1の実施例における処理手順のフローチャー
トを示す図である。
FIG. 2 is a diagram showing a flowchart of a processing procedure in the first embodiment.

【図3】第1の実施例の事象成立条件記憶領域群と事象
待ち条件記憶領域群を示すブロック図である。
FIG. 3 is a block diagram showing an event satisfaction condition storage area group and an event waiting condition storage area group of the first embodiment.

【図4】第1の実施例の事象成立条件記憶領域群におけ
る登録内容の構成例を示す図である。
FIG. 4 is a diagram showing a configuration example of registered contents in an event satisfaction condition storage area group of the first embodiment.

【図5】第1の実施例のタスク付属事象管理手段におけ
る処理手順のフローチャートを示す図である。
FIG. 5 is a diagram showing a flowchart of a processing procedure in a task incidental event management means of the first embodiment.

【図6】第1の実施例のタスク付属事象管理手段におけ
る処理手順のフローチャートを示す図である。
FIG. 6 is a diagram showing a flowchart of a processing procedure in the task incidental event management means of the first embodiment.

【図7】第1の実施例のタスク付属事象管理手段におけ
る処理手順のフローチャートを示す図である。
FIG. 7 is a diagram showing a flowchart of a processing procedure in the task incidental event management means of the first embodiment.

【図8】第1の実施例のタスク付属事象待ち管理手段に
おける処理手順のフローチャートを示す図である。
FIG. 8 is a diagram showing a flowchart of a processing procedure in the task adjunct event waiting management means of the first embodiment.

【図9】第1の実施例における事象待ちに関するシステ
ム・コールの一例を示す図である。
FIG. 9 is a diagram showing an example of a system call relating to event waiting in the first embodiment.

【図10】本発明の第2の実施例を示すブロック図であ
る。
FIG. 10 is a block diagram showing a second embodiment of the present invention.

【図11】第2の実施例における処理手順のフローチャ
ートを示す図である。
FIG. 11 is a diagram showing a flowchart of a processing procedure in the second embodiment.

【図12】第2の実施例の事象成立条件記憶領域群と事
象待ち条件記憶領域群を示すブロック図である。
FIG. 12 is a block diagram showing an event satisfaction condition storage area group and an event waiting condition storage area group of the second embodiment.

【図13】第2の実施例の事象成立条件記憶領域群にお
ける登録内容の構成例を示す図である。
FIG. 13 is a diagram showing a configuration example of registered contents in an event satisfaction condition storage area group of the second embodiment.

【図14】従来例を示すブロック図である。FIG. 14 is a block diagram showing a conventional example.

【図15】従来例における処理手順のフローチャートを
示す図である。
FIG. 15 is a diagram showing a flowchart of a processing procedure in a conventional example.

【図16】従来例における待ち行列形成例を示す図であ
る。
FIG. 16 is a diagram showing an example of queue formation in a conventional example.

【図17】従来例における制御構造を示すブロック図で
ある。
FIG. 17 is a block diagram showing a control structure in a conventional example.

【図18】従来例を留守番電話に適用した場合のタイミ
ング図である。
FIG. 18 is a timing diagram when the conventional example is applied to an answering machine.

【図19】従来例において、複数事象待ちを実現した場
合のタイミング図である。
FIG. 19 is a timing diagram in the case of realizing waiting for a plurality of events in the conventional example.

【図20】従来例において、複数事象待ちを実現した他
の場合のタイミング図である。
FIG. 20 is a timing diagram of another case in which waiting for a plurality of events is realized in the conventional example.

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

1 タスク管理手段 2 タスク付属事象管理手段 3 タスク付属事象待ち管理手段 4 タスク制御ブロック群 4−1〜4−n タスク制御ブロック 5 実行中タスク 6 実行待ちタスク群 6−1〜6−n 実行待ちタスク 7 事象待ちタスク群 7−1〜7−n 事象待ちタスク 8、22、31 割り込みハンドラ 9 事象成立条件記憶領域群 9−1〜9−n 事象成立条件記憶領域 10 事象待ち条件記憶領域群 10−1〜10−n 事象待ち条件記憶領域 11 事象成立条件テーブル 12 事象状態記憶領域 12−1、12−2 メール・ボックス 12−3 時間待ちタイマ 12−4 起床要求カウンタ 13 事象待ち管理領域 14、201〜203 システムコール 30 応答タスク 31 テープ制御ハンドラ 32 キー監視タスク 301 〜307 、311 〜317 、321 〜327
シーケンス 38 音声終了待ちシーケンス 39 経過待ちシーケンス 43 切断待ちシーケンス 44 異常待ちシーケンス 45 実行待ち行列 46 時間待ち行列 47 イベント待ち行列 48 メッセージ待ち行列 50 プログラム記憶部 51 データ記憶部 100 登録内容1〜登録内容m 100a 、300a 1バイト目 100b 、300b 2バイト目 100c 、300c 3バイト目 101 条件識別番号 102 待ち解除結果 204〜233、A1 〜A7 、B1 〜B4 ステップ 300 登録事象数 301 登録内容1〜登録内容m 400、4011 〜4013 、402、4031 、40
2 、404〜406ポインタ 601〜603 事象制御情報
1 task management means 2 task attached event management means 3 task attached event wait management means 4 task control block group 4-1 to 4-n task control block 5 running task 6 execution waiting task group 6-1 to 6-n execution wait Task 7 Event wait task group 7-1 to 7-n Event wait task 8, 22, 31 Interrupt handler 9 Event satisfaction condition storage area group 9-1 to 9-n Event satisfaction condition storage area 10 Event wait condition storage area group 10 -1 to 10-n event waiting condition storage area 11 event establishment condition table 12 event state storage area 12-1, 12-2 mail box 12-3 time waiting timer 12-4 wakeup request counter 13 event waiting management area 14, 201-203 system call 30 response task 31 tape control handler 32 key monitoring task 30 1 to 30 7 , 31 1 ~ 31 7 , 32 1 ~ 32 7
Sequence 38 Voice end waiting sequence 39 Elapsed waiting sequence 43 Disconnection waiting sequence 44 Abnormal waiting sequence 45 Execution queue 46 Time queue 47 Event queue 48 Message queue 50 Program storage unit 51 Data storage unit 100 Registration contents 1 to registration contents m 100 a, 300 a 1 byte 100 b, 300 b 2 byte 100 c, 300 c 3 byte 101 conditions identification number 102 wait release results 204~233, A1 ~A7, B1 ~B4 step 300 registered event number 301 registered contents 1 registration contents m 400,401 1 ~401 3, 402,403 1 , 40
3 2 , 404 to 406 pointers 601 to 603 event control information

Claims (2)

【特許請求の範囲】[Claims] 【請求項1】 プログラムを細分化したタスクごとに設
定される当該タスクの実行可能な条件(以下、事象と云
う)の種別(イベント待ち、メッセージ待ち、時間待
ち、起床待ち等を少なくとも含む)ならびに状態(事象
待ち中、事象成立済み等を少なくとも含む)の成立条件
を格納する事象成立条件記憶手段と、 前記事象成立条件記憶手段に格納されている事象が成立
した時点に対応する事象待ち解除条件を格納する事象待
ち条件記憶手段と、 前記タスクを制御するための制御情報を格納するタスク
制御ブロックと、 タスクの事象の発生するたびごとに、当該事象を前記事
象成立条件記憶手段に格納されている事象成立条件と比
較照合して、対象とする事象の成立の可否を検出するタ
スク付属事象管理手段と、 前記制御情報を受けて、前記タスク付属事象管理手段の
検出機能により、事象待ちの状態となったタスクを事象
待ち状態に遷移させるとともに、当該事象待ち状態のタ
スクに対する前記事象待ち解除条件が成立した時点にお
いて、当該タスクを実行待ち状態に遷移させるタスク付
属事象待ち管理手段と、 前記タスク付属事象待ち管理手段により、事象待ち状態
に遷移されたタスクを一時的に格納する事象待ちタスク
記憶手段と、 前記タスク付属事象待ち管理手段により、実行待ち状態
に遷移されたタスクを一時的に格納する実行待ちタスク
記憶手段と、 所定のCPU(中央処理装置)において実行されている
タスクを格納している実行中タスク記憶手段と、 前記制御情報を受けて、前記実行中のタスクと、前記実
行待ちタスク記憶手段に格納されている実行待ちタスク
との内より一つのタスクを選択して実行状態に遷移させ
るタスク管理手段と、 を少なくとも備えることを特徴とするマルチプログラミ
ングにおける事象管理方式。
1. A type of an executable condition (hereinafter referred to as an event) of a task that is set for each task obtained by subdividing a program (including at least an event wait, a message wait, a time wait, a wakeup wait, etc.), and Event satisfaction condition storage means for storing a satisfaction condition of a state (including at least event waiting, event completion completed, etc.), and event wait release corresponding to the time when the event stored in the event satisfaction condition storage means is satisfied Event waiting condition storage means for storing a condition, a task control block for storing control information for controlling the task, and each time a task event occurs, the event is stored in the event satisfaction condition storage means And a task adjunct event management means for detecting whether or not a target event is established by comparing and collating with the established event establishment condition. The detection function of the task adjunct event management means changes the task in the event wait state to the event wait state, and executes the task when the event wait release condition for the task in the event wait state is satisfied. Task adjunct event wait management means for transitioning to the wait state, event wait task storage means for temporarily storing the task transitioned to the event wait state by the task adjunct event wait management means, and task adjunct event wait management means An execution-waiting task storage means for temporarily storing the task transitioned to the execution-waiting state, an executing task storage means for storing a task executed in a predetermined CPU (central processing unit), Upon receiving control information, the task under execution and the task waiting for execution stored in the task waiting for execution storage unit Event management system in multiprogramming, characterized in that it comprises at least, a task management means for selecting one of the tasks makes a transition to the execution state from among the.
【請求項2】 プログラムを細分化したタスクごとに設
定される当該タスクの実行可能な条件(以下、事象と云
う)の種別(イベント待ち、メッセージ待ち、時間待
ち、起床待ち等を少なくとも含む)ならびに状態(事象
待ち中、事象成立済み等を少なくとも含む)の成立条件
を格納する事象成立条件記憶手段と、 使用頻度の高い特定事象の種別に対する成立条件と、当
該種別に対応する事象待ちの内容とを格納する事象成立
条件テーブルと、 前記事象成立条件記憶手段または前記事象成立条件テー
ブルに格納されている事象が成立した時点に対応する事
象待ち解除条件を格納する事象待ち条件記憶手段と、 前記タスクを制御するための制御情報を格納するタスク
制御ブロックと、 タスクの事象の発生するたびごとに、当該事象を前記事
象成立条件記憶手段に格納されている事象成立条件と比
較照合して、対象とする事象の成立の可否を検出するタ
スク付属事象管理手段と、 前記制御情報を受けて、前記タスク付属事象管理手段の
検出機能により、事象待ちの状態となったタスクを事象
待ち状態に遷移させるとともに、当該事象待ち状態のタ
スクに対する前記事象待ち解除条件が成立した時点にお
いて、当該タスクを実行待ち状態に遷移させるタスク付
属事象待ち管理手段と、 前記タスク付属事象待ち管理手段により、事象待ち状態
に遷移されたタスクを一時的に格納する事象待ちタスク
記憶手段と、 前記タスク付属事象待ち管理手段により、実行待ち状態
に遷移されたタスクを一時的に格納する実行待ちタスク
記憶手段と、 所定のCPU(中央処理装置)において実行されている
タスクを格納している実行中タスク記憶手段と、 前記制御情報を受けて、前記実行中のタスクと、前記実
行待ちタスク記憶手段に格納されている実行待ちタスク
との内より一つのタスクを選択して実行状態に遷移させ
るタスク管理手段と、 を少なくとも備えることを特徴とするマルチプログラミ
ングにおける事象管理方式。
2. A type of executable condition (hereinafter, referred to as an event) of the task, which is set for each task that divides the program (including at least an event wait, a message wait, a time wait, a wakeup wait, etc.), and Event fulfillment condition storage means for storing the fulfillment condition of a state (including at least event waiting, event established), the fulfillment condition for a type of a specific event that is frequently used, and the content of the event wait corresponding to the type And an event wait condition storage means for storing an event wait release condition corresponding to the time when the event stored in the event satisfaction condition storage means or the event satisfaction condition table is stored, A task control block that stores control information for controlling the task, and a task control block that stores the event each time a task event occurs. A task adjunct event management unit that compares and collates with an event establishment condition stored in the standing condition storage unit to detect whether or not a target event is established; and a task adjunct event management unit that receives the control information. A task that transitions a task in the event wait state to the event wait state by the detection function and transitions the task to the execution wait state when the event wait release condition for the task in the event wait state is satisfied. An adjunct event wait management means, an event wait task storage means for temporarily storing the task transitioned to the event wait state by the task adjunct event wait management means, and an execution wait state by the task adjunct event wait management means An execution-waiting task storage means for temporarily storing the transitioned task, and execution by a predetermined CPU (central processing unit) Executing task storage means storing a task to be executed, receiving one of the control information, and selecting one task from among the executing task and the execution waiting task stored in the execution waiting task storage means. An event management method in multi-programming, comprising at least a task management means for selecting and transitioning to an execution state.
JP09087994A 1994-04-28 1994-04-28 Event management method in multi-programming Expired - Fee Related JP3245500B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP09087994A JP3245500B2 (en) 1994-04-28 1994-04-28 Event management method in multi-programming

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP09087994A JP3245500B2 (en) 1994-04-28 1994-04-28 Event management method in multi-programming

Publications (2)

Publication Number Publication Date
JPH07295840A true JPH07295840A (en) 1995-11-10
JP3245500B2 JP3245500B2 (en) 2002-01-15

Family

ID=14010752

Family Applications (1)

Application Number Title Priority Date Filing Date
JP09087994A Expired - Fee Related JP3245500B2 (en) 1994-04-28 1994-04-28 Event management method in multi-programming

Country Status (1)

Country Link
JP (1) JP3245500B2 (en)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001331468A (en) * 2000-05-19 2001-11-30 Nec Corp Linked job flow management system among plural computers
JP2007531137A (en) * 2004-03-31 2007-11-01 コーウェア インコーポレイテッド Resource management in multi-core architecture
US7472214B2 (en) 2005-08-05 2008-12-30 Mitsubishi Denki Kabushiki Kaisha Real-time embedded simple monitor method and computer product
JP2009070141A (en) * 2007-09-13 2009-04-02 Nec Corp Computer system and job step parallel processing method
JP2010049314A (en) * 2008-08-19 2010-03-04 Nec Corp Task scheduling device and task scheduling method
US8117641B2 (en) 2006-01-17 2012-02-14 Hitachi, Ltd. Control device and control method for information system
WO2012104896A1 (en) * 2011-01-31 2012-08-09 トヨタ自動車株式会社 Safety control device and safety control method
WO2012104898A1 (en) * 2011-01-31 2012-08-09 トヨタ自動車株式会社 Safety control device and safety control method
US8533716B2 (en) 2004-03-31 2013-09-10 Synopsys, Inc. Resource management in a multicore architecture

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3882760B2 (en) 2003-02-18 2007-02-21 株式会社デンソー Inter-task communication method, program, recording medium, electronic device

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01248240A (en) * 1988-03-29 1989-10-03 Nec Corp Process control system
JPH0325624A (en) * 1989-06-23 1991-02-04 Nec Eng Ltd Program control system
JPH04287233A (en) * 1991-03-18 1992-10-12 Hitachi Ltd Method for controlling processing of event

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01248240A (en) * 1988-03-29 1989-10-03 Nec Corp Process control system
JPH0325624A (en) * 1989-06-23 1991-02-04 Nec Eng Ltd Program control system
JPH04287233A (en) * 1991-03-18 1992-10-12 Hitachi Ltd Method for controlling processing of event

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001331468A (en) * 2000-05-19 2001-11-30 Nec Corp Linked job flow management system among plural computers
TWI407373B (en) * 2004-03-31 2013-09-01 Co Ware Inc Resource management in a multicore architecture
JP2007531137A (en) * 2004-03-31 2007-11-01 コーウェア インコーポレイテッド Resource management in multi-core architecture
US10268609B2 (en) 2004-03-31 2019-04-23 Synopsys, Inc. Resource management in a multicore architecture
US9779042B2 (en) 2004-03-31 2017-10-03 Synopsys, Inc. Resource management in a multicore architecture
US8533716B2 (en) 2004-03-31 2013-09-10 Synopsys, Inc. Resource management in a multicore architecture
US7472214B2 (en) 2005-08-05 2008-12-30 Mitsubishi Denki Kabushiki Kaisha Real-time embedded simple monitor method and computer product
US8117641B2 (en) 2006-01-17 2012-02-14 Hitachi, Ltd. Control device and control method for information system
JP2009070141A (en) * 2007-09-13 2009-04-02 Nec Corp Computer system and job step parallel processing method
JP2010049314A (en) * 2008-08-19 2010-03-04 Nec Corp Task scheduling device and task scheduling method
CN103080858A (en) * 2011-01-31 2013-05-01 丰田自动车株式会社 Safety control device and safety control method
JP5136695B2 (en) * 2011-01-31 2013-02-06 トヨタ自動車株式会社 SAFETY CONTROL DEVICE AND SAFETY CONTROL METHOD
JP5136693B2 (en) * 2011-01-31 2013-02-06 トヨタ自動車株式会社 SAFETY CONTROL DEVICE AND SAFETY CONTROL METHOD
US8706265B2 (en) 2011-01-31 2014-04-22 Toyota Jidosha Kabushiki Kaisha Safety controller and safety control method
WO2012104898A1 (en) * 2011-01-31 2012-08-09 トヨタ自動車株式会社 Safety control device and safety control method
WO2012104896A1 (en) * 2011-01-31 2012-08-09 トヨタ自動車株式会社 Safety control device and safety control method

Also Published As

Publication number Publication date
JP3245500B2 (en) 2002-01-15

Similar Documents

Publication Publication Date Title
US6006247A (en) Method and system for scheduling threads and handling exceptions within a multiprocessor data processing system
US7730479B2 (en) Cell-phone terminal, program management method and computer program of same
US6820155B1 (en) Interruption managing device and interruption managing method
JPH04215158A (en) Data transfer control method and interface system
JPH05197568A (en) Computer system and method of event management
JPH04127330A (en) Program replacing system
WO2023246044A1 (en) Scheduling method and apparatus, chip, electronic device, and storage medium
JPH07295840A (en) Event management system for multiprogramming system
JP3644042B2 (en) Multitask processing device
WO2000023891A1 (en) A processor
JP2693916B2 (en) Task scheduling method
JP2636722B2 (en) Multitask execution management method
JP2000502202A (en) Instruction Processor Job Scheduling
JP2903525B2 (en) Job management method
JPH05108380A (en) Data processing system
JPH01154237A (en) Executing device for time-division task
US5392426A (en) Method and apparatus for use in program operation, control and control block management and storage
JP2579008B2 (en) Time-division multitasking execution device
KR101119458B1 (en) Asynchronous communications technique
JP4003113B2 (en) Multithread control method in telephone exchange
JP3653176B2 (en) Process execution control method
CN115774626A (en) Message processing method of real-time embedded system
JPH09319595A (en) Multitask controller
JP2000076084A (en) Event managing/reporting method
JPH05342119A (en) Time activation control system

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 19970218

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees