JPH11296375A - デバイスドライバプログラムの自動選択方法 - Google Patents

デバイスドライバプログラムの自動選択方法

Info

Publication number
JPH11296375A
JPH11296375A JP10095695A JP9569598A JPH11296375A JP H11296375 A JPH11296375 A JP H11296375A JP 10095695 A JP10095695 A JP 10095695A JP 9569598 A JP9569598 A JP 9569598A JP H11296375 A JPH11296375 A JP H11296375A
Authority
JP
Japan
Prior art keywords
driver program
name
character string
file
device identifier
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
JP10095695A
Other languages
English (en)
Inventor
Yoichi Kikuchi
洋一 菊池
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.)
Hitachi Software Engineering Co Ltd
Hitachi Ltd
Original Assignee
Hitachi Software Engineering Co Ltd
Hitachi 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 Hitachi Software Engineering Co Ltd, Hitachi Ltd filed Critical Hitachi Software Engineering Co Ltd
Priority to JP10095695A priority Critical patent/JPH11296375A/ja
Publication of JPH11296375A publication Critical patent/JPH11296375A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

(57)【要約】 【課題】コンピュータに接続されたデバイスに対応する
ドライバプログラムを、自動的にファイルから選択して
メモリーへロードし、デバイスを初期化することを目的
とする。 【解決手段】ドライバプログラムが格納されたファイル
名称をデバイスハードウェアが持つデバイス識別子と同
じ文字列とすることで、OSがロードすべきドライバプ
ログラムのファイル名称を自動的に選択でき、同様に、
ドライバ内部のデバイス初期化ルーチン名称を、デバイ
ス識別子と同じ文字列とすることで、OSが呼び出すべ
きデバイス初期化ルーチン名称を自動的に選択できる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、コンピュータに接
続されたデバイスに対応するドライバプログラムを自動
的にファイルから選択してメモリーへロードし、デバイ
スを初期化するプラグアンドプレイを実現する方法に関
する。
【0002】
【従来の技術】システムファイルに組み込んだ全てのド
ライバプログラムを、システム起動時に無条件にメモリ
ーにロードする方法があったが、メモリー容量が限られ
ているシステムではメモリー不足になり問題があった。
【0003】次に、実際に接続されたデバイスに対応し
てメモリーにロードすべきドライバプログラムの選択を
ユーザが手動で行う方法があったが、ユーザの負担が大
きく、操作ミスなどで正しく動作しない問題があった。
【0004】次に、ドライバプログラムの選択を自動化
するために、例えば特開平4−92947号公報、及び
特開平6−332635号公報では、プリンタ装置とホ
ストコンピュータの間で制御情報を送受信し、適切なプ
リンタドライバの選択を行っている。しかし、これらの
発明はプリンタの制御情報を解析しているため、プリン
タ以外の装置にはそのまま適用できないし、新たな制御
情報を持つ装置を追加する場合には、自動選択のプログ
ラムも修正しなければならない。
【0005】
【発明が解決しようとする課題】オペレーティングシス
テム(以下、OSと呼ぶ)が、接続デバイスの制御情報
を入力してデバイスの種類を特定し、そのデバイスに対
応するドライバプログラムをロードしてデバイスを初期
化するOSの処理コーディングにおいて、ドライバプロ
グラムを格納したファイル名称とそのドライバ内部のデ
バイス初期化ルーチン名称をOSの処理コーディングに
記述すると、新しい種類のデバイス(及びそのデバイス
ドライバプログラム)を開発する度に、OSの処理を修
正しなければならない問題があった。
【0006】
【課題を解決するための手段】ドライバプログラムのフ
ァイル名称とデバイス初期化ルーチン名称を、デバイス
ハードウェアが持つデバイス識別子と同じ文字列とする
ことで、OSが実際に接続されたデバイスに対応してロ
ードすべきドライバプログラムのファイル名称と呼び出
すべきデバイス初期化ルーチン名称を自動的に選択可能
とする。
【0007】デバイスハードウェアには、その種類毎に
固有のデバイス識別子を持たせる。
【0008】あるデバイスに対応するドライバプログラ
ムは、そのデバイス識別子を文字列化した名称と同じ名
称のデバイス初期化ルーチンを持たせ、かつそのデバイ
ス識別子を文字列化した名称と同じ名称のファイルに格
納する。
【0009】OSは、システム起動時に、中央処理装置
(以下、CPUと呼ぶ)とデバイスを接続するバスの手
順に従って、バスに接続されているデバイスのデバイス
識別子を求め、その値を文字列に変換する。
【0010】OSは、変換した文字列と同じ名称のプロ
グラムファイルからドライバプログラムを読み込み、メ
モリーにロードする。
【0011】OSは、変換した文字列と同じ名称のデバ
イス初期化ルーチン名称をシンボルテーブル(プログラ
ムコンパイル時に生成するテーブルで、プログラム内部
のルーチン及び変数名称とメモリーアドレスとの対応
表)から検索し、求めたアドレスに制御を渡すことで、
デバイス初期化ルーチンを呼び出す。
【0012】OSは、バスに接続されているデバイスの
数だけ、以上のロード処理と初期化ルーチン呼び出し処
理を繰り返す。
【0013】
【発明の実施の形態】図1は、複数種類のデバイスを接
続できるコンピュータの構成例を示す。図1において、
1は中央処理装置(CPU)及び主記憶装置(メモリ
ー)、2は周辺装置であるデバイス、3はCPUとデバ
イスを接続するバス、4は各デバイスに対応するドライ
バプログラムの格納ファイルであり、そのファイル名称
はデバイス識別子と同じ文字列である。
【0014】図2は、ドライバプログラム内のルーチン
構造を示す。ドライバプログラムには、デバイス初期化
ルーチンを含み、そのルーチン名称はデバイス識別子と
同じ文字列である。
【0015】図3は、OSのシステム起動時の処理フロ
ーである。OSは、電源投入やリセットボタン押下など
によるシステム起動時に、CPUとデバイスを接続する
バスの手順に従ってバスに接続されているデバイスのデ
バイス識別子を求める。(例えば、PCIバスの場合
は、PCIコンフィグレーションサイクルを実行して、
デバイス識別子を求める。)(ステップ10) OSは、求めたデバイス識別子の値を文字列に変換す
る。(ステップ20) OSは、変換した文字列と同じ名称のプログラムファイ
ルから、ドライバプログラムをロードする。ここで、ド
ライバプログラムを複数のファイルに分けて格納したい
時には、複数ファイルを格納できるディレクトリ名称
(バインダー名称、フォルダー名称というシステムもあ
る)をデバイス識別子と同じ文字列にしてもよい。(ス
テップ30) OSは、変換した文字列と同じルーチン名称をシンボル
テーブルから検索し、求めたルーチンアドレスに制御を
渡すことで、デバイス初期化ルーチンを呼び出す。(ス
テップ40) OSは、バスに接続されているデバイスの数だけ、以上
のロード処理と初期化ルーチン呼び出し処理を繰り返
す。(ステップ50)
【0016】
【発明の効果】新しい種類のデバイス(及びそのデバイ
スドライバプログラム)を開発した場合でも、OSの処
理を修正することなく、接続デバイスに対応するドライ
バプログラムを自動的に選択ロードして、デバイスを初
期化することが出来る。
【図面の簡単な説明】
【図1】本発明の一実施例における、複数種類のデバイ
スを接続できるコンピュータの構成例を示す図である。
【図2】本発明の実施例におけるドライバプログラム内
のルーチン構造を示す図である。
【図3】本発明の実施例におけるOSのシステム起動時
の処理フロー図である。
【符号の説明】
1・・中央演算装置(CPU)及び主記憶装置(メモリ
ー) 2・・周辺装置であるデバイス 3・・CPUとデバイスを接続するバス 4・・各デバイスに対応するドライバプログラムの格納
ファイル

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】コンピュータに接続されたデバイスに対応
    するドライバプログラムを自動的にファイルから選択し
    てメモリーへロードし、デバイスを初期化するプラグア
    ンドプレイにおいて、 ドライバプログラムを格納するファイル名称を、デバイ
    スハードウェアが持つデバイス識別子と同じ文字列とし
    ておき、オペレーティングシステムがシステム起動時
    に、システムに接続されたデバイスが持つデバイス識別
    子をデバイス接続バスの手順を使って求めて、求めたデ
    バイス識別子を文字列化した名称と同じファイル名称に
    格納されているドライバプログラムをメモリーにロード
    し、 ドライバプログラム内部のデバイス初期化ルーチン名称
    を、デバイス識別子と同じ文字列としておき、オペレー
    ティングシステムがドライバプログラムロード後に、デ
    バイス識別子と同じ文字列のデバイス初期化ルーチン名
    称をプログラムコンパイル時に生成するテーブルで、プ
    ログラム内部のルーチン及び変数名称とメモリーアドレ
    スとの対応表であるシンボルテーブルから検索し、求め
    たアドレスに制御を渡すことで、デバイス初期化ルーチ
    ンを呼び出すデバイスドライバプログラムの自動選択方
    法。
JP10095695A 1998-04-08 1998-04-08 デバイスドライバプログラムの自動選択方法 Pending JPH11296375A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10095695A JPH11296375A (ja) 1998-04-08 1998-04-08 デバイスドライバプログラムの自動選択方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10095695A JPH11296375A (ja) 1998-04-08 1998-04-08 デバイスドライバプログラムの自動選択方法

Publications (1)

Publication Number Publication Date
JPH11296375A true JPH11296375A (ja) 1999-10-29

Family

ID=14144644

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10095695A Pending JPH11296375A (ja) 1998-04-08 1998-04-08 デバイスドライバプログラムの自動選択方法

Country Status (1)

Country Link
JP (1) JPH11296375A (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1102167A1 (de) * 1999-11-18 2001-05-23 Abb Research Ltd. Einrichtung und Betrieb einer Kommunikationsverbindung mit einem Steuergerät
JP2002268983A (ja) * 2000-12-21 2002-09-20 Microsoft Corp 周辺装置に関連する情報にアクセスする方法およびシステム
US7330967B1 (en) * 2004-12-03 2008-02-12 Symantec Operating Corporation System and method for injecting drivers and setup information into pre-created images for image-based provisioning
JP2013008246A (ja) * 2011-06-24 2013-01-10 Mitsubishi Electric Corp 中継機器及び入出力システム
US9875118B2 (en) 2014-04-30 2018-01-23 Huawei Technologies Co., Ltd. Method and embedded device for loading driver
US11223537B1 (en) 2016-08-17 2022-01-11 Veritas Technologies Llc Executing custom scripts from the host during disaster recovery

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1102167A1 (de) * 1999-11-18 2001-05-23 Abb Research Ltd. Einrichtung und Betrieb einer Kommunikationsverbindung mit einem Steuergerät
JP2002268983A (ja) * 2000-12-21 2002-09-20 Microsoft Corp 周辺装置に関連する情報にアクセスする方法およびシステム
US7330967B1 (en) * 2004-12-03 2008-02-12 Symantec Operating Corporation System and method for injecting drivers and setup information into pre-created images for image-based provisioning
JP2013008246A (ja) * 2011-06-24 2013-01-10 Mitsubishi Electric Corp 中継機器及び入出力システム
US9875118B2 (en) 2014-04-30 2018-01-23 Huawei Technologies Co., Ltd. Method and embedded device for loading driver
US11223537B1 (en) 2016-08-17 2022-01-11 Veritas Technologies Llc Executing custom scripts from the host during disaster recovery

Similar Documents

Publication Publication Date Title
KR101365904B1 (ko) 운영 체제를 개별 스테이지들에서 부팅하기 위한 컴퓨터 구현 방법, 개별 스테이지들에서 부팅되는 운영 체제를 포함하는 장치, 및 컴퓨터 판독가능 매체
US6317826B1 (en) Booting a computer system from a network
US6463530B1 (en) Method and apparatus for remotely booting a client computer from a network by emulating remote boot chips
US6539473B1 (en) Remotely controlled boot manager
US8407458B2 (en) Embedded device for implementing a boot process on a host
US7634689B2 (en) Boot performance optimization for hard drive for personal internet communicator
US6973447B1 (en) System apparatus and method for supporting multiple partitions including multiple systems in boot code
US6055631A (en) Method and apparatus for booting a portable computing device
US11748110B2 (en) Server with setup menu for the bios settings
CN114385251A (zh) 基于存储器的操作系统引导方法、系统、终端及存储介质
US7493612B2 (en) Embedded system and related method capable of automatically updating system software
US6763457B1 (en) Network station suitable for supplying indicated default values for boot parameters
JPH06332716A (ja) リモートブートシステム
US6728875B1 (en) Network station suitable for identifying and prioritizing network adapters
JPH11296375A (ja) デバイスドライバプログラムの自動選択方法
US20060047941A1 (en) Resource compatible system for EFI (extensible firmware interface) and BIOS (basic input/output system)
CN116009899B (zh) 操作系统的镜像制作方法、装置、电子设备及存储介质
CN108681468A (zh) 一种Linux系统磁盘设备绑定方法、装置及服务器
AU4106499A (en) Method and apparatus for determining the drive letter assignment of a CD-ROM drive during initial system setup of a computer system
US6779110B1 (en) Network station suitable for identifying and prioritizing boot information for locating an operating system kernel on a remote server
US6718462B1 (en) Sending a CD boot block to a client computer to gather client information and send it to a server in order to create an instance for client computer
KR100463838B1 (ko) 유아이에이 시스템을 위한 부트로더의 프로그램 다운로드및 엔에프에스 개발환경 지원방법
CN115314471A (zh) 一种mac地址分配方法及终端
CN112148375A (zh) 系统安装方法、服务器、客户端及存储介质
CN114356694A (zh) 一种基于门面对象的应用服务器日志收集方法及系统