JP3976730B2 - 特権モデムドライバを有するコンピュータシステム - Google Patents

特権モデムドライバを有するコンピュータシステム Download PDF

Info

Publication number
JP3976730B2
JP3976730B2 JP2003513276A JP2003513276A JP3976730B2 JP 3976730 B2 JP3976730 B2 JP 3976730B2 JP 2003513276 A JP2003513276 A JP 2003513276A JP 2003513276 A JP2003513276 A JP 2003513276A JP 3976730 B2 JP3976730 B2 JP 3976730B2
Authority
JP
Japan
Prior art keywords
privileged
instruction
execute
calling program
code
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
JP2003513276A
Other languages
English (en)
Other versions
JP2004535734A (ja
JP2004535734A5 (ja
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.)
Advanced Micro Devices Inc
Original Assignee
Advanced Micro Devices 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 Advanced Micro Devices Inc filed Critical Advanced Micro Devices Inc
Publication of JP2004535734A publication Critical patent/JP2004535734A/ja
Publication of JP2004535734A5 publication Critical patent/JP2004535734A5/ja
Application granted granted Critical
Publication of JP3976730B2 publication Critical patent/JP3976730B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/104Grouping of entities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1458Protection against unauthorised use of memory or access to memory by checking the subject access rights
    • G06F12/1491Protection against unauthorised use of memory or access to memory by checking the subject access rights in a hierarchical protection system, e.g. privilege levels, memory rings

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Communication Control (AREA)

Description

本発明は、主にモデム通信に関し、特に、特権モードを備えたソフトウェアモデムドライバに関する。
近年、携帯電話はますます広く使用されるようになっている。携帯電話は、「移動局」または「携帯端末」と呼ばれるものの一例である。
移動局は、携帯電話以外にも、移動通信機能を備えたコンピュータ(例えば、ノート型コンピュータ)を含んだ様々な形態をとり得る。
無線周波数などのエア・インターフェースを介して、セル方式の遠隔通信ネットワーク(cellular telecommunications network )と移動局との間の遠隔通信サービスが提供されている。通常、移動局を有する各加入者には、特有の「移動加入者識別番号」(IMSI)(International Mobile Subscriber Identity)が割り当てられている。ある瞬間に、稼動中の移動局は、エア・インターフェースを介して一以上の基地局と通信中である可能性がある。
次に基地局は、無線ネットワーク制御装置(radio network controller)としても知られている基地局制御装置によって管理される。基地局制御装置およびその基地局は、基地局システムを構成している。基地局システムの基地局制御装置は、制御ノードを介して、公衆交換電話網(PSTN)(public switched telephone network)のような基幹の遠隔通信ネットワークに接続される。
標準化された移動通信方式の一形態に、汎欧州デジタル移動電話方式(GSM)(Global System for Mobile communications)がある。GSMは、様々な種類のサービス用の機能およびインタフェースを規定する規格を含む。GSMシステムでは、音声信号とデータ信号の双方を伝送することができる。
特定の基地局は、複数の移動局によって共有されていてもよい。 電波スペクトルは限りある資源であるので、時分割多元接続と周波数分割多元接続(TDMA/FDMA)とを併用することによって帯域幅が分割されている。
FDMAは、最大周波数帯域幅(例えば、25MHz)を、200kHz間隔で124個の搬送周波数に分割することを含む。特定の基地局は、一以上の搬送周波数を割り当てられ得る。さらに、各搬送周波数は、複数のタイムスロットに分割される。
基地局と移動局との間のアクティブセッション中に、基地局は移動ユニットに、移動局から基地局に向かうアップストリーム送信用の周波数、電力レベルおよびタイムスロットを割り当てる。
基地局はまた、基地局からその移動局に向かうダウンストリーム送信用の特定の周波数およびタイムスロットを伝達する。
GSMに規定されている時間の基本単位はバースト周期と呼ばれており、その長さは15/26ミリ秒(約0.577ミリ秒)である。
8つのバースト周期をグループ化したものがTDMAフレーム(長さ120/26ミリ秒、すなわち約4.615ミリ秒)であり、これは論理チャネルを定義する基本単位である。
一つの物理チャネルは、各フレーム当たり一つのバースト周期として定義される。個々のチャネルは、それらの対応するバースト周期の数と位置によって定義される。
各フレームが8つのバースト周期を有するGSMフレームをグループ化したもの(例えば、51フレームからなるグループ)がスーパーフレームであり、トラフィック情報(すなわち音声信号またはデータ信号)および制御情報の両方を含む。制御情報は、スーパーフレーム構造内で定義された共通チャネルを介して伝送される。
この共通チャネルは、アイドルモードの移動局および専用モードの移動局の双方によってアクセスされ得る。
共通チャネルは、アイドルモードの移動局が着呼または発呼を受けると、信号情報を交換し、専用モードに切り換えるように使用される。
既に専用モードにある移動局は、周囲の基地局への受け渡し(handover)情報および他の情報を監視する。
共通チャネルは、以下のものを含む。すなわち、基地局ID、周波数割り当ておよび周波数ホッピング・シーケンスを含む情報を連続的に放送するために使用される報知チャネル(BCCH)(Broadcast Control Channel )と、バースト周期の境界およびタイムスロットの番号付けを定義することによって、セルのタイムスロット構造に移動局を同期させる(すなわち、GSMネットワークのすべてのセルは、一つのFCCHと一つのSCHを正確に放送し、これらは定義上、TDMAフレーム内のタイムスロット番号が0のタイムスロットに伝送される。)ために使用される周波数補正チャネル(FCCH)と同期チャネル(SCH)と、ネットワークへのアクセスをリクエストするために移動局によって使用されるランダム・アクセス・チャネル(RACH)と、着呼を移動局に通知するために使用される、ページング・チャネル(PCH)と、RACHに関するリクエストに続いて信号を送る(すなわち、専用チャネルを取得する)ため、移動局にスタンドアロンの専用制御チャネル(SDCCH)(Stand-alone Dedicated Control Channel)を割り当てるために使用されるアクセス許可チャネル(AGCH)(Access Grant Channel)とを含む。
GSMデータは、セキュリティ上の理由により、暗号化された形式で送信される。無線メディアには誰でもアクセスできるため、認証はモバイルネットワークにおいて重要な要素だからである。認証には、移動局と基地局の双方が関与する。各移動局には、加入者識別モジュール(SIM)カードが装着される。
各加入者にはシークレットキーが割り当てられている。シークレットキーのコピーの一つはSIMカードに格納されると共に、他のコピーが、通信ネットワーク上の保護されたデータベースに格納されており、このデータベースが基地局によってアクセスされ得る。
認証イベント時に、基地局は、乱数を生成して、これを移動局に送信する。
移動局は、シークレットキーおよび暗号化アルゴリズム(例えば、A3)と共に乱数を併用して、署名されたレスポンス(signed response)を生成し、これを基地局に返信する。移動局によって送信された署名されたレスポンスが、ネットワークによって算出されたレスポンスと一致する場合、加入者が認証される。
基地局は、シークレットキーを使用して、移動局に送信するデータを暗号化する。同様に移動局は、シークレットキーを使用して、基地局に送信するデータを暗号化する。
移動局によって受信された送信が解読されると、特定の移動局に割り当てられた電力レベル、周波数およびタイムスロットを含む様々な制御情報が、移動局によって決定される。
一般に、通信システムは、層を用いて説明される。
第1の層は、データ伝送信号を伝送メディアを通じて実際に伝送している層であり、物理層(PHY)と呼ばれる。
物理層はデジタルデータをグループ化し、特定の伝送方式に従って、このデータを基に被変調波形を生成する。
GSMにおいては、物理層は送信波形を生成し、移動局の割り当てられた送信タイムスロットの間にこれを送信する。
同様に、物理層の受信部(receiving portion)は、割り当てられた受信タイムスロット内に、移動局宛のデータを検出する。
第2の層は、プロトコル層と呼ばれ、物理層によって受信されたデジタルデータを処理して、このデータ中に含まれている情報を検出する。
例えば、GSMシステムでは、データの解読はプロトコル層の機能である。
物理層の動作パラメータの変更は、プロトコル層によって解読され、処理された後に初めて確認される。
この特定の相互依存は、プロトコル層をハードウェアのみによって実装する場合には通常問題にならないが、プロトコル層の全体または少なくとも一部をソフトウェアによって実装する場合に、問題を引き起こす可能性がある。
あるコンピュータ・システム、特に、持ち運び可能なノート型コンピュータは、無線モデムを備えていることがある。
モデム技術における一つの動向には、ソフトウェア・ルーチンを使用して、従来のハードウェアモデムのリアルタイム機能の一部を実装するソフトウェアモデムを使用することを含む。
ソフトウェアモデムのハードウェアは、ハードウェアモデムより単純であるので、一般的にソフトウェアモデムの方がよりフレキシブルで、安価である。
例えば、プロトコル層での解読および処理の一部または全てを、ソフトウェアによって実装することが可能である。
PCシステムのようなソフトウェア・システムは、オペレーティング・システム環境において、インタフェース制御ソフトウェアをソフトウェアドライバとして実行する。
これらのドライバは、ハードウェア・デバイスとの通信を担っており、オペレーティング・システムの特権レベルで作動する。
他のソフトウェア・アプリケーションが、このドライバに作用することは禁止されている。
しかしながら、ドライバは他のドライバから保護されているわけではないので、ドライバの動作が損なわれる等のように、ドライバの動作に悪影響を与え得る様々な問題が生じ得る。
これらの影響は偶発的に発生する可能性もあれば、意図的なハッキングによって発生する可能性もある。
破損した(または無断使用された(co-opted))ドライバは、電話回線または無線チャネルを使用する、外部周辺装置を動作させる、または重要なデータを削除するというような、コンピュータの外部でさらなる問題を引き起こす可能性がある。
移動局の送信機の動作を制御する物理層の動作パラメータは、プロトコル層によってソフトウェアを使用して制御されるので、コンピュータプログラムまたはコンピュータウイルスが移動局を制御して、偶発的または意図的に、割り当てタイムスロット外で送信を行う可能性がある。
セル電話ネットワークのような無線通信ネットワークでは、共有インフラストラクチュアが使用される。
移動局は、「インフラストラクチュアにおける交通規則(rules on the road)」を守る必要があり、守らなければ、ネットワーク上の干渉を引き起こし得る。
移動局の特定の機能をソフトウェアで制御する場合、プログラマは、GSM制御フレームのデコード方法、ならびに送信機モジュールのトリガ方法を決定することができる。
その後、ウイルスが作成されてネットワークを介して蔓延し、ソフトウェアベースの移動局にウイルスが進入する可能性がある。
この場合、特定の日時において、ウイルスがその移動局を直接制御して、連続的または断続的にランダムな周波数において最大出力で送信を行い、基地局と他の移動ユニットを溢れさせる可能性がある。
検出を回避するために、無作為な時間に作動可能または作動不能としたり、無線通信事業者が利用可能な帯域幅の全部または一部を奪ったり、さらにはネットワークの完全なシャットダウンを引き起こしたりするようなウイルスを設計することは可能である。
セル一つ当たりにつき、このような攻撃が数台の装置(最も少なくて一台)によって行われるだけで、一つのセルが完全に使用不能に陥る可能性がある。
共有インフラストラクチュアで動作する移動局に関連するセキュリティ面の問題は、重大度に応じて、改ざん防止(タンパープルーフ)(tamper-proof)、非改ざん防止(非タンパープルーフ)(non-tamperproof)、クラスブレーク(class-break)の3つに分離することができる。
第一に、携帯電話のようなハードウェア/ファームウェアによる実装は、各機器を個々に入手して、変更しなければならないので、最も改ざんし難い(すなわち、タンパープルーフである)。
これに対して、ソフトウェアによる解決策は、ハッカーがソフトウェアのデバッガ環境のみに専念することができるので、最も改ざんし易い(すなわち、非タンパープルーフである)。
最後に、改ざんを受ける機能がすべてのシステムで類似するとともに、改ざんを同種のシステムに広く配布することが可能なシステムは、「クラスブレーク」を受けやすい。
ソフトウェアの無線モデムは、クラスブレークを受けやすいだけでなく、IP(インターネット・プロトコル)と同じ層または他のポータブルコード・アクセス機構からそのコードがアクセスされる可能性がある機器の中にある。
ソフトウェア無線通信モデムの多くが、ネットワークまたはインターネットにつながれたコンピュータに組み込まれ得る。このような構成のために、ソフトウェアがより一層改ざんされ、制御され易くなる。
ソフトウェアを使用してその他の通信プロトコルを実装する通信装置も、上述した問題のうちのいくつかの影響を受ける可能性があるが、その影響の程度およびレベルにおいて異なる。
例えば、音声帯域モデム(V.90)、非対称DSL(asymmetric digital subscriber line)モデム、ホーム電話線ネットワーク(HomePNA)等のような銅製の加入者線(copper subscriber line)を使用する通信装置のソフトウェア・ドライバが攻撃を受け、その結果、加入者線が使用不能、または不正使用されるおそれがある。
例えば、ウイルスに感染したソフトウェアモデムのグループが、サービス妨害攻撃に使用され、所定の電話番号に常時電話をかけ続け、相手を途方に暮れさせ得る。
また、ソフトウェアモデムが使用され、加入者線での発呼または着呼が阻止されるか、またはHomePNAトラフィックが妨害される可能性もある。
また、無線ネットワーク・デバイスのようなソフトウェアで実装される他の無線通信デバイスが、無線ネットワークでのトラフィックを混乱させるために悪用されることもある。
本発明は、上記の問題のうちの一つ以上を克服するか、少なくともその影響を軽減させるためのものである。
本発明の一態様は、物理層ハードウェアユニットと処理ユニットを備えた通信システムに見て取れる。物理層ハードウェアユニットは、複数の制御コードに応じた通信チャネルを介してデータ通信を行うために適している。物理層ハードウェアユニットは、アナログの着信信号を復調して、デジタルの受信信号を生成し、デジタルの伝送信号を生成し、アナログの伝送を生成するために適している。処理ユニットは、物理層ハードウェアとインターフェースする特権ドライバを実行するために適している。この特権ドライバは、デジタルの受信信号を復号し、デジタルの伝送信号を符号化し、複数の制御コードを基にしてデジタルの受信信号を受信およびデジタルの伝送信号の伝送を行うための物理層ハードウェア向けのプロトコル層を実装するプログラム命令を有する。
本発明の他の態様は、トランシーバを構築するための方法に見て取れる。この方法は、複数の制御コードを基にしてアナログの着信信号を復号し、デジタルの受信信号を生成するステップと、前述の制御コードを基にしてデジタルの伝送信号を変調し、アナログの伝送信号を生成するステップと、この制御コードにより規定された伝送割り当てに基づいた通信チャネルを介して暗号化されたユーザデータを受信するステップとを有する。
本発明は、添付の図面により理解されるであろう。添付の図面においては、同一要素には同一の参照符号を付している。
本発明は、種々に変形および変形できるが、その特定の実施形態が図面に例として図示され、ここに詳細に記載されているに過ぎない。しかし、詳細な説明は、本発明を特定の実施形態に限定することを意図するものではなく、反対に、添付の特許請求の範囲によって規定される本発明の趣旨ならびに範囲に含まれる全ての変形例、均等例および代替例を含むことものである。
本発明の例示的な実施形態を下記に記載する。簡潔を期すために、本明細書に実際の実装の特徴を全て記載することはしない。当然、実際の実施形態の開発においては、システム上の制約およびビジネス上の制約に適合させるなど、開発の具体的な目的を達するために、実装に固有の判断が数多く必要とされ、この判断は実装によって変わるということが理解される。さらに、この種の開発作業は複雑かつ時間がかかるものであるが、本開示による利益を受ける当業者にとって日常的な作業であるということが理解されよう。
図1に、通信システム10のブロック図を示す。通信システム10は、通信チャネル40を介してセントラルステーション30と通信を行うユーザステーション20を備える。本図の実施形態においては、ユーザステーション20は、ソフトウェアモデム50を利用する携帯型コンピュータ装置であり、GSMなどの無線通信プロトコルに従って通信を行う。セントラルステーション30は、複数の加入者にサービスを提供可能な、共有基地局である。本発明は、無線環境において実装され得るものとして記載されるが、本発明の用途はこれだけに限定されない。本発明の明細書の教示は、ソフトウェアによって実装される通信プロトコル(例えば、V.90,ADSL、HomePNA、無線LAN等)を使用する他の通信環境にも適用可能である。
ユーザステーション20は、デスクトップ型コンピュータ、ノート型コンピュータ、個人情報端末(PDA)など、種々のコンピュータ装置を備え得る。説明のために、ユーザステーション20がノートコンピュータを使用して実装されたものとして説明する。ソフトウェアモデム50は、内部資源として組み込まれる。当業者によって理解されるように、ソフトウェアモデム50は、ハードウェア内で実装される物理層70と、ソフトウェア内で実装されるプロトコル層80とを有する。
説明のために、ソフトウェアモデム50の各種機能は、GSM通信プロトコル向けに実装されているものとして説明するが、他のプロトコルを使用することもできる。
本発明の一部とその詳細な説明は、ソフトウェア、すなわちコンピュータメモリ内部でのデータビットに対する操作の記号的表記およびアルゴリズムの形で提示される。このような記述および表現は、当業者が、自身の作業の内容を他の当業者に効率的に伝えるために用いられているものである。本明細書において使用する「アルゴリズム」との用語は、通常用いられているのと同義に用いられ、所望の結果に導くための自己矛盾のないシーケンスのことを指す。アルゴリズムのステップとは、物理量の物理的操作を必要とするステップである。この物理量は通常、記憶、転送、結合、比較などの操作が可能な光学信号、電気信号または磁気信号の形を取るが、必ずしもこれに限定されない。主に公共の利用に供するという理由で、これらの信号を、ビット、値、要素、記号、文字、語(term)、数字などとして参照すれば、ときとして利便性が高いことがわかっている。
しかし、上記の全用語ならびに類似の用語は、適切な物理量に対応しており、この物理量を表す簡便な標識に過ぎないという点を留意すべきである。特段の断りのない限り、もしくは記載内容から明らかな場合、「処理」、「演算」、「計算」、「判定」、「表示」などの用語は、コンピュータシステムのレジスタ内およびメモリ内で物理的電子的量として表されるデータを、コンピュータシステムのメモリ、レジスタ等の情報の記憶装置、伝送装置または表示装置内で同様に物理量として表される他のデータへと操作および変換するコンピュータシステムないし類似の電子的演算装置の動作および処理を指す。
物理層70は、デジタル送信信号をアナログ送信波形に変換し、受信したアナログ受信波形をデジタル受信信号に変換する。
送信信号については、プロトコル層80の出力は、約0ヘルツのキャリアを中心に変調された送信「オンエア」情報、すなわちキャリアレス(Carrier-less)信号となる。
物理層70は、セントラルステーション30によってユーザステーション20に送信された、割り当てタイムスロット、周波数および電力レベルの割当てに従って、プロトコル層80によって生成されたキャリアレス送信信号を混合(混合は、アップコンバートとも呼ばれる。)し、物理層70が送信する実際のアナログ波形を生成する。
セントラルステーション30はまた、受信データ用のタイムスロットおよび周波数の割り当てをユーザステーション20に伝達する。
受信したアナログ受信波形は、キャリアレスの(すなわち、0ヘルツを中心に変調された)受信波形を再生成するために、割り当てタイムスロットおよび周波数パラメータに基づいて、サンプリングされ、ダウンコンバートされる。
プロトコル層80は、物理層70からキャリアレス受信波形を受け取って、受信データを再生成するために、ベースバンド処理、解読およびデコーディングを実行する。
タイムスロット、周波数および電力レベル(すなわち、送信データのためだけの)の割当ては、総称して制御コードと呼ばれる。
ソフトウェアモデム50の実装に使用される特定のアルゴリズムは、特定の業界基準(例えば、GSM規格)に記載されており、当業者に公知であるので、説明の明瞭化、容易化のため、これらが本発明に従って修正される場合を除き、詳述しない。
図2に、コンピュータシステム100に具体化された利用者局20のブロック図を示す。
簡潔を期すと共に理解を助けるために、プロセッサ複合体を構成する要素の全てを詳細に記載しない。このような詳細は当業者に公知であり、個々のコンピュータ供給業者およびマイクロプロセッサの種類によって変更され得る。
コンピュータシステム100は、プロセッサ105と、ノースブリッジ110と、メモリ115と、PCI(周辺機器構成要素)バス125と、サウスブリッジ130と、ATアタッチメント(ATA)インターフェース(通常、統合ドライブ電子(IDE)として知られる)と135、ISA(工業標準アーキテクチャ)バス1450と、入力/出力制御器チップ150と、KBC(キーボードおよびマウス制御器)インターフェースと、FDC(フロッピーディスク制御器)インターフェースと、Xバス155と、ROM(読み出し専用メモリ)160と、ならびにIPB(統合パケットバス)バス170とを有する。
ノースブリッジ110とサウスブリッジ130は、単独又は複数のチップの一部であってよい。本図の実施形態のプロセッサ105は、限定されるわけではないが、x86プロセッサである。x86プロセッサのアーキテクチャは、「インテルアーキテクチャソフトウェア開発者用マニュアル、第3巻(Intel Architecture Softoware Developer's Manual)」に記載されている。
コンピュータシステム100は、所望の実装に応じて他のバス、機器、およびサブシステムを備えてよい。例えば、コンピュータシステム100は、キャッシュ、モデム、パラレル又はシリアルインターフェース、SCSI(小型コンピュータシステムインターフェース)インターフェース、ネットワークインターフェースカードなどを備えてよい。
図示の実施形態において、プロセッサ105は、超特権コードが記録されているメモリ範囲を規定する第1レジスタ162、および第2レジスタ164を備える。以下に詳細が記載されるように本発明に従った超特権コードは、コンピュータシステム100の選択されたリソースにアクセスすることを制御するより高度なレベルのセキュリティを有するコンピュータ命令を含む。
プロセッサ105は、ノースブリッジ110に結合されている。ノースブリッジ110は、プロセッサ105、メモリ115とPCIバス125との間のインターフェースを行う。サウスブリッジ130は、PCIバス125とIDEインターフェース135、ISAバス145、Xバス155に結合された周辺機器、デバイス、サブシステムの間のインターフェースを行う。入出力インターフェース150はISAバス145に結合されている。
ノースブリッジ110は、PCIバス125に結合されているデバイス、プロセッサ105、メモリ115と、サウスブリッジ130に結合されているデバイスおよびサブシステムと通信アクセスを行う。一般的に、着脱可能な周辺機器は、コンピュータシステム100に結合されているPCIバス125に接続するPCI「スロット」(図示されない)内に挿入される。他の実施形態として、マザーボードに配置されているデバイスは直接PCIバス125に接続されてよい。
サウスブリッジ130は、PCIバス125と種々のデバイスおよびサブシステム、特にモデム、プリンター、キーボード、マウスなどのような、通常Xバス155、ISAバス145、IDEインターフェース135及びIPBバス170を介してコンピュータシステム100に結合されているレガシーデバイス間とのインターフェースを行う。サウスブリッジ130は、IDEインターフェース135、ISAバス145、Xバス155、IPBバス170を介してコンピュータシステム100の残り部分にレガシーデバイスをインターフェースするために必要なロジックを備える。
IPBバス170は、ソフトウェアモデム50のハードウェア部分をホストする。本図の実施形態においては、ソフトウェアモデム50は、ACR(アドバンスド通信ライザー)カード175によりホストされる。ACRカード175およびIPBバス170の仕様は、ACR分科会((ACR Special Interest Group)(ACRSIG.ORG)から入手することができる。ソフトウェアモデム50は、物理ハードウェアユニット180および無線装置185を備える。本図の実施形態においては、無線装置185は、GSM信号を送受信するものである。物理ハードウェアユニット180および無線装置185により、PHY層70を構成している(図1参照)。
プロセッサ105は、特権モデムドライバ190で実行されたプロトコル層80(図1参照)の機能を実装する。さらなる詳細は以下に記載するが、プロセッサ105は、超特権コード(SPC)を機能させるためにセキュアな環境を提供する。特権モデムドライバ105は、プロセッサ105の標準操作モードより高水準のセキュリティを有するようにSPCコンテキストに基づいて動作する。このような高水準のセキュリティは、特権モデムドライバ190を改鼠(tampering)から保護する。
ソフトウェアモデム50で受信する着信データに対し、特権ドライバモデム190は、キャリアレス波形を復調して、暗号化データを再構築し、これを物理ハードウェア180が受け取る。暗号化データを再構築するための処理は、当業者に公知となっており、業界のGSM標準に規定されている。簡潔を期すと共に説明を簡単するために、この再構成処理はここに記載しない。
特権モデムドライバ190は、暗号化データを再構築すると、GSM標準に規定されている標準の解読方法を用いて暗号化データを解読し、解読済みデータを生成する。特権モデムドライバ190は、解読済みデータを復号して、制御コードおよび/またはユーザデータを抽出する。特権付与モデムドライバ190は、制御コードを物理ハードウェア180に送信する。これにより、物理ハードウェア180は、制御コードに格納されている、割り当て済みのタイムスロット、周波数、および電力レベルの情報に基づいて、無線装置185を設定する。
ソフトウェアモデム50がデータを送信する場合、特権付与モデムドライバ190は、符号化、インターリービング、バースト組み立て、暗号化、ベースバンド処理などのデータ処理機能をすべて実行して、キャリアレス送信波形を生成する。特権付与モデムドライバ190は、物理ハードウェア180および無線装置185にこの送信波形を渡し、制御コードにて事前に定義されている割り当てられたタイムスロット、周波数、および電力レベルに従ってこの波形がアップコンバートされる。
ハードドライブのような記録装置195は、IDEインターフェース135に結合されている。記録装置195は、1以上のOS(オペレーティングシステム)、デバイスドライバ、そこに格納される他のアプリケーションを有する。x86アーキテクチャにおいてオペレーティングシステムおよび関連するデバイスドライバは、一般的に特権レベル0で動作し、OSおよび他のデバイスがシステム100の様々なリソースにアクセス可能にする。記録デバイス195に実装されるオペレーティングシステムの一実施例は、マイクロソフト社によりサポートされているウィンドウズ(登録商標)である。ウィンドウズオペレーティングシステムは、概して記録デバイス195、入力/出力インターフェース150等についてのデバイスドライバのようなシステム100のリソースを制御する種々のデバイスドライバを備えている。さらに、第3者デバイスドライバがウィンドウズオペレーティングシステムにより使用されてよい。
ROM160は、コンピュータシステム100上で動作するオペレーティングシステムと、記録デバイス195、入力/出力インターフェース150等のような備え付けられたデバイスとの間のデータフローを管理するBIOS(基本入出力システム)を含んでよい。本発明の一実施形態において、コンピュータシステムがオンされたとき、SPC(超特権付与コード)がBIOSと同時で実質的に初期化するように、SPCはROM160に格納されてよい。本図の実施形態において、超特権付与コード(SPC)はROM160に常駐するが、プロセッサ105のローカルメモリ(図示されず)、記録デバイス195、もしくはSPCが実行されるために適したメモリロケーションを含む他の箇所にも同様に常駐してよいことに留意されたい。他の実施形態において、SPCはオペレーティングシステムの一部として実装されてよいが、この場合、SPCは、記録デバイス195に格納されることは可能である。
図3を参照すると、プロセッサ105の特定の実施形態が示されている。プロセッサ105は、x86プロセッサである。プロセッサ105のx86アーキテクチャは、プロテクトモード、リアルアドレスモード(リアルモード)、システム管理モードを含む複数の操作モードをサポートしている。このプロテクトモードは、プロセッサ105の本来の操作モードである。プロテクトモードでは、プロセッサ105の命令およびフィーチャ全てが利用可能である。リアルアドレスモードは、インテル8086プロセッサのプログラム環境を提供し、システム管理モードは、電力管理およびOEM分別フィーチャを実装するためのトランスパレントメカニズム(transparent mechanism)を備えたオペレーティングシステムを提供する。
図3に示すようにプロセッサ105は、GDT(グローバルディスクリプタテーブル:global descriptor table)210と、LDT(ローカルディスクリプタテーブル:local descriptor table)215と、TSS(タスクステートセグメント:task-state segment)220と、IDT(割込みディスクリプタテーブル:interrupt descriptor table)225と、IDTレジスタ230と、5つの制御レジスタ235a〜eと、およびタスクレジスタ240とを有する。(なお、図中では、制御レジスタをCR、セグメントをSeg.、デスクリプタをDesc.、セレクタをSel.、ディレクトリをDir.等と略記する)プロテクトモードで動作されるとき、全てのメモリアクセスは実質的にGDT210または(オプショナル)LDT215のいずれかを介して送信される。GDT210とLDT215は、セグメントディスクリプタと呼ばれるエントリを包含する。セグメントディスクリプタは、セグメント、アクセス権、種類、使用情報のベースアドレスを送信する。各セグメントディスクリプタは、GDT210とLDT215の中にインデックスを提供する関連したセグメントを有する。
TSS220は、タスク実行の環境状況を規定する。TSS220は、多目的レジスタ(図示せず)、セグメントレジスタ、EFLAGSレジスタ245、セグメントセレクタ、および3つのスタックセグメントのためのスタックポインタ(特権レベル0,1,および2各々に1スタック)の態様を含んでいる。TSS220は、さらにタスクとページテーブルベースアドレスに関連するLDT215のためのセグメントセレクタを含んでいる。
タスクレジスタ240は、セグメントセレクタと、ベースアドレスと、セグメント権限と、カレントタスクのTSS220に関するディスクリプタ属性とを保持する。タスクレジスタ240は、ベースアドレスがTSS220のリニアアドレスを特定し、セグメント権限はTSS220内のバイト数を特定するGDT210におけるTSS220を参照する。LTR(ロードタスクレジスタ:load task register)命令とSTR(ストアタスクレジスタ:store task register)命令は、タスクレジスタ240のセグメントセレクタの一部を、各々ロードし、記録する。LTR命令がタスクレジスタ240内にセグメントセレクタをロードすると、TSSディスクリプタにより生成されたベースアドレス、権限、ディスクリプタ属性が自動的にタスクレジスタ240内にロードされる。タスクスイッチが起こると、タスクレジスタ240は、新しいタスクのためのTSS220に関するセグメントセレクタおよびディスクリプタが自動的にロードされる。タスクレジスタ240の内容は、タスクレジスタ240内の新TSS220情報が書き込みされる前に自動的にセーブされる。
IDT225は、外部からの割り込み、ソフトウェア割り込み、および例外を制御する。IDT225は、割り込みおよび例外ハンドラーにアクセスできるゲートディスクリプタの集合を包含する。IDT225内のゲートディスクリプタは、割り込みゲート、トラップゲート、タスクゲートの形式が可能である。プロセッサ105は、内部ハードウェア、外部割り込み制御器、もしくはソフトウェアから割り込みベクトルを受信すると割り込みおよび例外ハンドラーにアクセスする。GDT210と同様に、IDT225もセグメントではない。IDT225ベースのリニアアドレスは、IDTR(IDTレジスタ)230内に包含される。
制御レジスタ(Control Register:CR)235a〜eは、プロセッサ105および実行中のタスクの特性を規定する。制御レジスタ235a〜eは、システムレベル操作を制御するための種々のフラッグおよびデータを包含する。具体的には、CR0レジスタ235aは、プロセッサ105の操作モードとステーツ(状態)を制御するシステム制御フラッグを包含する。CR1レジスタ235bは、予約すなわちリザーブ状態となっている。CR2レジスタ235cは、ページフォルトリニアアドレスを有する。CR3レジスタ235dは、頻繁にページディレクトリベースレジスタとも称されるが、ページディレクトリ250のベースの物理アドレスと2つのフラッグを有する。この2つのフラッグは、プロセッサ105の内部データキャッシュ(図示せず)内のページディレクトリのキャッシュを制御する。CR4レジスタ235eは、アーキテクチャ拡張を可能にするフラッググループを有する。
プロセッサ105のx86アーキテクチャは、メモリ115(図1参照)もしくは仮想メモリ(ページングを介して)が直接的に物理アドレッシングを行うことをサポートできる。物理アドレッシングが使用されると、リニアアドレスは物理アドレスとして処理される。ページングが使用されると、コード、データ、スタック、システムセグメント、GDT210およびIDT215の全てが実質的にページングされる。
物理メモリ115のページ箇所は、4種類のタイプまたはレベルのシステムデータ構造に包含されている。ページングデータのベース物理アドレスは、制御レジスタCR235d内に包含されている。リニアアドレスは、ページング用に多重パーツに分解され、各ページングテーブル255とページフレーム260のそれぞれに別々のオフセットを送信する。図2に示す実施形態において、2段システムデータ構造が記載されている。ページディレクトリ250内のページエントリは、ページテーブル255、アクセス権限、メモリ管理情報のベースである物理アドレスを包含している。ページディレクトリ250のベース物理アドレスは、制御レジスタCR3235dに包含されている。図2の実施形態において、リニアアドレスは、ページング用に多重パーツに分解され、ページディレクトリ250とページテーブル255とページフレーム260に別々のオフセットを送信する。
本発明によると、SPCは、「超特権」命令にアクセスを有するプログラムを呼び出すことにより実行される当該命令シリーズを含んでいる。本明細書で使用する「プログラム」の用語は、手続き、機能、ルーチンなどのような論理ユニットまたはコードブロックの総括的な用語として用いられる。選択されたSPC命令へのアクセス制限は、現システムにはないコンピュータシステム100のセキュリティレベルを引き上げる。すなわち、本発明の出現により0特権レベルでのプログラム(例としてオペレーティングシステム、関連するデバイスドライバ)動作は、自動的にシステム100リソースへのアクセスを入手しない。その代わりに本発明のSPCは、さらなる詳細が以下に記載されるが、0特権レベルで動作する相違するプログラムへ選択的に相違する特権を付与してよい。例えば、特権付与モデムドライバ190のみが、(例えば制御コードに基づいて)物理ハードウェア180および無線装置185の伝送パラメータを設定する権限が付与される。
図4に例示的な「超特権」命令330と関連するアクセス権限325のリストが示され、これらの命令を呼び出す権限を有するプログラムに付与されるものである。例えば、エントリ350は、CR3レジスタ235dへアクセスする権限を有するオペレーティングシステムのみを表す。それ故、当該オペレーティングシステムがCR3レジスタ235dへアクセスしようとした場合、SPCは、アクセスを終了する許可をし、OS以外のプログラムによりCR3レジスタ235dへアクセスする要求は、拒否される。SPCが選択されたプログラムに超特権命令330を実行させる機構は、図5を参照してさらなる詳細が以下に記載される。
図4に示されるアクセス権限は、説明目的のためだけのものであることに留意されたい。このアクセス権限325および選択された特権命令330は、実装用の仕様であり、それ故、別の実装に変更可能であることは当業者であれば理解できよう。エントリ360は、GDT210へのアクセスを有するOSおよび関連するデバイスを示し、エントリ365は0特権レベルで動作するいずれのアプリケーションもIDTR230へのアクセスを有することを示している。エントリ370は、タスクレジスタ240へのアクセスを有するOSおよびデバイスドライバを表している。エントリ380は、物理ハードウェア180への排他アクセスを有する特権モデムドライバ190を表している。
図5に図1のコンピュータシステム100によって使用できる方法が示される。図5の方法は、コンピュータシステムに電源がオンされたときにSPCが初期化するブロック410で始まる。初期化している際にSPCは、SPCを格納する保護メモリ領域を規定するためにプロセッサ105の第1レジスタ162、第2レジスタ164に書き込む。他の実施形態では、2つのレジスタ162、164を使用する代わりに1つのレジスタを用いて保護メモリ領域を規定可能であることに留意されたい。すなわち、単一レジスタは、メモリ領域のスタートアドレスを認証するために使用されてよいし、一方で予め選択されたオフセット値がSPCを格納するメモリ領域のエンドアドレスを規定するために使用されてよい。
2つのレジスタ162、164は、一度書き込まれると、SPCが常駐する保護メモリ領域を定義する。保護メモリ領域は、SPCが実行されるメモリ115、ROM160、もしくは他の記録領域内に規定されてよい。レジスタがメモリ115内にメモリ領域を指すようにプログラムされた場合、SPCは2つのレジスタ162、164により規定される保護メモリ領域に自身をコピーし、他の全てのプログラムからSPCをシールドする。他の実施形態において、SPCは、SPCが最初に常駐した場所、ROM160を指すだけのために2つのレジスタ162、164をプログラムする。この場合、SPCはこれ以後、より速い速度で実行するためにメモリ115によりSPCを実行することが好ましいが、ROM160により直接的に実行する。
ブロック420では、プログラム(すなわち特権モデムドライバ190)が命令を実行しようとすると、プロセッサ105は、ブロック430で命令がSPCの一部である選択された特権命令330(図4参照)の1つであるか、判断する。命令が選択された特権命令330の1つではない場合、プロセッサ105は、ブロック435で当該命令を完遂させる。しかし、命令が選択された特権命令330の1つにより実行された場合、プログラムセッサ105は、ブロック440で例外を生成する。SPCは、ブロック450で、プロセッサ105で生成されたこの例外をトラップする。例えば、この命令は物理ハードウェア180のコンフィグレーション変更のためのものとしてもよい。
SPCは、ブロック460で、特権命令を実行しようとするプログラムが適切なアクセス権限を有するかを判断する。プログラム呼び出しにアクセスする権限は、例えば、図3に示すようにプログラム対プログラムを基本に付与される。一実施形態において、SPCは、呼び出しプログラムを認証するために呼び出しプログラムのアドレスを基ずいてスタックを参照する。他の実施形態においては、「Soft-Ice」の製品名で知られる市販のデバッガを、呼び出しプログラムの場所を認証するために使用される。特権命令を実行する権限が付与されたプログラムから呼び出しが派生している場合、SPCは、ブロック465で特権命令を実行する。例えば、物理ハードウェア180に向けられた設定コマンドが検出された場合、SPCは、それがモデムドライバ190から派生したものであることを認証する。
SPCは、プログラムの署名に基づいて、呼び出しプログラムの認証が可能であり、多くの場合この署名は呼び出しプログラムの設定期間に実装される。例えば、呼び出しプログラムがオペレーティングシステムであることを想定して、実装中に生成されたと想定されるオペレーティングシステムの署名は、後でオペレーティングシステムにより生成された呼び出しを認証するために使用されてよい。
ブロック460でSPCが呼び出しプログラムが特権命令へのアクセスを有さないと判断すると、リクエストはブロック470で拒否される。特権命令へのアクセスは、様々な理由により拒否される。第1に、呼び出しプログラムが特権命令へのアクセス権限を有さない場合、呼び出しプログラムの特権命令を実行する要請は、拒否され得る。もしコンバートプログラムが、物理ハードウェア180に新しい制御コードの書き込みを試みようとした場合、この要請は拒否され得る。第2に、SPCが呼び出しプログラムの認証を確認できない場合、特権命令へのアクセスは拒否され得る。すなわち、たとえ呼び出しプログラムが特権命令を呼び出すためのアクセス権限を有するとしても、SPCが、スタックを用いて、そのリクエストが、(呼び出しプログラム、例えば特権モデムドライバ190等、にみせかける悪質なコードではなく)特権命令を実行しようとする認証された呼び出し命令であると実際に確認することができない場合は、リクエストは拒否される。
図4を分かりやすく説明するための一例を以下に示す。この例では、ブロック420で特権モデムドライバ190が物理ハードウェア180の構築を変更するものとした。この説明のためにさらに、SPCが図3の特権命令を有し、図3に示されたプログラムリストが特権命令330へのアクセス権限325を有することを想定する。プロセッサ105は、ブロック430で、物理ハードウェアへのアクセスが特権命令であるかを判定し、特権命令である場合、図3に従って、プロセッサ105は、ブロック440で例外を生成する。ブロック450で、SPCは、ブロック440でプロセッサ105で生成された例外をトラップする。
SPCは、ブロック460で特権モデムドライバ190(即ち、呼び出しプログラム)が物理ハードウェア180のコンフィギュレーションを変更する権限を有するかどうかを判定する。物理ハードウェア180コンフィギュレーションの変更が許可する前に、SPCは、物理ハードウェア180を変更する最初のリクエストが実際に特権モデムドライバ190によるものかどうかを確認する。オペレーティングシステムの要請を認証する方法の1つとしては、スタックを参照することが挙げられる。スタックのアドレスから、特権モデムドライバ190が実際に物理ハードウェア180の構築を変更する要請を発行したことが確認された場合、SPCは、ブロック465で、物理ハードウェア180のコンフィギュレーションを変更する命令を実行する。SPCが物理ハードウェア180の構築を変更する命令を実行すると、プロセッサ105は、当該リクエストが、物理ハードウェア180の構築の変更を認証するSPCによって提供されたものであることから、例外を生成せずにリクエストを完了させる。
上記に記載した特定の実施形態は例に過ぎず、本発明は、本開示の教示から利益を得る
当業者にとって自明の、同等の別法によって変更および実施されてもよい。さらに、ここに記載した構成または設計の詳細が、添付の特許請求の範囲以外によって制限を受けることはない。このため、上記に記載した特定の実施形態を変形または変更することが可能であり、この種の変形例の全てが本発明の範囲ならびに趣旨に含まれることが意図されることが明らかである。従って、ここに保護を請求する対象は、添付の特許請求の範囲に記載したとおりである。
本発明の例示的な一実施形態による認証エージェントを備えた利用者局を含む通信システムの略式ブロック図。 図1の通信システムにおいて利用者局を具体化する例示的なコンピュータの略式ブロック図。 図2のコンピュータシステムにおいて使用されるプロセッサの一実施形態の説明図。 図1のコンピュータシステムにおいて特権付与される命令の一実施形態のリストの説明図。 本発明による図1のコンピュータシステムにより使用される特権命令を認証するための方法の説明図。

Claims (22)

  1. 通信システムであって、
    複数の制御コードに従って通信チャネルを介してデータの通信を行うための物理層ハードウェアを有し、前記物理層ハードウェアユニットは、アナログの着信信号を復調してデジタル受信信号を生成し、かつ、デジタルの伝送信号を変調してアナログの伝送信号を生成するためのものであり、
    前記物理層ハードウェアとのインタフェースとなる特権ドライバを実行するための処理ユニットを有し、前記特権ドライバは、デジタルの受信信号の復号化、デジタルの伝送信号の符号化、及び複数の制御コードに基づいてデジタル受信信号の受信及びデジタル伝送信号の伝送を行うための物理層ハードウェアのコンフィギュレーションを行うためのプロトコル層を実装するためのプログラムを有するものであり、
    特権コードを記録するためのメモリを有し、前記特権コードは、前記処理ユニットにより実行されると、前記物理層ハードウェアのコンフィギュレーションを規定するための特権命令を実行するための権限を呼び出しプログラムが有するか否かを判定し、権限を有すると判定されると、その判定に応答して、前記処理ユニットが前記特権命令を実行する、システム。
  2. 前記特権プログラムを実行するためのリクエストが呼び出しプログラムから受信され、前記特権コードが前記処理ユニットにより実行されると、前記特権コードは、前記物理層ハードウェアのコンフィギュレーションを規定するための命令を特権命令として定義する、請求項1記載のシステム。
  3. 前記特権コードは、実行された場合、前記呼び出しプログラムが前記特権ドライバを有するか否かを判定するものである、請求項2記載のシステム。
  4. 第1のレジスタと第2のレジスタとを有し、前記特権コードは、実行された場合、前記特権命令が格納されるコンピュータシステムのメモリ領域を形成するように前記第1のレジスタと前記第2のレジスタとに書込みを行う、請求項2記載のシステム。
  5. 前記特権コードは、実行された場合、前記呼び出しプログラムが前記特権命令を実行する権限を有するか否かを、コンピュータシステムのスタックを参照することで判定して前記呼び出しプログラムの確認を行うためのものである、請求項2記載のシステム。
  6. 前記特権コードは、実行された場合、前記呼び出しプログラムの認証を行うことで、前記呼び出しプログラムが前記特権命令を実行する権限を有するか否かを判定するためのものである、請求項2記載のシステム。
  7. 前記特権コードは、実行された場合、前記特権コード命令を実行しようとする呼び出しプログラムに応答して、前記処理ユニットにより生成された例外を受信することで前記特権命令を実行するためのリクエストを受信するためのものである、請求項2記載のシステム。
  8. 前記制御コードは、電力レベル割り当て、周波数割り当て、及びタイムスロット割り当てのうち少なくとも一つを含む、請求項1記載のシステム。
  9. 前記処理ユニットは、マイクロプロセッサを含む、請求項1記載のシステム。
  10. 前記特権コードを実行するためのプロセッサ複合体と、
    前記プロセッサ複合体に結合されたバスと、
    前記バスに結合され、物理層ハードウェアを含んだ拡張カードと、を含む、請求項1記載のシステム。
  11. 通信システムであって、
    複数の制御コードに従って通信チャネルを介してデータの通信を行うための物理層ハードウェアを有し、前記物理層ハードウェアユニットは、アナログの着信信号を復調してデジタル受信信号を生成し、かつ、デジタルの伝送信号を変調してアナログの伝送信号を生成するためのものであり、
    前記物理層ハードウェアとのインタフェースとなる特権ドライバを実行するための処理ユニットを有し、前記特権ドライバは、デジタルの受信信号の復号化、デジタルの伝送信号の符号化、及び複数の制御コードに基づいてデジタル受信信号の受信及びデジタル伝送信号の伝送を行うための物理層ハードウェアのコンフィギュレーションを行うためのプロトコル層を実装するためのプログラムを有するものであり、
    特権コードを記録するためのメモリを有し、前記特権コードは、前記物理層ハードウェアのコンフィギュレーションを規定するための命令を特権命令として定義するための処理ユニットが前記特権プログラムを実行するためのリクエストを呼び出しプログラムから受信すると、前記呼び出しプログラムが前記特権命令を実行するための権限を有するか否かを判定し、権限を有すると判定されると、その判定に応じて前記特権命令を実行する、システム。
  12. トランシーバのコンフィギュレーションを行う方法であって、
    着信アナログ信号を復調して複数の制御コードに基づいてデジタル受信信号を生成し、
    デジタル伝送信号を変調して前記制御コードに基づいてアナログ伝送信号を生成し、
    特権ドライバを実行して複数の制御コードのコンフィギュレーションを実行し、
    前記複数の制御コードのコンフィギュレーションのための特権命令を実行する権限を呼び出しプログラムが有するか否かを判定し、
    前記呼び出しプログラムに前記特権命令を実行する権限があると判定されたことに応答して前記特権命令を実行する、方法。
  13. 前記制御コードのコンフィギュレーションのための命令を特権命令として規定し、
    呼び出しプログラムから前記特権命令を実行するためのリクエストを受信する、請求項12記載の方法。
  14. 前記呼び出しプログラムが前記特権命令を実行する権限を有するかの判定では、前記呼び出しプログラムが前記特権ドライバーを有するかの判定がなされる、請求項13記載の方法。
  15. 前記呼び出しプログラムが前記特権命令を実行する権限を有するかの判定では、前記呼び出しプログラムの確認を行うためにコンピュータシステムのスタックの参照が更に行われる、請求項13記載の方法。
  16. 前記呼び出しプログラムが前記特権命令を実行する権限を有するか否かの判定では、前記呼び出しプログラムの認証が更に行われる、請求項13記載の方法。
  17. 前記特権命令を実行するための前記リクエストの受信では、前記特権命令を実行しようとする呼び出しプログラムに応答して例外の受信が行われる、請求項13記載の方法。
  18. 前記着信アナログ信号の復調では、周波数割り当てとタイムスロット割り当てとの少なくとも一方に基づいて、前記着信アナログ信号の復調がなされる、請求項12記載の方法。
  19. 前記デジタル伝送信号の変調では、電力レベル割り当て、周波数割り当て、及びタイムスロット割り当てのうち少なくとも一つに基づいてデジタル伝送信号の変調がなされる、請求項12記載の方法。
  20. トランシーバのコンフィギュレーションを行う方法であって、
    着信アナログ信号を復調して複数の制御コードに基づいてデジタル受信信号を生成し、
    デジタル伝送信号を変調して前記制御コードに基づいてアナログ伝送信号を生成し、
    特権ドライバを実行して複数の制御コードのコンフィギュレーションを実行し、
    前記制御コードのコンフィギュレーションのための命令を特権命令として規定し、
    呼び出しプログラムから前記特権命令を実行するためのリクエストを受信し、
    前記特権命令を実行する権限を前記呼び出しプログラムが有するか否かを判定し、
    前記呼び出しプログラムに前記特権命令を実行する権限があると判定されたことに応答して前記特権命令を実行する、方法。
  21. 通信システムであって、
    着信アナログ信号を復調して複数の制御コードに基づいてデジタル受信信号を生成する手段と、
    デジタル伝送信号を変調して前記制御コードに基づいてアナログ伝送信号を生成する手段と、
    特権ドライバを実行して複数の制御コードのコンフィギュレーションを実行する手段と、
    前記複数の制御コードのコンフィギュレーションのための前記特権命令を実行する権限を前記呼び出しプログラムが有するか否かを判定し、
    前記呼び出しプログラムに前記特権命令を実行する権限があると判定されたことに応答して前記特権命令を実行する、システム。
  22. 前記制御コードのコンフィギュレーションのための命令を特権命令として規定する手段と、
    呼び出しプログラムから前記特権命令を実行するためのリクエストを受信する手段と、を有する請求項21記載のシステム。
JP2003513276A 2001-07-09 2002-06-12 特権モデムドライバを有するコンピュータシステム Expired - Fee Related JP3976730B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/901,503 US6842803B2 (en) 2001-07-09 2001-07-09 Computer system with privileged-mode modem driver
PCT/US2002/018859 WO2003007644A1 (en) 2001-07-09 2002-06-12 Computer system with privileged-mode modem driver

Publications (3)

Publication Number Publication Date
JP2004535734A JP2004535734A (ja) 2004-11-25
JP2004535734A5 JP2004535734A5 (ja) 2006-01-05
JP3976730B2 true JP3976730B2 (ja) 2007-09-19

Family

ID=25414316

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003513276A Expired - Fee Related JP3976730B2 (ja) 2001-07-09 2002-06-12 特権モデムドライバを有するコンピュータシステム

Country Status (8)

Country Link
US (1) US6842803B2 (ja)
EP (1) EP1405536B1 (ja)
JP (1) JP3976730B2 (ja)
KR (1) KR100920495B1 (ja)
CN (1) CN1248529C (ja)
DE (1) DE60211163T2 (ja)
TW (1) TWI253246B (ja)
WO (1) WO2003007644A1 (ja)

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6993010B1 (en) * 2000-07-07 2006-01-31 Mindspeed Technologies, Inc. Spoofing to preserve a communication link
SE0004326D0 (sv) * 2000-11-24 2000-11-24 Ericsson Telefon Ab L M Base station identification
US6985519B1 (en) * 2001-07-09 2006-01-10 Advanced Micro Devices, Inc. Software modem for communicating data using separate channels for data and control codes
FI115257B (fi) * 2001-08-07 2005-03-31 Nokia Corp Menetelmä informaation käsittelemiseksi elektroniikkalaitteessa, järjestelmä, elektroniikkalaite ja suoritinlohko
US7318225B1 (en) * 2001-09-21 2008-01-08 Novatel Wireless, Inc. Object oriented software architecture for software reconfigurable wireless modem
US20030231649A1 (en) * 2002-06-13 2003-12-18 Awoseyi Paul A. Dual purpose method and apparatus for performing network interface and security transactions
US8213994B2 (en) * 2002-08-07 2012-07-03 Interdigital Technology Corporation Mobile communications system and method for providing common channel coverage using beamforming antennas
US8861466B2 (en) 2002-08-07 2014-10-14 Interdigital Technology Corporation Mobile communication system and method for providing common channel coverage using beamforming antennas
US7600058B1 (en) * 2003-06-26 2009-10-06 Nvidia Corporation Bypass method for efficient DMA disk I/O
US8683132B1 (en) 2003-09-29 2014-03-25 Nvidia Corporation Memory controller for sequentially prefetching data for a processor of a computer system
US7120794B2 (en) * 2003-10-29 2006-10-10 Qualcomm Inc. System for invoking a privileged function in a device
US7395083B2 (en) * 2003-10-30 2008-07-01 Research In Motion Limited Methods and apparatus for the communication of cellular network information between a wireless local area network and a mobile station
US8356142B1 (en) 2003-11-12 2013-01-15 Nvidia Corporation Memory controller for non-sequentially prefetching data for a processor of a computer system
EP2259626B1 (en) 2003-11-19 2012-03-14 Research In Motion Limited Methods and apparatus for providing network broadcast information to wlan enabled wireless communication devices
US8700808B2 (en) * 2003-12-01 2014-04-15 Nvidia Corporation Hardware support system for accelerated disk I/O
US7084758B1 (en) 2004-03-19 2006-08-01 Advanced Micro Devices, Inc. Location-based reminders
US7587347B2 (en) * 2004-10-19 2009-09-08 Citadel Investment Group, L.L.C. Computer implemented and/or assisted methods and systems for detecting, tracking and responding to toxic, or likely toxic, orders in an equities order flow using toxicity and/or profit analyzers
US8356143B1 (en) 2004-10-22 2013-01-15 NVIDIA Corporatin Prefetch mechanism for bus master memory access
US8000735B1 (en) 2004-12-01 2011-08-16 Globalfoundries Inc. Wireless modem architecture for reducing memory components
US8332198B1 (en) 2005-03-22 2012-12-11 Advanced Micro Devices, Inc. Data generation and collection from a real-time system for non-real-time software simulation
CN101005308B (zh) * 2006-01-17 2012-08-29 上海原动力通信科技有限公司 宽带时分双工移动通信系统的物理层随机接入方法
US20080155159A1 (en) * 2006-12-22 2008-06-26 Rivas Mario A Integrated communication and information processing system
US8645965B2 (en) 2007-12-31 2014-02-04 Intel Corporation Supporting metered clients with manycore through time-limited partitioning
TWI460657B (zh) 2008-09-05 2014-11-11 Asustek Comp Inc 更新與修復基本輸入輸出系統的方法
US8356128B2 (en) * 2008-09-16 2013-01-15 Nvidia Corporation Method and system of reducing latencies associated with resource allocation by using multiple arbiters
US8370552B2 (en) * 2008-10-14 2013-02-05 Nvidia Corporation Priority based bus arbiters avoiding deadlock and starvation on buses that support retrying of transactions
US8698823B2 (en) 2009-04-08 2014-04-15 Nvidia Corporation System and method for deadlock-free pipelining
US8943552B2 (en) 2009-04-24 2015-01-27 Blackberry Limited Methods and apparatus to discover authentication information in a wireless networking environment
US8467359B2 (en) 2010-05-13 2013-06-18 Research In Motion Limited Methods and apparatus to authenticate requests for network capabilities for connecting to an access network
US8665842B2 (en) 2010-05-13 2014-03-04 Blackberry Limited Methods and apparatus to discover network capabilities for connecting to an access network
US8644276B2 (en) 2010-05-13 2014-02-04 Research In Motion Limited Methods and apparatus to provide network capabilities for connecting to an access network

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3828327A (en) 1973-04-30 1974-08-06 Ibm Simplified storage protection and address translation under system mode control in a data processing system
US5347636A (en) * 1985-11-08 1994-09-13 Nec Corporation Data processor which efficiently accesses main memory and input/output devices
JPH01147723A (ja) * 1987-12-04 1989-06-09 Nec Corp 情報処理装置のパイプライン処理方式
US6014705A (en) * 1991-10-01 2000-01-11 Intermec Ip Corp. Modular portable data processing terminal having a higher layer and lower layer partitioned communication protocol stack for use in a radio frequency communications network
JP2679363B2 (ja) * 1989-06-20 1997-11-19 日本電気株式会社 マイクロプロセッサ
WO1992017839A1 (en) * 1991-04-01 1992-10-15 Cray Research, Inc. Privileged instruction trap for operating system control
US5812639A (en) * 1994-12-05 1998-09-22 Bell Atlantic Network Services, Inc. Message communication via common signaling channel
US5784615A (en) * 1994-12-13 1998-07-21 Microsoft Corporation Computer system messaging architecture
US5948097A (en) * 1996-08-29 1999-09-07 Intel Corporation Method and apparatus for changing privilege levels in a computer system without use of a call gate
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
US6154818A (en) 1997-11-20 2000-11-28 Advanced Micro Devices, Inc. System and method of controlling access to privilege partitioned address space for a model specific register file
US6360281B1 (en) * 1998-05-29 2002-03-19 3Com Corporation System and method for communicating with a serial communications device using multiple virtual ports
JP4535619B2 (ja) 1998-10-12 2010-09-01 テレフオンアクチーボラゲット エル エム エリクソン(パブル) Tdma/tddシステム用のリンクと無線セルの適用
JP2000196611A (ja) * 1998-12-25 2000-07-14 Sony Corp 情報受信装置、及び情報送受信システム
US7423983B1 (en) * 1999-09-20 2008-09-09 Broadcom Corporation Voice and data exchange over a packet based network
FI991134A (fi) 1999-05-18 2000-11-19 Sonera Oyj Ohjelmiston testaus
US6718485B1 (en) * 1999-11-16 2004-04-06 Parasoft Corporation Software emulating hardware for analyzing memory references of a computer program
US7003571B1 (en) * 2000-01-31 2006-02-21 Telecommunication Systems Corporation Of Maryland System and method for re-directing requests from browsers for communication over non-IP based networks
US6976174B2 (en) * 2001-01-04 2005-12-13 Troika Networks, Inc. Secure multiprotocol interface
US6883099B2 (en) * 2001-01-04 2005-04-19 Troika Networks, Inc. Secure virtual interface

Also Published As

Publication number Publication date
DE60211163D1 (de) 2006-06-08
EP1405536A1 (en) 2004-04-07
US20030031148A1 (en) 2003-02-13
US6842803B2 (en) 2005-01-11
EP1405536B1 (en) 2006-05-03
JP2004535734A (ja) 2004-11-25
KR100920495B1 (ko) 2009-10-08
KR20040027872A (ko) 2004-04-01
WO2003007644A1 (en) 2003-01-23
CN1526250A (zh) 2004-09-01
CN1248529C (zh) 2006-03-29
TWI253246B (en) 2006-04-11
DE60211163T2 (de) 2007-04-19

Similar Documents

Publication Publication Date Title
JP3976730B2 (ja) 特権モデムドライバを有するコンピュータシステム
US7383432B1 (en) Software modem with hidden authentication commands
US6973566B2 (en) Software modem with privileged mode oversight of control parameters
US7206933B2 (en) Software modem with privileged mode driver authentication
US20030009678A1 (en) Software modem for communicating data using encrypted data and unencrypted control codes
US7096353B2 (en) Software modem with privileged mode decryption of control codes
US6985519B1 (en) Software modem for communicating data using separate channels for data and control codes
US20030009676A1 (en) Peripheral device with secure driver

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050613

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050613

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070517

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: 20070522

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070619

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

Free format text: PAYMENT UNTIL: 20100629

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20100629

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20110629

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110629

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120629

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees