JP2001519060A - コントローラレスモデム - Google Patents

コントローラレスモデム

Info

Publication number
JP2001519060A
JP2001519060A JP54195198A JP54195198A JP2001519060A JP 2001519060 A JP2001519060 A JP 2001519060A JP 54195198 A JP54195198 A JP 54195198A JP 54195198 A JP54195198 A JP 54195198A JP 2001519060 A JP2001519060 A JP 2001519060A
Authority
JP
Japan
Prior art keywords
modem
computer
processor
uart
device driver
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
JP54195198A
Other languages
English (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.)
Cirrus Logic Inc
Original Assignee
Cirrus Logic Inc
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 Cirrus Logic Inc filed Critical Cirrus Logic Inc
Publication of JP2001519060A publication Critical patent/JP2001519060A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/105Program control for peripheral devices where the programme performs an input/output emulation function

Abstract

(57)【要約】 モデムは、すべての処理がホストコンピュータにより扱われる仮想装置ドライバとして実現され、それにより、モデムのためのスタンドアロンプロセッサの必要を無くす。モデム仮想装置ドライバは、モデムが、ホスト上で実行しているその他の処理に関係なく適切な処理時間を得ることを保証する。ポートドライバをモデムコンタクトコードに直接組み合わせることにより、付随する制限を有するハードウェアUARTの必要が無くなる。

Description

【発明の詳細な説明】 コントローラレスモデム 発明の技術分野 本発明は、通信システムに関し、具体的には、別個のコントローラなしで動作 するモデムに関する。 関連出願の引用 本願は、1996年12月30日出願の「REAL TIME SERVICES IN BACKWARDLY COMPATI BLE OPERATING SYSTEMS」と題されたRichard P.Tarquiniの米国出願シリアル番 号第08/774,648号に関連している。本明細書において、上記出願全体を、参考と して援用する。 発明の背景 通信のためにモデムを使用するコンピュータは、当該分野において周知である 。以下にさらに説明されるように、このタイプの例示的なコンピュータが、図1 A〜図1Cに示され、このコンピュータと、通信のためのモデムとの使用が、図 1Dに示される。 コンピュータとモデムとの間の通信は、典型的には、汎用非同期送受信回路( UART)リンクを介して起こる。モデムは、コンピュータバスに直接接続する ためのバスコネクタにモデムカード(内部モデム)を挿入することによりコンピ ュータに接続されてもよく、モデムが外部にある場合には、モデムは、通信ポー トを介してコンピュータに接続されてもよい。従来技術の内部モデムおよび外部 モデムは典型的には、データプロトコルおよび転送を管理するためのボード上の プロセッサまたはコントローラを有する。従来技術においては、モデム機能が適 切な処理時間を得ることを保証するために、ボード上のプロセッサの存在が必要 である。専用プロセッサの必要性は、複数の同時タスクが実行され得るマルチタ スクコンピュータシステムにおいては、特に深刻である。それらのタスクが折 りよい形でプロセッサをモデムアプリケーションに手放すことできない場合、デ ータキャラクタが失われ、データ転送がアボートされ得る。 問題点 単にモデムタスクのための適切な処理電力を保証するためだけに、モデムを作 動させるための別個のプロセッサまたはコントローラを設ける場合、費用がかか り、モデムのホストとなるコンピュータ上に既に存在する能力に冗長能力を提供 することになる。ホストは、ホスト自体のプロセッサ、バス、およびシステムク ロックを有する。これらをモデムに冗長的に設けることは、追加のコストを与え る。モデムがホストプロセッサ能力を使用することができれば、この追加のコス トは不要になる。 それにもかかわらず、過去においては、モデムを介する信頼性のあるデータ通 信を保証するために必要とされる厳しいタイミング要求を考慮し、且つ、プロセ ッサ時間を得るために競合する他のプロセッサの存在を考慮すると、ホストプロ セスおよびバスを用いてモデム処理を行うことは、実行可能ではなかった。 発明の要旨 本発明は、ホストプロセッサのサービスを使用し、且つ、競合するプロセスが 存在する場合であっても信頼性の高いデータ通信を保証する、コントローラレス モデムを提供する。本発明によるコントローラレスモデムには、通信要求をサー ビスするためにホストプロセッサからの適切な処理時間が保証される。さらに、 本発明のコントローラレスモデムには、従来技術においてホストとモデムとの間 を調整するために必要であったある特定のハードウェアがない。 本発明は、それ自体のプロセッサを有するスタンドアロンモデムとしてではな く、ホストプロセッサ上で動作する仮想装置ドライバとしてモデム機能を提供す るための装置、方法、システム、およびコンピュータプログラムプロダクトに関 する。 本発明のさらに他の目的および利点は、以下の詳細な説明から当業者に容易に 明らかになる。この詳細な説明には、単に本発明を実行する企図されたベストモ ードの例示により、本発明の好適な実施形態だけが示され且つ説明される。本発 明には、他の異なる実施形態が可能であり、本発明の幾つかの詳細には、様々な 明らかな点において、本発明から逸脱することのない全ての改変が可能であるこ とが認識される。従って、図面および説明は、本質的に限定的なものではなく例 示的なものであると見なされるべきである。 図面の簡単な説明 図1Aは、本発明を実行する際に使用するのに適したコンピュータの図である 。 図1Bは、本発明を実行するのに適した例示的なバスアーキテクチャのブロッ ク図である。 図1Cは、プログラム情報およびデータを格納するのに適した例示的なメモリ 媒体の図である。 図1Dは、コンピュータからコンピュータへの通信のブロック図である。 図2は、従来技術のコンピュータ(DTE)とモデム(DCE)との間の例示 的なソフトウェアおよびハードウェアの関係を示すブロック図である。 図3は、本発明によるコントローラレスモデム(CLE)のブロック図である 。 図4は、Windows 95TMオペレーティングシステム環境における、本発明による コントローラレスモデムの実現を示すブロック図である。 図5は、コントローラレスモデムポートドライバVxDおよびそのハードウェ アインタフェースのソフトウェアレイヤを示す図である。 図6は、図2および図3に示されるモデムコードの例示的実現のブロック図で ある。 発明の詳細な説明 図1Aは、本発明を実行する際に使用するのに適したタイプの例示的なコンピ ュータの図である。図1Aは、プロセッサユニット100、ディスプレイユニッ ト120、キーボード130、およびマウス140などの入出力装置、を有する コンピュータシステムを示す。情報の格納および取り出しを容易にするために、 プロセッサユニット100には、1つ以上のディスクドライブ110Aおよび1 10Bが設けられ得る。これらのディスクドライブのうちの1つは、ハードドラ イブ(図示せず)か、または、フロッピードライブもしくはCD ROMドライ ブなどの、出し入れ可能な媒体を使用するドライブであり得る。 図1Bは、本発明を実行するのに適したタイプの例示的なコンピュータバスア ーキテクチャのブロック図である。バス150は、中央処理ユニット155を、 コンピュータプロセッサシステム100のその他のエレメントに接続する。イン タフェース145は、キーボード130およびマウス140、などの外部入出力 装置を接続する。ディスプレイインタフェース125はまた、バスに接続され、 コンピュータディスプレイ120を、中央処理ユニットおよびその他の装置にイ ンタフェースする。この例示的実施形態では、リードオンリメモリ(ROM)1 60およびランダムアクセスメモリ(RAM)165が、CPV155により使 用されるプログラムおよびデータ情報の格納を提供する。ディスクコントローラ 170は、情報が、光メモリ171、ハードドライブ172およびフロッピード ライブ173、などの大容量記憶装置から読み出されることと、この大容量記憶 装置に書き込まれることとを可能にする。通信ポート185は、外部装置とコン ピュータバス150との間の通信インタフェースを提供する。内部モデム180 は、コンピュータのバス150に直接接続する。外部モデムが、内部モデム18 0の代わりかまたは内部モデム180の補足の何れかとして使用される場合、通 信ポートは任意に、外部モデム190に接続するために使用され得る。 図1Cは、本発明による、プログラムおよびデータ情報を格納するのに適した 例示的なメモリ媒体の図である。示された実施例では、プログラムおよびデータ 情報は、フロッピーディスク195に格納される。 図1Dは、コンピュータからコンピュータへの通信のブロック図である。歴史 的には、モデムを駆動する端末またはコンピュータは、図1Dに示されるDTE 195などの、データ端末装置(DTE)と呼ばれる。データ端末装置は、デー タ通信装置(DCE)196とインターフェースし、DCE196は、通信リン クを介して、DCE196’と接続する。このDCEは、他端(196’)で、 このDCE自体の受信ホストDTE195’と接続する。DCEは、典型的には モデムであり、コンピュータがどのようにしてモデムとやりとりするかを示すイ ンタフェース仕様は、標準化されており、周知である。同様に、2つのDCEが 、データを送る際にやりとりする方法もまた、標準化されており、公知である。 通信は、直接接続により、または、ネットワークを介して、起こり得る。 図2は、従来技術のコンピュータ(DTE)とモデム(DCE)との間の例示 的なソフトウェアおよびハードウェアの関係を示すブロック図である。コンピュ ータ側では、通信を制御するために使用される端末ソフトウェア、などのアプリ ケーションプログラム200が、オペレーティングシステムレイヤ210を介し て動作する。オペレーティングシステムは、当該分野において公知のように、あ る特定のより低いレベルのサービスへの一貫したインタフェースを提供する。こ の場合、オペレーティングシステムレイヤ210は、汎用非同期送受信回路(U ART)220を制御するポートドライバ215をインタフェースする。コンピ ュータが、内部モデムであっても外部モデムであっても、モデムに接続されると 、コンピュータ220からのUARTは、モデム内のUART230に接続する 。そのようにして、データおよび命令は、コンピュータからモデムに送られる。 UARTからのデータおよび命令は、モデムコード235のブロックにより処理 される。モデムコードは、モデムの製造業者によって変わり得る。モデムコード は、モデム通信ラインとデータの送受を行うようモデムハードウェア240を制 御する。図2には明確には示されていないが、モデムは、内部モデムであっても 外部モデムであっても、典型的には、モデム自体のプロセッサ、バス、ならびに 、モデムコード235を実行するためおよびモデムに必要とされるその他の機能 を実行するためのサポートハードウェアを有する。 図3は、本発明によるコントローラレスモデム(CLM)のブロック図である 。アプリケーション300、オペレーティングシステムレイヤ310、およびハ ードウェア340は、図2のアプリケーションレイヤ200、オペレーティング システムレイヤ210、およびハードウェア240にほぼ対応する。ただし、図 3では、仮想装置ドライバ(VxD)を構成するCLMポートドライバ350が 、図2に示される対応する機能250に取って代わっている。UARTからUA RTへの通信の必要性が無くなることに注目されたい。CLMポートドライバ3 50はホスト上で動作し、従って、このドライバ自体の専用プロセッサバス構造 お よびその他のサポートハードウェアを必要としない。 CLMポートドライバは、オペレーティングシステムレイヤ310への、およ び、オペレーティングシステムレイヤ310からのデータおよび命令を管理する CLMポートドライバインタフェース315を含む。モデムコード335を、専 用プロセッサを有するモデムで使用されるモデムコード235と同じままにする ことが望ましい場合には、ソフトウェアUARTエミュレーションレイヤが、C LMポートドライバインタフェース315とモデムコード335との間に配置さ れ得、モデムコードが従来技術において行っていたようにUARTにやりとりし ているような形を与えるために使用され得る。言うまでもなく、単にCLMポー トドライバインタフェースを書き込んで、インターフェースの目的でUARTを エミュレートする必要なくモデムコード335を直接制御することが好ましい。 本発明を、最近のオペレーティングシステムを参照して説明する。この場合、 Windows 95TMオペレーティングシステムに関して説明する。Windows 95TMは、Mi crosoft Corporationの商標である。しかし、本発明が、その他のオペレーティ ングシステム全般へのアプリケーションを有することは明らかである。 Windows 95TM環境では、CLMポートドライバインタフェース315は、Wind ows 95TMのVCOMMレイヤと通信して、ハードウェアに固有のモデム機能を提 供する。アプリケーションによって行われるほとんどの通信APIコールは、V COMMコールに翻訳され、次いで、このVCOMMコールは、ポートドライバ コールに翻訳される。ポートドライバは、セットアップ情報を維持し、データ転 送のためにオペレーティングシステムレイヤを設定し且つこのオペレーティング システムレイヤとインタフェースし、フロー制御の局面を取り扱い、そして、ア プリケーションに事象などの通知を発行する。ポートドライバはまた、ボーレー ト、フロー制御、パリティ、データビット、ストップビット、などについての設 定を維持する。ポートドライバはまた、DTR、DSR、RLSD、およびリン グラインの状態を追跡する。バッファは側に置かれ、バッファに、および、バッ ファからデータを送ることにより、モデムとコンピュータとの間でデータを転送 するために使用される。 図4は、Windows 95TMオペレーティングシステム環境における、本発明によ るコントローラレスモデムの実現を示すブロック図である。ある特定のモジュー ルがWindows 95TM環境で動作する特権は、リングレベルにより決定される。リン グ0は、最も特権のあるレイヤであり、リング3は、より特権の少ないレイヤで ある。ある特定のウィンドウズアプリケーション400は、電話アプリケーショ ンプログラミングインタフェース(TAPI)405およびユニモデム410レ イヤを介して通信サービスにインタフェースする。Windows 3.Xにおいて見られ るような16ビットアプリケーション(415)は、WIN16レイヤ420お よびcom.drvインタフェース425を介してインタフェースする。ウィン ドウズ32ビットアプリケーション(430)は、直接インタフェースする。D OSアプリケーションのレガシーインタフェースは、本発明に示される処置とは 異なる処置を必要とし、本明細書では説明されない。アプリケーション400、 415および430の各々は、Windows 95TMオペレーティングシステムのVCO MM VxD(440)を介して通信サービスを獲得する。次いで、Windows 95T M オペレーティングシステムのVCOMM VxDは、図5に関して説明されるよ うな本発明に従うコントローラレスモデムポートドライバVxD450と直接イ ンタフェースする。次いで、コントローラレスモデムポートドライバVxDは、 ハードウェア460を駆動して、モデム通信を行う。尚、VCOMM VxDお よびコントローラレスモデムポートドライバVxD450は、リング0レベルで 動作する。 図5は、コントローラレスモデムポートドライバVxDおよびそのハードウェ アインタフェースのソフトウェアレイヤを示す図である。これらのソフトウェア レイヤは、ウィンドウズインタフェースレイヤ、任意のUARTレイヤ、モジュ ールレイヤ、モジュールI/Oレイヤ、割り込みレイヤ、および物理レイヤを含 む。ポートドライバインタフェース510およびUARTエミュレーション52 0については、上で図4に関して説明した。 プラグアンドプレイは、コンピュータユーザが、自分のシステムに新しいハー ドウェアを追加するのを容易にする。プラグアンドプレイは、装置コンフリクト を防ぎ、リソースを割り当て、そして、装置の列挙(enumeration)を自動的に 可能にする。コントローラレスモデムは、Windows 95TMとプラグアンドプレイ 互換性(plug and play compatible)のある、PCIベースのインタフェースを 与える。プラグアンドプレイフレームワークの設定管理はすべて、Windows 95TM オペレーティングシステムの設定マネージャにより制御される。 ウィンドウズインタフェースレイヤを有するリアルタイムサービス(RTS) モジュール512は、CLMポートドライバVxDが、その要求をサービスする ために適切な処理時間を得ることを保証するために使用される。RTSは、ホス トのサービスを使用して、タイマをセットし、CLMポートドライバVxDにタ イムアウト応答を提供する。RTS512は、上で参照した本願と同時係属中の 出願に、より詳細に説明されている。好適な実施形態では、リアルタイムサービ スは、プロセッサ割り当ての頻度と、割り当ての持続時間とについて制御可能な 方法で、VxDに処理時間を提供する。割り込みレイヤのためのタイミングを提 供するタイマ551は、独立して実現されてもよく、その機能のためにRTSの サービスを使用してもよい。ファックスモジュール530、V.42モジュール 531、およびVCEモジュール532は、モデムにより提供されるファックス V.42データ、および音声サービスの取り扱いのための、様々なプロトコルサ ービスを提供する。ACUモジュール533は幾分、モデムのためのオペレーテ ィングシステムとして機能する。DTEモジュール534は、中断(break)の 取り扱いおよび端末エスケープシーケンス処理を担う。 ファックスI/O540、V.42 I/O541、およびVCE I/O5 42は、データ送受信モジュール550への入出力インタフェースを提供する。 モデムタスク543は、DCE機能を実現する。割り込みレイヤのデータ送受信 モジュール550は、PCIバスI/Oラインドライバ560にデータを送り、 通信ラインを介して送信させる。ハードウェアおよびソフトウェアに割り当てら れる機能は、物理レイヤにおいてぼやけ(blur)始め、この機能は、実現に依存 し得る。1つの実現では、PCI I/Oラインドライバ560は、割り込みレ イヤのデータTX/RX550に、データが受け取られており処理を必要として いることを知らせる。次いで、データTX/RXモジュール550は、入ってく るデータがサービスされ得るように、割り込みを送る。出ていくデータは、典型 的には、ライン状態が許す場合には、送信のためにPCIのI/Oラインドライ バ 560にロードされ得る。 重要なのは、DCEハードウェアが、専用プロセッサまたはコントローラを必 要とせず、且つ、動作するためにUARTを必要としないことである。特定の実 現のハードウェアにおいて必要とされる制御の量に依存して、その制御は、ホス ト上で実行されてもよく、別個の専用プロセッサを必要とせずに比較的単純な有 限状態マシンとして実現されてもよい。 図6は、図2および図3に示されるモデムコードの例示的実現のブロック図で ある。簡略化の目的で、図6には、ファックスモードおよびV.42データモー ドしか示されていない。音声の取り扱いは、示されていない。図6に示される実 施例では、3つの別個の事象分類が、パラレルチャネルで処理される。ソフトウ ェアUARTレイヤ320から受け取られたDTE情報600は、示された実施 例では、ACUユニットにルーティングされる制御機能か、または、ファックス に関連する情報およびデータ送信情報およびデータか、のいずれかを含み得る。 ACUタイプの事象は、ACU I/Oモジュール610を介して、ACU処 理モジュールにルーティングされる。処理モジュールは、モデムの動作の制御を 取り扱う。入ってくるファックス情報は、ファックスモジュール640にルーテ ィングされ、示される実施例では、このファックスモジュール640において、 分類1のファックス機能が実現され、ファックスI/Oデータが、DCE695 に、および、DCE695から、ルーティングされる。DTEモジュール660 は、入ってくるデータをデータモジュール670にインタフェースし、このデー タモジュール670において、例えばLAPMまたはMNPを用いて、誤り検出 および訂正が行われる。さらに、V.42制御が、OCE I/Oモジュール6 80およびDCE送受信モジュール695に送られる前に実現される。 以前に開発されているモデムコードをコントローラレスモデム環境で実現する 場合には、コードは、無限ループおよび長いポーリング遅延を除去するように再 検討されるべきである。コードが遅延し得る時間量を制限するため、および、状 態検査なしで連続的に実行し得るループ数を制限するために、適切な場所に機構 が置かれ得る。データが例えばそのPCまたはラインから入力されるのを待つた めに長いループが存在する場合、必要なときにそのデータを「遅れを取り戻す」 ことを可能にするために、対応するコードモジュールに、特別なバックグラウン ド処理時間が与えられ得る。ファックスコードが、長時間の間コンピュータプロ セッサをロックアップ(locking up)するのを防ぐための努力がなされるべきで ある。以下は、実現の際に考慮されるべき項目のリストである。 1.ラインを設定するのが遅い可能性があるが、HDLCパケットは強制的に3 回まで送信され、従って、3〜5秒の待ち時間は許容可能である。これは、遅延 が6〜9秒を越えると問題になり得る。故障が起こる。 2.ウィンドウズの下では、TCFを逃すと、ファックスはFTTを送信し、再 訓練される(retrain down)。再びDCSを待つ。 3.事象を待つ「無限時間(infinite while)」ループを除去する。 4.10ms未満のファックスおよび音声タイマ分解能(resolutions)の有無 を調べる。 5.タイマに対するDOSフルスクリーンの影響の有無を調べるべきである。 6.ディスクアクセスが、長すぎる時間をとっていないかどうかを調べるべきで ある。 以上、通信機能が低下しないようにモデムに適切な処理時間を保証しながら、 モデムのハードウェア要求を低減するコントローラレスモデムを説明してきた。 さらに、本発明は、従来技術の問題点を克服し、通信要求に対する、より低コス トの解決策を提供する。 本開示では、本発明の好適な実施形態だけが示され且つ説明されているが、上 記のように、本発明が、他の様々な組み合わせおよび環境において使用でき、且 つ、本明細書において示された本発明の概念の範囲内で変更または改変が可能で あることが理解されるべきである。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ディーンズ,スコット アメリカ合衆国 ノース カロライナ 27604,ラレイ,バークシー ダウンズ ドライブ 7309 (72)発明者 ミラー,ロバート アメリカ合衆国 ノース カロライナ 27613,ラレイ,スリーピー クリーク ドライブ 8617 (72)発明者 ワニ,ベイキム アメリカ合衆国 ノース カロライナ 27615,ラレイ,カーブリッジ ウェイム 2009 (72)発明者 ターキニ,リチャード ピー. アメリカ合衆国 ノース カロライナ 27502,エイペックス,ビーチモント コ ート 1010 (72)発明者 ウォーターズ,ジャック アメリカ合衆国 ノース カロライナ 27612,ラレイ,ストーン ギャップ コ ート 3025

Claims (1)

  1. 【特許請求の範囲】 1.a.プロセッサと、 b.該プロセッサ上で動作するオペレーティングシステムと、 c.該オペレーティングシステムにインタフェースされ、通信ポートを介する 通信を管理するためのモデム機能を提供する仮想装置ドライバと、を含む、コン ピュータ。 2.前記仮想装置ドライバが、モデム機能を保証する適切な処理時間を提供する ために使用される、請求項1に記載のコンピュータ。 3.前記処理時間が、処理時間の部分が利用可能にされる頻度と、該処理時間の 部分の持続時間とのうちの少なくとも1つについて制御可能である、請求項2に 記載のコンピュータ。 4.前記モデム機能が、ファックスサービス、音声サービス、およびデータサー ビスのうちの少なくとも1つを含む、請求項1に記載のコンピュータ。 5.前記仮想装置ドライバが、オペレーティングシステムインタフェースレイヤ 、UARTレイヤ、モジュールレイヤ、モジュールI/Oレイヤ、割り込みレイ ヤ、および物理レイヤ、のうちの少なくとも3つを含むレイヤにおいて実現され る、請求項1に記載のコンピュータ。 6.前記仮想装置ドライバが、UARTからUARTへの通信をエミュレートす るソフトウェアレイヤを含む、請求項1に記載のコンピュータ。 7.別のコンピュータと通信する、請求項1に記載のコンピュータ。 8.a.プロセッサと、 b.該プロセッサ上で動作するプロセスであって、通信リンクを介して1つ以 上の外部装置への通信および該1つ以上の外部装置からの通信を提供するため、 ならびに、該プロセッサに割り込んで、該プロセッサ上で実行しているその他の プロセスに関係なく処理時間を得るためのプロセスと、を含む、コンピュータ。 9.コンピュータを動作させて通信サービスを得る方法であって、 a.モデム機能をプロセッサ上の仮想装置ドライバとして提供するためのプロ セスを実行するステップを包含する、方法。 10.モデム機能を提供するための前記プロセスに、前記プロセッサ上の仮想装 置ドライバとしての処理時間を提供するプロセスを実行するステップをさらに包 含する、請求項9に記載の方法。 11.コンピュータを動作させて通信サービスを得る方法であって、 a.通信リンクを介して1つ以上の外部装置への通信および該1つ以上の外部 装置からの通信を提供するため、ならびに、プロセッサに割り込んで、該プロセ ッサ上で実行しているその他のプロセスに関係なく処理時間を得るためのプロセ スを、該コンピュータ上で実行するステップを包含する、方法。 12.a.ネットワークと、 b.該ネットワークを介して第2のコンピュータに接続される第1のコンピュ ータであって、該第1および該第2のコンピュータのうちの少なくとも1つが、 モデム機能を提供する仮想装置ドライバを有する第1のコンピュータと、を含む コンピュータシステム。 13.ネットワークを介する別のコンピュータとの通信中にコンピュータを動作 させる方法であって、該コンピュータのプロセッサ上で動作する仮想装置ドライ バを用いてモデム機能を提供するステップを包含する、方法。 14.a.メモリ媒体と、 b.該メモリ媒体上に格納されるコンピュータプログラムであって、モデム機 能を仮想装置ドライバとして提供するための命令を含むコンピュータプログラム と、を含むコンピュータプログラムプロダクト。 15.a.メモリ媒体と、 b.該メモリ媒体上に格納されるコンピュータプログラムであって、モデム機 能を提供するため、および、該モデム機能のための処理時間を保証するための命 令を含むコンピュータプログラムと、を含むコンピュータプログラムプロダクト 。 16.a.メモリ媒体と、 b.該メモリ媒体上に格納されるコンピュータプログラムであって、通信リン クを介して1つ以上の外部装置への通信および該1つ以上の外部装置からの通信 を提供するため、ならびに、プロセッサに割り込んで、該プロセッサ上で実行し ているその他のプロセスに関係なく処理時間を得るための命令を含む、コンピュ ータプログラムと、を含むコンピュータプログラムプロダクト。 17.モデムコントローラコードを実行するためのマイクロコントローラのない モデムとともに使用するための汎用コンピュータシステムであって、該汎用コン ピュータシステムが、該モデムコントローラコードを実行し、該汎用コンピュー タシステムが、 命令を実行するためのプロセッサと、 該プロセッサに結合される入出力バスであって、デジタル信号プロセッサを備 えるコントローラレスハードウェアモデムと通信するように適合される入出力バ スと、を含み、 該プロセッサが、汎用コンピュータシステムコードと、該モデムコントローラ コードとの両方を実行し、該実行されたモデムコントローラコードと、該デジタ ル信号プロセッサとの間でデータおよびコマンドをやりとりする、コンピュータ システム。 18.前記プロセッサによる実行のためのオペレーティングシステムと、 ハードウェアUART装置のための装置ドライバであって、該オペレーティン グシステムにより呼び出され、該ハードウェアUART装置とともにシリアル動 作を行う装置ドライバと、 該プロセッサによる実行のための仮想UARTであって、前記モデムコントロ ーラコードとデータをやりとりし、且つ、該ハードウェアUARTからの読み出 しおよび該ハードウェアUARTへの書き込みに対応するエントリポイントを提 供する仮想UARTと、をさらに含み、 仮想装置ドライバが、該エントリポイントを呼び出して、該ハードウェアUA RTの代わりに、該仮想UARTからの読み出しおよび該仮想UARTへの書き 込みを行うように改変される、請求項17に記載のコンピュータシステム。 19.前記仮想UARTまたは仮想化されたインタフェースが、16450UA RTをエミュレートする、請求項18に記載のコンピュータシステム。に記載のコンピュータシステム。 に記載のコンピュータシステム。 22.前記仮想UARTまたは仮想化されたインタフェースが、前記装置ドライ バに、区画化された(compartmentalized)インタフェースを提供することによ り、前記オペレーティングシステムが、該仮想UARTを大幅に改変することな く、第2の装置ドライバを備える第2のオペレーティングシステムに変えられ得 る、請求項18に記載のコンピュータシステム。 23.前記仮想化されたUARTが、前記装置ドライバに、区画化されたインタ フェースを提供することにより、前記コントローラレスハードウェアモデムが、 該装置ドライバを大幅に改変することなく第2のコントローラレスハードウェア モデムに変えられ得る、請求項18に記載のコンピュータシステム。 24.デジタル信号プロセッサを備えるが、モデムコントローラコードを実行す るためのマイクロコントローラのないモデムとともに使用するためのコンピュー タシステムであって、 命令を実行するためのプロセッサであって、該モデムコントローラコードを実 行するプロセッサと、 物理ハードウェアインタフェースを仮想化したバージョンであって、該実行し ているモデムコントローラコードに、仮想化されたインタフェースを提供する、 仮想化したバージョンと、 物理ハードウェアインタフェースと通信するように書き込まれる装置ドライバ であって、該物理ハードウェアインタフェースに向けられた命令を、該仮想化さ れたインタフェースへの呼び出しに置き換えることにより改変される装置ドライ バ、とを含む、コンピュータシステム。 25.前記仮想UARTまたは仮想化されたインタフェースが、16450UA RTをエミュレートする、請求項24に記載のコンピュータシステム。 に記載のコンピュータシステム。 に記載のコンピュータシステム。 28.前記プロセッサに結合され、前記モデムコントローラコードを格納するた めのディスクドライブと、 該モデムコントローラコードを格納するためのメインメモリと、をさらに含む 、 請求項17に記載のコンピュータシステム。 29.オペレーティングシステム、装置ドライバ、および仮想UARTが、前記 ディスクドライブ上および前記メインメモリ内に格納される、請求項28に記載 のコンピュータシステム。 30.汎用コンピュータシステムにおけるモデム通信を、ハードウェアモデムコ ントローラなしで提供する方法であって、 テレコミュニケーションリンクを介して通信するためのデジタル信号プロセッ サを提供するステップと、 該デジタル信号プロセッサとの通信のためのモデムコントローラコードを、該 汎用コンピュータシステム上で実行するステップと、 該モデムコントローラコードから該デジタル信号プロセッサへの通信のための ハードウェアインタフェースを提供するステップと、 該汎用コンピュータシステム上のオペレーティングシステム装置ドライバソフ トウェアと、該汎用コンピュータシステム上で実行する該モデムコントローラコ ードとの間に、ハードウェアインタフェースを仮想化したバージョンを提供する ステップと、を包含し、それにより、モデムコマンドおよびデータが、該オペレ ーティングシステム装置ドライバソフトウェアと該モデムコントローラコードと の間で送信される、方法。
JP54195198A 1997-03-31 1998-03-31 コントローラレスモデム Pending JP2001519060A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US08/832,622 1997-03-31
US08/832,622 US6353857B2 (en) 1997-03-31 1997-03-31 Controllerless modem
PCT/US1998/006385 WO1998044425A1 (en) 1997-03-31 1998-03-31 Controllerless modem

Publications (1)

Publication Number Publication Date
JP2001519060A true JP2001519060A (ja) 2001-10-16

Family

ID=25262193

Family Applications (1)

Application Number Title Priority Date Filing Date
JP54195198A Pending JP2001519060A (ja) 1997-03-31 1998-03-31 コントローラレスモデム

Country Status (5)

Country Link
US (1) US6353857B2 (ja)
EP (1) EP0972248A1 (ja)
JP (1) JP2001519060A (ja)
TW (1) TW436711B (ja)
WO (1) WO1998044425A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006518902A (ja) * 2003-02-11 2006-08-17 トムソン ライセンシング 非同期通信技術

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6400759B1 (en) 1997-06-30 2002-06-04 Integrated Telecom Express, Inc. Device driver for rate adaptable modem with forward compatible and expandable functionality
US6252900B1 (en) 1997-06-30 2001-06-26 Integrated Telecom Express, Inc. Forward compatible and expandable high speed communications system and method of operation
US6546434B1 (en) * 1999-04-12 2003-04-08 Eaton Corporation Virtual device driver
US6594709B1 (en) * 1999-09-24 2003-07-15 Cisco Technology, Inc. Methods and apparatus for transferring data using a device driver
US6647100B1 (en) * 2000-07-26 2003-11-11 Conexant Systems, Inc. Universal Serial Bus datapump command interpreter
US6869165B2 (en) * 2002-10-30 2005-03-22 Hewlett-Packard Development Company, L.P. Fluid interconnect for printhead assembly
JP2004171177A (ja) * 2002-11-19 2004-06-17 Renesas Technology Corp キャッシュシステムおよびキャッシュメモリ制御装置
US7010630B2 (en) * 2003-06-30 2006-03-07 International Business Machines Corporation Communicating to system management in a data processing system
US7623894B2 (en) * 2003-10-09 2009-11-24 Freescale Semiconductor, Inc. Cellular modem processing
WO2005060575A2 (en) * 2003-12-10 2005-07-07 X1 Technologies, Inc. Performing operations in response to detecting a computer idle condition
KR100542259B1 (ko) * 2004-03-17 2006-01-11 엘지전자 주식회사 개인용 이동 단말기에서 모뎀공유 방법
US7546599B2 (en) * 2004-12-20 2009-06-09 Intel Corporation Method, apparatus and system for instructing a virtual device from a virtual machine
JP7122048B1 (ja) * 2022-01-31 2022-08-19 春樹 鳥海 未病パラメータ測定システム

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4549302A (en) * 1981-06-15 1985-10-22 Hayes Microcomputer Products, Inc. Modem with improved escape sequence mechanism to prevent escape in response to random occurrence of escape character in transmitted data
US5170470A (en) * 1988-05-02 1992-12-08 National Semiconductor Corp. Integrated modem which employs a host processor as its controller
FR2634038B1 (fr) * 1988-07-08 1993-11-05 Js Telecommunications Micro-ordinateur integrant une terminaison numerique d'abonne de reseau numerique a integration de services
US5189663A (en) * 1989-08-15 1993-02-23 C & P Of Virginia Method of and system for remote testing and reporting of ISDN line conditions
US5572675A (en) * 1991-05-29 1996-11-05 Alcatel N.V. Application program interface
DE9303712U1 (ja) * 1993-03-13 1993-07-01 Elsa Gesellschaft Fuer Elektronische Systeme Mbh, 5100 Aachen, De
US5659800A (en) * 1993-10-06 1997-08-19 International Technologies & Systems Corporation (Its) System for directly sending undecoded raw signals from reader device via external slave interface to personal computer through communication port without first decoding the signals
US5450530A (en) * 1993-11-03 1995-09-12 Rockwell International Corporation High speed receiver/transmitter interface
US5604870A (en) * 1994-08-01 1997-02-18 Moss; Barry UART emulator card
US5787305A (en) 1995-04-25 1998-07-28 Pc-Tel, Inc. Host signal processing modem using a software simulation of a UART
FI98028C (fi) 1995-05-03 1997-03-25 Nokia Mobile Phones Ltd Datasovitin
US5625678A (en) * 1995-05-24 1997-04-29 Microsoft Corporation Method and system for allowing switched voice and data communication among multiple application programs
US5812820A (en) * 1995-09-29 1998-09-22 Pacific Commware, Inc. Virtual UART
US5802307A (en) * 1995-11-24 1998-09-01 Sun Microsystems, Inc. Network communications subsystem and method for digital computer system employing protocol stack having diverse lower-level network driver components optimized for each of base and enhance operating systems
US5864710A (en) * 1996-07-23 1999-01-26 Compaq Computer Corporation Controllerless modem
DE69721352T2 (de) 1996-01-31 2003-12-24 Compaq Computer Corp Rechnersystem mit einem Modem ohne Steuerung
US5790895A (en) * 1996-10-18 1998-08-04 Compaq Computer Corporation Modem sharing
US5925114A (en) * 1997-03-21 1999-07-20 Motorola, Inc. Modem implemented in software for operation on a general purpose computer having operating system with different execution priority levels

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006518902A (ja) * 2003-02-11 2006-08-17 トムソン ライセンシング 非同期通信技術
JP2011048844A (ja) * 2003-02-11 2011-03-10 Thomson Licensing 非同期通信技術
US8631176B2 (en) 2003-02-11 2014-01-14 Gvbb Holdings S.A.R.L. Asynchronous communications technique

Also Published As

Publication number Publication date
US20010052026A1 (en) 2001-12-13
US6353857B2 (en) 2002-03-05
EP0972248A1 (en) 2000-01-19
TW436711B (en) 2001-05-28
WO1998044425A1 (en) 1998-10-08

Similar Documents

Publication Publication Date Title
US6799225B2 (en) Controllerless modem
JP4054390B2 (ja) モデムインタフェース
US5638517A (en) Method and apparatus for transmitting a message from a computer system over a network adapter to the network by performing format conversion and memory verification
US6370606B1 (en) System and method for simulating hardware interrupts in a multiprocessor computer system
US4787026A (en) Method to manage coprocessor in a virtual memory virtual machine data processing system
US6820207B2 (en) Method for rebooting only a specific logical partition in a data processing system as per a request for reboot
US5640541A (en) Adapter for interfacing a SCSI bus with an IBM system/360/370 I/O interface channel and information system including same
US5790895A (en) Modem sharing
US6629157B1 (en) System and method for virtualizing the configuration space of PCI devices in a processing system
US5802318A (en) Universal serial bus keyboard system
US5625775A (en) Modem communication interface in a data processing system
US6321279B1 (en) System for implementing intelligent I/O processing in a multi-processor system by redirecting I/O messages to a target central processor selected from the multi-processor system
US7647416B2 (en) Full hardware based TCP/IP traffic offload engine(TOE) device and the method thereof
US5784643A (en) System incorporating program for intercepting and interpreting or altering commands for generating I/O activity for enabling real-time user feedback by sending substitute characters to modem
US7945710B2 (en) Apparatus enabling the human interface device to provide a smart card interface and operating method therein
JP2001519060A (ja) コントローラレスモデム
US20070174033A1 (en) Remote control device and method for accessing peripheral device remotely
US20060168099A1 (en) Virtual serial port and protocol for use in serial-over-LAN communication
US5864710A (en) Controllerless modem
KR20010013347A (ko) 컨트롤러가 없는 모뎀용 도스 기반 어플리케이션 지원장치
CN101052031B (zh) 苹果计算机与无线通讯终端进行数据交互的方法
US6345324B1 (en) Apparatus for transferring data using an interface element and a queued direct input-output device
US20040139442A1 (en) Task switching system, task switching method and dsp modem
CN112416521A (zh) 一种基于linux tty子系统的串口虚拟化的实现方法
McDowell et al. USB explained