マスタースレーブ(英: master-slave)は、複数の機器が協調して動作する際に、複数の機器の制御・操作を司る「マスター」機と、マスター機の一方的な制御下で動作する「スレーブ」機に役割を分担する方式のこと。
コンピュータにおけるマスタースレーブ
コンピュータにおけるマスタースレーブは、通信プロトコルのモデルの一種であり、1つのハードウェアやプロセスが他の1つまたは複数のデバイスやプロセスを一方的に制御することをいう。デバイスやプロセス群でマスタースレーブ関係が確立されると、制御は常にマスターからスレーブに対して行われる。一群の同等のデバイスからマスターを1つ選び、他がスレーブとなる場合もある[1][2][3]。マスター/スレーブという書き方もある。
ロボットにおけるマスタースレーブ
ロボットやマニピュレータが完全自律動作できる判断力をコンピュータに持たせるのは困難であるため、マニピュレータの遠隔操作では、人の手元にあるマスターアームを操作し、その動きを遠隔のスレーブアームがトレース(追尾)する、マスタースレーブ式の遠隔操作が行われる[4]。
動作量を拡大・縮小させることも可能であり、ロボット支援手術では外科医の手の動きを縮小することで、人間の手では不可能な細かさの手術を行うマイクロサージャリーが発展した。
その他の例
論争
マスター(主人)とスレーブ(奴隷)という用語はしばしば論争の的となることがある。
2003年11月、ロサンゼルス郡は電子メールで出入り業者に対してこれらの用語を使った製品を納入しないよう要求した[5][6][7]。これに対してIT業界ではばかげた主張だとして取り合わない動きが大勢を占めた[8]。マスタースレーブという用語はデバイス内部で起きていることを正確に表した技術用語であり、かつて存在した奴隷制度とは何の関係もないというのがその理由であった(ポリティカル・コレクトネスも参照)。
一方で、こうした論争を避けるため、データベースの分野ではマスタースレーブの代替語として「プライマリー」や「レプリカ」といった語句を採用するケースもある。2018年には、プログラミング言語Pythonが論争の末、マスタースレーブを「ペアレント」や「ワーカー」「ヘルパー」といった語句に置き換えている[9]。
2020年6月より、ジョージ・フロイド抗議運動およびブラック・ライヴズ・マター運動の影響によりマスタースレーブの語句を取りやめる機運が起こり[10][11]、多数のIT企業・OSSコミュニティに急激に広がっている[12]。
脚注
関連項目
外部リンク