[ホーム] > [間違えやすい類語 IT編一覧] > [カーネルモードとユーザモード ドライバの違い]
このページではWindowsにおけるユーザモードドライバとカーネルモードドライバの違いに関して説明します。
一言でいうと"動作するモード"です。カーネルモードは高速に動作しますがバグがあるとOSが停止する可能性があります。Windowsの場合はBSOD、ブルースクリーンです。一方でユーザモードは低速で動作しますが、バグがあってもOS全体を停止させるような深刻な状態にはなりません。
以下の図の通りユーザモードは直接OSやデバイスを操作するので高速となります。一方でユーザモードはAPIを通してアクセスするので低速となります。
(注意)分かりやすく簡単に記載しており、一部の環境や分野では記載内容が異なる可能性があります。あくまでも参考程度でお読みください。
説明 | カーネルモードドライバ | ユーザモードドライバ |
概要 | 一般的なドライバ。OSの一部として動作する。CPUのカーネルモードで動作する。 | CPUのユーザモードというモードで動作するドライバ。カーネルモードと比較して動作が低速だが、ユーザモードに問題が発生してもシステム全体に影響を与えにくい。 |
メモリ空間 | OSおよびすべてのドライバでアドレスを共有する。 | ・独自の仮想アドレスを持つ。 ・OSのアドレスにアクセスすることはできない。 |
メリット | 直接カーネルやデバイスを操作するため高速。 | 一つのドライババグで不具合が発生してもOSとは独立した仮想アドレスを持つためOSに影響を与える可能性はほぼない。 |
デメリット | 一つのドライバがバグで不具合が発生した場合、OS全体がクラッシュする可能性が高い。(特にメモリを不正に書き換えた場合など) | 主にWindows APIを使用してカーネルやデバイスを操作するため低速。 |
その他 | ほとんどのドライバがカーネルモードドライバ。 | 一部のプリンタドライバなどがユーザモードドライバ。 |
関連リンク:
ドライブとドライバの違いは何?
Windowsにおけるユーザ名(アカウント名)とフルネームの違い
Office365とOffice2016の個人ユーザ目線の違い
ユーザパスワードとグループパスワードの違い | CentOS
ヘルプデスク、ユーザサポート、テクニカルサポート、コールセンターの違い
"ローカルユーザプロファイル" と "移動ユーザプロファイル"の違い
[ホーム] > [間違えやすい類語 IT編一覧]
,