ArticleslgStudy

computer science

Master–slave (technology)

Master–slave (technology) is a computer science topic covered in the lgStudy science library. This page brings together a partial reference excerpt, illustrations, worked examples, real-world applications and a short study plan, so you can understand Master–slave (technology) rather than just read about it. In short: In engineering, master–slave is a relationship between two systems in which one controls the other. In some cases, one master controls just one slave system, but in others, there are multiple slave systems controlled by the same master.

Key takeaways

  • Master–slave (technology) belongs to computer science; place it in that map before memorising details.
  • Learn the definition first, then one example that makes the definition concrete.
  • Connect Master–slave (technology) to a quantity you can measure, compute or draw — that is where exam questions come from.
  • Reproduce the core statement of Master–slave (technology) from memory before moving on to harder problems.

Reference excerpt

In engineering, master–slave is a relationship between two systems in which one controls the other. In some cases, one master controls just one slave system, but in others, there are multiple slave systems controlled by the same master. Sometimes the master is a different kind of system than the slave, but sometimes there are multiple similar systems and one of them is designated the master in order to centralize external (i.e., user) control of the collection. It is also used to distingush between systems that only issue commands (master) and those that only accept commands (slave). Due to its association with slavery, the terminology is a subject of controversy and has been replaced with alternative terms in some cases.

Examples

In photography, secondary, or slave, flash units are connected to a master unit to provide synchronized lighting. Parallel audio duplication often entails multiple recording with devices (i.e., for cassette tape or compact disc) linked together so that operating the controls of a master device triggers the same commands on slave devices. Railway locomotives operating in the same train (for example, to pull a load too heavy for a single locomotive) may be configured for master–slave operation with all but one of the locomotives controlled from the first. See Multiple-unit train control. In a hydraulic system, a master cylinder is a control device that converts force into hydraulic pressure that drives movement in a slave cylinder at the other end of the hydraulic line. A common application is a vehicle brake system. A master clock provides time signals used to synchronize one or more slave clocks as part of a clock network. A slave clock receives and displays the time from a master, though it may be able to keep time itself if the master is not working.

Computing Computer bus protocols often use a master-slave relationship. For instance, a USB host manages access to the USB bus shared by any number of USB devices. A serial peripheral interface (SPI) bus typically has a single master controlling multiple slaves. I2C and I3C may even have multiple masters on a bus. Modbus also uses a master device to initiate connection requests to slave devices. An edge-triggered flip-flop can be created by arranging two gated latches in a master–slave configuration. It is so named because the master latch controls the slave latch's value and forces the slave latch to hold its value, as the slave latch always copies its new value from the master latch. In database replication, the master database is the authoritative source. The slave or replica database is controlled by the master database, which repeats its update commands (for example by way of event log) to the slave. The slave therefore retains an exact copy of transaction processed by the source database (up to the most recently transmitted log) This scheme is not as strict as electronic devices sharing a clock, however the slave database only does what the master tells it, unless the slave is promoted due to failure of the master. Some databases implement so called multi-master replication, where a mix of writeable master nodes and readable nodes is used. These databases are used in scenarios where performance is an acceptable tradeoff for ACID properties, for example, non-mission-critical data, like suggesting similar purchases.

Non-examples The term master is used in some technology contexts that do not refer to a relationship of control. Master may be used to mean a copy that has more significance than other copies, in which case the term is an absolute concept, not a relationship. Sometimes the term master–slave is used in contexts that do not imply a controlling relationship. In source code management master may refer to the trunk. In disk imaging, the gold master is the version that will be released to manufacturing for duplication. A Parallel ATA (aka IDE) hard drive interface supports two hard drives on a cable, which are designated master and slave. The distinction is required by the interface even though neither drive has control or priority over the other.

History The master–slave terminology was first used in 1904. The terminology was used in 1988 for RFC 1059 and in 1997 for RFC 2136, related to the domain name system. In 2020, Paul Vixie commented on his choice of words:

I introduced the master/slave terminology in RFC 2136, because I needed names for the roles in an AXFR/IXFR transaction, and the zone transfer hierarchy could be more than one layer deep, such that a server might initiate some AXFR/IXFR's to the "primary master" but then respond to AXFR/IXFR's from other servers. In retrospect I should have chosen the terms, "transfer initiator" and "transfer responder". However, the hydraulic brake and clutch systems in my car had "master cylinders" and "slave cylinders", and so I did not think I was either inventing a new use for the words "master" and "slave", or that my use of them for this purpose would be controversial. Said hydraulic brakes for the automotive industry were patented in 1917 by Malcolm Loughead. The term slave cylinder was used in other patent applications, including one by Robert Esnault-Pelterie, published in 1919.

Controversy

Media analytics company Global Language Monitor placed master/slave first in their annual list of politically charged language for 2004. The Black Lives Matter movement in the United States sparked renewed discussion, and terminology changes occurred in 2020. Some argued, however, that terminology changes were superficial or performative activism. Various alternate and generally context sensitive terms have been proposed including:

host–client primary–secondary main–replica main–subordinate initiator–target requester–responder controller–target controller–device host–worker host–proxy leader–follower director–performer boss–worker primary–replica principal–agent controller–worker primary–subordinate primary–worker orchestrator–worker

… excerpt ends here. Continue reading the full article.

Worked examples

Example 1 — a first encounter with Master–slave (technology)

Start with the simplest possible case. Write down what Master–slave (technology) claims or describes in one sentence, then invent the smallest concrete situation in which that sentence is true. In computer science, the smallest case is usually a single object, a single equation or a single measurement. Check that every symbol or term in your sentence has a meaning in that case.

Example 2 — changing one variable

Take the situation from Example 1 and change exactly one quantity: double it, halve it, or set it to zero. Predict what should happen to Master–slave (technology) before you calculate. Comparing your prediction with the result is the fastest way to find out whether you understand the idea or only the words.

Example 3 — an exam-style question

Typical questions about Master–slave (technology) ask you to (a) state it precisely, (b) apply it to given data, and (c) explain a limitation. Practise writing all three answers in under five minutes; the third part is what separates a full-mark answer from an average one.

Applications of Master–slave (technology)

In research
Master–slave (technology) appears in computer science research whenever the underlying quantities have to be modelled precisely. Papers usually cite it as a starting assumption and then explore where it breaks down.
In technology and industry
Engineering practice reuses Master–slave (technology) in design rules, simulations and safety margins. Knowing the idea lets you read a specification sheet and understand why the numbers look the way they do.
In the classroom
Master–slave (technology) is common in secondary-school and first-year university syllabi. It links to neighbouring topics 1900s neologisms, AT Attachment, African-American-related controversies, so understanding it makes those chapters shorter.
In everyday life
Look for Master–slave (technology) outside the textbook — in sport, cooking, traffic, electronics or the sky above you. An example you found yourself is remembered far longer than one you were given.
Ask Teacher Smith questions about this articleOpens your AI tutor with a question about “Master–slave (technology)” →

Affiliate

Preply — study more efficiently by working with a personal tutor. 50% off.

How to study Master–slave (technology) in 20 minutes

  1. Read the reference excerpt below once, without taking notes.
  2. Close the page and write down what Master–slave (technology) means in your own words.
  3. Compare your version with the excerpt and mark what you missed.
  4. Work through the three examples above with pen and paper.
  5. Explain Master–slave (technology) out loud to somebody else — or to Teacher Smith in the lgStudy chat.

Frequently asked questions

What is Master–slave (technology) in simple terms?

In engineering, master–slave is a relationship between two systems in which one controls the other. In some cases, one master controls just one slave system, but in others, there are multiple slave systems controlled by the same master.

Why does Master–slave (technology) matter?

Because it connects several computer science ideas at once: it gives you a definition you can apply, a quantity you can calculate, and a way to check whether a result is plausible.

How should I study Master–slave (technology)?

Read the excerpt, restate it from memory, then work through the examples and applications listed on this page. The five-step study plan above takes about twenty minutes.

What does this page cover?

It gives you a compact reference excerpt plus original lgStudy explanations, examples, applications and study material on Master–slave (technology).

Tags

  • 1900s neologisms
  • AT Attachment
  • African-American-related controversies
  • Connotation
  • Distributed computing architecture
  • Linguistic controversies
  • Metaphors referring to people
  • Network protocols
  • Politics and race in the United States
  • Race-related controversies

Keep exploring