Control de un dispositivo por otro
Maestro-esclavo es una terminología común para un modelo de comunicación o control asimétrico en el que un dispositivo o proceso (el maestro ) controla uno o más dispositivos o procesos (los esclavos ) y sirve como su centro de comunicación. En algunos sistemas, se selecciona un maestro de un grupo de dispositivos elegibles, y los otros dispositivos actúan como esclavos. [1] [2] [3]
La terminología amo-esclavo se utilizó por primera vez en 1904. [4] Desde principios del siglo XXI, los términos se han convertido en un tema de controversia por su asociación con la esclavitud y algunas organizaciones han optado por reemplazarlos con términos alternativos. [5] [6] [7]
Ejemplos
- En electrónica, las relaciones maestro-esclavo se utilizan para describir algunos de los siguientes escenarios:
- En las disposiciones de discos duros ATA paralelos , los términos maestro y esclavo se utilizan para describir unidades en el mismo cable, pero ninguna de ellas tiene control ni prioridad sobre la otra.
- Un reloj maestro que proporciona señales horarias utilizadas para sincronizar uno o más relojes esclavos como parte de una red de relojes .
- En AXI , maestro y esclavo tienen roles diferentes: el maestro inicia las transacciones y el esclavo responde a esas transacciones.
- Un bus de interfaz de periféricos en serie normalmente tiene un único maestro que controla varios esclavos. Mucha gente recomienda utilizar términos más modernos (principal/sub, controlador/periférico, etc.) y suspender el uso de términos maestro/esclavo. [8] [9] [10] [11]
- Los flip-flops activados por flanco se pueden crear disponiendo dos pestillos (pestillo maestro y pestillo esclavo) en una configuración maestro-esclavo . Se denomina así porque el pestillo maestro controla el valor del pestillo esclavo y obliga al pestillo esclavo a mantener su valor, ya que el pestillo esclavo siempre copia su nuevo valor del pestillo maestro.
- En la replicación de bases de datos , la base de datos maestra se considera la fuente autorizada y las bases de datos esclavas (también llamadas réplicas) se sincronizan con ella.
- En fotografía, las unidades de flash secundarias o esclavas se pueden sincronizar con la unidad principal para proporcionar luz desde direcciones adicionales.
- La duplicación a menudo se realiza con varias cintas de casete o grabadoras de discos compactos unidas entre sí. Operar los controles en el maestro activa los mismos comandos en los esclavos para que la grabación se realice en paralelo.
- Las locomotoras ferroviarias que operan en múltiples (por ejemplo: para tirar de cargas demasiado pesadas para una sola locomotora) pueden denominarse configuración maestro-esclavo con la operación de todas las locomotoras en el tren subordinadas a los controles de la primera locomotora. Véase Control de trenes de unidades múltiples .
- En la ingeniería automotriz, el cilindro maestro es un dispositivo de control que convierte la fuerza en presión hidráulica en el sistema de frenos . Este dispositivo controla los cilindros esclavos ubicados en el otro extremo del sistema hidráulico.
- En la creación de grabaciones de audio, se crea una copia maestra como finalización de la mezcla de audio, para guardarla y utilizarla como fuente para futuras copias.
- Un patrón primario en metrología se denomina maestro (por ejemplo, kilogramo maestro).
Usos tempranos
La terminología maestro/esclavo se utilizó en 1988 para el RFC 1059 y en 1997 para el RFC 2136, relacionado con el sistema de nombres de dominio . En 2020, Paul Vixie comentó sobre su elección de palabras:
Introduje la terminología maestro/esclavo en RFC 2136, porque necesitaba nombres para los roles en una transacción AXFR/IXFR , y la jerarquía de transferencia de zona podría tener más de una capa de profundidad, de modo que un servidor podría iniciar algunos AXFR/IXFR en el RFC 2136. "maestro primario" pero luego responde a AXFR/IXFR de otros servidores. En retrospectiva, debería haber elegido los términos "iniciador de transferencia" y "respondedor de transferencia". Sin embargo, los sistemas de freno y embrague hidráulicos de mi automóvil tenían " cilindros maestros " y "cilindros esclavos", por lo que no pensé que estuviera inventando un nuevo uso para las palabras "maestro" y "esclavo", o que mi uso de ellos para este fin sería controvertido. [12]
Dichos frenos hidráulicos para la industria del automóvil fueron patentados en 1917 por Malcolm Loughead . [13] El término cilindro esclavo se utilizó en otras solicitudes de patente, incluida una de Robert Esnault-Pelterie , publicada en 1919. [14]
Preocupaciones terminológicas
En 2003, después de recibir una queja por discriminación de un empleado del condado, el condado de Los Ángeles en California pidió que los fabricantes, proveedores y contratistas dejaran de utilizar terminología de amo y esclavo en los productos. [15] [16] Tras las quejas, el condado de Los Ángeles emitió un comunicado diciendo que la decisión no era "más que una solicitud". [15] La empresa de análisis de medios Global Language Monitor colocó el término en primer lugar en su lista anual de lenguaje con carga política para 2004. [17]
En 2018, después de un acalorado debate, los desarrolladores del lenguaje de programación Python reemplazaron el término. [7] El movimiento Black Lives Matter en los Estados Unidos provocó un renovado debate y cambios de terminología en 2020. [18] Algunos han argumentado que el cambio es superficial y que las empresas deberían realizar cambios reales para apoyar a la comunidad negra. [19] [6] La guía de estilo de documentación para desarrolladores de Google recomienda evitar el término maestro en la documentación de software, especialmente en combinación con esclavo . [20] [ ¿ cuándo? ] En 2020, GitHub reemplazó la rama predeterminada de git master con main , [18] aunque en el contexto del control de versiones , el término master simplemente se refiere al gold master , un término tomado prestado de la industria discográfica que se refiere a la versión mixta final de una grabación , y no tiene un esclavo correspondiente .
Otra terminología
Se han propuesto e implementado varios términos de reemplazo para maestro o esclavo . Otros nombres de reemplazo incluyen controlador , predeterminado , director , host , iniciador , líder , administrador , primario , principal , raíz ; y para esclavo : agente , cliente , dispositivo , ejecutante , periférico , réplica , respondedor , satélite , secundario , subordinado y trabajador . [18] [6] [21] [22] [23] [24]
Python cambió a main , parent y server ; y trabajador , niño y ayudante , según el contexto. [7] [25] El kernel de Linux ha adoptado una política similar para utilizar términos más específicos en nuevo código o documentación. [22] [26] Otros proyectos y estándares han utilizado términos alternativos desde sus inicios.
Ver también
Referencias
- ^ "Alternativas de terminología maestro-esclavo que puede utilizar ahora mismo". TheServerSide.com .
- ^ Descripción del servicio Microsoft Computer Browser de Microsoft KnowledgeBase
- ^ "Soporte de Microsoft". soporte.microsoft.com .
- ^ Eglash, Ron (2007). "Metáfora rota: la analogía amo-esclavo en la literatura técnica". Tecnología y Cultura . 48 (2): 360–369. doi :10.1353/tech.2007.0066. S2CID 1358719.
- ^ Ellis, Leonard (18 de junio de 2020). "Es hora de que IEEE retire 'Maestro/Esclavo'". Tiempos EE.UU. Consultado el 26 de septiembre de 2020 .
- ^ abc "La tecnología se enfrenta al uso de las etiquetas 'maestro' y 'esclavo'". Cableado . ISSN 1059-1028 . Consultado el 14 de julio de 2020 .
- ^ abc "La terminología 'maestro/esclavo' se eliminó del lenguaje de programación Python". Vice.com . 13 de septiembre de 2018 . Consultado el 14 de julio de 2020 .
- ^ Dhaker, Piyu (2018). "Introducción a la interfaz SPI". Diálogo analógico . Archivado desde el original el 25 de mayo de 2023 . Consultado el 21 de julio de 2023 .
- ^ Asociación de hardware de código abierto . "Una resolución para redefinir los nombres de las señales SPI".
- ^
Nathan Seidle. "Una redefinición de los nombres de las señales SPI".
- ^
Universidad Estatal de Utah ECE 3700 "Comunicación chip a chip SPI"
- ^ Re: Pregunta DNSOP sobre RFC 8499
- ^ Loughhead, Malcolm, "Aparato de frenado", Patente de EE. UU. núm. 1.249.143 (presentada: 22 de enero de 1917; emitida: 4 de diciembre de 1917).
- ^ "Instalación de transmisión de energía hidráulica".
- ^ ab "Las etiquetas de computadora 'maestro' y 'esclavo' son inaceptables, dicen los funcionarios" . CNN . 26 de noviembre de 2003.
- ^ Maestro/Esclavo, Snopes , 9 de diciembre de 2007
- ^ 'Amo/esclavo' es el término más políticamente incorrecto, Seattle PI, 2 de diciembre de 2004.
"Descubrimos que 'amo/esclavo' es el ejemplo más atroz de corrección política en 2004", dijo Paul JJ Payack, presidente de The Global Language Monitor.
- ^ abc Cimpanu, Catalin (14 de junio de 2020). "GitHub reemplazará" maestro "con un término alternativo para evitar referencias a la esclavitud". ZDNet . Consultado el 3 de noviembre de 2022 .
- ^ Shankland, Stephen (10 de junio de 2020). "Los términos tecnológicos se enfrentan a un escrutinio en medio de los esfuerzos contra el racismo". CNET . Consultado el 6 de julio de 2020 .
- ^ "Guía de estilo para desarrolladores de Google".
- ^ "Especificación del bus I2C Rev 7" (PDF) . Semiconductores NXP . 1 de octubre de 2021. Archivado desde el original (PDF) el 26 de abril de 2021 . Consultado el 4 de junio de 2022 .[ se necesita fuente no primaria ]
- ^ ab Cimpanu, Catalin. "El equipo de Linux aprueba nueva terminología y prohíbe términos como 'lista negra' y 'esclavo'". ZDNet .
- ^ "Una resolución para redefinir los nombres de las señales SPI". Asociación de hardware de código abierto . 7 de enero de 2022.
- ^ Stoicescu, Alin. "Introducción a la interfaz periférica serie (SPI)". Tecnología de microchips . Archivado desde el original el 21 de diciembre de 2023 . Consultado el 21 de diciembre de 2023 .
- ^ "Problema 34605: Evite la terminología maestro/esclavo: rastreador de Python". bugs.python.org . Consultado el 13 de julio de 2020 .
- ^ Microsoft (24 de junio de 2022). "maestro-esclavo". Guía de estilo de Microsoft .