マスタースレーブ

出典: フリー百科事典『ウィキペディア(Wikipedia)』
Jump to navigation Jump to search

マスタースレーブ: master-slave)は、複数の機器が協調動作する際に、複数機器の制御・操作を司る「マスター」機と、マスター機の一方的な制御下で動作する「スレーブ」機に役割を分担する方式のこと。

コンピュータにおけるマスタースレーブ[編集]

コンピュータにおけるマスタースレーブは、通信プロトコルのモデルの一種であり、1つのハードウェアプロセスが他の1つまたは複数のデバイスやプロセスを一方的に制御することをいう。デバイスやプロセス群でマスタースレーブ関係が確立されると、制御は常にマスターからスレーブに対して行われる。一群の同等のデバイスからマスターを1つ選び、他がスレーブとなる場合もある[1][2][3]マスター/スレーブという書き方もある。

  • クライアントサーバモデルでは、クライアントがマスター、サーバがスレーブである。
  • データベースレプリケーションでは、正式とされているマスターデータベースにスレーブデータベースを同期させる。
  • コンピュータバスでは、一般にCPUがマスター、周辺機器がスレーブである。ただし、バス上のトランザクションを発行するものがその時点のマスターとなる方式もある。
  • parallel ATAハードディスクドライブにはマスターとスレーブがあるが、マスターがスレーブを制御するわけではない。また、マスターがスレーブに何らかの意味で優先するわけでもない。マスターは単に0番のデバイスを意味し、スレーブは1番のデバイスを意味する。
  • Macintosh においては、Macintosh をThunderbolt ハードディスクドライブとして(つまりディスクスレーブモードで)起動する Target Disk Mode がある。これ以前の Macintosh では同様のFireWireSCSI Disk Mode が存在した。

ロボットにおけるマスタースレーブ[編集]

ロボットやマニピュレータが完全自律動作できる判断力をコンピュータに持たせるのは困難であるため、マニピュレータの遠隔操作では、人の手元にあるマスターアームを操作し、その動きを遠隔のスレーブアームがトレースする、マスタースレーブ式の遠隔操作が行われる。[4]

その他の例[編集]

論争[編集]

マスター(主人)とスレーブ(奴隷)という用語はしばしば論争の的となることがある。

2003年11月、ロサンゼルス郡は電子メールで出入り業者に対してこれらの用語を使った製品を納入しないよう要求した[5][6][7]。これに対してIT業界ではばかげた主張だとして取り合わない動きが大勢を占めた[8]。マスタースレーブという用語はデバイス内部で起きていることを正確に表した技術用語であり、かつて存在した奴隷制度とは何の関係もないというのがその理由であった(ポリティカル・コレクトネスも参照)。

一方で、こうした論争を避けるため、データベースの分野ではマスタースレーブの代替語として「プライマリー」や「レプリカ」といった語句を採用するケースもある。2018年には、プログラミング言語Pythonが論争の末、マスタースレーブを「ペアレント」や「ワーカー」「ヘルパー」といった語句に置き換えている。[9]

脚注[編集]

関連項目[編集]