JP4295072B2 - Communication port assignment device, communication port assignment method, and communication port assignment program - Google Patents

Communication port assignment device, communication port assignment method, and communication port assignment program Download PDF

Info

Publication number
JP4295072B2
JP4295072B2 JP2003402489A JP2003402489A JP4295072B2 JP 4295072 B2 JP4295072 B2 JP 4295072B2 JP 2003402489 A JP2003402489 A JP 2003402489A JP 2003402489 A JP2003402489 A JP 2003402489A JP 4295072 B2 JP4295072 B2 JP 4295072B2
Authority
JP
Japan
Prior art keywords
index
prefix
communication port
plug
indexes
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2003402489A
Other languages
Japanese (ja)
Other versions
JP2005165581A (en
Inventor
晃一朗 笠間
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2003402489A priority Critical patent/JP4295072B2/en
Publication of JP2005165581A publication Critical patent/JP2005165581A/en
Application granted granted Critical
Publication of JP4295072B2 publication Critical patent/JP4295072B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

本発明は,通信デバイスのWindowsCE(米国,マイクロソフト社商標)ベースのプラットフォームへの登録技術に関し,特に,プレフィックスとインデックスとで特定される通信ポートを柔軟に割当て/解放する通信ポート割当て装置,通信ポート割当て方法および通信ポート割当てプログラムに関する。   The present invention relates to a technology for registering a communication device to a Windows CE (US, Microsoft trademark) -based platform, and more particularly to a communication port allocation device and communication port for flexibly allocating / releasing communication ports specified by a prefix and an index. The present invention relates to an allocation method and a communication port allocation program.

マイクロソフト社が開発した,持ち運ぶことを想定した機器への組み込みを意識したOSとしてWindowsCEがある。まず,WindowsCEにおけるプレフィックスとインデックスの用語について説明する。   WindowsCE is an OS developed by Microsoft Corporation that is designed to be incorporated into devices that are supposed to be carried. First, prefix and index terms in Windows CE will be described.

WindowsCEでは,デバイスドライバのインタフェース関数をデバイスに対して提示し関係付けるためにデバイスファイル名(以下,通信ポートと記述)を規定する。通信ポートは,大英文字3個と,数字1個と,コロン1個で構成される。通信ポートを構成する大英文字3個がプレフィックス(Prefix),数字1個がインデックス(Index) であり,このプレフィックスとインデックスとによって通信ポートが特定される。例えば「COM1:」という通信ポートの場合,プレフィックスはCOM,インデックスは1である。   In Windows CE, a device file name (hereinafter referred to as a communication port) is defined in order to present and relate a device driver interface function to a device. The communication port is composed of three English letters, one number, and one colon. Three English characters constituting a communication port are a prefix (Prefix), and one number is an index (Index), and the communication port is specified by the prefix and the index. For example, in the case of a communication port “COM1:”, the prefix is COM and the index is 1.

WindowsCEでは,COM,FJF,FJHなど複数のプレフィックスが存在する。また,WindowsCEの仕様では,インデックスは一つのプレフィックスに対して1,2,3,…,9,0の計10個が割当て可能である。   In Windows CE, there are a plurality of prefixes such as COM, FJF, and FJH. Further, in the specification of Windows CE, a total of ten indexes 1, 2, 3,..., 9, 0 can be assigned to one prefix.

図8は,WindowsCEのドライバスタックチャートを示す図である。図8において,3はシステム情報が登録されるレジストリ,20はPCカードやUSB等のデバイス,21はOS(WindowsCE)に実装されているPCカードソケットドライバ,USBホストコントローラドライバ等の下位ドライバ,22はクライアントドライバ,23はOS(WindowsCE)に実装されているTAPI(telephony API) ,24はダイヤルアップアプリケーション,25は一般的なアプリケーションである。TAPIは,コンピュータで電話機能を利用するためのアプリケーションインタフェースである。   FIG. 8 is a diagram showing a Windows CE driver stack chart. In FIG. 8, 3 is a registry in which system information is registered, 20 is a device such as a PC card or USB, 21 is a PC card socket driver installed in an OS (Windows CE), a lower level driver such as a USB host controller driver, 22 Is a client driver, 23 is a TAPI (telephony API) implemented in an OS (Windows CE), 24 is a dial-up application, and 25 is a general application. TAPI is an application interface for using a telephone function on a computer.

WindowsCEでは,レジストリ3中に,プレフィックス名,インデックス名,デバイスドライバ名等の情報が,デバイス20のID(ベンダID/プロダクトID)毎に管理されている。このレジストリ情報を参照すれば,選択されたデバイス20に対応するデバイスドライバ名,プレフィックス名,インデックス名がわかる。   In Windows CE, information such as a prefix name, an index name, and a device driver name is managed in the registry 3 for each ID (vendor ID / product ID) of the device 20. By referring to this registry information, the device driver name, prefix name, and index name corresponding to the selected device 20 can be known.

通信時においては,次のような処理が行われる。例えばダイヤルアップアプリケーション24でモデム名を指定してCOMのOPEN(通信動作の開始)をする場合,選択されたモデム名と対応するプレフィックスとインデックスをレジストリ3から取得してCOMをOPENする。   The following processing is performed during communication. For example, when the modem name is specified by the dial-up application 24 and COM OPEN (communication operation is started), the prefix and index corresponding to the selected modem name are acquired from the registry 3 and COM is opened.

一方,一般的なアプリケーション25(例えば,ターミナルアプリ)でCOMを直接指定してOPENする時,既にプレフィックスとインデックスが決定されているので,それらを用いてCOMのOPENをする。そして,デバイスドライバに実装されているストリームインタフェース関数がコールされて,通信が開始される。   On the other hand, when a general application 25 (for example, a terminal application) directly designates COM and performs an OPEN, since the prefix and index are already determined, the COM is OPENed using them. Then, the stream interface function implemented in the device driver is called to start communication.

なお,後述する本発明が解決しようとする課題に着目した従来技術に関して記載された文献は,特に見当たらない。   It should be noted that there is no particular document described regarding the prior art focusing on the problems to be solved by the present invention described later.

しかし,従来,デバイス使用(プラグイン)時にプレフィックスのインデックスがすべて割当てられている場合,選択的に単一または複数のプレフィックスおよびインデックスを割当てる機能がなかった。   However, in the past, when all prefix indexes were assigned when the device was used (plug-in), there was no function for selectively assigning a single prefix or multiple prefixes and indexes.

例えば,あるプレフィックスについて,インデックス番号が1〜9までのインデックスが割当てられており,インデックス番号=0のインデックスしか空いていない場合に,複数のデバイス20がWindowsCEが搭載された装置(例えばPDA)に挿入されると,この複数のデバイス20に対してプレフィックスおよびインデックスを割当てることができなかった。このため,デバイス20のプラグインが拒否されていた。   For example, when an index with an index number of 1 to 9 is assigned to a certain prefix and only an index with index number = 0 is available, a plurality of devices 20 are connected to an apparatus (for example, a PDA) equipped with Windows CE. When inserted, prefixes and indexes could not be assigned to the plurality of devices 20. For this reason, the plug-in of the device 20 is rejected.

また,従来,デバイス20の未使用(プラグアウト)時に,プレフィックスに割当てられているインデックスを解放する機能がなかった。このため,インデックスが枯渇するおそれがあった。   Conventionally, there is no function for releasing an index assigned to a prefix when the device 20 is not used (plug-out). As a result, the index might run out.

本発明は,上記従来技術の問題点を解決し,プラグイン時にプレフィックスのインデックスがすべて割当てられている場合,選択的に単一または複数のプレフィックスおよびインデックスを割当てるとともに,プラグアウト時に,プレフィックスに割当てられているインデックスを解放する手段を提供することにより,プラグインの拒否の回避およびインデックスの枯渇の回避を実現することを目的とする。   The present invention solves the above-mentioned problems of the prior art. When all prefix indexes are assigned at the time of plug-in, a single or plural prefixes and indexes are selectively assigned, and at the time of plug-out, the prefix is assigned. The purpose is to avoid plug-in rejection and index exhaustion by providing a means to release the index.

上記課題を解決するため,本発明は以下の処理を実行する。
(1)デバイス使用(プラグイン)時にプレフィックスのインデックスがすべて割当てられている場合,選択的に単一のプレフィックスおよびインデックスを割当てる機能を搭載し,デバイス20のプラグインの拒否を回避する。
(2)デバイス使用(プラグイン)時にプレフィックスのインデックスがすべて割当てられている場合,選択的に複数のプレフィックスおよびインデックスを割当てる機能を搭載し,デバイス20のプラグインの拒否を回避する。
(3)デバイス未使用(プラグアウト)時にプレフィックスに割り当てられたインデックスを解放する機能を搭載することで,インデックスの枯渇を回避する。
In order to solve the above problems, the present invention executes the following processing.
(1) When all prefix indexes are assigned when a device is used (plug-in), a function of selectively assigning a single prefix and index is installed to avoid rejection of the plug-in of the device 20.
(2) When all prefix indexes are assigned when the device is used (plug-in), a function of selectively assigning a plurality of prefixes and indexes is installed to avoid rejection of the plug-in of the device 20.
(3) By using a function to release the index assigned to the prefix when the device is not used (plug-out), index depletion is avoided.

すなわち,本発明は,所定のオペレーティングシステムを搭載するコンピュータがデバイスにアクセスするためのデバイスドライバにおいてプレフィックスとインデックスとにより特定される通信ポートを割当てる通信ポート割当て装置であって,デバイスが前記コンピュータに挿入されたときに,前記オペレーティングシステムからプラグイン通知を受信し,レジストリに登録されている特定プレフィックスごとのインデックスを検索して空きインデックスを抽出する手段と,あらかじめ設定されたインデックス数が複数の場合の複数プレフィックス割当て許可または不許可を示す条件のもとで,前記抽出した空きインデックスの数と前記挿入されたデバイスに割当てるインデックスの数とを比較し,1または複数のプレフィックスにおける空きインデックスからインデックスを割当て,割当てたプレフィックスおよびインデックスの値を前記レジストリに書き込む手段とを備えることを特徴とする。   That is, the present invention relates to a communication port assigning device for assigning a communication port specified by a prefix and an index in a device driver for a computer having a predetermined operating system to access the device, and the device is inserted into the computer. When receiving a plug-in notification from the operating system, searching for an index for each specific prefix registered in the registry and extracting a free index, and when there are a plurality of preset indexes The number of extracted free indexes and the number of indexes assigned to the inserted device are compared under the condition indicating whether or not to permit multiple prefix assignment, and one or more prefixes are assigned. Assign indices from the free index, wherein the value of the assigned prefix and index and means for writing to the registry.

また,本発明は,上記通信ポート割当て装置において,さらに,デバイスが前記コンピュータから抜かれたときに,前記オペレーティングシステムからプラグアウト通知を受信し,前記プラグイン時に割当てたプレフィックスとインデックスのペアを前記レジストリから削除する手段を備えることを特徴とする。   Further, the present invention provides the communication port assignment apparatus, wherein when the device is removed from the computer, a plug-out notification is received from the operating system, and the prefix / index pair assigned at the time of the plug-in is stored in the registry. It is characterized by comprising means for deleting from.

以上の通信ポート割当て装置の処理機能は,コンピュータとソフトウェアプログラムとによって実現することができ,そのプログラムをコンピュータ読み取り可能な記録媒体に記録して提供することも,ネットワークを通して提供することも可能である。   The processing functions of the communication port assignment device described above can be realized by a computer and a software program, and the program can be provided by being recorded on a computer-readable recording medium or provided via a network. .

本発明によれば,デバイス使用(プラグイン)時にプレフィックスのインデックスがすべて割当てられていても,選択的に単一または複数のプレフィックスおよびインデックスを割当てることができるため,デバイスのプラグインの拒否を回避することが可能となる。   According to the present invention, even if all prefix indexes are assigned when a device is used (plug-in), it is possible to selectively assign a single prefix or multiple prefixes and indexes, thereby avoiding rejection of a device plug-in. It becomes possible to do.

また,本発明によれば,デバイス未使用(プラグアウト)時にプレフィックスに割り当てられたインデックスを解放することができるため,インデックスの枯渇を回避することが可能となる。   Furthermore, according to the present invention, since the index assigned to the prefix can be released when the device is not used (plug out), it is possible to avoid exhaustion of the index.

図1は,本発明の通信ポート割当て装置の構成を示す図である。図1において,1は通信ポート割当て装置,2はWindowsCE等のOSである。通信ポート割当て装置1は,図8に示すクライアントドライバ22内に設けられる。レジストリ3は,例えば,デバイス名,デバイス名と対応するデバイスドライバ名,プレフィックス名,インデックス名という要素からなるレジストリ情報を備えている。   FIG. 1 is a diagram showing a configuration of a communication port assignment apparatus according to the present invention. In FIG. 1, 1 is a communication port assignment device, and 2 is an OS such as Windows CE. The communication port assignment device 1 is provided in the client driver 22 shown in FIG. The registry 3 includes, for example, registry information including elements such as a device name, a device driver name corresponding to the device name, a prefix name, and an index name.

通信ポート割当て装置1内において,11はプラグイン処理部,12はプレフィックス・インデックス割当て処理部,121は空きインデックス検索処理部,13はインデックス数比較処理部,14は記憶装置による蓄積部,15はプラグアウト処理部,16はプレフィックス・インデックス解放処理部である。蓄積部14内において,141は空きインデックス格納テーブル,142は割当てインデックス格納テーブル,143は比較結果格納テーブルである。   In the communication port allocation device 1, 11 is a plug-in processing unit, 12 is a prefix / index allocation processing unit, 121 is an empty index search processing unit, 13 is an index number comparison processing unit, 14 is a storage unit by a storage device, and 15 is A plug-out processing unit 16 is a prefix / index release processing unit. In the storage unit 14, 141 is an empty index storage table, 142 is an assigned index storage table, and 143 is a comparison result storage table.

プラグイン処理部11は,デバイス20がWindowsCE等のOS2を搭載した装置(例えばPDA等)に挿入されたときに,OS2からプラグイン通知を受信し,その後空きインデックス検索処理部121にプラグインイベントを通知する。   The plug-in processing unit 11 receives a plug-in notification from the OS 2 when the device 20 is inserted into a device (for example, a PDA) equipped with the OS 2 such as Windows CE, and then sends a plug-in event to the free index search processing unit 121. To be notified.

空きインデックス検索処理部121は,レジストリ3に登録されている特定プレフィックスのインデックスを検索し,空きインデックスを抽出する。その結果を空きインデックス格納テーブル141に格納する。また,プレフィックス・インデックス割当て処理部12は,比較結果格納テーブル143の情報をもとにレジストリ3へのプレフィックスおよびインデックスの値の書き込みを行う。   The free index search processing unit 121 searches a specific prefix index registered in the registry 3 and extracts a free index. The result is stored in the free index storage table 141. Further, the prefix / index allocation processing unit 12 writes the prefix and index values into the registry 3 based on the information in the comparison result storage table 143.

インデックス数比較処理部13は,割当てインデックス格納テーブル142と空きインデックス格納テーブル141の内容を比較し,その結果を比較結果格納テーブル143に格納する。この比較結果の比較結果格納テーブル143への格納については後述する。   The index number comparison processing unit 13 compares the contents of the assigned index storage table 142 and the free index storage table 141 and stores the result in the comparison result storage table 143. The storage of the comparison result in the comparison result storage table 143 will be described later.

割当てインデックス格納テーブル142は,図2のように,各プレフィックス毎の,インデックス数(Index_Num),インデックス数が複数の場合の複数プレフィックス割当て許可または不許可を示すフラグ(Across:0(不許可)/1(許可)),割当てるプレフィックスの優先順位(Priority:小さい値ほど優先順位が高い)とが格納されたテーブルである。   As shown in FIG. 2, the allocation index storage table 142 includes, for each prefix, the number of indexes (Index_Num) and a flag (Across: 0 (non-permitted) / 1 (permitted)) and the priority order (Priority: the smaller the value, the higher the priority order) of the prefix to be assigned is stored.

例えば,図2(A)に示す割当てインデックス格納テーブル142の場合,「COM」というプレフィックスのインデックス数は2で,Across値が「0」であることから,インデックスが複数の場合に複数プレフィックスは割当てできず,Priority値が「1」であることから一番優先順位が高いことがわかる。   For example, in the case of the allocation index storage table 142 shown in FIG. 2A, since the number of indexes of the prefix “COM” is 2 and the Across value is “0”, multiple prefixes are allocated when there are multiple indexes. Since the priority value is “1”, it can be seen that the highest priority is given.

また,「FJF」というプレフィックスのインデックス数は2で,Across値が「1」であることから,インデックスが複数の場合に複数プレフィックスの割当てができ,Priority値が「2」であることから2番目に優先順位が高いことがわかる。   In addition, since the number of indexes of the prefix “FJF” is 2 and the Across value is “1”, a plurality of prefixes can be assigned when there are a plurality of indexes, and the second value because the Priority value is “2”. It can be seen that the priority is high.

また,「FJH」というプレフィックスのインデックス数は2で,Across値が「1」であることから,インデックスが複数の場合に複数プレフィックスの割当てができ,Priority値が「3」であることから一番優先順位が低いことがわかる。   Further, since the number of indexes of the prefix “FJH” is 2 and the Across value is “1”, multiple prefixes can be assigned when there are a plurality of indexes, and the priority value is “3”. It can be seen that the priority is low.

空きインデックス格納テーブル141は,図3のように,各プレフィックスに対する1〜0までの計10個のインデックスのうち,空きインデックス(割当て可能なインデックス)がどれであるかを示したテーブルである。図3に示す空きインデックス格納テーブル141において,「0」は占有されているインデックスを,「1」は空きインデックスを示す。   As shown in FIG. 3, the free index storage table 141 is a table showing which free index (assignable index) is out of a total of 10 indexes from 1 to 0 for each prefix. In the free index storage table 141 shown in FIG. 3, “0” indicates an occupied index, and “1” indicates a free index.

比較結果格納テーブル143は,割当てインデックス格納テーブル142と空きインデックス格納テーブル141の内容との比較結果が格納されたテーブルである。比較結果格納テーブルには,図4のように,各プレフィックスに対する1〜0までの計10個のインデックスの占有状態(0:占有/1:空き)が示される。   The comparison result storage table 143 is a table in which a comparison result between the allocation index storage table 142 and the contents of the free index storage table 141 is stored. In the comparison result storage table, as shown in FIG. 4, the occupied state (0: occupied / 1: free) of a total of 10 indexes from 1 to 0 for each prefix is shown.

プラグアウト処理部15は,デバイス20(USB/PCカード等)がWindowsCE等のOS2が格納された装置(PDA等)から抜かれたときに,OS2からプラグアウト通知を受信し,その後プレフィックス・インデックス解放処理部16にプラグアウトイベントを通知する。   The plug-out processing unit 15 receives a plug-out notification from the OS 2 when the device 20 (USB / PC card or the like) is removed from a device (PDA or the like) storing the OS 2 such as Windows CE, and then releases the prefix / index. The plug-in event is notified to the processing unit 16.

プレフィックス・インデックス解放処理部16は,比較結果格納テーブル143の情報から,割当てられているプレフィックスとインデックスの1つのペアを取得し,取得されたプレフィックスとインデックスとをレジストリ3から削除する。   The prefix / index release processing unit 16 acquires one assigned prefix / index pair from the information in the comparison result storage table 143, and deletes the acquired prefix / index from the registry 3.

図5は本発明の処理フローの概要を示す図である。まず,デバイス20のプラグイン処理を行う(ステップS1)。例えば,PCカード,USB等のデバイス20がWindowsCE等のOS2が搭載された装置(例えばPDA等)に挿入されると,OS2は下位ドライバ21でデバイス20を検出し,デバイス20から必要な情報(例えばデバイスのID)を取得する。   FIG. 5 is a diagram showing an outline of the processing flow of the present invention. First, plug-in processing of the device 20 is performed (step S1). For example, when a device 20 such as a PC card or USB is inserted into a device (for example, a PDA) equipped with OS2 such as Windows CE, the OS2 detects the device 20 with the lower driver 21, and the necessary information (from the device 20) For example, the device ID) is acquired.

OS2の下位ドライバ21は,デバイス20のIDを検索条件としてレジストリ情報を参照し,挿入されたデバイス20に対応するドライバ名(クライアントドライバ22)を呼び出す。具体的には,クライアントドライバ22に含まれる本発明の通信ポート割当て装置1を呼び出す。次に,通信ポートを柔軟に割当てる。すなわち,通信ポート割当て装置1が選択的に単一または複数のプレフィックスとインデックスを割当て(ステップS2),デバイスを使用状態にする(ステップS3)。   The lower-level driver 21 of the OS 2 refers to the registry information using the ID of the device 20 as a search condition, and calls the driver name (client driver 22) corresponding to the inserted device 20. Specifically, the communication port assignment device 1 of the present invention included in the client driver 22 is called. Next, communication ports are allocated flexibly. That is, the communication port assignment apparatus 1 selectively assigns a single or plural prefixes and indexes (step S2), and puts the device into a use state (step S3).

また,OS2の下位ドライバ21がデバイス20のプラグアウトを検出すると(ステップS4),通信ポート割当て装置1が,割当てた通信ポートを解放する(ステップS5)。すなわち,レジストリ3から,割当てられているプレフィックスとインデックスのペアを削除する。   When the lower driver 21 of the OS 2 detects the plug-out of the device 20 (step S4), the communication port assignment device 1 releases the assigned communication port (step S5). That is, the assigned prefix / index pair is deleted from the registry 3.

図6は,本発明の通信ポート割当て処理フローの一例を示す図である。まず,OS2からデバイス20がプラグインされたことを示す通知をプラグイン処理部11で受信する(ステップS11)。プラグイン処理部11は空きインデックス検索処理部121を起動する(ステップS12)。空きインデックス検索処理部121は,全プレフィックスを抽出済かを判断する(ステップS13)。全プレフィックスを抽出済の場合,ステップS19へ進む。   FIG. 6 is a diagram showing an example of the communication port assignment processing flow of the present invention. First, the plug-in processing unit 11 receives a notification indicating that the device 20 has been plugged in from the OS 2 (step S11). The plug-in processing unit 11 activates the empty index search processing unit 121 (step S12). The free index search processing unit 121 determines whether all prefixes have been extracted (step S13). If all prefixes have been extracted, the process proceeds to step S19.

抽出されていないプレフィックスがある場合には,空きインデックス検索処理部121は,割当てインデックス格納テーブル142のプレフィックス欄からプレフィックスを抽出し(ステップS14),レジストリ3から該当するプレフィックスを検索する(ステップS15)。次に,プレフィックスを発見したかを判断し(ステップS16),プレフィックスを発見した場合にはインデックスの値を抽出し,空きインデックス検索処理部121は,空きインデックス格納テーブル141に結果を書き込む(ステップS17)。   When there is a prefix that has not been extracted, the free index search processing unit 121 extracts a prefix from the prefix column of the assigned index storage table 142 (step S14), and searches for the corresponding prefix from the registry 3 (step S15). . Next, it is determined whether a prefix has been found (step S16). If a prefix is found, the index value is extracted, and the free index search processing unit 121 writes the result in the free index storage table 141 (step S17). ).

空きインデックス格納テーブル141には,例えば図3に示すように,各プレフィックスに対する1〜0までの計10個のインデックスのうち,空きインデックス(割当て可能なインデックス)がどれであるかが書き込まれる。   In the free index storage table 141, for example, as shown in FIG. 3, which of 10 indexes from 1 to 0 for each prefix is a free index (index that can be allocated) is written.

図3の例の場合,例えば「COM」というプレフィックスの空きインデックスはインデックス番号=0のインデックスであり,「FJF」というプレフィックスの空きインデックスはインデックス番号が4〜0の7個のインデックスであり,「FJH」というプレフィックスについては,インデックス番号が1〜0までの10個のインデックスが空いていることがわかる。   In the case of the example of FIG. 3, for example, a free index with a prefix “COM” is an index with index number = 0, and a free index with a prefix “FJF” is 7 indexes with index numbers 4 to 0. For the prefix “FJH”, it can be seen that ten indexes with index numbers 1 to 0 are empty.

次に,全レジストリ3を検索済かを判断し(ステップS18),全レジストリ3を検索済の場合にはステップS13に戻り,検索されていないレジストリ3がある場合にはステップS15に戻る。   Next, it is determined whether all the registries 3 have been searched (step S18). If all the registries 3 have been searched, the process returns to step S13, and if any registries 3 have not been searched, the process returns to step S15.

ステップS13において全プレフィックスを抽出済の場合には,インデックス数比較処理部13が起動し,割当てインデックス格納テーブル142を取得する(ステップS19)。そして,未取得かつPriority値が小さいプレフィックスを取得し,該当プレフィックスのAcross値とIndex_Num値を取得する(ステップS20)。   When all the prefixes have been extracted in step S13, the index number comparison processing unit 13 is activated and acquires the assigned index storage table 142 (step S19). Then, a prefix that has not been acquired and that has a small Priority value is acquired, and the Across value and Index_Num value of the prefix are acquired (step S20).

例えば,割当てインデックス格納テーブル142が,図2(A)に示すような状態であったとすると,Priority値が最も小さい「COM」というプレフィックスが取得され,そのAcross値「0」とインデックス_Num値「2」が取得される。   For example, if the allocation index storage table 142 is in the state as shown in FIG. 2A, the prefix “COM” having the smallest Priority value is acquired, and the Across value “0” and the index_Num value “2” are acquired. Is acquired.

次に,空きインデックス格納テーブル141から該当プレフィックスの空きインデックス数を取得し,Index_Num値と空きインデックス数とを比較する(ステップS21)。Index_Num値より空きインデックス数が大きいかを判断し(ステップS22),Index_Num値より空きインデックス数が大きくない場合には,Across値が「1」(許可)かを判断する(ステップS23)。   Next, the number of free indexes of the corresponding prefix is acquired from the free index storage table 141, and the Index_Num value is compared with the number of free indexes (step S21). It is determined whether the number of free indexes is larger than the Index_Num value (step S22). If the number of free indexes is not larger than the Index_Num value, it is determined whether the Across value is “1” (permitted) (step S23).

例えば,図2(A)に示す割当てインデックス格納テーブル142から取得された「COM」のIndex_Num値「2」は,図3に示す「COM」の空きインデックス数「1」より大きいため,Across値が「1」(許可)かが判断される。   For example, the Index_Num value “2” of “COM” acquired from the assigned index storage table 142 shown in FIG. 2A is larger than the number of free indexes “1” of “COM” shown in FIG. It is determined whether it is “1” (permitted).

Across値が「1」(許可)でない場合には,全プレフィックスを取得済かを判断し(ステップS24),取得されていないプレフィックスがある場合にはステップS20に戻り,全プレフィックスを取得済の場合には,割当て不可の結果(0:占有)を比較結果格納テーブル143に書き込む(ステップS25)。   If the Across value is not “1” (permitted), it is determined whether all prefixes have been acquired (step S24). If there is a prefix that has not been acquired, the process returns to step S20, and all prefixes have been acquired. In this case, a result that cannot be assigned (0: occupied) is written in the comparison result storage table 143 (step S25).

例えば,図2(A)に示す割当てインデックス格納テーブル142では,「COM」のAcross値は「0」であるため,ステップS24へ進み,検索されていないプレフィックス(「FJF」と「FJH」)があることからステップS20に戻り,「COM」の次にPriority値が小さい「FJF」というプレフィックスが取得される。   For example, in the assignment index storage table 142 shown in FIG. 2A, since the “Across” value of “COM” is “0”, the process proceeds to step S24, and unsearched prefixes (“FJF” and “FJH”) are found. Therefore, the process returns to step S20, and the prefix “FJF” having the smallest Priority value after “COM” is acquired.

ステップS22において,Index_Num値より空きインデックス数が大きい場合には,比較結果格納テーブル143の該当プレフィックスの空きインデックス番号が小さい順にIndex_Num値分「1」を代入し,その他は「0」を代入する(ステップS26)。   In step S22, if the number of empty indexes is larger than the Index_Num value, “1” is substituted for the Index_Num value in ascending order of the free index number of the corresponding prefix in the comparison result storage table 143, and “0” is substituted otherwise ( Step S26).

例えば,図3の空きインデックス格納テーブル141に示すように,「FJF」というプレフィックスの空きインデックス数は,インデックス番号が4〜0までの「7」であり,図2(A)に示す割当てインデックス格納テーブル142において,「FJF」というプレフィックスのIndex_Num値は「2」であることから,Index_Num値より空きインデックス数が大きいと判断され,ステップS26へ進む。   For example, as shown in the free index storage table 141 in FIG. 3, the number of free indexes with the prefix “FJF” is “7” with index numbers 4 to 0, and the assigned index storage shown in FIG. In Table 142, since the Index_Num value of the prefix “FJF” is “2”, it is determined that the number of empty indexes is larger than the Index_Num value, and the process proceeds to Step S26.

そして,例えば,「FJF」というプレフィックスについての空きインデックスのうち,インデックス番号が小さい順に,比較結果格納テーブル143において,インデックス番号が4のインデックスとインデックス番号が5のインデックスに「1」が代入され,その他のインデックスには「0」が代入される。上記処理の結果,比較結果格納テーブル143には,例えば図4(A)に示すような書き込みがなされる。   For example, among the free indexes for the prefix “FJF”, “1” is assigned to the index number 4 and the index number 5 in the comparison result storage table 143 in ascending order of the index number, “0” is assigned to other indexes. As a result of the above processing, the comparison result storage table 143 is written as shown in FIG.

次に,プレフィックス・インデックス割当て処理部12が比較結果格納テーブル143の「1」に該当するプレフィックスとインデックスをデバイス20に該当するレジストリ3に書き込む(ステップS27)。   Next, the prefix / index allocation processing unit 12 writes the prefix and index corresponding to “1” in the comparison result storage table 143 to the registry 3 corresponding to the device 20 (step S27).

ステップS23においてAcross値が「1」(許可)の場合には,比較結果格納テーブル143の該当プレフィックスの空きインデックス番号が小さい順に(Index_Num値−空きインデックス数)の個数分「1」を代入して(ステップS28),ステップS29に進む。   If the Across value is “1” (permitted) in step S23, “1” is substituted for the number of (Index_Num value−number of free indexes) in ascending order of the free index number of the corresponding prefix in the comparison result storage table 143. (Step S28), the process proceeds to Step S29.

例えば,上記ステップS19において図2(B)に示す割当てインデックス格納テーブル142が取得されたとすると,ステップS20で取得される「COM」というプレフィックスのAcross値は「1」(許可)である。したがって,ステップS28において,比較結果格納テーブル143には「COM」のインデックス番号=0のインデックスに対して,(Index_Num値−空きインデックス数)=2−1=1個分,「1」が代入される。   For example, if the allocation index storage table 142 shown in FIG. 2B is acquired in step S19, the Across value of the prefix “COM” acquired in step S20 is “1” (permitted). Accordingly, in step S 28, “1” is assigned to (Index_Num value−number of empty indexes) = 2-1 = 1 for the index with index number = 0 of “COM” in the comparison result storage table 143. The

そして,(Index_Num値−空きインデックス数)の値をIndex_Num値に代入して(ステップS29),ステップS20に戻る。上記の例では,(Index_Num値−空きインデックス数)=2−1=1がIndex_Num値に代入される。   Then, the value of (Index_Num value−number of empty indexes) is substituted into the Index_Num value (step S29), and the process returns to step S20. In the above example, (Index_Num value−number of empty indexes) = 2-1 = 1 is substituted into the Index_Num value.

ステップS20に戻った後に取得されるプレフィックス「FJF」の空きインデックス数は,例えば図3の空きインデックス格納テーブル141に示すように「7」である。また,上記ステップS29で代入されたIndex_Num値=1であることから,Index_Num値より空きインデックス数が大きい。したがって,ステップS26に進み,比較結果格納テーブル143において,「FJF」というプレフィックスについての空きインデックスのうち,インデックス番号が最も小さいインデックス番号=4のインデックスに対して「1」を代入する。上記処理の結果,比較結果格納テーブル143には,例えば図4(B)に示すような書き込みがなされる。   The number of free indexes of the prefix “FJF” acquired after returning to step S20 is “7”, for example, as shown in the free index storage table 141 of FIG. In addition, since Index_Num value = 1 assigned in step S29, the number of empty indexes is larger than the Index_Num value. Accordingly, the process proceeds to step S26, and “1” is assigned to the index of index number = 4 having the smallest index number among the free indexes for the prefix “FJF” in the comparison result storage table 143. As a result of the above processing, the comparison result storage table 143 is written as shown in FIG. 4B, for example.

図7は,本発明の通信ポート解放処理フローの一例を示す図である。まず,OS2からデバイス20がプラグアウトされたことを示す通知をプラグアウト処理部15で受信する(ステップS31)。   FIG. 7 is a diagram showing an example of the communication port release processing flow of the present invention. First, the plug-out processing unit 15 receives a notification indicating that the device 20 has been plugged out from the OS 2 (step S31).

プラグアウト処理部15はプレフィックス・インデックス解放処理部16を起動する(ステップS32)。プレフィックス・インデックス解放処理部16は,比較結果格納テーブル143から割当てられているプレフィックスとインデックスの1ペアを取得する(ステップS33)。   The plug-out processing unit 15 activates the prefix / index release processing unit 16 (step S32). The prefix / index release processing unit 16 acquires a pair of prefix and index assigned from the comparison result storage table 143 (step S33).

プレフィックスとインデックスの1ペアを取得できたかを判断し(ステップS34),プレフィックスとインデックスの1ペアを取得できない場合には処理を終了し,プレフィックスとインデックスの1ペアを取得できた場合には,プレフィックス・インデックス解放処理部16はレジストリ3から該当するプレフィックスとインデックスを検索する(ステップS35)。   It is determined whether one prefix / index pair has been acquired (step S34). If one prefix / index pair cannot be acquired, the process ends. If one prefix / index pair has been acquired, the prefix The index release processing unit 16 searches for a corresponding prefix and index from the registry 3 (step S35).

該当のプレフィックスとインデックスを発見したかを判断し(ステップS36),該当のプレフィックスとインデックスを発見しない場合にはステップS33に戻り,該当のプレフィックスとインデックスを発見した場合には,プレフィックス・インデックス解放処理部16は,レジストリ3からプレフィックスとインデックスの値を削除して(ステップS37),ステップS33に戻る。   It is determined whether or not the corresponding prefix and index are found (step S36). If no corresponding prefix and index are found, the process returns to step S33. If the corresponding prefix and index are found, prefix / index release processing is performed. The unit 16 deletes the prefix and index values from the registry 3 (step S37), and returns to step S33.

以上の実施の形態では,オペレーティングシステムとしてWindowsCEを搭載した装置の例を説明したが,本発明は,WindowsCEに限らず,同様なプレフィックスとインデックスの割当てを行うデバイスドライバを扱うOSであれば,同様に実施することが可能である。以上から把握できるように,本発明の実施の形態の特徴を述べると,以下のとおりである。   In the above embodiment, an example of a device equipped with Windows CE as an operating system has been described. However, the present invention is not limited to Windows CE, and is similar to any OS that handles device drivers that perform similar prefix and index assignment. Can be implemented. As can be understood from the above, the features of the embodiment of the present invention are described as follows.

(付記1) 所定のオペレーティングシステムを搭載するコンピュータがデバイスにアクセスするためのデバイスドライバにおいてプレフィックスとインデックスとにより特定される通信ポートを割当てる通信ポート割当て装置であって,
デバイスが前記コンピュータに挿入されたときに,前記オペレーティングシステムからプラグイン通知を受信し,レジストリに登録されている特定プレフィックスごとのインデックスを検索して空きインデックスを抽出する手段と,
あらかじめ設定されたインデックス数が複数の場合の複数プレフィックス割当て許可または不許可を示す条件のもとで,前記抽出した空きインデックスの数と前記挿入されたデバイスに割当てるインデックスの数とを比較し,1または複数のプレフィックスにおける空きインデックスからインデックスを割当て,割当てたプレフィックスおよびインデックスの値を前記レジストリに書き込む手段とを備える
ことを特徴とする通信ポート割当て装置。
(Supplementary Note 1) A communication port assignment apparatus for assigning a communication port specified by a prefix and an index in a device driver for a computer having a predetermined operating system to access a device,
Means for receiving a plug-in notification from the operating system when a device is inserted into the computer, searching an index for each specific prefix registered in the registry, and extracting a free index;
The number of extracted free indexes is compared with the number of indexes allocated to the inserted device under a condition indicating whether or not to permit multiple prefix assignment when there are a plurality of preset indexes. Or a means for allocating an index from free indexes in a plurality of prefixes, and writing the allocated prefix and index values in the registry.

(付記2) 付記1に記載の通信ポート割当て装置において,さらに,
デバイスが前記コンピュータから抜かれたときに,前記オペレーティングシステムからプラグアウト通知を受信し,前記プラグイン時に割当てたプレフィックスとインデックスのペアを前記レジストリから削除する手段を備える
ことを特徴とする通信ポート割当て装置。
(Supplementary Note 2) In the communication port assignment device described in Supplementary Note 1,
A communication port allocation device comprising: means for receiving a plug-out notification from the operating system when a device is removed from the computer, and deleting a prefix and index pair allocated at the time of plug-in from the registry. .

(付記3) 所定のオペレーティングシステムを搭載するコンピュータがデバイスにアクセスするためのデバイスドライバにおいてプレフィックスとインデックスとにより特定される通信ポートを割当てる通信ポート割当て装置であって,
デバイスが前記コンピュータに挿入されたときに,前記オペレーティングシステムからプラグイン通知を受信するプラグイン処理手段と,
前記プラグイン処理手段からプラグインイベントを受信し,レジストリに登録されている特定プレフィックスごとのインデックスを検索して空きインデックスを抽出し,抽出結果を空きインデックス格納テーブルに格納する空きインデックス検索処理手段と,
プレフィックス毎の,インデックス数とインデックス数が複数の場合の複数プレフィックス割当て許可または不許可を示すフラグとが格納された割当てインデックス格納テーブルの内容と,前記空きインデックス格納テーブルの内容とを比較して,比較結果の割当て可能なインデックス情報を比較結果格納テーブルに格納するインデックス数比較処理手段と,
前記比較結果格納テーブルの情報をもとに,前記レジストリへプレフィックスおよびインデックスの値の書き込みを行うプレフィックス・インデックス割当て処理手段とを備える
ことを特徴とする通信ポート割当て装置。
(Supplementary Note 3) A communication port assigning device for assigning a communication port specified by a prefix and an index in a device driver for a computer having a predetermined operating system to access a device,
Plug-in processing means for receiving a plug-in notification from the operating system when a device is inserted into the computer;
A free index search processing means for receiving a plug-in event from the plug-in processing means, searching for an index for each specific prefix registered in the registry, extracting a free index, and storing the extraction result in a free index storage table; ,
For each prefix, compare the contents of the assigned index storage table in which the number of indexes and the flag indicating whether or not to assign multiple prefixes when there are a plurality of indexes are stored with the contents of the empty index storage table, Index number comparison processing means for storing index information to which comparison results can be assigned in a comparison result storage table;
A communication port allocation apparatus comprising: prefix / index allocation processing means for writing prefix and index values to the registry based on information in the comparison result storage table.

(付記4) 付記3に記載の通信ポート割当て装置において,さらに,
デバイスが前記コンピュータから抜かれたときに,前記オペレーティングシステムからプラグアウト通知を受信するプラグアウト処理手段と,
前記プラグアウト処理手段からプラグアウトイベントを受信し,前記比較結果格納テーブルの情報から割当てられているプレフィックスとインデックスのペアを取得し,取得したプレフィックスとインデックスとをレジストリから削除するプレフィックス・インデックス解放処理手段とを備える
ことを特徴とする通信ポート割当て装置。
(Supplementary Note 4) In the communication port assignment device described in Supplementary Note 3,
Plug-out processing means for receiving a plug-out notification from the operating system when a device is disconnected from the computer;
Prefix / index release processing that receives a plug-out event from the plug-out processing means, acquires a prefix / index pair assigned from the information in the comparison result storage table, and deletes the acquired prefix / index from the registry A communication port assignment device.

(付記5) 所定のオペレーティングシステムを搭載するコンピュータがデバイスにアクセスするためのデバイスドライバにおいてプレフィックスとインデックスとにより特定される通信ポートを割当てる通信ポート割当て方法であって,
デバイスが前記コンピュータに挿入されたときに,前記オペレーティングシステムからプラグイン通知を受信し,レジストリに登録されている特定プレフィックスごとのインデックスを検索して空きインデックスを抽出するステップと,
あらかじめ設定されたインデックス数が複数の場合の複数プレフィックス割当て許可または不許可を示す条件のもとで,前記抽出した空きインデックスの数と前記挿入されたデバイスに割当てるインデックスの数とを比較し,1または複数のプレフィックスにおける空きインデックスからインデックスを割当て,割当てたプレフィックスおよびインデックスの値を前記レジストリに書き込むステップとを有する
ことを特徴とする通信ポート割当て方法。
(Supplementary Note 5) A communication port assignment method for assigning a communication port specified by a prefix and an index in a device driver for a computer having a predetermined operating system to access a device,
Receiving a plug-in notification from the operating system when a device is inserted into the computer, searching an index for each specific prefix registered in the registry, and extracting a free index;
The number of extracted free indexes is compared with the number of indexes allocated to the inserted device under a condition indicating whether or not to permit multiple prefix assignment when there are a plurality of preset indexes. Or assigning an index from free indexes in a plurality of prefixes, and writing the assigned prefix and index values to the registry.

(付記6) 付記5に記載の通信ポート割当て方法において,さらに,
デバイスが前記コンピュータから抜かれたときに,前記オペレーティングシステムからプラグアウト通知を受信し,前記プラグイン時に割当てたプレフィックスとインデックスのペアを前記レジストリから削除するステップとを有する
ことを特徴とする通信ポート割当て方法。
(Appendix 6) In the communication port assignment method described in Appendix 5,
Receiving a plug-out notification from the operating system when a device is removed from the computer, and deleting a prefix and index pair assigned at the time of plug-in from the registry. Method.

(付記7) 所定のオペレーティングシステムを搭載するコンピュータがデバイスにアクセスするためのデバイスドライバにおいてプレフィックスとインデックスとにより特定される通信ポートを割当てる通信ポート割当て方法を,コンピュータに実行させるための通信ポート割当てプログラムであって,
デバイスが前記コンピュータに挿入されたときに,前記オペレーティングシステムからプラグイン通知を受信するプラグイン処理ステップと,
前記プラグイン通知の受信により,レジストリに登録されている特定プレフィックスごとのインデックスを検索して空きインデックスを抽出し,抽出結果を空きインデックス格納テーブルに格納する空きインデックス検索処理ステップと,
プレフィックス毎の,インデックス数とインデックス数が複数の場合の複数プレフィックス割当て許可または不許可を示すフラグとが格納された割当てインデックス格納テーブルの内容と,前記空きインデックス格納テーブルの内容とを比較して,比較結果の割当て可能なインデックス情報を比較結果格納テーブルに格納するインデックス数比較処理ステップと,
前記比較結果格納テーブルの情報をもとに,前記レジストリへプレフィックスおよびインデックスの値の書き込みを行うプレフィックス・インデックス割当て処理ステップとを,
コンピュータに実行させるための通信ポート割当てプログラム。
(Supplementary note 7) Communication port assignment program for causing a computer to execute a communication port assignment method for assigning a communication port specified by a prefix and an index in a device driver for a computer having a predetermined operating system to access the device Because
A plug-in processing step of receiving a plug-in notification from the operating system when a device is inserted into the computer;
A free index search processing step of searching for an index for each specific prefix registered in the registry by receiving the plug-in notification, extracting a free index, and storing the extraction result in a free index storage table;
For each prefix, compare the contents of the assigned index storage table in which the number of indexes and the flag indicating whether or not to assign multiple prefixes when there are a plurality of indexes are stored with the contents of the empty index storage table, An index number comparison processing step for storing index information to which comparison results can be assigned in a comparison result storage table;
A prefix / index allocation processing step of writing prefix and index values to the registry based on the information of the comparison result storage table;
A communication port assignment program to be executed by a computer.

(付記8) 付記7に記載の通信ポート割当てプログラムにおいて,さらに,
デバイスが前記コンピュータから抜かれたときに,前記オペレーティングシステムからプラグアウト通知を受信するプラグアウト処理ステップと,
前記プラグアウト通知の受信により,前記比較結果格納テーブルの情報から割当てられているプレフィックスとインデックスのペアを取得し,取得したプレフィックスとインデックスとをレジストリから削除するプレフィックス・インデックス解放処理ステップとを,
コンピュータに実行させるためのプログラムを含む通信ポート割当てプログラム。
(Appendix 8) In the communication port assignment program described in Appendix 7,
A plug-out processing step of receiving a plug-out notification from the operating system when a device is disconnected from the computer;
A prefix / index release processing step of acquiring a prefix / index pair assigned from the information of the comparison result storage table by receiving the plug-out notification and deleting the acquired prefix / index from the registry;
A communication port assignment program including a program for causing a computer to execute.

本発明の通信ポート割当て装置の構成を示す図である。It is a figure which shows the structure of the communication port allocation apparatus of this invention. 割当てインデックス格納テーブルの一例を示す図である。It is a figure which shows an example of an allocation index storage table. 空きインデックス格納テーブルの一例を示す図である。It is a figure which shows an example of an empty index storage table. 比較結果格納テーブルの一例を示す図である。It is a figure which shows an example of a comparison result storage table. 本発明の処理フローの概要を示す図である。It is a figure which shows the outline | summary of the processing flow of this invention. 本発明の通信ポート割当て処理フローの一例を示す図である。It is a figure which shows an example of the communication port allocation processing flow of this invention. 本発明の通信ポート解放処理フローの一例を示す図である。It is a figure which shows an example of the communication port release process flow of this invention. WindowsCEのドライバスタックチャートを示す図である。It is a figure which shows the driver stack chart of WindowsCE.

符号の説明Explanation of symbols

1 通信ポート割当て装置
2 オペレーティングシステム(OS)
3 レジストリ
11 プラグイン処理部
12 プレフィックス・インデックス割当て処理部
13 インデックス数比較処理部
14 蓄積部
15 プラグアウト処理部
16 プレフィックス・インデックス解放処理部
20 デバイス
21 下位ドライバ
22 クライアントドライバ
23 TAPI
24 ダイヤルアップアプリケーション
25 一般的なアプリケーション
121 空きインデックス検索処理部
141 空きインデックス格納テーブル
142 割当てインデックス格納テーブル
143 比較結果格納テーブル
1 Communication port assignment device 2 Operating system (OS)
3 Registry 11 Plug-in Processing Unit 12 Prefix / Index Assignment Processing Unit 13 Index Number Comparison Processing Unit 14 Storage Unit 15 Plug-Out Processing Unit 16 Prefix / Index Release Processing Unit 20 Device 21 Lower Level Driver 22 Client Driver 23 TAPI
24 dial-up application 25 general application 121 free index search processing unit 141 free index storage table 142 allocation index storage table 143 comparison result storage table

Claims (5)

所定のオペレーティングシステムを搭載するコンピュータがデバイスにアクセスするためのデバイスドライバにおいてプレフィックスとインデックスとにより特定される通信ポートを割当てる通信ポート割当て装置であって,
デバイスが前記コンピュータに挿入されたときに,前記オペレーティングシステムからプラグイン通知を受信し,レジストリに登録されている特定プレフィックスごとのインデックスを検索して空きインデックスを抽出する手段と,
あらかじめ設定されたインデックス数が複数の場合の複数プレフィックス割当て許可または不許可を示す条件のもとで,前記抽出した空きインデックスの数と前記挿入されたデバイスに割当てるインデックスの数とを比較し,1または複数のプレフィックスにおける空きインデックスからインデックスを割当て,割当てたプレフィックスおよびインデックスの値を前記レジストリに書き込む手段とを備える
ことを特徴とする通信ポート割当て装置。
A communication port assignment device for assigning a communication port specified by a prefix and an index in a device driver for a computer having a predetermined operating system to access a device,
Means for receiving a plug-in notification from the operating system when a device is inserted into the computer, searching an index for each specific prefix registered in the registry, and extracting a free index;
The number of extracted free indexes is compared with the number of indexes allocated to the inserted device under a condition indicating whether or not to permit multiple prefix assignment when there are a plurality of preset indexes. Or a means for allocating an index from free indexes in a plurality of prefixes, and writing the allocated prefix and index values in the registry.
請求項1に記載の通信ポート割当て装置において,さらに,
デバイスが前記コンピュータから抜かれたときに,前記オペレーティングシステムからプラグアウト通知を受信し,前記プラグイン時に割当てたプレフィックスとインデックスのペアを前記レジストリから削除する手段を備える
ことを特徴とする通信ポート割当て装置。
The communication port assignment device according to claim 1, further comprising:
A communication port allocation device comprising: means for receiving a plug-out notification from the operating system when a device is removed from the computer, and deleting a prefix and index pair allocated at the time of plug-in from the registry. .
所定のオペレーティングシステムを搭載するコンピュータがデバイスにアクセスするためのデバイスドライバにおいてプレフィックスとインデックスとにより特定される通信ポートを割当てる通信ポート割当て方法であって,
デバイスが前記コンピュータに挿入されたときに,前記オペレーティングシステムからプラグイン通知を受信し,レジストリに登録されている特定プレフィックスごとのインデックスを検索して空きインデックスを抽出するステップと,
あらかじめ設定されたインデックス数が複数の場合の複数プレフィックス割当て許可または不許可を示す条件のもとで,前記抽出した空きインデックスの数と前記挿入されたデバイスに割当てるインデックスの数とを比較し,1または複数のプレフィックスにおける空きインデックスからインデックスを割当て,割当てたプレフィックスおよびインデックスの値を前記レジストリに書き込むステップとを有する
ことを特徴とする通信ポート割当て方法。
A communication port assigning method for assigning a communication port specified by a prefix and an index in a device driver for a computer having a predetermined operating system to access a device,
Receiving a plug-in notification from the operating system when a device is inserted into the computer, searching an index for each specific prefix registered in the registry, and extracting a free index;
The number of extracted free indexes is compared with the number of indexes assigned to the inserted device under a condition indicating whether or not to permit multiple prefix assignment when there are a plurality of preset indexes. Or assigning an index from free indexes in a plurality of prefixes, and writing the assigned prefix and index values to the registry.
所定のオペレーティングシステムを搭載するコンピュータがデバイスにアクセスするためのデバイスドライバにおいてプレフィックスとインデックスとにより特定される通信ポートを割当てる通信ポート割当て方法を,コンピュータに実行させるための通信ポート割当てプログラムであって,
デバイスが前記コンピュータに挿入されたときに,前記オペレーティングシステムからプラグイン通知を受信するプラグイン処理ステップと,
前記プラグイン通知の受信により,レジストリに登録されている特定プレフィックスごとのインデックスを検索して空きインデックスを抽出し,抽出結果を空きインデックス格納テーブルに格納する空きインデックス検索処理ステップと,
プレフィックス毎の,インデックス数とインデックス数が複数の場合の複数プレフィックス割当て許可または不許可を示すフラグとが格納された割当てインデックス格納テーブルの内容と,前記空きインデックス格納テーブルの内容とを比較して,比較結果の割当て可能なインデックス情報を比較結果格納テーブルに格納するインデックス数比較処理ステップと,
前記比較結果格納テーブルの情報をもとに,前記レジストリへプレフィックスおよびインデックスの値の書き込みを行うプレフィックス・インデックス割当て処理ステップとを,
コンピュータに実行させるための通信ポート割当てプログラム。
A communication port assignment program for causing a computer to execute a communication port assignment method for assigning a communication port specified by a prefix and an index in a device driver for a computer having a predetermined operating system to access the device,
A plug-in processing step of receiving a plug-in notification from the operating system when a device is inserted into the computer;
A free index search processing step of searching for an index for each specific prefix registered in the registry by receiving the plug-in notification, extracting a free index, and storing the extraction result in a free index storage table;
For each prefix, compare the contents of the assigned index storage table in which the number of indexes and the flag indicating whether or not to assign multiple prefixes when there are a plurality of indexes are stored with the contents of the empty index storage table, An index number comparison processing step for storing index information to which comparison results can be assigned in a comparison result storage table;
A prefix / index allocation processing step of writing prefix and index values to the registry based on the information of the comparison result storage table;
A communication port assignment program to be executed by a computer.
請求項4に記載の通信ポート割当てプログラムにおいて,さらに,
デバイスが前記コンピュータから抜かれたときに,前記オペレーティングシステムからプラグアウト通知を受信するプラグアウト処理ステップと,
前記プラグアウト通知の受信により,前記比較結果格納テーブルの情報から割当てられているプレフィックスとインデックスのペアを取得し,取得したプレフィックスとインデックスとをレジストリから削除するプレフィックス・インデックス解放処理ステップとを,
コンピュータに実行させるための通信ポート割当てプログラム。
The communication port assignment program according to claim 4, further comprising:
A plug-out processing step of receiving a plug-out notification from the operating system when a device is disconnected from the computer;
A prefix / index release processing step of acquiring a prefix / index pair assigned from the information in the comparison result storage table by receiving the plug-out notification and deleting the acquired prefix / index from the registry;
A communication port assignment program to be executed by a computer.
JP2003402489A 2003-12-02 2003-12-02 Communication port assignment device, communication port assignment method, and communication port assignment program Expired - Fee Related JP4295072B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003402489A JP4295072B2 (en) 2003-12-02 2003-12-02 Communication port assignment device, communication port assignment method, and communication port assignment program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003402489A JP4295072B2 (en) 2003-12-02 2003-12-02 Communication port assignment device, communication port assignment method, and communication port assignment program

Publications (2)

Publication Number Publication Date
JP2005165581A JP2005165581A (en) 2005-06-23
JP4295072B2 true JP4295072B2 (en) 2009-07-15

Family

ID=34726037

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003402489A Expired - Fee Related JP4295072B2 (en) 2003-12-02 2003-12-02 Communication port assignment device, communication port assignment method, and communication port assignment program

Country Status (1)

Country Link
JP (1) JP4295072B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8603239B2 (en) 2000-03-14 2013-12-10 James Hardie Technology Limited Fiber cement building materials with low density additives

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4337783B2 (en) 2005-06-30 2009-09-30 セイコーエプソン株式会社 Data transfer control device and electronic device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8603239B2 (en) 2000-03-14 2013-12-10 James Hardie Technology Limited Fiber cement building materials with low density additives

Also Published As

Publication number Publication date
JP2005165581A (en) 2005-06-23

Similar Documents

Publication Publication Date Title
US7483895B2 (en) Metadata management
US5931935A (en) File system primitive allowing reprocessing of I/O requests by multiple drivers in a layered driver I/O system
US7600216B2 (en) Method for executing software applications using a portable memory device
US20170308369A1 (en) Data processing method and device of preset application after upgrading
CN104699423B (en) The method and apparatus that drive is bound in linux system
CN107391038A (en) Method for writing data, flash memory and the storage medium of data storage type flash memory
US6687819B1 (en) System, apparatus and method for supporting multiple file systems in boot code
CN112115002A (en) Method and device for recovering file from damaged or non-trusted mechanical hard disk
CN106796644B (en) Access control system and access control method
JP4295072B2 (en) Communication port assignment device, communication port assignment method, and communication port assignment program
WO1999042936A1 (en) Software management system
US20160292416A1 (en) System and method for identifying a file path using tree data structure
CN111984459B (en) Apple ID account removing method and system
CN106844261A (en) The method and apparatus of hot plug is realized in recovery mode
CN108170372B (en) Data processing method and device based on cloud hard disk
KR20110023580A (en) The method and system for recovering data
KR101551731B1 (en) Electronic device for providing self-adapting services depending on the platform of the host equipment with which it is connected
CN113986471A (en) Method, device, equipment and storage medium for safely deleting mirror image file of virtual machine
EP1008045B1 (en) File system primitive allowing reprocessing of i/o requests by multiple drivers in a layered driver i/o system
CN1790263B (en) Mobile memory device and its icon changing method
CN102111446B (en) Device connection handling method, combination equipment and host equipment
CN105988866B (en) Information processing unit and its control method
KR100662389B1 (en) Method for managing storage information, and apparatus for the same
CN113973055B (en) Network equipment configuration method and system based on local USB flash disk
US9069789B2 (en) Apparatus and method for managing metadata in portable terminal

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060627

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20090407

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090409

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120417

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4295072

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120417

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130417

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140417

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees