Home  

Random  

Nearby  



Log in  



Settings  



Donate  



About Wikipedia  

Disclaimers  



Wikipedia





Masterslave (technology)





Article  

Talk  



Language  

Watch  

Edit  


(Redirected from Master/slave (technology))
 


Master–slave is a model of asymmetric communication or control where one deviceorprocess (the master) controls one or more other devices or processes (the slaves) and serves as their communication hub. In some systems, a master is selected from a group of eligible devices, with the other devices acting in the role of slaves.[1][2][3]

Master–slave terminology was first used in 1904.[4] Since the early 21st century, the terms have become a subject of controversy from their association with slavery and some organizations have opted to replace them with alternative terms, such as controller/peripheralormain/helper.[5][6][7]

Examples

edit

Early usages

edit

The master/slave 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.[12]

Said hydraulic brakes for the automotive industry were patented in 1917 by Malcolm Loughead.[13] The term slave cylinder was used in other patent applications, including one by Robert Esnault-Pelterie, published in 1919.[14]

Terminology concerns

edit

In 2003, after receiving a discrimination complaint from a county employee, the County of Los AngelesinCalifornia asked that manufacturers, suppliers and contractors stop using master and slave terminology on products.[15][16] Following complaints, the County of Los Angeles issued a statement saying that the decision was "nothing more than a request".[15] Media analytics company Global Language Monitor placed the terms first in their annual list of politically charged language for 2004.[17]

In 2018, after a heated debate, developers of the Python programming language replaced the term.[7] The Black Lives Matter movement in the United States sparked renewed discussion and terminology changes in 2020.[18] Some have argued that the change is superficial and that companies should make real change to support the Black community; some experienced programmers and conservative software engineers criticized the move as political correctness that added unnecessary complications. [19][6] Google's developer documentation style guide recommends avoiding the term master in software documentation, especially in combination with slave.[20][when?] In 2020, GitHub replaced the default master git branch with main.[18]

Other terminology

edit

Various replacement terms for masterorslave have been proposed and implemented. For master, replacement names include controller, default, director, host, initiator, leader, manager, primary, principal, and root. For slave, replacement names include agent, client, device, performer, peripheral, replica, responder, satellite, secondary, subordinate, worker, and follower.[18][6][21][22][23][24][25]

Python switched to main, parent, and server; and worker, child, and helper, depending on context.[7][26] The Linux kernel has adopted a similar policy to use more specific terms in new code or documentation.[22][27] Other projects and standards have used alternative terms since their inception.

See also

edit

References

edit
  1. ^ "Master–slave terminology alternatives you can use right now". TheServerSide.com.
  • ^ Description of the Microsoft Computer Browser Service from Microsoft KnowledgeBase
  • ^ "Microsoft Support". support.microsoft.com.
  • ^ Eglash, Ron (2007). "Broken Metaphor: The Master–Slave Analogy in Technical Literature". Technology and Culture. 48 (2): 360–369. doi:10.1353/tech.2007.0066. S2CID 1358719.
  • ^ Ellis, Leonard (2020-06-18). "It's Time for IEEE to Retire 'Master / Slave'". EE Times. Retrieved 2020-09-26.
  • ^ a b c "Tech Confronts Its Use of the Labels 'Master' and 'Slave'". Wired. ISSN 1059-1028. Retrieved 2020-07-14.
  • ^ a b c "'Master/Slave' Terminology Was Removed from Python Programming Language". Vice.com. September 13, 2018. Retrieved 2020-07-14.
  • ^ Dhaker, Piyu (2018). "Introduction to SPI Interface". Analog Dialogue. Archived from the original on 2023-05-25. Retrieved 2023-07-21.
  • ^ Open Source Hardware Association. "A Resolution to Redefine SPI Signal Names".
  • ^ Nathan Seidle. "A redefinition of SPI signal names".
  • ^ Utah State University ECE 3700 "SPI Chip-to-Chip Communication"
  • ^ Re: DNSOP Question regarding RFC 8499
  • ^ Loughhead, Malcolm, "Braking apparatus, " U.S. Patent no. 1,249,143 (filed: 1917 January 22; issued: 1917 December 4).
  • ^ "Hydraulic power transmission installation".
  • ^ a b "'Master' and 'slave' computer labels unacceptable, officials say". CNN. November 26, 2003.
  • ^ Master/Slave, Snopes, 9 December 2007
  • ^ 'Master/slave' named most politically incorrect term, Seattle PI, December 2, 2004, "We found 'master/slave' to be the most egregious example of political correctness in 2004," said Paul JJ Payack, president of The Global Language Monitor.
  • ^ a b c Cimpanu, Catalin (14 June 2020). "GitHub to replace "master" with alternative term to avoid slavery references". ZDNet. Retrieved 3 November 2022.
  • ^ Shankland, Stephen (2020-06-10). "Tech terms face scrutiny amid anti-racism efforts". CNET. Retrieved 2020-07-06.
  • ^ "Google Developer Style Guide".
  • ^ "I2C-bus specification Rev 7" (PDF). NXP Semiconductors. October 1, 2021. Archived from the original (PDF) on April 26, 2021. Retrieved June 4, 2022.[non-primary source needed]
  • ^ a b Cimpanu, Catalin. "Linux team approves new terminology, bans terms like 'blacklist' and 'slave'". ZDNet.
  • ^ "A Resolution to Redefine SPI Signal Names". Open Source Hardware Association. 7 January 2022.
  • ^ Stoicescu, Alin. "Getting Started with Serial Peripheral Interface (SPI)". Microchip Technology. Archived from the original on 2023-12-21. Retrieved 2023-12-21.
  • ^ "Leader and Followers". martinfowler.com. Retrieved 2024-04-11.
  • ^ "Issue 34605: Avoid master/slave terminology - Python tracker". bugs.python.org. Retrieved 2020-07-13.
  • ^ Microsoft (June 24, 2022). "master/slave". Microsoft Style Guide.

  • Retrieved from "https://en.wikipedia.org/w/index.php?title=Master–slave_(technology)&oldid=1228807818"
     



    Last edited on 13 June 2024, at 09:02  





    Languages

     


    العربية
    Català
    Čeština
    Deutsch
    فارسی
    Français
    Galego

    Italiano
    Македонски
    Nederlands

    Polski
    Русский
    Українська

     

    Wikipedia


    This page was last edited on 13 June 2024, at 09:02 (UTC).

    Content is available under CC BY-SA 4.0 unless otherwise noted.



    Privacy policy

    About Wikipedia

    Disclaimers

    Contact Wikipedia

    Code of Conduct

    Developers

    Statistics

    Cookie statement

    Terms of Use

    Desktop