JP2001109698A - Method and device for controlling device driver - Google Patents

Method and device for controlling device driver

Info

Publication number
JP2001109698A
JP2001109698A JP28336599A JP28336599A JP2001109698A JP 2001109698 A JP2001109698 A JP 2001109698A JP 28336599 A JP28336599 A JP 28336599A JP 28336599 A JP28336599 A JP 28336599A JP 2001109698 A JP2001109698 A JP 2001109698A
Authority
JP
Japan
Prior art keywords
driver
pointer
resource information
switching
request
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP28336599A
Other languages
Japanese (ja)
Inventor
Eiji Iwasaki
英治 岩崎
Kazumi Osono
和美 大園
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 JP28336599A priority Critical patent/JP2001109698A/en
Publication of JP2001109698A publication Critical patent/JP2001109698A/en
Pending legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To attain improvement in install work efficiency and application processing efficiency by permitting the control of plural devices with one device driver, to reduce load to an operating system(OS) and to permit parallel processing and switching of use to other hardware during the use of hardware. SOLUTION: Request contents and transmitting/receiving data are transferred between a user application 1 and the OS 2. Between the OS 2 and a multidriver 21, plural devices (ISA card 31, PCMCIA card 32, PCI card 33 and new device card 34) connected to the multidriver 21 are singly or parallel controlled by one device driver (device control part 21a of the multidriver 21).

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、パーソナルコンピ
ュータなどの複数のデバイスを有する情報処理装置にお
いて、複数のデバイスを一つのデバイスドライバ(マル
チドライバ)で制御するデバイスドライバ制御方法及び
その装置に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an information processing apparatus having a plurality of devices such as a personal computer, and more particularly to a device driver control method for controlling a plurality of devices with one device driver (multi-driver), and an apparatus therefor.

【0002】[0002]

【従来の技術】従来、パーソナルコンピュータなどの複
数のデバイスを有する情報処理装置は、一つのデバイス
ドライバが一つのデバイスを制御する1対1の構成が一
般的である。このため、接続するデバイス数に対応する
多数のデバイスドライバが配置されている。このように
デバイスドライバ数が増加すると、オペレーティングシ
ステム(OS)は、各デバイスに対するデバイスドライ
バごとのドライバインターフェースを備える必要があ
る。換言すれば、オペレーティングシステムの負荷(処
理負担)が多大になる。
2. Description of the Related Art Conventionally, an information processing apparatus having a plurality of devices such as a personal computer generally has a one-to-one configuration in which one device driver controls one device. Therefore, a large number of device drivers corresponding to the number of devices to be connected are arranged. When the number of device drivers increases, the operating system (OS) needs to have a driver interface for each device driver for each device. In other words, the load (processing load) of the operating system becomes large.

【0003】近時のWDM(Win32 Driver Model)により
異なるオペレーティングシステム、例えば、Windows9
8、Windows2000で同一のデバイスドライバが使用できる
ようになっており、全体のデバイスドライバ数が削減さ
れる傾向にあるが、オペレーティングシステムごとで
は、デバイスとドライバが1対1の構成であるためオペ
レーティングシステムにおける負荷は多大なままであ
る。
[0003] In recent years, different operating systems depending on WDM (Win32 Driver Model), for example, Windows 9
8. The same device driver can be used in Windows 2000, and the total number of device drivers tends to be reduced. However, each operating system has a one-to-one configuration of devices and drivers. The load on remains large.

【0004】以下、図面を参照して従来技術について説
明する。図10は従来例のデバイスドライバ制御装置の
構成を示すブロック図であり、図11は従来例における
デバイス検出時(ドライバロード時)の処理を示すフロ
ーチャートである。図12は従来例におけるデバイス使
用時の処理を示すフローチャートである。
[0004] The prior art will be described below with reference to the drawings. FIG. 10 is a block diagram showing a configuration of a conventional device driver control device, and FIG. 11 is a flowchart showing processing at the time of device detection (driver loading) in the conventional example. FIG. 12 is a flowchart showing processing when a device is used in a conventional example.

【0005】図10を参照すると、この例のデバイスド
ライバ制御装置は、ユーザアプリケーション1及びオペ
レーティングシステム(OS)2を有している。さら
に、オペレーティングシステム2に設けられるISA(I
ndustrial Standard Architecture)用ドライバインター
フェース(I/F)12,PCMCIA(Personal Comp
uter Memory Card International Association) 用ドラ
イバインターフェース(I/F)13,PCI(Periphe
ral Component Interconnect)用ドライバインターフェ
ース(I/F)14及び新デバイス用ドライバインター
フェース(I/F)15を有している。
Referring to FIG. 10, the device driver control device of this example has a user application 1 and an operating system (OS) 2. Further, the ISA (I
Driver Interface (I / F) 12, PCMCIA (Personal Comp.)
uter Memory Card International Association) driver interface (I / F) 13, PCI (Periphe)
ral Component Interconnect) and a new device driver interface (I / F) 15.

【0006】さらに、この例のデバイスドライバ制御装
置は、オペレーティングシステム2におけるISA用ド
ライバI/F12から新デバイス用ドライバI/F15
までにそれぞれ対応して接続されたISA用ドライバ2
2,PCMCIA用ドライバ23,PCI用ドライバ2
4及び新デバイス用ドライバ25を有している。また、
ISA用ドライバ22から新デバイス用ドライバ25ま
でにそれぞれ対応して接続されたISAカード31,P
CMCIAカード32,PCIカード33及び新デバイ
スカード34を有している。
Further, the device driver control device of this example includes an ISA driver I / F 12 to a new device driver I / F 15 in the operating system 2.
ISA driver 2 connected correspondingly to
2, PCMCIA driver 23, PCI driver 2
4 and a new device driver 25. Also,
ISA cards 31, P connected correspondingly from the ISA driver 22 to the new device driver 25, respectively.
It has a CMCIA card 32, a PCI card 33, and a new device card.

【0007】次に、この従来例の動作について説明す
る。 (1)デバイス検出時(ドライバロード時) 図10及び図11において、図11(a)に示すデバイ
ス検出時のISA用ドライバ22では、オペレーティン
グシステム2からデバイス検出通知が送られてくると、
検出されたISAカード31のリソース情報をオペレー
ティングシステム2へ問い合わせて、オペレーティング
システム2におけるISAカード31に対応するリソー
ス情報(I/Oポート及びメモリにおける記憶範囲(図
示せず)など)を取得する(ステップS1) 。次に、こ
のステップS1で取得したリソース情報をISA用ドラ
イバ22内のワーク領域に保存して終了する(ステップ
S2) 。
Next, the operation of this conventional example will be described. (1) At the time of device detection (at the time of driver loading) In FIGS. 10 and 11, the ISA driver 22 at the time of device detection shown in FIG.
The resource information of the detected ISA card 31 is inquired to the operating system 2 to obtain the resource information (such as an I / O port and a storage range (not shown) in the memory) corresponding to the ISA card 31 in the operating system 2 ( Step S1). Next, the resource information acquired in step S1 is stored in the work area in the ISA driver 22, and the process ends (step S2).

【0008】(2)デバイス使用(制御)時 図10及び図12において、図12(a)に示すデバイ
ス使用時のISA用ドライバ22は、ユーザアプリケー
ション1からオペレーティングシステム2のISA用ド
ライバI/F12を通じてデバイスへの入出力要求を受
け取るとISA用ドライバI/F12からのポインタ情
報からユーザアプリケーション1からの入出力データ
(要求内容と送受信データ)を取得する(ステップS
5) 。
(2) At the time of device use (control) In FIG. 10 and FIG. 12, the ISA driver 22 at the time of device use shown in FIG. When an input / output request to the device is received through the ISA, input / output data (request content and transmission / reception data) from the user application 1 is obtained from pointer information from the ISA driver I / F 12 (step S).
5).

【0009】次に、デバイス検出時のステップS2で保
存しておいたリソース情報を参照し、要求内容に応じた
ISAカード31専用のアクセス関数を用いてユーザア
プリケーション1からの送受信データをデバイス(IS
Aカード31)との間で入出力する(ステップS6) 。
さらに、この入出力結果をユーザアプリケーション1へ
返送するために、ISA用ドライバI/F12の所定領
域(バッファ)に格納して終了する(ステップS7) 。
Next, referring to the resource information stored in step S2 at the time of device detection, transmission / reception data from the user application 1 is transmitted to the device (IS) using an access function dedicated to the ISA card 31 according to the request.
Input / output with the A card 31) (step S6).
Further, in order to return this input / output result to the user application 1, the result is stored in a predetermined area (buffer) of the ISA driver I / F 12, and the process ends (step S7).

【0010】このISA用ドライバ22(図11(a)
及び図12(a))と、他のPCMCIA用ドライバ2
3(図11(b)及び図12(b))、PCI用ドライ
バ24(図11(c)及び図12(c))及び新デバイ
ス用ドライバ25((図11(d)及び図12(d))
も、そのデバイス検出時及びデバイス使用(制御)時の
処理が同様であり、その動作説明は省略する。このよう
に従来例のデバイスドライバ制御装置は、複数のデバイ
スはそれぞれに対応するデバイスドライバを配置した1
対1による処理(制御)を行う構成となっている。
The ISA driver 22 (FIG. 11A)
And FIG. 12A) and another driver 2 for PCMCIA.
3 (FIGS. 11 (b) and 12 (b)), a PCI driver 24 (FIGS. 11 (c) and 12 (c)) and a new device driver 25 ((FIGS. 11 (d) and 12 (d)). ))
Also, the processes at the time of device detection and device use (control) are the same, and the description of the operation is omitted. As described above, in the device driver control device of the related art, a plurality of devices have device drivers corresponding to the respective devices.
It is configured to perform one-to-one processing (control).

【0011】このような従来例のデバイスドライバ制御
装置では、次の(1)(2)(3)(4)(5)の問題
がある。(1)同一種類で異なる複数のデバイス、及び
異なる種類で複数のデバイスを同一デバイスドライバ制
御装置を備える情報処理装置(適宜、システムと記載す
る)で使用する場合、デバイスごとにデバイスドライバ
を設定(インストール)する必要があり、その手間が多
大である。例えば、使用するデバイスが一個の場合、イ
ンストール作業は一回であるが、デバイス数が十個にな
るとインストール作業を十回繰り返す必要がある。この
ためインストール作業時間が多大になって作業効率が悪
化する。
Such a conventional device driver control apparatus has the following problems (1), (2), (3), (4), and (5). (1) When a plurality of devices of the same type and a plurality of devices of the different type are used in an information processing apparatus (hereinafter, appropriately referred to as a system) including the same device driver control device, a device driver is set for each device ( Installation), which is tedious. For example, when one device is used, the installation operation is performed once, but when the number of devices becomes ten, the installation operation needs to be repeated ten times. For this reason, the installation work time is increased and the work efficiency is deteriorated.

【0012】(2)ユーザアプリケーションは、使用す
るデバイスによってドライバインターフェースを使い分
ける必要があるため負荷が大きくなる。また、新たにデ
バイスが追加されるたびに処理を変更しなければならな
い。例えば、使用するデバイスが一個の場合、ドライバ
インターフェースは一種類なので使い分ける必要はない
が、デバイス数が十個になると、ドライバインターフェ
ースも十種類存在するため、使用するデバイスに対応し
たドライバインターフェースを分岐処理などで使い分け
る必要がある。また、新たにデバイスが追加された場
合、このデバイスに対応したドライバインターフェース
を使用するために、分岐処理の変更が必要となる。換言
すれば、デバイスを使用するアプリケーションの処理効
率が悪化する。
(2) The load on the user application increases because it is necessary to use a driver interface depending on the device to be used. Also, the process must be changed each time a new device is added. For example, if only one device is used, there is no need to use the driver interface because there is only one type of driver interface.However, when there are ten devices, there are ten types of driver interfaces, so the driver interface corresponding to the device to be used is branched. It is necessary to use them properly. Further, when a new device is added, a change in branch processing is required to use a driver interface corresponding to this device. In other words, the processing efficiency of the application using the device deteriorates.

【0013】(3)接続するデバイス数の増加に伴って
デバイスドライバ数も増加するため、システムの電源投
入による起動時間が多大になる。例えば、デバイスが一
個の場合、オペレーティングシステムによってロードさ
れるドライバは一個であるが、デバイス数が十個になる
と、ロードされるドライバも十個になる。この結果、オ
ペレーティングシステムへの負荷が増大化する。
(3) Since the number of device drivers increases with the number of connected devices, the start-up time when the power of the system is turned on becomes long. For example, when the number of devices is one, the number of drivers loaded by the operating system is one, but when the number of devices becomes ten, the number of drivers loaded becomes ten. As a result, the load on the operating system increases.

【0014】(4)デバイス数の増加に伴ってデバイス
ドライバ数も増加し、システム内の使用可能なオペレー
ティングシステムが格納されているハードウェアディス
クなどの記憶容量が減少する。例えば、デバイスが一個
の場合、一回のインストール作業により、一個のドライ
バがシステム内にコピーされるが、デバイス数が十個に
なると、十回のインストール作業によって十個のドライ
バがシステム内にコピーされることになり、システム内
の使用可能な記憶容量が減少する。換言すれば、オペレ
ーティングシステムへの負荷が増大化する。
(4) As the number of devices increases, the number of device drivers also increases, and the storage capacity of a hardware disk or the like in which a usable operating system in the system is stored decreases. For example, in the case of one device, one driver copies one driver into the system by one installation. However, when the number of devices becomes ten, ten drivers copy ten drivers into the system by ten installations. And the available storage capacity in the system is reduced. In other words, the load on the operating system increases.

【0015】(5)接続するデバイス数の増加に伴って
ドライバインターフェースも増加するため、システム内
のメモリ記憶容量が減少する。例えば、デバイスが一個
の場合、オペレーティングシステムは一種類のドライバ
インターフェースを備えれば良いがデバイス数が十個に
なると十種類のドライバインターフェースを備えること
になる。換言すれば、オペレーティングシステムへの負
荷が増大化する。
(5) Since the number of driver interfaces increases with the number of connected devices, the memory storage capacity in the system decreases. For example, when the number of devices is one, the operating system only needs to include one type of driver interface, but when the number of devices becomes ten, the operating system includes ten types of driver interfaces. In other words, the load on the operating system increases.

【0016】このような問題に対する改良技術が知られ
ている。例えば、周辺装置(フロッピーディスク、ハー
ドディスク、インクジェット又はレーザプリンタ、モデ
ム、デジタルカメラ、スキャナ、ディスプレイ等のデバ
イス)に対して、データ変換処理が従来のデバイスと同
一の場合において、新たなデバイスの追加を容易にし
て、そのデバイスドライバが簡素化されると共に、新た
な共通デバイスドライバを開発することなく、システム
の開発が容易になる例が提案されている(例えば、特開
平10−91566号「デバイスドライバ制御方式及び
その制御方法」)。
An improved technique for solving such a problem is known. For example, when data conversion processing is the same as a conventional device for a peripheral device (a device such as a floppy disk, a hard disk, an inkjet or laser printer, a modem, a digital camera, a scanner, and a display), a new device is added. An example has been proposed in which the device driver is simplified to simplify the system development without developing a new common device driver (for example, Japanese Patent Application Laid-Open No. 10-91566, "Device Driver"). Control method and control method ”).

【0017】[0017]

【発明が解決しようとする課題】このように、上記従来
例のデバイスドライバ制御装置は、インストール作業効
率及びデバイスを使用するユーザアプリケーションの処
理効率が悪く、さらに、オペレーティングシステムへの
負荷が多大になるという欠点がある。
As described above, the above-mentioned conventional device driver control device has poor installation work efficiency and processing efficiency of a user application that uses the device, and further imposes a heavy load on the operating system. There is a disadvantage that.

【0018】公報例では、デバイスドライバの簡素化が
図られるものの、前記したインストール作業効率及びア
プリケーション処理効率が悪く、かつ、オペレーティン
グシステムへの負荷が大きい問題と共に、システムの処
理の自由度を得るための並行処理が考慮されておらず、
さらに、ハードウェアを使用中に他のハードウェアへの
使用切り換えが出来ないという欠点がある。
In the publication example, although the device driver is simplified, the above-described problems of poor installation work efficiency and application processing efficiency, and a large load on the operating system, and a degree of freedom in system processing are required. Is not taken into account,
Further, there is a disadvantage that the use cannot be switched to another hardware while using the hardware.

【0019】本発明は、このような従来の技術における
課題を解決するものであり、パーソナルコンピュータな
どの複数のデバイスを有する情報処理装置において、異
なる複数のデバイスを一つのデバイスドライバで制御で
きるようになり、ユーザのインストール作業効率及びデ
バイスを使用するアプリケーションの処理効率が向上
し、かつ、オペレーティングシステムへの負荷を軽減で
きると共に、並行処理及びハードウェアを使用中に他の
ハードウェアへの使用切り換えが行われて、その自由度
が向上したデバイスドライバ制御が可能になるデバイス
ドライバ制御方法及びその装置の提供を目的とする。
The present invention is to solve such a problem in the conventional technology. In an information processing apparatus having a plurality of devices such as a personal computer, a plurality of different devices can be controlled by one device driver. In addition, the efficiency of user installation work and the efficiency of processing applications using devices can be improved, the load on the operating system can be reduced, and concurrent processing and switching to other hardware during hardware use can be performed. It is an object of the present invention to provide a device driver control method and a device capable of performing device driver control with improved flexibility.

【0020】[0020]

【課題を解決するための手段】上記課題を達成するため
に、本発明は、複数のデバイスを一つのデバイスドライ
バで制御するためのデバイスドライバ制御方法におい
て、デバイス検出通知から複数のデバイス中の特定デバ
イスを判別する段階と、この判別した特定デバイスに対
するリソース情報を取得する段階と、この取得したリソ
ース情報を特定デバイスに対応して更新する段階と、特
定デバイスに対応するデバイス種類とリソース情報のポ
インタとアクセス関数のポインタとを格納して更新する
段階とを有してデバイス検出を行っている。
According to one aspect of the present invention, there is provided a device driver control method for controlling a plurality of devices by a single device driver. A step of determining a device, a step of acquiring resource information for the determined specific device, a step of updating the obtained resource information corresponding to the specific device, and a device type and resource information pointer corresponding to the specific device And detecting and updating the pointer of the access function.

【0021】本発明は、複数のデバイスを一つのデバイ
スドライバで制御するデバイスドライバ制御方法におい
て、使用するデバイス種類を取得する段階と、この取得
した特定デバイスに対するリソース情報のポインタとア
クセス関数のポインタとを格納して更新する段階と、こ
の特定デバイスへの入出力データを取得する段階と、ポ
インタが示すリソース情報を参照してアクセス関数ポイ
ンタが示すアクセス関数で特定デバイスとの間で送受信
データを入出力する段階と、この特定デバイスへの送受
信データの入出力結果を保存する段階とを有して特定デ
バイスに対する制御を行っている。
According to the present invention, in a device driver control method for controlling a plurality of devices by one device driver, a step of acquiring a device type to be used, a pointer of resource information and a pointer of an access function for the acquired specific device, Storing and updating the data, acquiring input / output data to / from the specific device, and inputting transmission / reception data to / from the specific device by the access function indicated by the access function pointer by referring to the resource information indicated by the pointer. The control of the specific device is performed including the step of outputting and the step of storing the input / output result of the transmission / reception data to / from the specific device.

【0022】前記特定デバイスを取得する際、要求され
たデバイスを取得できない場合に、要求されたデバイス
の初期値を取得する段階と、このデバイスへ切り換えが
可能かを判断する段階と、次に、この切り換えが可能と
判断されたときにポインタ情報を、特定のデバイスに対
応して格納する段階とをさらに有している。
When obtaining the specified device, if the requested device cannot be obtained, obtaining an initial value of the requested device, determining whether switching to this device is possible, and Storing the pointer information corresponding to a specific device when it is determined that the switching is possible.

【0023】前記取得した入出力データがデバイスの切
り換え要求の場合に、要求されたデバイスが使用可能か
を調べる段階と、この切り換えが可能と判断されたとき
に要求されたデバイスのポインタ情報を格納して更新す
る段階と、切り換えが不可能と判断されたときの結果を
保存する段階とをさらに有している。
In the case where the acquired input / output data is a device switching request, a step of checking whether the requested device is usable, and storing pointer information of the requested device when it is determined that the switching is possible. And a step of storing the result when it is determined that the switching is impossible.

【0024】前記格納を、テーブルにおける該当領域へ
の格納としている。
The above-mentioned storage is stored in a corresponding area in the table.

【0025】本発明のデバイスドライバ制御装置は、複
数のデバイスを一つのデバイスドライバで制御するため
の少なくとも要求内容及び送受信のデータ転送を行うユ
ーザアプリケーションと、ユーザアプリケーションとの
間で要求内容及び送受信のデータ転送を実行するマルチ
ドライバインターフェースを備えるオペレーティングシ
ステムと、オペレーティングシステムとの間の要求内容
及び送受信のデータ転送によって、接続されている複数
のデバイスを一つのデバイスドライバで制御するマルチ
ドライバとを有している。
A device driver control device according to the present invention provides a user application for transferring at least request contents and transmission / reception data for controlling a plurality of devices with one device driver, and requests and transmission / reception between user applications. An operating system having a multi-driver interface for executing data transfer, and a multi-driver for controlling a plurality of connected devices with a single device driver by transferring request contents and transmission / reception data to / from the operating system. ing.

【0026】前記マルチドライバに、複数のデバイスを
単独制御又は並列制御するデバイス制御部と、このデバ
イス制御部に、デバイスがどのユーザアプリケーション
で使用されているかを管理するためのデバイス使用状況
テーブル、使用するデバイスの初期値と使用するデバイ
スのリソース情報テーブルへのポインタと使用するデバ
イスに対応するアクセス関数のポインタを管理するため
のデバイス情報テーブル、複数のデバイスのそれぞれの
リソース情報を格納したリソース情報テーブル、複数の
デバイスのそれぞれに対応したアクセス関数群を管理す
るためのアクセス関数群テーブルを備える構成としてあ
る。
The multi-driver includes a device control unit for controlling a plurality of devices individually or in parallel, and a device use status table for managing which user application the device uses in the device control unit. Information table for managing initial values of devices to be used, pointers to resource information tables of devices to be used, and pointers of access functions corresponding to devices to be used, resource information tables storing resource information of each of a plurality of devices And an access function group table for managing an access function group corresponding to each of the plurality of devices.

【0027】前記マルチドライバが、デバイス検出のた
めの、オペレーティングシステムからのデバイス検出通
知から複数のデバイスにおける特定のデバイスを判別す
るデバイス判別手段と、デバイス判別手段で判別した特
定デバイスに対するオペレーティングシステムにおける
I/Oポート及びメモリにおける記憶範囲を含むリソー
ス情報をオペレーティングシステムへ問い合わせて取得
するリソース情報取得手段と、リソース情報取得手段で
取得したリソース情報をリソース情報テーブルの特定デ
バイスの領域に格納して更新するリソース情報保存手段
と、デバイス判別手段で特定したデバイスとリソース情
報保存手段で格納した領域のポインタとアクセス関数群
テーブル内の特定したデバイスに対応するアクセス関数
群のポインタをデバイス情報テーブルに格納して更新す
るデバイス情報テーブル更新手段とを有している。
The multi-driver includes a device discriminator for discriminating a specific device among a plurality of devices from a device detection notification from the operating system for device detection, and an I / O in the operating system for the specific device discriminated by the device discriminator. A resource information acquisition unit for inquiring the operating system for resource information including a storage range in the / O port and the memory; and updating the resource information acquired by the resource information acquisition unit by storing the resource information in a specific device area of the resource information table. The resource information storage means, the device specified by the device discrimination means, the pointer of the area stored by the resource information storage means, and the pointer of the access function group corresponding to the specified device in the access function group table are stored. And a device information table updating means for updating stored in the chair information table.

【0028】前記マルチドライバが、デバイスを使用し
て制御するため、デバイス使用状況テーブルから使用す
るデバイス種類を取得する要求デバイス取得手段と、要
求デバイス取得手段で取得した特定のデバイスに対応す
るリソース情報テーブル内のポインタとアクセス関数群
テーブル内の関数ポインタとをデバイス情報テーブルに
格納して更新するリソース情報テーブル更新手段と、マ
ルチドライバインターフェースからのポインタ情報を参
照してユーザアプリケーションからの入出力データを取
得する入出力データ取得手段と、デバイス情報テーブル
内のリソース情報テーブルのポインタが示すリソース情
報を参照してデバイス情報テーブル内のアクセス関数の
ポインタテーブルに格納されている関数ポインタが示す
アクセス関数でユーザアプリケーションからの送受信デ
ータをデバイスとの間で入出力するデバイスアクセス手
段と、このデバイスアクセス手段によるデバイスとの入
出力結果をユーザアプリケーションへ返すためにドライ
バインターフェースの所定領域へ保存する入出力結果保
存手段とを有している。
In order for the multi-driver to control using a device, a requesting device acquiring unit for acquiring a device type to be used from a device use status table, and resource information corresponding to a specific device acquired by the requesting device acquiring unit Resource information table updating means for storing and updating pointers in the table and function pointers in the access function group table in the device information table, and input / output data from the user application by referring to pointer information from the multi-driver interface The input / output data acquisition means to be acquired and the access function indicated by the function pointer stored in the access function pointer table in the device information table with reference to the resource information indicated by the pointer in the resource information table in the device information table. A device access means for inputting / outputting data transmitted / received from / to the application to / from a device, and an input / output result storage for storing a result of input / output with the device by the device access means in a predetermined area of a driver interface for returning to a user application Means.

【0029】前記デバイスを特定する際、デバイス使用
状況テーブルで要求されたデバイスを取得できない場合
に、デバイス情報テーブルから特定のデバイスの初期値
を取得する初期デバイス取得手段と、特定のデバイスへ
切り換えが可能かを判別する切換判別手段と、切換判別
手段で切り換えが可能と判断されたときにマルチドライ
バインターフェースからのポインタ情報をデバイス使用
状況テーブル内の特定デバイスに対応する領域へ格納す
るデバイス使用状況テーブル更新手段とを有している。
When specifying the device, if the device requested in the device usage table cannot be obtained, an initial device obtaining means for obtaining an initial value of the specific device from the device information table and a switch to the specific device are provided. Switching determining means for determining whether switching is possible, and a device usage table for storing pointer information from the multi-driver interface in an area corresponding to a specific device in the device usage status table when switching is determined to be possible by the switching determining means Update means.

【0030】前記取得した入出力データで得られた要求
内容がデバイス切り換え要求かを判別する切換要求判別
手段と、切換要求判別手段でデバイス切り換え要求と判
断されたときに要求デバイスが使用可能な状態であるか
を調べる要求デバイスチェック手段と、要求デバイスチ
ェック手段で切り換えが可能と判断されたときにマルチ
ドライバインターフェースからのポインタ情報をデバイ
ス使用状況テーブル内の要求デバイスに対応する領域へ
格納して更新するデバイス使用状況テーブル更新手段
と、要求デバイスに対応するリソース情報テーブル内の
ポインタとアクセス関数群テーブル内の関数ポインタを
デバイス情報テーブルへ格納して更新するデバイス情報
テーブル更新手段と、要求デバイスチェック手段で切り
換えが不可能と判断されたときの結果をユーザアプリケ
ーションへ返すためにマルチドライバインターフェース
の所定領域へ入出力結果を保存する入出力結果保存手段
とを有している。
A switching request determining means for determining whether the request content obtained from the acquired input / output data is a device switching request, and a state in which the request device can be used when the switching request determining means determines that the request is a device switching request. Requesting device checking means for checking whether or not switching is possible, and, when the requesting device checking means determines that switching is possible, storing and updating pointer information from the multi-driver interface in an area corresponding to the requesting device in the device usage status table Device information table updating means for storing, a device information table updating means for storing and updating a pointer in a resource information table and a function pointer in an access function group table corresponding to a requested device in a device information table, and a requested device checking means Determined that switching is not possible And a output result storage means for storing the input and output result to a predetermined area results of the multi-driver interface to return to the user application when.

【0031】このような本発明のデバイスドライバ制御
方法及びその装置は、ドライバ内のデバイスに対する関
連した処理(すなわち、I/Oポート及びメモリにおけ
る記憶範囲を含むリソース情報及びアクセス関数群に関
する処理)をテーブル化して非関連処理と分離し、デバ
イスに対する関連した処理を、従来例で説明したような
分岐処理ではなくポインタの切り換え処理で行ってい
る。また、新デバイスへの対応を容易にするために、デ
バイスに関連するリソース情報及びアクセス関数群をテ
ーブル化して処理している。
Such a device driver control method and apparatus of the present invention perform related processing for a device in a driver (that is, processing relating to resource information including I / O ports and storage ranges in a memory and access function groups). The processing is tabulated and separated from the non-related processing, and the processing related to the device is performed by the pointer switching processing instead of the branch processing as described in the conventional example. In addition, in order to easily cope with a new device, resource information and an access function group relating to the device are tabulated and processed.

【0032】さらに、本発明のデバイスドライバ制御方
法及びその装置は、異なる複数のデバイスを同一のドラ
イバインターフェースで使用するために、使用するデバ
イスの切り換えをユーザアプリケーションからオペレー
ティングシステムのドライバインターフェースを通じて
送られる入出力データで行っている。
Further, in the device driver control method and apparatus of the present invention, in order to use a plurality of different devices with the same driver interface, switching of the device to be used is input from a user application through a driver interface of an operating system. Performed with output data.

【0033】これらの結果、次の(1)(2)(3)
(4)(5)(6)(7)(8)の詳細な処理及びその
利点が得られる。
As a result, the following (1), (2) and (3)
(4) The detailed processing of (5), (6), (7), and (8) and the advantages thereof can be obtained.

【0034】(1)同一種類で異なる複数のデバイス、
及び異なる種類で複数のデバイスを同一デバイスドライ
バ制御装置を備える情報処理装置(システム)で使用す
る場合に、最初のデバイスに対して一度のみでデバイス
ドライバのインストールが行われる。次のデバイスから
は、対応するデバイスドライバがすでにインストール済
みであるため、接続するだけでプラグアンドプレイによ
りデバイスドライバが自動的に検出され、デバイス使用
が可能となる。この結果、インストール作業時間が大幅
に短縮されて、その作業効率が向上する。
(1) a plurality of devices of the same type but different
When a plurality of devices of different types are used in an information processing apparatus (system) having the same device driver control device, the device driver is installed only once for the first device. From the next device, since the corresponding device driver has already been installed, the device driver is automatically detected by plug and play simply by connecting, and the device can be used. As a result, the installation work time is greatly reduced, and the work efficiency is improved.

【0035】(2)ユーザアプリケーションは、使用す
るデバイスによってドライバインターフェースを使い分
ける必要がなくなり、また、新デバイスが追加された場
合でも変更することなく新デバイスが使用できるように
なる。したがって、デバイスを使用するアプリケーショ
ンの処理効率が向上する。
(2) The user application does not need to use the driver interface depending on the device to be used, and can use the new device without changing even if a new device is added. Therefore, the processing efficiency of the application using the device is improved.

【0036】(3)接続するデバイス数が増加しても、
デバイスドライバ数が一個であるため、システム起動に
かかる時間が変わらないようになる。この結果、オペレ
ーティングシステムへの負荷が軽減される。
(3) Even if the number of connected devices increases,
Since the number of device drivers is one, the time required for system startup does not change. As a result, the load on the operating system is reduced.

【0037】(4)接続するデバイス数が増加してもシ
ステム内にコピーされるドライバは一個なので、システ
ム内の使用可能なディスク記憶容量が変わらない。この
結果、オペレーティングシステムへの負荷が軽減され
る。
(4) Even if the number of connected devices increases, only one driver is copied in the system, so that the available disk storage capacity in the system does not change. As a result, the load on the operating system is reduced.

【0038】(5)接続するデバイス数が増加しても、
ドライバインターフェース数が一種類であるため、シス
テム内のメモリ記憶容量が変わらない。この結果、オペ
レーティングシステムへの負荷が軽減される。
(5) Even if the number of connected devices increases,
Since the number of driver interfaces is one, the memory storage capacity in the system does not change. As a result, the load on the operating system is reduced.

【0039】(6)異なる複数のデバイスを別々のシス
テムで使用する場合でも、デバイスドライバのインスト
ール方法は同一である。例えば、同一のインストールフ
ロッピーディスク(FD)を使用し、さらに、インスト
ールFD内の同一のセットアップ情報ファイルを指定す
る。この結果、インストール作業時間が短縮されて、そ
の作業効率が向上する。
(6) Even when a plurality of different devices are used in different systems, the method of installing the device driver is the same. For example, the same installation floppy disk (FD) is used, and the same setup information file in the installation FD is specified. As a result, the installation work time is reduced, and the work efficiency is improved.

【0040】(7)デバイスへの入出力要求によるポイ
ンタ情報によって使用しているデバイスを調べて要求デ
バイスの種類を取得する。この要求デバイスの使用を調
べて、要求デバイスに対応したリソース情報のポインタ
に変更する。この結果、複数のユーザアプリケーション
が別々のデバイスを使用する並行処理が可能になる。換
言すれば、システム処理の自由度が向上する。
(7) The type of the requested device is obtained by checking the device being used based on the pointer information based on the input / output request to the device. The use of the request device is checked and changed to a pointer of resource information corresponding to the request device. As a result, parallel processing in which a plurality of user applications use different devices becomes possible. In other words, the degree of freedom in system processing is improved.

【0041】(8)切り換え要求のデバイスがシステム
に接続されているかの調べを行っている。この結果、デ
バイスを使用中に他のデバイスへの使用切り換えが可能
になり、この場合もシステム処理の自由度が向上する。
(8) A check is performed to determine whether the device requested to switch is connected to the system. As a result, it is possible to switch the use of the device to another device while the device is in use, and in this case also, the degree of freedom in system processing is improved.

【0042】[0042]

【発明の実施の形態】次に、本発明のデバイスドライバ
制御方法及びその装置の実施の形態を図面を参照して詳
細に説明する。なお、以下の文及び図において前記した
図10と同一の構成要素には同一の参照符号を付した。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Next, an embodiment of a device driver control method and device of the present invention will be described in detail with reference to the drawings. In the following text and figures, the same components as those in FIG. 10 are denoted by the same reference numerals.

【0043】図1は本発明のデバイスドライバ制御方法
及びその装置の実施形態における構成を示すブロック図
であり、図2は実施形態の動作におけるデバイス検出時
の処理を示すフローチャートである。また、図3は実施
形態の動作におけるデバイス使用時の処理を示すフロー
チャートであり、図4は実施形態の動作における各デバ
イスの使用状況を管理するテーブルを示す図である。
FIG. 1 is a block diagram showing the configuration of an embodiment of a device driver control method and device according to the present invention, and FIG. 2 is a flowchart showing processing at the time of device detection in the operation of the embodiment. FIG. 3 is a flowchart showing a process when a device is used in the operation of the embodiment. FIG. 4 is a diagram showing a table for managing the use status of each device in the operation of the embodiment.

【0044】さらに、図5は実施形態の動作におけるデ
バイス情報テーブルを示す図であり、図6は実施形態の
動作における各デバイスのリソース情報を管理するテー
ブルを示す図である。また、図7は実施形態の動作にお
ける各デバイスのアクセス関数群を管理するテーブルを
示す図であり、図8は実施形態の動作におけるテーブル
の使用例を示す図である。さらに、図9は実施形態の動
作におけるテーブルの他の使用例を示す図である。
FIG. 5 is a diagram showing a device information table in the operation of the embodiment, and FIG. 6 is a diagram showing a table for managing resource information of each device in the operation of the embodiment. FIG. 7 is a diagram showing a table for managing an access function group of each device in the operation of the embodiment, and FIG. 8 is a diagram showing an example of use of the table in the operation of the embodiment. FIG. 9 is a diagram showing another example of use of the table in the operation of the embodiment.

【0045】図1の例は、ユーザアプリケーション1、
オペレーティングシステム2及びマルチドライバ21を
有している。さらに、マルチドライバ21に接続される
ISAカード31,PCMCIAカード32,PCIカ
ード33及び新デバイスカード34(適宜、デバイスと
記載する)を備えている。オペレーティングシステム2
にはマルチドライバインターフェース(I/F)11を
備え、かつ、マルチドライバ21にはデバイス制御部2
1aが設けられている。
FIG. 1 shows an example of a user application 1,
It has an operating system 2 and a multi-driver 21. Further, an ISA card 31, a PCMCIA card 32, a PCI card 33, and a new device card 34 (hereinafter, appropriately referred to as a device) connected to the multi-driver 21 are provided. Operating system 2
Has a multi-driver interface (I / F) 11, and the multi-driver 21 has a device controller 2.
1a is provided.

【0046】オペレーティングシステム2は、デバイス
(ISAカード31から新デバイスカード34まで)に
対応するI/Oポート及びメモリなどを備えている。オ
ペレーティングシステム2のマルチドライバI/F11
は、ユーザアプリケーション1とマルチドライバ21と
の間の要求内容及び送受信のデータ転送を行うためのメ
モリを備えている。マルチドライバ21のデバイス制御
部21aは、本発明の実施形態の処理に対応する制御を
実行するためのCPUと、プログラムを格納したROM
と共にワーキング用RAM、及び次に説明するテーブル
を格納したメモリを備えて構成されるのが一般的であ
る。この構成は当業者間では周知であり、その図示を省
略する。
The operating system 2 has an I / O port and a memory corresponding to devices (from the ISA card 31 to the new device card 34). Multi-driver I / F 11 of operating system 2
Is provided with a memory for transferring request contents between the user application 1 and the multi-driver 21 and data for transmission and reception. The device control unit 21a of the multi-driver 21 includes a CPU for executing control corresponding to the processing of the embodiment of the present invention, and a ROM storing a program.
In addition, it is generally configured to include a working RAM and a memory storing a table described below. This configuration is well known to those skilled in the art, and is not shown.

【0047】デバイス制御部21aにおけるメモリは、
各デバイス(ISAカード31から新デバイスカード3
4まで)がどのユーザアプリケーション1で使用されて
いるかを管理するための図4に示すデバイス使用状況テ
ーブルTaと、図5に示すデバイス種類の初期値と使用
するデバイスのリソース情報テーブルTbへのポインタ
と使用するデバイスに対応するアクセス関数のポインタ
を管理するためのデバイス情報テーブルTcとが格納さ
れている。また、図6に示す各デバイスのリソース情報
を格納するためのリソース情報テーブルTbと、図7に
示す各デバイスに対応したアクセス関数群を管理するた
めのアクセス関数群テーブルTdとが設けられている。
The memory in the device control section 21a is as follows:
Each device (from ISA card 31 to new device card 3
4) for managing which user application 1 is used by the user application 1, and a pointer to a device information initial value of the device type and a resource information table Tb of the device to be used shown in FIG. And a device information table Tc for managing a pointer of an access function corresponding to a device to be used. Further, a resource information table Tb for storing resource information of each device shown in FIG. 6 and an access function group table Td for managing an access function group corresponding to each device shown in FIG. 7 are provided. .

【0048】次に、マルチドライバ21のデバイス制御
部21aの制御処理で実行される機能構成(処理)につ
いて説明する。まず、デバイス検出時における機能構成
について説明する。このデバイス検出時における機能構
成は、デバイス判別処理、リソース情報取得処理、リソ
ース情報保存処理及びデバイス情報テーブル更新処理を
有している。デバイス判別処理は、オペレーティングシ
ステム2からデバイス検出通知が送られてきた場合に、
どのデバイスが検出されたのかを判別するものである。
リソース情報取得処理は、デバイス判別処理で得られた
デバイスのリソース情報を取得するものである。
Next, a functional configuration (process) executed in the control process of the device control unit 21a of the multi-driver 21 will be described. First, a functional configuration at the time of device detection will be described. The functional configuration at the time of device detection includes device determination processing, resource information acquisition processing, resource information storage processing, and device information table update processing. The device determination process is performed when a device detection notification is sent from the operating system 2.
This is to determine which device has been detected.
The resource information acquisition processing is for acquiring the resource information of the device obtained in the device determination processing.

【0049】さらに、リソース情報保存処理は、リソー
ス情報取得処理で得られたリソース情報をリソース情報
テーブルTb内のデバイス判別処理で得られるデバイス
に対応した領域に格納するものである。デバイス情報テ
ーブル更新処理は、デバイス判別処理で得られたデバイ
ス種類とリソース情報保存処理で格納した領域のポイン
タとアクセス関数群テーブルTd内のデバイス判別処理
で得られたデバイスに対応するアクセス関数群のポイン
タをデバイス情報テーブルTcに格納するものである。
Further, in the resource information storing process, the resource information obtained by the resource information obtaining process is stored in an area corresponding to the device obtained by the device determining process in the resource information table Tb. The device information table updating process includes the device type obtained in the device determination process, the pointer of the area stored in the resource information storage process, and the access function group corresponding to the device obtained in the device determination process in the access function group table Td. The pointer is stored in the device information table Tc.

【0050】次に、デバイス使用(制御)時における機
能構成(処理)について説明する。このデバイス使用
(制御)時における機能構成(処理)は、要求デバイス
取得処理、要求デバイス判別処理及びデバイス情報テー
ブルTc更新処理とを有している。要求デバイス取得処
理は、ユーザアプリケーション1からオペレーティング
システム2のマルチドライバI/F11を通じてデバイ
スへの入出力要求がくるとデバイス使用状況テーブルT
aを参照して使用するデバイス種類を取得するものであ
る。要求デバイス判別処理は、要求デバイス取得処理で
得られたデバイス種類が正常かを判別するものである。
デバイス情報テーブルTc更新処理は、要求デバイス判
別処理で正常と判断されたとき、要求デバイス取得処理
で得られたデバイスに対応するリソース情報テーブルT
b内のポインタとアクセス関数群テーブルTd内の関数
ポインタをデバイス情報テーブルTcへ格納するもので
ある。
Next, the functional configuration (processing) at the time of using (controlling) the device will be described. The functional configuration (processing) at the time of device use (control) includes requested device acquisition processing, requested device determination processing, and device information table Tc update processing. The requested device acquisition process is performed when a user application 1 receives an input / output request to a device through the multi-driver I / F 11 of the operating system 2.
The device type to be used is acquired with reference to a. The requested device determination processing is for determining whether the device type obtained in the requested device acquisition processing is normal.
When the device information table Tc updating process is determined to be normal in the request device determining process, the resource information table T corresponding to the device obtained in the request device obtaining process is determined.
The pointer in b and the function pointer in the access function group table Td are stored in the device information table Tc.

【0051】また、このデバイス使用時における機能構
成(処理)は、初期デバイス取得処理、切換判別処理及
びデバイス使用状況テーブル更新処理を有している。初
期デバイス取得処理は、要求デバイス判別処理で正常で
ないと判断されたとき、デバイス情報テーブルTcから
デバイス種類の初期値を取得するものである。切換判別
処理は、初期デバイス取得処理で得られたデバイスへ切
り換えが可能かを判別するものである。デバイス使用状
況テーブル更新処理は、切換判別処理で切り換えが可能
と判断されたとき、マルチドライバI/F11からのポ
インタ情報をデバイス使用状況テーブルTa内の初期デ
バイス取得処理で得られたデバイスに対応する領域へ格
納するものである。
The functional configuration (processing) when the device is used includes an initial device acquisition process, a switching determination process, and a device use status table updating process. The initial device acquisition process is for acquiring an initial value of a device type from the device information table Tc when it is determined that the device is not normal in the request device determination process. The switching determination process determines whether switching to the device obtained in the initial device acquisition process is possible. In the device usage status table updating process, when it is determined that the switching is possible in the switching determination process, the pointer information from the multi-driver I / F 11 corresponds to the device obtained by the initial device acquisition process in the device usage status table Ta. It is stored in the area.

【0052】さらに、このデバイス使用時における機能
構成(処理)は、入出力データ取得処理、切換要求判別
処理、要求デバイスチェック処理、切換判別処理及びデ
バイス使用状況テーブル更新処理を有している。入出力
データ取得処理は、マルチドライバI/F11からのポ
インタ情報よりユーザアプリケーション1からの入出力
データ(要求内容と送受信データ)を取得するものであ
る。切換要求判別処理は、入出力データ取得処理で得ら
れた要求内容がデバイス切り換え要求かを判別するもの
である。要求デバイスチェック処理は、切換要求判別処
理でデバイス切り換え要求と判断されたときに要求デバ
イスがシステムに接続されて使用可能な状態であるかの
調べを行うものである。切換判別処理は、要求デバイス
へ切り換えが可能かを判別するものである。デバイス使
用状況テーブル更新処理は、切換判別処理で切り換えが
可能と判断されたときにマルチドライバI/F11から
のポインタ情報をデバイス使用状況テーブルTa内の要
求デバイスに対応する領域へ格納するものである。
Further, the functional configuration (processing) at the time of using the device includes input / output data acquisition processing, switching request determination processing, requested device check processing, switching determination processing, and device use status table updating processing. The input / output data acquisition processing is for acquiring input / output data (request contents and transmission / reception data) from the user application 1 based on pointer information from the multi-driver I / F 11. The switching request determination processing determines whether the request content obtained in the input / output data acquisition processing is a device switching request. The requested device check processing is to check whether the requested device is connected to the system and is in a usable state when it is determined that the request is a device switching request in the switching request determination processing. The switching determination processing determines whether switching to the requesting device is possible. The device usage status table updating process is to store pointer information from the multi-driver I / F 11 in an area corresponding to the requested device in the device usage status table Ta when it is determined that switching is possible in the switching determination process. .

【0053】さらに、このデバイス使用時における機能
構成(処理)は、デバイス情報テーブル更新処理及びデ
バイスアクセス処理を有している。デバイス情報テーブ
ル更新処理は、要求デバイスに対応するリソース情報テ
ーブルTb内のポインタとアクセス関数群テーブルTd
内の関数ポインタをデバイス情報テーブルTcへ格納す
るものである。デバイスアクセス処理は、切換要求判別
処理でデバイス切り換え要求と判断されなかったときに
デバイス情報テーブルTc内のリソース情報テーブルT
bのポインタが示すリソース情報を参照して、デバイス
情報テーブルTc内のアクセス関数のポインタテーブル
にセットされている関数ポインタが示すアクセス関数
で、入出力データ取得処理で得られたユーザアプリケー
ション1からの送受信データをデバイスへ入出力するも
のである。
Further, the functional configuration (processing) when the device is used includes a device information table updating process and a device access process. The device information table updating process is performed by using a pointer in the resource information table Tb corresponding to the requested device and the access function group table Td.
Is stored in the device information table Tc. In the device access process, the resource information table Tc in the device information table Tc when the device switching request is not determined in the switching request determination process.
With reference to the resource information indicated by the pointer b, the access function indicated by the function pointer set in the pointer table of the access function in the device information table Tc indicates the access function indicated by the user application 1 obtained in the input / output data acquisition processing. It sends and receives data to and from the device.

【0054】また、このデバイス使用時における機能構
成(処理)は、入出力結果保存処理を有しており、この
入出力結果保存処理は、切換判別処理で切り換えが不可
能と判断されたときの結果、又はデバイスアクセス処理
でデバイスへ入出力したときの結果をユーザアプリケー
ション1へ返すため、マルチドライバI/F11の所定
領域(バッファ)へ入出力結果を保存して、その終了を
行うためのものである。
The function configuration (processing) at the time of using the device has an input / output result saving process. This input / output result saving process is performed when it is determined that switching cannot be performed in the switching determination process. To return the result or the result of inputting / outputting to / from the device in the device access processing to the user application 1, save the input / output result in a predetermined area (buffer) of the multi-driver I / F 11, and terminate the processing. It is.

【0055】以下、図面を参照して本実施形態の動作に
ついて詳細に説明する。まず、デバイス検出時の処理に
ついて説明する。図2において、このデバイス検出時の
処理では、図1中のマルチドライバ21のデバイス制御
部21aが、オペレーティングシステム2からのデバイ
ス検出通知が送られてくると、いずれのデバイス(IS
Aカード31から新デバイスカード34のいずれか)の
検出であるかを判別する(ステップS11) 。マルチド
ライバ21のデバイス制御部21aは、ステップS11
の処理で検出されたデバイスのリソース情報をオペレー
ティングシステム2へ問い合わせてオペレーティングシ
ステム2におけるI/Oポート及びメモリにおける特定
の記憶領域(図示せず)などの情報を取得する(ステッ
プS12) 。
Hereinafter, the operation of this embodiment will be described in detail with reference to the drawings. First, processing at the time of device detection will be described. 2, in the device detection process, when the device control unit 21a of the multi-driver 21 in FIG. 1 receives a device detection notification from the operating system 2, any device (IS
It is determined whether the detection is any of the A card 31 and the new device card 34 (step S11). The device control unit 21a of the multi-driver 21 determines in step S11
The operating system 2 is inquired of the resource information of the device detected in the processing of (1) to obtain information such as an I / O port in the operating system 2 and a specific storage area (not shown) in the memory (step S12).

【0056】この取得したリソース情報を、マルチドラ
イバ21のデバイス制御部21aが、図6に示すリソー
ス情報テーブルTb内の検出されたデバイスに対応する
領域へ格納する(ステップS13) 。次に、検出された
デバイス(ISAカード31から新デバイスカード34
のいずれか)に対応するデバイス種類、図6に示すリソ
ース情報テーブルTbのポインタ、及び、図7に示すア
クセス関数群テーブルTd内の関数ポインタを図5に示
すデバイス情報テーブルTcに格納する(ステップS1
4)。このステップS11からステップS14のルーチ
ンは、ステップS11に示すように、接続されているデ
バイス(ISAカード31から新デバイスカード34の
いずれか)の個数分が繰り返して実行される。
The obtained resource information is stored in the area corresponding to the detected device in the resource information table Tb shown in FIG. 6 by the device control section 21a of the multi-driver 21 (step S13). Next, the detected device (from the ISA card 31 to the new device card 34)
), The pointer of the resource information table Tb shown in FIG. 6, and the function pointer in the access function group table Td shown in FIG. 7 are stored in the device information table Tc shown in FIG. S1
4). The routine from step S11 to step S14 is repeatedly executed for the number of connected devices (any one of the ISA card 31 to the new device card 34) as shown in step S11.

【0057】次に、デバイス使用(制御)時の処理につ
いて説明する。図3を参照すると、このデバイス使用時
の処理では、マルチドライバ21のデバイス制御部21
aは、ユーザアプリケーション1からオペレーティング
システム2のマルチドライバI/F11を通じてデバイ
スへの入出力要求がくると、図4に示すデバイス使用状
況テーブルTaでマルチドライバI/F11からのポイ
ンタ情報がいずれのデバイス(ISAカード31から新
デバイスカード34のいずれか)を使用しているかを調
べて要求デバイスの種類を取得する(ステップS21)
Next, the processing at the time of using (controlling) the device will be described. Referring to FIG. 3, in the process when the device is used, the device control unit 21 of the multi driver 21
a, when an input / output request to a device is received from the user application 1 through the multi-driver I / F 11 of the operating system 2, the pointer information from the multi-driver I / F 11 is displayed in the device usage table Ta shown in FIG. It is checked whether any one of the ISA card 31 and the new device card 34 is used, and the type of the requested device is obtained (step S21).
.

【0058】ステップS21で要求デバイス種類が取得
できた場合は、ステップS26へ進む。要求デバイス種
類が取得できない場合はステップS23に進む(ステッ
プS22)。次に、図5に示すデバイス情報テーブルT
cの「デバイス種類」を要求デバイスとして取得する
(ステップS23)。さらに、図4に示すデバイス使用
状況テーブルTaで、要求デバイスが他のユーザアプリ
ケーション1で使用されているかの調べを行う(ステッ
プS24) 。ここで未使用であればステップS25へ進
む。使用中であればステップS34に進む。ステップS
25では、マルチドライバI/F11からのポインタ情
報を図4に示すデバイス使用状況テーブルTaの要求デ
バイスに対応した領域に格納する。
If the requested device type has been acquired in step S21, the process proceeds to step S26. If the requested device type cannot be obtained, the process proceeds to step S23 (step S22). Next, the device information table T shown in FIG.
The “device type” of c is acquired as the request device (step S23). Further, it is checked whether the requested device is being used by another user application 1 in the device usage status table Ta shown in FIG. 4 (step S24). If not used, the process proceeds to step S25. If in use, the process proceeds to step S34. Step S
In step 25, the pointer information from the multi-driver I / F 11 is stored in an area corresponding to the requested device in the device usage status table Ta shown in FIG.

【0059】次に、ステップS22,S25の処理後
は、図5に示すデバイス情報テーブルTcの「リソース
情報テーブルTbのポインタ」を、図6に示すリソース
情報テーブルTb内の要求デバイスに対応したリソース
情報のポインタに変更する(ステップS26) 。さら
に、図5に示すデバイス情報テーブルTcの「アクセス
関数のポインタテーブル」を、図7に示すアクセス関数
群テーブルTd内の要求デバイスに対応したアクセス関
数のポインタに変更する(ステップS26) 。
Next, after the processing in steps S22 and S25, the "pointer of the resource information table Tb" of the device information table Tc shown in FIG. 5 is replaced with the resource corresponding to the requested device in the resource information table Tb shown in FIG. The pointer is changed to the information pointer (step S26). Further, the "access function pointer table" of the device information table Tc shown in FIG. 5 is changed to a pointer of the access function corresponding to the requested device in the access function group table Td shown in FIG. 7 (step S26).

【0060】次に、マルチドライバI/F11からのポ
インタ情報からユーザアプリケーション1からの入出力
データ(要求内容と送受信データ)を取得する(ステッ
プS27)。この後のステップS28では、要求内容が
「デバイス切り換え要求」であるかの判別を行い、ここ
で「デバイス切り換え要求」であれば、ステップS29
へ進み、「デバイス切り換え要求」でない場合はステッ
プS33に進む。また、ステップS29では切り換え要
求のデバイス(ISAカード31から新デバイスカード
34のいずれか)が同一デバイスドライバ制御装置を備
える情報処理装置(システム)に接続されているか否か
の調べを行う。
Next, input / output data (request contents and transmission / reception data) from the user application 1 is obtained from the pointer information from the multi-driver I / F 11 (step S27). In the subsequent step S28, it is determined whether or not the request content is a "device switching request".
If not, the process proceeds to step S33. In step S29, it is checked whether or not the switching request device (any one of the ISA card 31 to the new device card 34) is connected to an information processing device (system) having the same device driver control device.

【0061】このステップS29の処理結果、及び、図
4に示すデバイス使用状況テーブルTaで切り換え要求
のデバイスが他のユーザアプリケーション1で現在使用
されているか否かをマルチドライバ21のデバイス制御
部21aが判別し(ステップS30) 、ここで未使用の
場合はステップS31へ進み、未使用でない場合はステ
ップS34に進む。
The device control unit 21a of the multi-driver 21 determines whether or not the switching request device is currently being used by another user application 1 based on the processing result of step S29 and the device use status table Ta shown in FIG. A determination is made (step S30). If not used, the process proceeds to step S31. If not, the process proceeds to step S34.

【0062】ステップS31では、マルチドライバ21
のデバイス制御部21aは、マルチドライバI/F11
からのポインタ情報を、図4に示すデバイス使用状況テ
ーブルTaの要求デバイスに対応する領域に格納し、今
まで使用していたデバイスに対応する領域を更新する。
次に、図5に示すデバイス情報テーブルTcの「リソー
ス情報テーブルTbのポインタ」を、図6に示すリソー
ス情報テーブルTb内の要求デバイスに対応するリソー
ス情報のポインタに変更する。さらに、図5に示すデバ
イス情報テーブルTcの「アクセス関数のポインタテー
ブル」を、図7に示すアクセス関数群テーブルTd内の
要求デバイスに対応したアクセス関数のポインタに変更
する(ステップS32) 。この後にステップS34へ進
む。
In step S31, the multi driver 21
Of the multi-driver I / F 11
Is stored in the area corresponding to the requested device in the device usage status table Ta shown in FIG. 4, and the area corresponding to the device used so far is updated.
Next, the "pointer of the resource information table Tb" in the device information table Tc shown in FIG. 5 is changed to a pointer of resource information corresponding to the requested device in the resource information table Tb shown in FIG. Further, the "access function pointer table" of the device information table Tc shown in FIG. 5 is changed to a pointer of the access function corresponding to the requested device in the access function group table Td shown in FIG. 7 (step S32). Thereafter, the process proceeds to step S34.

【0063】ステップS28の処理の後、マルチドライ
バ21のデバイス制御部21aは、図5に示すデバイス
情報テーブルTcに格納してある「リソース情報テーブ
ルTbのポインタ」が示す場所のI/Oポート(図示せ
ず)を参照し、「アクセス関数のポインタテーブル」か
ら要求内容に応じた関数をコールすることによって目的
のデバイス(ISAカード31から新デバイスカード3
4のいずれか)へデータを入出力する(ステップS3
3)。次に、入出力結果をユーザアプリケーション1へ
返すため、マルチドライバI/F11の所定領域(バッ
ファ)へ入出力結果を保存して終了する(ステップS3
4)。
After the process in step S28, the device control section 21a of the multi-driver 21 sets the I / O port (pointer) indicated by the "pointer of the resource information table Tb" stored in the device information table Tc shown in FIG. With reference to an access function pointer table, a function corresponding to the requested content is called from the “access function pointer table” to obtain a target device (from the ISA card 31 to the new device card 3).
4) (Step S3)
3). Next, in order to return the input / output result to the user application 1, the input / output result is stored in a predetermined area (buffer) of the multi-driver I / F 11, and the process ends (step S3).
4).

【0064】次に、図8を参照して、図4に示すデバイ
ス使用状況テーブルTa、図5に示すデバイス情報テー
ブルTcにおけるデータ処理について詳細に説明する。
ここでは、異なる二つのユーザアプリケーション1
(A,Bとする)が異なる三つのデバイス(ISAカー
ド31,PCMCIAカード32,PCIカード33)
を使用する場合について説明する。
Next, with reference to FIG. 8, data processing in the device use status table Ta shown in FIG. 4 and the device information table Tc shown in FIG. 5 will be described in detail.
Here, two different user applications 1
(A and B) three different devices (ISA card 31, PCMCIA card 32, PCI card 33)
Will be described.

【0065】まず、三つのデバイス(ISAカード31
からPCIカード33のいずれか)を接続した状態でシ
ステムを起動すると、マルチドライバ21がロードさ
れ、オペレーティングシステム2からISAカード31
のデバイス検出通知がマルチドライバ21に送られてく
る。このデバイス検出通知を取り込んだマルチドライバ
21のデバイス制御部21aは、図2に示すステップS
11からステップS14によって図5に示すデバイス情
報テーブルTcの内容を図8(a)に示す内容に更新す
る。
First, three devices (ISA card 31)
When the system is started with any one of the PCI cards 33 connected, the multi-driver 21 is loaded and the operating system 2 sends the ISA card 31
Is sent to the multi-driver 21. The device control unit 21a of the multi-driver 21 which has received the device detection notification performs the processing in step S shown in FIG.
From 11 to step S14, the content of the device information table Tc shown in FIG. 5 is updated to the content shown in FIG.

【0066】次に、オペレーティングシステム2からP
CMCIAカード32のデバイス検出通知がマルチドラ
イバ21に送られてくる。このデバイス検出通知を取り
込んだマルチドライバ21のデバイス制御部21aは、
図2に示すステップS11からステップS14によっ
て、図5に示すデバイス情報テーブルTcの内容を図8
(b)に示す内容に更新する。最後に、オペレーティン
グシステム2からPCIカード33のデバイス検出通知
がマルチドライバ21に送られてくる。このデバイス検
出通知を取り込んだマルチドライバ21のデバイス制御
部21aは、図2に示すステップS11からステップS
14によって、図5に示すデバイス情報テーブルTcの
内容を図8(c)に示す内容に更新する。
Next, the operating system 2 sends P
The device detection notification of the CMCIA card 32 is sent to the multi-driver 21. The device control unit 21a of the multi-driver 21 which has received the device detection notification,
By the steps S11 to S14 shown in FIG. 2, the contents of the device information table Tc shown in FIG.
Update to the contents shown in (b). Finally, a notification of device detection of the PCI card 33 is sent from the operating system 2 to the multi-driver 21. The device control unit 21a of the multi-driver 21, which has received the device detection notification, executes steps S11 to S11 shown in FIG.
14 updates the content of the device information table Tc shown in FIG. 5 to the content shown in FIG.

【0067】これらの処理よって、デバイス検出時の図
4に示すデバイス使用状況テーブルTaと図5に示すデ
バイス情報テーブルTcのデータは、図8(c)に示す
内容に更新される。その後、アプリケーション1Aから
オペレーティングシステム2のマルチドライバI/F1
1を通じてポインタ情報「10000H」で入出力デー
タ(デバイス切り換え要求、デバイス種類「1」)がマ
ルチドライバ21に送られてくると、マルチドライバ2
1のデバイス制御部21aが、図3に示すステップS2
1からステップS34によって図4に示すデバイス使用
状況テーブルTaと図5に示すデバイス情報テーブルT
cの内容を図8(d)に示す内容に更新する。
By these processes, the data of the device usage table Ta shown in FIG. 4 and the device information table Tc shown in FIG. 5 at the time of device detection are updated to the contents shown in FIG. 8C. Thereafter, the multi-driver I / F 1 of the operating system 2 is transmitted from the application 1A.
When input / output data (device switching request, device type “1”) is sent to the multi-driver 21 with pointer information “10000H” through the multi-driver 2, the multi-driver 2
1 in step S2 shown in FIG.
1 through step S34, the device usage table Ta shown in FIG. 4 and the device information table T shown in FIG.
The content of c is updated to the content shown in FIG.

【0068】一方、アプリケーション1Bからオペレー
ティングシステム2のマルチドライバI/F11を通じ
てポインタ情報「20000H」で入出力データ(デバ
イス切り換え要求、デバイス種類「2」)がマルチドラ
イバ21に送られてくると、マルチドライバ21のデバ
イス制御部21aが、図3に示すステップS21からス
テップS34によって図4に示すデバイス使用状況テー
ブルTaと図5に示すデバイス情報テーブルTcの内容
を図8(e)に示す内容に更新する。
On the other hand, when the input / output data (device switching request, device type “2”) is sent from the application 1 B through the multi-driver I / F 11 of the operating system 2 with pointer information “20000H” to the multi-driver 21, The device control unit 21a of the driver 21 updates the contents of the device usage table Ta shown in FIG. 4 and the device information table Tc shown in FIG. 5 to the contents shown in FIG. 8E from steps S21 to S34 shown in FIG. I do.

【0069】ここで、アプリケーション1Aからオペレ
ーティングシステム2のマルチドライバI/F11を通
じてポインタ情報「10000H」で入出力データ(送
信要求、送信データ)がマルチドライバ21に送られて
くると、マルチドライバ21のデバイス制御部21a
は、図3に示すステップS21でポインタ情報「100
00H」に対応しているISAカード31を要求デバイ
スとして取得し、ステップS26で図5に示すデバイス
情報テーブルTcの内容を図9(a)に示す内容に更新
し、ステップS33で図5に示すデバイス情報テーブル
Tcにセットされている送信関数のポインタ「2000
H」が示す関数を実行してISAカード31へ送信デー
タを出力する。
Here, when the input / output data (transmission request, transmission data) is sent from the application 1A to the multi-driver 21 with the pointer information “10000H” through the multi-driver I / F 11 of the operating system 2, the multi-driver 21 Device control unit 21a
Is the pointer information "100" in step S21 shown in FIG.
The ISA card 31 corresponding to "00H" is acquired as a requesting device, the content of the device information table Tc shown in FIG. 5 is updated to the content shown in FIG. 9A in step S26, and the content shown in FIG. The transmission function pointer "2000" set in the device information table Tc
The function indicated by "H" is executed to output the transmission data to the ISA card 31.

【0070】一方、アプリケーション1Bからオペレー
ティングシステム2のマルチドライバI/F11を通じ
て、ポインタ情報「20000H」で入出力データ(送
信要求、送信データ)がマルチドライバ21に送られて
くると、マルチドライバ21のデバイス制御部21a
は、図3に示すステップS21でポインタ情報「200
00H」に対応しているPCMCIAカード32を要求
デバイスとして取得し、さらに、ステップS26で図5
に示すデバイス情報テーブルTcの内容を図8(e)に
示す内容に更新する。また、ステップS33で、図5に
示すデバイス情報テーブルTcにセットされている送信
関数のポインタ「3000H」が示す関数を実行してP
CMCIAカード32へ送信データを出力する。
On the other hand, when input / output data (transmission request, transmission data) is transmitted from the application 1B to the multi-driver 21 with the pointer information “20000H” through the multi-driver I / F 11 of the operating system 2, the multi-driver 21 Device control unit 21a
Is the pointer information "200" in step S21 shown in FIG.
The PCMCIA card 32 corresponding to “00H” is acquired as a requesting device, and further, in FIG.
Is updated to the content shown in FIG. 8E. In step S33, the function indicated by the transmission function pointer "3000H" set in the device information table Tc shown in FIG.
The transmission data is output to the CMCIA card 32.

【0071】ここで、アプリケーション1Aからオペレ
ーティングシステム2のマルチドライバI/F11を通
じて、ポインタ情報「10000H」で入出力データ
(デバイス切り換え要求、デバイス種類「3」)がマル
チドライバ21に送られてくると、マルチドライバ21
のデバイス制御部21aは、図3に示すステップS21
からステップS34によって図4に示すデバイス使用状
況テーブルTaと図5に示すデバイス情報テーブルTc
の内容を図9(b)に示す内容に更新する。なお、図9
(c)は、ここでの処理に対応する図6に示すリソース
情報テーブルTb、及び、図7に示すアクセス関数群テ
ーブルTdを示している。
Here, when the input / output data (device switching request, device type “3”) is sent from the application 1 A through the multi-driver I / F 11 of the operating system 2 with pointer information “10000H” to the multi-driver 21. , Multi driver 21
The device controller 21a of step S21 shown in FIG.
The device usage table Ta shown in FIG. 4 and the device information table Tc shown in FIG.
Is updated to the content shown in FIG. Note that FIG.
(C) shows the resource information table Tb shown in FIG. 6 and the access function group table Td shown in FIG. 7 corresponding to the processing here.

【0072】次に、図1から図7を参照して、新デバイ
スが追加された場合について説明する。新デバイス34
が追加された場合、マルチドライバ21のデバイス制御
部21aは、図4に示すデバイス使用状況テーブルTa
にユーザアプリケーション1からオペレーティングシス
テム2のマルチドライバI/F11を通じて送られてく
るポインタ情報を格納するための新デバイス領域(点線
部分)を追加し、図6に示すリソース情報テーブルTb
に新デバイスのリソース情報を格納するための新デバイ
ス領域(点線部分)を追加する。さらに、図7に示すア
クセス関数群テーブルTdに新デバイスへ入出力するた
めのアクセス関数群(点線部分)を追加して、デバイス
に関連した処理を行うテーブルを拡張する。この結果、
容易に新デバイスへの対応が可能になる。
Next, a case where a new device is added will be described with reference to FIGS. New device 34
Is added, the device control unit 21a of the multi-driver 21 sends the device usage status table Ta shown in FIG.
A new device area (dotted line) for storing pointer information sent from the user application 1 through the multi-driver I / F 11 of the operating system 2 to the resource information table Tb shown in FIG.
A new device area (dotted line) for storing resource information of the new device. Further, an access function group (dotted line portion) for inputting / outputting data to / from a new device is added to the access function group table Td shown in FIG. 7 to expand the table for performing device-related processing. As a result,
It is possible to easily support new devices.

【0073】この場合、図4に示すデバイス使用状況テ
ーブルTa、図6に示すリソース情報テーブルTb、図
7に示すアクセス関数群テーブルTdは、それぞれ配列
形式となっているため、配列[3]を配列[4]という
ように配列の数を変更するのみで領域の追加が容易に行
われる。
In this case, the device usage table Ta shown in FIG. 4, the resource information table Tb shown in FIG. 6, and the access function group table Td shown in FIG. Regions can be easily added simply by changing the number of sequences, such as sequence [4].

【0074】[0074]

【発明の効果】以上の説明から明らかなように、本発明
のデバイスドライバ制御方法及びその装置によれば、ド
ライバ内のデバイスに関連した処理(I/Oポート及び
メモリにおける記憶範囲を含むリソース情報及びアクセ
ス関数群に関する処理)をテーブル化して非関連処理と
分離し、デバイスに対する処理に関連する処理を、分岐
処理ではなくポインタの切り換え処理で行っている。ま
た、新デバイスへの対応を容易にするために、デバイス
に関連するリソース情報及びアクセス関数群をテーブル
化して処理している。更に、異なる複数のデバイスを同
一のドライバインターフェースで使用するために、使用
するデバイスの切り換えをユーザアプリケーションから
オペレーティングシステムのドライバインターフェース
を通じて送られる入出力データで行っている。
As is apparent from the above description, according to the device driver control method and apparatus of the present invention, the processing (resource information including the I / O port and the storage range in the memory) related to the device in the driver is performed. And processing relating to the access function group) are tabulated and separated from unrelated processing, and processing related to processing for the device is performed not by branch processing but by pointer switching processing. In addition, in order to easily cope with a new device, resource information and an access function group relating to the device are tabulated and processed. Further, in order to use a plurality of different devices with the same driver interface, switching of the device to be used is performed by input / output data transmitted from the user application through the driver interface of the operating system.

【0075】これらの結果、最初のデバイスのときに一
度のみでデバイスドライバのインストールが行われるこ
とになり、インストール作業時間が大幅に短縮され、そ
の作業効率が向上する。
As a result, the device driver is installed only once at the time of the first device, so that the installation work time is greatly reduced and the work efficiency is improved.

【0076】また、ユーザアプリケーションは、使用す
るデバイスによってドライバインターフェースを使い分
ける必要がなくなる。この結果、デバイスを使用するア
プリケーションの処理効率が向上する。
Further, the user application does not need to use the driver interface depending on the device to be used. As a result, the processing efficiency of the application using the device is improved.

【0077】さらに、接続するデバイス数が増加して
も、デバイスドライバ数が一個であるため、システムの
起動にかかる時間が変わらないことになる。この結果、
オペレーティングシステムへの負荷が軽減される。
Further, even if the number of connected devices increases, the number of device drivers is one, so that the time required for starting the system does not change. As a result,
The load on the operating system is reduced.

【0078】また、接続するデバイス数が増大してもシ
ステム内にコピーされるドライバは一個であり、システ
ム内の使用可能ディスク記憶容量は変わらないことにな
る。この結果、オペレーティングシステムへの負荷が軽
減される。
Further, even if the number of connected devices increases, only one driver is copied in the system, and the usable disk storage capacity in the system does not change. As a result, the load on the operating system is reduced.

【0079】さらに、接続するデバイス数が増加して
も、ドライバインターフェース数は一種類であるため、
システム内のメモリ記憶容量が変わらない。この結果、
オペレーティングシステムへの負荷が軽減される。
Further, even if the number of connected devices increases, the number of driver interfaces is one, so that
The memory storage capacity in the system does not change. As a result,
The load on the operating system is reduced.

【0080】また、異なる複数のデバイスを別々のシス
テムで使用する場合でも、デバイスドライバのインスト
ール方法は同一である。この結果、インストール作業時
間が短縮されて、その作業効率が向上する。
Further, even when a plurality of different devices are used in different systems, the method of installing the device driver is the same. As a result, the installation work time is reduced, and the work efficiency is improved.

【0081】さらに、デバイスへの入出力要求によるポ
インタ情報によって使用しているデバイスを調べて要求
デバイス種類を取得している。この結果、複数のユーザ
アプリケーションが別々のデバイスを使用する並行処理
が可能になり、システム処理の自由度が向上する。
Further, the device used is checked by the pointer information based on the input / output request to the device, and the requested device type is obtained. As a result, parallel processing in which a plurality of user applications use different devices becomes possible, and the degree of freedom in system processing is improved.

【0082】また、切り換え要求のデバイスがシステム
に接続されているか否かの調べを行う。この結果、デバ
イスを使用中に他のデバイスへの使用切り換えが可能に
なり、この場合もシステム処理の自由度が向上する。
Further, it is checked whether or not the switching request device is connected to the system. As a result, it is possible to switch the use of the device to another device while the device is in use, and in this case also, the degree of freedom in system processing is improved.

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

【図1】本発明のデバイスドライバ制御方法及びその装
置の実施形態における構成を示すブロック図である。
FIG. 1 is a block diagram showing a configuration of an embodiment of a device driver control method and device of the present invention.

【図2】実施形態の動作でのデバイス検出時の処理を示
すフローチャートである。
FIG. 2 is a flowchart illustrating a process at the time of device detection in the operation of the embodiment.

【図3】実施形態の動作でのデバイス使用時の処理を示
すフローチャートである。
FIG. 3 is a flowchart illustrating processing when a device is used in the operation of the embodiment.

【図4】実施形態の動作における各デバイスの使用状況
を管理するテーブルを示す図である。
FIG. 4 is a diagram showing a table for managing the use status of each device in the operation of the embodiment.

【図5】実施形態の動作におけるデバイス情報テーブル
を示す図である。
FIG. 5 is a diagram showing a device information table in the operation of the embodiment.

【図6】実施形態の動作における各デバイスのリソース
情報を管理するテーブルを示す図である。
FIG. 6 is a diagram showing a table for managing resource information of each device in the operation of the embodiment.

【図7】実施形態の動作における各デバイスのアクセス
関数群を管理するテーブルを示す図である。
FIG. 7 is a diagram showing a table for managing an access function group of each device in the operation of the embodiment.

【図8】実施形態の動作でのテーブルの使用例を示す図
である。
FIG. 8 is a diagram showing an example of using a table in the operation of the embodiment.

【図9】実施形態の動作でのテーブルの他の使用例を示
す図である。
FIG. 9 is a diagram illustrating another example of use of the table in the operation of the embodiment.

【図10】従来例の構成を示すブロック図である。FIG. 10 is a block diagram showing a configuration of a conventional example.

【図11】従来例におけるデバイス検出時の処理のフロ
ーチャートである。
FIG. 11 is a flowchart of a process at the time of device detection in a conventional example.

【図12】従来例におけるデバイス使用時の処理のフロ
ーチャートである。
FIG. 12 is a flowchart of a process when a device is used in a conventional example.

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

1 ユーザアプリケーション 2 オペレーティングシステム 11 マルチドライバインターフェース(I/F) 21 マルチドライバ 21a デバイス制御部 31 ISAカード 32 PCMCIAカード 33 PCIカード 34 新デバイスカード Ta デバイス使用状況テーブル Tb リソース情報テーブル Tc デバイス情報テーブル Td アクセス関数群テーブル 1 User Application 2 Operating System 11 Multi Driver Interface (I / F) 21 Multi Driver 21a Device Control Unit 31 ISA Card 32 PCMCIA Card 33 PCI Card 34 New Device Card Ta Device Usage Table Tb Resource Information Table Tc Device Information Table Td Access Function group table

フロントページの続き (72)発明者 大園 和美 神奈川県川崎市中原区小杉町一丁目403番 53 日本電気アイシーマイコンシステム株 式会社内 Fターム(参考) 5B014 EA01 EB03 FA04 FA12 HA04 HA07 HC05 HC08 Continuation of the front page (72) Inventor Kazumi Ozono 1-403, Kosugicho, Nakahara-ku, Kawasaki-shi, Kawasaki 53 F-term (reference) in NEC Icy Microcomputer Systems Co., Ltd. 5B014 EA01 EB03 FA04 FA12 HA04 HA07 HC05 HC08

Claims (11)

【特許請求の範囲】[Claims] 【請求項1】 複数のデバイスを一つのデバイスドライ
バで制御するためのデバイスドライバ制御方法におい
て、 デバイス検出通知から複数のデバイス中の特定デバイス
を判別する段階と、 この判別した特定デバイスに対するリソース情報を取得
する段階と、 この取得したリソース情報を前記特定デバイスに対応し
て更新する段階と、 前記特定デバイスに対応するデバイス種類とリソース情
報のポインタとアクセス関数のポインタとを格納して更
新する段階と、 を有してデバイス検出を行うことを特徴とするデバイス
ドライバ制御方法。
1. A device driver control method for controlling a plurality of devices with one device driver, comprising the steps of: identifying a specific device among the plurality of devices from a device detection notification; Obtaining, updating the obtained resource information corresponding to the specific device, storing and updating a device type, resource information pointer, and access function pointer corresponding to the specific device; A device driver control method comprising: performing device detection.
【請求項2】 複数のデバイスを一つのデバイスドライ
バで制御するデバイスドライバ制御方法において、 使用するデバイス種類を取得する段階と、 この取得した特定デバイスに対するリソース情報のポイ
ンタとアクセス関数のポインタとを格納して更新する段
階と、 前記特定デバイスへの入出力データを取得する段階と、 ポインタが示すリソース情報を参照してアクセス関数ポ
インタが示すアクセス関数で前記特定デバイスとの間で
送受信データを入出力する段階と、 前記特定デバイスへの送受信データの入出力結果を保存
する段階と、 を有して前記特定デバイスに対する制御を行うことを特
徴とするデバイスドライバ制御方法。
2. A device driver control method for controlling a plurality of devices with one device driver, comprising: acquiring a device type to be used; and storing a pointer of resource information and a pointer of an access function for the acquired specific device. Updating the input / output data; obtaining input / output data to / from the specific device; inputting / outputting data transmitted / received to / from the specific device by an access function indicated by an access function pointer with reference to resource information indicated by the pointer Performing a control on the specific device, the method including: performing a control of the specific device, and a step of storing an input / output result of transmission / reception data to / from the specific device.
【請求項3】 前記特定デバイスを取得する際、要求さ
れたデバイスを取得できない場合に、 前記要求されたデバイスの初期値を取得する段階と、 このデバイスへ切り換えが可能かを判断する段階と、 次に、この切り換えが可能と判断されたときにポインタ
情報を、前記特定のデバイスに対応して格納する段階
と、 をさらに有することを特徴とする請求項2記載のデバイ
スドライバ制御方法。
A step of obtaining an initial value of the requested device when the requested device cannot be obtained when obtaining the specific device; and a step of determining whether switching to the device is possible. 3. The device driver control method according to claim 2, further comprising: storing pointer information corresponding to the specific device when it is determined that the switching is possible.
【請求項4】 前記取得した入出力データがデバイスの
切り換え要求の場合に、要求されたデバイスが使用可能
かを調べる段階と、 この切り換えが可能と判断されたときに要求されたデバ
イスのポインタ情報を格納して更新する段階と、 前記切り換えが不可能と判断されたときの結果を保存す
る段階と、 を有することを特徴とする請求項2記載のデバイスドラ
イバ制御方法。
4. When the obtained input / output data is a device switching request, checking whether the requested device is usable, and pointer information of the device requested when it is determined that the switching is possible. 3. The device driver control method according to claim 2, further comprising the steps of: storing and updating the data; and storing a result when the switching is determined to be impossible.
【請求項5】 前記格納が、 テーブルにおける該当領域への格納であることを特徴と
する請求項2,3又は4のいずれかに記載のデバイスド
ライバ制御方法。
5. The device driver control method according to claim 2, wherein the storage is storage in a corresponding area in a table.
【請求項6】 複数のデバイスを一つのデバイスドライ
バで制御するための少なくとも要求内容及び送受信のデ
ータ転送を行うユーザアプリケーションと、 前記ユーザアプリケーションとの間で要求内容及び送受
信のデータ転送を実行するマルチドライバインターフェ
ースを備えるオペレーティングシステムと、 前記オペレーティングシステムとの間の要求内容及び送
受信のデータ転送によって、接続されている複数のデバ
イスを一つのデバイスドライバで制御するマルチドライ
バと、 を有することを特徴とするデバイスドライバ制御装置。
6. A user application for transferring at least request contents and transmission / reception data for controlling a plurality of devices by one device driver, and a multi-user for executing request contents and transmission / reception data transfer between the user applications. An operating system having a driver interface; and a multi-driver for controlling a plurality of connected devices by a single device driver by transferring request contents and transmission / reception data between the operating system. Device driver control unit.
【請求項7】 前記マルチドライバに、 複数のデバイスを単独制御又は並列制御するデバイス制
御部と、 このデバイス制御部に、 デバイスがどのユーザアプリケーションで使用されてい
るかを管理するためのデバイス使用状況テーブル、 使用するデバイスの初期値と使用するデバイスのリソー
ス情報テーブルへのポインタと使用するデバイスに対応
するアクセス関数のポインタを管理するためのデバイス
情報テーブル、 複数のデバイスのそれぞれのリソース情報を格納したリ
ソース情報テーブル、 複数のデバイスのそれぞれに対応したアクセス関数群を
管理するためのアクセス関数群テーブル、 を備えることを特徴とする請求項6記載のデバイスドラ
イバ制御装置。
7. A device control unit for controlling a plurality of devices individually or in parallel in the multi-driver, and a device use status table for managing which user application uses the device in the device control unit. A device information table for managing an initial value of a device to be used, a pointer to a resource information table of the device to be used, and a pointer of an access function corresponding to the device to be used; a resource storing resource information of each of a plurality of devices The device driver control device according to claim 6, further comprising: an information table; and an access function group table for managing an access function group corresponding to each of the plurality of devices.
【請求項8】 前記マルチドライバが、デバイス検出の
ための、 オペレーティングシステムからのデバイス検出通知から
複数のデバイスにおける特定のデバイスを判別するデバ
イス判別手段と、 前記デバイス判別手段で判別した特定デバイスに対する
オペレーティングシステムにおけるI/Oポート及びメ
モリにおける記憶範囲を含むリソース情報をオペレーテ
ィングシステムへ問い合わせて取得するリソース情報取
得手段と、 前記リソース情報取得手段で取得したリソース情報をリ
ソース情報テーブルの前記特定デバイスの領域に格納し
て更新するリソース情報保存手段と、 前記デバイス判別手段で特定したデバイスと前記リソー
ス情報保存手段で格納した領域のポインタとアクセス関
数群テーブル内の前記特定したデバイスに対応するアク
セス関数群のポインタをデバイス情報テーブルに保存し
て更新するデバイス情報テーブル更新手段と、 を有することを特徴とする請求項6記載のデバイスドラ
イバ制御装置。
8. A device discriminating means for discriminating a specific device among a plurality of devices from a device detection notification from an operating system for device detection, and an operating system for the specific device discriminated by the device discriminating device. A resource information acquisition unit for inquiring an operating system of resource information including an I / O port in the system and a storage range in the memory; and acquiring the resource information acquired by the resource information acquisition unit in an area of the specific device in a resource information table. Resource information storage means to be stored and updated, corresponding to the device specified by the device determination means, the pointer of the area stored by the resource information storage means, and the specified device in the access function group table Device driver control device according to claim 6, characterized in that it comprises a device information table updating means for updating to save the pointer access function group in the device information table, the.
【請求項9】 前記マルチドライバが、デバイスを使用
して制御するための、 デバイス使用状況テーブルから使用するデバイス種類を
取得する要求デバイス取得手段と、 前記要求デバイス取得手段で取得した特定のデバイスに
対応するリソース情報テーブル内のポインタとアクセス
関数群テーブル内の関数ポインタとをデバイス情報テー
ブルに格納して更新するリソース情報テーブル更新手段
と、 マルチドライバインターフェースからのポインタ情報を
参照してユーザアプリケーションからの入出力データを
取得する入出力データ取得手段と、 前記デバイス情報テーブル内のリソース情報テーブルの
ポインタが示すリソース情報を参照して前記デバイス情
報テーブル内のアクセス関数のポインタテーブルに格納
されている関数ポインタが示すアクセス関数でユーザア
プリケーションからの送受信データをデバイスとの間で
入出力するデバイスアクセス手段と、 このデバイスアクセス手段によるデバイスとの入出力結
果をユーザアプリケーションへ返すためにマルチドライ
バインターフェースの所定領域へ保存する入出力結果保
存手段と、 を有することを特徴とする請求項6記載のデバイスドラ
イバ制御装置。
9. A request device acquisition unit for acquiring a device type to be used from a device use status table for controlling the multi-driver using a device, and a specific device acquired by the request device acquisition unit. Resource information table updating means for storing and updating the corresponding pointer in the resource information table and the function pointer in the access function group table in the device information table; and referring to the pointer information from the multi-driver interface to read from the user application. Input / output data acquisition means for acquiring input / output data, and a function pointer stored in a pointer table of an access function in the device information table with reference to resource information indicated by a pointer of the resource information table in the device information table Shows A device access means for inputting / outputting data transmitted / received from the user application to / from the device by an access function; and a result of input / output from / to the device by the device access means is stored in a predetermined area of the multi-driver interface for returning to the user application. 7. The device driver control device according to claim 6, further comprising: an input / output result storage unit.
【請求項10】 前記デバイスを特定する際、デバイス
使用状況テーブルで要求されたデバイスを取得できない
場合に、 デバイス情報テーブルから前記特定のデバイスの初期値
を取得する初期デバイス取得手段と、 前記特定のデバイスへ切り換えが可能かを判別する切換
判別手段と、 前記切換判別手段で切り換えが可能と判断されたときに
マルチドライバインターフェースからのポインタ情報を
デバイス使用状況テーブル内の前記特定デバイスに対応
する領域へ格納するデバイス使用状況テーブル更新手段
と、 を有することを特徴とする請求項9記載のデバイスドラ
イバ制御装置。
10. When specifying the device, an initial device obtaining means for obtaining an initial value of the specific device from a device information table when the device requested in the device usage table cannot be obtained; Switching determination means for determining whether switching to a device is possible; and when the switching determination means determines that switching is possible, pointer information from a multi-driver interface is transferred to an area corresponding to the specific device in a device usage table. The device driver control device according to claim 9, further comprising: a device use status table updating unit that stores the device use status table.
【請求項11】 前記取得した入出力データで得られた
要求内容がデバイス切り換え要求かを判別する切換要求
判別手段と、 前記切換要求判別手段でデバイス切り換え要求と判断さ
れたときに要求デバイスが使用可能な状態であるかを調
べる要求デバイスチェック手段と、 前記要求デバイスチェック手段で切り換えが可能と判断
されたときにマルチドライバインターフェースからのポ
インタ情報をデバイス使用状況テーブル内の要求デバイ
スに対応する領域へ格納して更新するデバイス使用状況
テーブル更新手段と、 要求デバイスに対応するリソース情報テーブル内のポイ
ンタとアクセス関数群テーブル内の関数ポインタをデバ
イス情報テーブルへ格納して更新するデバイス情報テー
ブル更新手段と、 前記要求デバイスチェック手段で切り換えが不可能と判
断されたときの結果をユーザアプリケーションへ返すた
めにマルチドライバインターフェースの所定領域へ入出
力結果を保存する入出力結果保存手段と、 を有することを特徴とする請求項9記載のデバイスドラ
イバ制御装置。
11. A switching request determining means for determining whether the request content obtained from the obtained input / output data is a device switching request, and a request device is used when the switching request determining means determines that the request is a device switching request. Requesting device checking means for checking whether the state is possible, and pointer information from the multi-driver interface when the requesting device checking means determines that switching is possible, to an area corresponding to the requesting device in the device usage table. Device usage table updating means for storing and updating; device information table updating means for storing and updating a pointer in the resource information table and a function pointer in the access function group table corresponding to the requested device in the device information table; Cut by the request device check means 10. An input / output result storage means for storing an input / output result in a predetermined area of the multi-driver interface in order to return a result when it is determined that the input / output is not possible to the user application. Device driver control unit.
JP28336599A 1999-10-04 1999-10-04 Method and device for controlling device driver Pending JP2001109698A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP28336599A JP2001109698A (en) 1999-10-04 1999-10-04 Method and device for controlling device driver

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP28336599A JP2001109698A (en) 1999-10-04 1999-10-04 Method and device for controlling device driver

Publications (1)

Publication Number Publication Date
JP2001109698A true JP2001109698A (en) 2001-04-20

Family

ID=17664560

Family Applications (1)

Application Number Title Priority Date Filing Date
JP28336599A Pending JP2001109698A (en) 1999-10-04 1999-10-04 Method and device for controlling device driver

Country Status (1)

Country Link
JP (1) JP2001109698A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003065188A1 (en) * 2002-01-28 2003-08-07 Fujitsu Limited Device and host machine
KR100943574B1 (en) 2006-07-18 2010-02-23 엔비디아 코포레이션 System, method, and computer program product for communicating sub-device state information
KR100944092B1 (en) * 2003-02-08 2010-02-24 엘지전자 주식회사 A connector structure of pcmcia for wireless monitor
EP2913751A1 (en) 2014-02-28 2015-09-02 Fujitsu Limited Terminal device, device driver program and external peripheral device control method

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003065188A1 (en) * 2002-01-28 2003-08-07 Fujitsu Limited Device and host machine
KR100944092B1 (en) * 2003-02-08 2010-02-24 엘지전자 주식회사 A connector structure of pcmcia for wireless monitor
KR100943574B1 (en) 2006-07-18 2010-02-23 엔비디아 코포레이션 System, method, and computer program product for communicating sub-device state information
EP2913751A1 (en) 2014-02-28 2015-09-02 Fujitsu Limited Terminal device, device driver program and external peripheral device control method
US10275368B2 (en) 2014-02-28 2019-04-30 Fujitsu Limited Terminal device, external peripheral device and external peripheral device control method

Similar Documents

Publication Publication Date Title
EP1909474B1 (en) Image processor and its control method
US20030043396A1 (en) Printer driver access interface
US20040090652A1 (en) Printer, and control method thereof, having extended communication interface functions
EP1308793B1 (en) Image forming device having a memory assignment unit
JP2001109698A (en) Method and device for controlling device driver
US5613133A (en) Microcode loading with continued program execution
US6216176B1 (en) Method of passing right to use input/output port between softwares
JP2000242443A (en) Status information display device, method for display control of status information and medium recording program for display control of status information
CN100504753C (en) Information processing device
JPH11187190A (en) Composite function processor and composite function processing method
JPH11134135A (en) Printer control system
KR100325809B1 (en) Saving method of waiting time in network printer
JPH09146651A (en) Remote start system for computer
JPH09190317A (en) Printing device and printing method
JP3347580B2 (en) Information processing device and storage medium
JP2003330842A (en) Server/client system type network system
JPH09282112A (en) Information processor
JP2848172B2 (en) I / O controller
CN116155721A (en) Port configuration method, device, storage medium and computer equipment
JP2944425B2 (en) Multiplex control method of FAX dedicated adapter and FAX modem
JPH11161499A (en) Application installation method
JPH10105501A (en) Printer driver registering method
JPH10320345A (en) Bus controller
JP2006285903A (en) Method of avoiding duplication of communication port
JPH03250968A (en) Input output device

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040427

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040625

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20050208