JPH08272727A - System event processing mechanism - Google Patents
System event processing mechanismInfo
- Publication number
- JPH08272727A JPH08272727A JP9604895A JP9604895A JPH08272727A JP H08272727 A JPH08272727 A JP H08272727A JP 9604895 A JP9604895 A JP 9604895A JP 9604895 A JP9604895 A JP 9604895A JP H08272727 A JPH08272727 A JP H08272727A
- Authority
- JP
- Japan
- Prior art keywords
- interrupt
- event
- software
- event handler
- dispatch table
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Abstract
Description
【0001】[0001]
【産業上の利用分野】本発明は、オペレーティングシス
テムにおける割り込み駆動型デバイスドライバの処理機
構を利用したシステムイベント処理機構に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a system event processing mechanism utilizing the processing mechanism of an interrupt driven device driver in an operating system.
【0002】[0002]
【従来の技術】コンピュータシステムの基本的な制御を
行うオペレーティングシステム(OS)は、ハードウェ
アデバイスからの特定のイベントを除くシステムイベン
トはカーネル部で用意された処理ルーチンによってハン
ドリングされている。このため、一般にオペレーティン
グシステムは、実行されるアプリケーションに適した各
種のシステムイベントを設定してプログラミングされ、
多くの開発コストを費やして作成されている。2. Description of the Related Art In an operating system (OS) that performs basic control of a computer system, system events except a specific event from a hardware device are handled by a processing routine prepared in a kernel section. As a result, operating systems are typically programmed with various system events that are appropriate for the application being executed,
It is created at a high development cost.
【0003】[0003]
【発明が解決しようとする課題】ところが、上記のよう
な従来のシステムイベント処理機構には次のような解決
すべき課題があった。多くの高度なアプリケーションプ
ログラムの開発に伴って、オペレーションシステム側
も、その快適な動作環境を提供するための改善が要求さ
れる。しかし、従来のオペレーティングシステムではそ
の構成が極めて複雑なために、カーネル部に簡単な変更
を加えてシステムイベントハンドラを追加変更すること
は難しい。たとえ、それが可能であっても、オペレーテ
ィングシステムのカーネル部に変更を加えるということ
はシステムの中核部を変更することになり、システム全
体への影響が大きく容易ではない。一方、より進んだマ
ンマシンインタフェースを求める今日では、このような
オペレーティングシステムに対し、簡便にシステムイベ
ントハンドラを加えて、各種の追加変更を可能にするこ
とが要求されている。However, the conventional system event processing mechanism as described above has the following problems to be solved. With the development of many advanced application programs, the operating system side is also required to improve to provide a comfortable operating environment. However, since the configuration of the conventional operating system is extremely complicated, it is difficult to make a simple change in the kernel part and additionally change the system event handler. Even if it could be done, making changes to the kernel part of the operating system would change the core part of the system, and its impact on the entire system is not easy. On the other hand, nowadays, when a more advanced man-machine interface is required, it is required to easily add a system event handler to such an operating system to enable various additional changes.
【0004】[0004]
【課題を解決するための手段】本発明は上記の点を解決
するため次の構成を採用する。ハードウエアデバイス割
り込みとソフトウエア割り込みとを共に受け入れる割り
込みディスパッチテーブルと、この割り込みディスパッ
チテーブルにハードウエアデバイス割り込みが受け入れ
られたときに起動され、該当するハードウエアに対応す
るように用意されたデバイスドライバと、割り込みディ
スパッチテーブルにソフトウエアデバイス割り込みが受
け入れられたときに起動され、該当するソフトウエアに
対応するように用意された、デバイスドライバと同様の
構成のイベントハンドラとを備える。The present invention adopts the following constitution in order to solve the above problems. An interrupt dispatch table that accepts both hardware device interrupts and software interrupts, and a device driver that is activated when a hardware device interrupt is accepted by this interrupt dispatch table and that is prepared to correspond to the corresponding hardware. The interrupt dispatch table includes an event handler that is activated when a software device interrupt is accepted and is prepared so as to correspond to the corresponding software and has the same configuration as the device driver.
【0005】[0005]
【作用】従来よりハードウェアデバイス割り込みを処理
するために設けられていた割り込みディスパッチテーブ
ルに対し、新たにソフトウェア割り込みを受け付ける部
分を設ける。そして、ハードウェアデバイス割り込みに
対しては、対応するデバイスドライバを起動させ、ソフ
トウェア割り込みに対しては対応するイベントハンドラ
を起動する。イベントハンドラはデバイスドライバと等
価なものである。これにより、オペレーティングシステ
ムを変更することなくシステムイベントに対するイベン
トハンドラの追加変更が容易にできる。With respect to the interrupt dispatch table conventionally provided for processing a hardware device interrupt, a new part for accepting a software interrupt is provided. Then, for a hardware device interrupt, a corresponding device driver is activated, and for a software interrupt, a corresponding event handler is activated. Event handlers are equivalent to device drivers. This makes it easy to add and change event handlers for system events without changing the operating system.
【0006】[0006]
【実施例】以下、本発明を図の実施例を用いて詳細に説
明する。図1は、本発明のシステムイベント処理機構実
施例を示すブロック図である。この機構では、従来から
ハードウェアデバイス割り込みの処理に使用されている
割り込み駆動型デバイスドライバを使用する。即ち、そ
のための割り込みディスパッチテーブル1に対し、ハー
ドウェアデバイス割り込み2を受付可能にすると共に、
ソフトウェア割り込み3の受付を可能にする。ハードウ
ェアデバイス割り込み2に対しては割り込みディスパッ
チテーブル1にエントリされたデバイス番号に対応し、
デバイスドライバ4が割り当てられる。また、ソフトウ
ェア割り込み3に対しては割り込みディスパッチテーブ
ル1にエントリされたイベントナンバー1〜Nに対し、
それぞれイベントハンドラ5が用意されている。The present invention will be described in detail below with reference to the embodiments shown in the drawings. FIG. 1 is a block diagram showing an embodiment of a system event processing mechanism of the present invention. This mechanism uses an interrupt driven device driver that has been conventionally used to handle hardware device interrupts. That is, the hardware device interrupt 2 can be accepted for the interrupt dispatch table 1 for that purpose, and
Enables acceptance of software interrupt 3. For the hardware device interrupt 2, it corresponds to the device number entered in the interrupt dispatch table 1,
The device driver 4 is assigned. Further, for software interrupt 3, for event numbers 1 to N entered in the interrupt dispatch table 1,
Each has an event handler 5.
【0007】割り込みディスパッチテーブル1自体は従
来のものと基本構成は変わるところはなく、イベントの
エントリを可能にした拡張部分のみが相違している。ま
た、イベントハンドラ5はデバイスドライバ4と全く等
価なもので、ソフトウェア割り込みに対しデバイスドラ
イバ4と同様の動作でそのイベントの処理を行うプログ
ラムから構成される。なお、割り込みディスパッチテー
ブル1は、予めエントリするハードウェアデバイス割り
込みの数やソフトウェア割り込みの数を所定の値に設定
しておき、この範囲でイベントハンドラの増減を可能に
している。しかも、この場合、オペレーティングシステ
ム自体は何ら変更する必要はない。The basic structure of the interrupt dispatch table 1 itself is the same as that of the conventional one, and only the extended part that enables event entry is different. The event handler 5 is completely equivalent to the device driver 4 and is composed of a program that processes the event in the same operation as the device driver 4 in response to a software interrupt. The interrupt dispatch table 1 sets the number of hardware device interrupts and the number of software interrupts to be entered in advance to predetermined values, and the number of event handlers can be increased or decreased within this range. Moreover, in this case, the operating system itself does not need to be changed.
【0008】図2には、本発明によるイベントハンドラ
の登録動作フローチャートを示す。本発明によれば、オ
ペレーティングシステムのカーネル部等を変更しない
で、自由にイベントハンドラの追加変更が可能である。
この場合に、その処理はこのフローチャートに示すよう
にして行われる。即ち、ステップS1において、新規シ
ステムイベントの処理を起案すると、ステップS2にお
いて、割り込みディスパッチテーブル1にエントリを追
加登録可能かどうか調べる。もし、テーブルにゆとりが
ありイベントの追加登録が可能であれば、ステップS3
からステップS4に移り、イベントハンドラ5の登録が
行われる。登録ができない場合には空きが生じるまで追
加はできない。なお、変更の場合には、これまで登録し
ていたイベントハンドラを削除するため、自ずから空き
が生じる。FIG. 2 shows a flow chart of an event handler registration operation according to the present invention. According to the present invention, it is possible to freely add and change the event handler without changing the kernel part of the operating system.
In this case, the processing is performed as shown in this flowchart. That is, when a process for a new system event is proposed in step S1, it is checked in step S2 whether an entry can be additionally registered in the interrupt dispatch table 1. If there is room in the table and additional registration of the event is possible, step S3
Then, the process proceeds to step S4, and the event handler 5 is registered. If you cannot register, you cannot add until there is space. In addition, in the case of a change, the event handler that has been registered so far is deleted, so that a vacancy naturally occurs.
【0009】図3には、本発明と比較するための比較例
ブロック図を示す。この図に示す従来のオペレーション
システム7では、カーネル部8の中にシステムイベント
6を処理するためのイベントハンドラ9が内蔵されてい
る。このような従来のオペレーションシステム7は、イ
ベントハンドラ9のみを追加変更しようとしても全体に
影響を及ぼすおそれがあり、その追加変更作業が容易で
ない。例えばアプリケーションプログラムの要求に対応
してオペレーションシステムが動作するような場合に、
そのインタフェース部分でソフトウェア割り込みがしば
しば発生する。これを処理する部分の追加変更が容易で
あればアプリケーションプログラムの要求にも適切に対
応できる。これまで説明した本発明のシステムイベント
処理機構によれば、容易にイベントハンドラの追加変更
が可能となり、システムのグレードアップやマンマシン
インタフェースの改良に大きく寄与する。FIG. 3 shows a block diagram of a comparative example for comparison with the present invention. In the conventional operation system 7 shown in this figure, an event handler 9 for processing the system event 6 is built in the kernel unit 8. In the conventional operation system 7 as described above, even if only the event handler 9 is added and changed, the whole operation may be affected, and the addition and change work is not easy. For example, when the operating system operates in response to the request of the application program,
Software interrupts often occur at the interface portion. If it is easy to add and change the portion that processes this, it is possible to appropriately meet the request of the application program. According to the system event processing mechanism of the present invention described so far, it is possible to easily add and change event handlers, which greatly contributes to system upgrade and man-machine interface improvement.
【0010】[0010]
【発明の効果】以上説明した本発明のシステムイベント
処理機構によれば、ハードウェアデバイス割り込みとソ
フトウェア割り込みとを受け付ける割り込みディスパッ
チテーブルを設け、これによってハードウェアデバイス
割り込みに対応するデバイスドライバを起動すると共
に、このデバイスドライバと等価な構成のイベントハン
ドラをソフトウェア割り込みに対応させて起動すること
から、オペレーティングシステムの変更無しにイベント
ハンドラの追加変更が容易にできる。従って、システム
の改良拡張等に対し柔軟に対応することが可能となる。According to the system event processing mechanism of the present invention described above, an interrupt dispatch table for accepting a hardware device interrupt and a software interrupt is provided, and a device driver corresponding to the hardware device interrupt is activated by this. Since an event handler having a configuration equivalent to this device driver is activated in response to a software interrupt, it is possible to easily add and change the event handler without changing the operating system. Therefore, it becomes possible to flexibly cope with the improvement and expansion of the system.
【図1】本発明のシステムイベント処理機構実施例を示
すブロック図である。FIG. 1 is a block diagram showing an embodiment of a system event processing mechanism of the present invention.
【図2】本発明による登録動作フローチャートである。FIG. 2 is a flowchart of a registration operation according to the present invention.
【図3】比較例ブロック図である。FIG. 3 is a block diagram of a comparative example.
1 割り込みディスパッチテーブル 2 ハードウェアデバイス割り込み 3 ソフトウェア割り込み 4 デバイスドライバ 5 イベントハンドラ 1 Interrupt dispatch table 2 Hardware device interrupt 3 Software interrupt 4 Device driver 5 Event handler
Claims (1)
ウエア割り込みとを共に受け入れる割り込みディスパッ
チテーブルと、 この割り込みディスパッチテーブルに前記ハードウエア
デバイス割り込みが受け入れられたときに起動され、該
当するハードウエアに対応するように用意されたデバイ
スドライバと、 前記割り込みディスパッチテーブルに前記ソフトウエア
デバイス割り込みが受け入れられたときに起動され、該
当するソフトウエアに対応するように用意された、前記
デバイスドライバと同様の構成のイベントハンドラとを
備えたことを特徴とするシステムイベント処理機構。1. An interrupt dispatch table that accepts both a hardware device interrupt and a software interrupt, and an interrupt dispatch table that is activated when the hardware device interrupt is accepted by the interrupt dispatch table so as to correspond to the corresponding hardware. A prepared device driver, and an event handler having a configuration similar to that of the device driver, which is activated when the software device interrupt is accepted in the interrupt dispatch table and prepared so as to correspond to the corresponding software. A system event processing mechanism comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP9604895A JPH08272727A (en) | 1995-03-29 | 1995-03-29 | System event processing mechanism |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP9604895A JPH08272727A (en) | 1995-03-29 | 1995-03-29 | System event processing mechanism |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH08272727A true JPH08272727A (en) | 1996-10-18 |
Family
ID=14154591
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP9604895A Pending JPH08272727A (en) | 1995-03-29 | 1995-03-29 | System event processing mechanism |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH08272727A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100734158B1 (en) * | 2000-01-24 | 2007-07-03 | 프리스케일 세미컨덕터, 인크. | Flexible interrupt controller that includes an interrupt force register |
-
1995
- 1995-03-29 JP JP9604895A patent/JPH08272727A/en active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100734158B1 (en) * | 2000-01-24 | 2007-07-03 | 프리스케일 세미컨덕터, 인크. | Flexible interrupt controller that includes an interrupt force register |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100311581B1 (en) | Dynamic extension of static device drivers | |
JPS63279328A (en) | Control system for guest execution of virtual computer system | |
JPH08272727A (en) | System event processing mechanism | |
JP2776750B2 (en) | CAD system design data management method | |
WO1997030391A1 (en) | A method and system for enabling and disabling functions in a peripheral device of a processor system | |
JPH05134960A (en) | Local processing system | |
JP2885631B2 (en) | Operating system management device and operating system management method | |
JPS63205731A (en) | Program start processing system | |
JP2507789B2 (en) | Logical simulation processing method of virtual machine | |
JPH03182945A (en) | Transfer system for data in main storage | |
JPH0713778A (en) | Device and method for process communication control | |
JPH03262049A (en) | System for debugging device driver by interruption | |
JPH0458351A (en) | General-purpose device driver | |
JPH06161783A (en) | Display control method of multi-os system | |
JP2001043077A (en) | Field input/output system | |
JPS6373336A (en) | Calling system for privileged program | |
JPH0414365B2 (en) | ||
JPS6349941A (en) | Arithmetic processing unit | |
JPS5850381B2 (en) | Step control method | |
JPH0481939A (en) | Control system for microcomputer | |
JPH02176832A (en) | Microcomputer | |
JPS61267137A (en) | System for controlling interrupting action | |
JPH08137652A (en) | Information processor | |
KR20030037572A (en) | Interrupt controller | |
JPH04344527A (en) | Input command parameter analyzing device |