Master-slave
Master/slave is a model for a communication protocol where one device or process has unidirectional control over one or more other devices.
Once a master/slave relationship between devices or processes is established, the direction of control is always from the master to the slaves.
In some systems a master is elected from a group of eligible devices, with the other devices acting in the role of slaves.
Examples
-
Peripherals connected to a bus in a computer system.
- A series of diesel locomotives is often used in tandem to pull heavy loads, or to ascend and descend steep mountains. The first engine in the front is the master, and the other engines (often completely without a cab with controls for the engineer) are the slaves.
- Duplication is often done with several cassette tape or compact disc recorders linked together. Operating the controls on the master triggers the same commands on the slaves, so that recording is done in parallel.
- In parallel ATA hard drive arrangements, the terms master and slave are used but neither drive has control over the other. The terms also do not indicate precedence of one drive over the other in most situations. "Master" is merely another term for device 0 and "slave" indicates device 1.
Many in the Information Technology field rebuff this claim of discrimination and offence as ridiculous, noting that the master/slave terminology accurately reflects what is going on inside the device and that this was not intended in any way to be a reference to slavery as it existed in the United States.
Recently, there were rumors of a major push to change the way hardware manufacturers refer to these devices. It has not had much effect on most of the products being produced. It may not matter in a few years, with SATA replacing older IDE (PATA) drives. This standard allows only one drive per connection, and does not require the use of master/slave terms.