USBはUniversalSirialBusの頭文字をとった略称です。
名前から推測できる通りシリアルバスの一つの規格で、古くはRS−232Cに代表されるシリアル等があります。
シリアルバスとはIEEE1394の項でも触れましたが、一本の線でデータをやり取りするものです。
ではなぜこのUSBがこんなにも広く普及しているのでしょうか?
USBが考案され広く利用されるきっかけになったのは、周辺機器との簡単な接続性と、
インターフェース(接続部)のコストを低くできるためです。
USBが登場する以前のインターフェースはRS−232C/RS−422/SCSI/GPIB/パラレル/ADB/独自のものと、
様々でした。
それぞれに特徴があり、長所短所を共に備え、補う形で存在していました。
周辺機器によってそのインターフェースが使い分けられていたのです。
ですがユーザーにとって、幾つものインターフェースを利用しなければならないということは、
その特性をある程度知らなければ利用できず、またインターフェースへのコストも考えなければなりませんでした。
当初USBはマウスやキーボード・モデム等の、比較的低速のパソコン周辺機器のインターフェースとして利用できるよう考えられました。
その理由は、取り扱いの簡便性と通信速度にあります。
取り扱いの簡便性とは、プラグ&プレイを実現したところにあります。
これはパソコンの電源投入状態に関わらずコネクタを機器に接続することができ、
電源投入時であればその機器がすぐに利用できるということです。
特殊な周辺機器を除き、標準的な物であれば既に用意されたドライバ等が自動的に読み込まれて実行されるというものです。
これによってユーザは接続に関する知識を必要とせず、多くの人が利用できるということになります。
また、多くの周辺機器のインターフェースを共通化できること、
負荷のかかる処理をUSBのホストコントローラ側で極力行うようにすることにより、機器のコストダウンを図る事もできます。
さらにUSBハブを使う事により、
最大126台もの周辺機器を接続する事ができるのです(機器間は最大5m終端までの長さ30m以内)。
ただし通信速度面で言うと少しデメリットも有ります。これはUSBの通信速度が最大12Mbpsだからです。
USBは通常二つのスピードで通信する事ができ、フルスピードモードで12Mbps、ロースピードモードで1.5Mbpsです。
とは言ってもシリアルの115.2Kbpsに比べれば大幅にスピードアップしているのですが、
一番最初のSCSI規格の40Mbpsから比べてもやはり遅く、
ストレージ系(ハードディスク等)の周辺機器にはあまり向かないのです。
ですが、アップルがiMacで周辺機器のインターフェースをUSB一本に統一し、
インテルが自社チップセット内にUSBコントローラを内蔵したのをきっかけに、爆発的にUSBは広がりを見せ、
その簡便性から様々な機器が発売されました。
その結果プリンタ・スキャナー、デジタルカメラ等の機器や、当初向かないとされていたストレージ系の機器、
ハードディスクやMO・CD・CD−R・オーディオスピーカー等々とありとあらゆるものがUSB接続機器として発売されています。
ただしスピードはいまいちなのですが...
また今までの周辺機器資産を無駄にしないよう、USB−シリアル・USB−パラレル・USB−SCSI等の
変換機器も数多く発売され、今までの単なるインターフェースとは一線を画す広がりを見せています。
更にストレージ系の高速通信に耐えられる規格として、USB2.0が考案されました(以前のものはUSB1.1)。
これは同じ仕様の機器で接続できるUSB1.1の上位規格であり、
二つのスピードモード以外にハイスピードモードをサポートするというものです。
このハイスピードモードは480Mbpsで通信する事ができ、IEEE1394の400Mbpsよりも20%も高速なのです。
最近はUSB2.0に対応したパソコンや周辺機器が幾つか出てきていますので、
あっという間に市場を埋め尽くすんじゃないでしょうか?(確証はありませんが)
それにIEEE1394にもあるアイソクロノス転送もサポートしていますしね。
対応OSについて少し触れます。
初めてUSB機器の接続がサポートされたOSはWindows95OSR2
(オペレーティングシステム・リリースバージョン2)でしたが、まともに動作するUSB機器は少なかったようです。
ですから本格的にはWindows98以降からが、USBをまともにサポートされたOSといえるでしょう。
またUSBという新しい規格のサポートに伴い、
以前のWindowsベースのドライバではなくWDM形式というWindowsNT系ドライバの考え方を導入し、
ユーザだけではなく周辺機器メーカー側にもその構造上、開発しやすいものとなっています。
現在のWindowsMeやWindows2000では、なんの心配も無くUSB機器が使用できるようです。
周辺機器のインターフェースをUSB一本に統一して世に出たMacintoshの方はというと、
iMac発売当初はMacOS8.1を
iMac専用OSとして特別にUSB機能を追加したもので動作させていました。
ですが、Windows95OSR2と同様に完全に動作する機器が少なく、こちらも新しいOSを待たなければなりませんでした。
Macintoshは機種とOSの組み合わせで何故かUSBの対応が違い色々問題があったのですが、
アップルはUSBのサポートバージョンを細かく変更し、
全てのMacintoshとMacOS8.51以上の組み合わせで安心して使えるようになったと思います。
WindowsやMacintosh以外ではLinaxやFreeBSDなど、
様々なOSでUSBをサポートしようと取組んでいる団体も数多く多くあり、今後のサポートが楽しみです。