Compatibilidad con versiones anteriores

Capacidad tecnológica para interactuar con tecnologías más antiguas.
El primer modelo de Wii es compatible con versiones anteriores de su predecesora, la GameCube , y permite ejecutar sus discos y utilizar sus mandos y tarjetas de memoria. Las versiones posteriores del sistema eliminaron las ranuras para mandos y tarjetas de memoria, eliminando así esta característica.

En telecomunicaciones e informática , la compatibilidad con versiones anteriores (o compatibilidad hacia atrás ) es una propiedad de un sistema operativo , software, producto del mundo real o tecnología que permite la interoperabilidad con un sistema heredado más antiguo o con una entrada diseñada para dicho sistema.

Modificar un sistema de una manera que no permita la compatibilidad con versiones anteriores a veces se denomina "romper" la compatibilidad con versiones anteriores. [1] Tal ruptura generalmente implica varios tipos de costos, como el costo de cambio .

Un concepto complementario es la compatibilidad futura ; un diseño que es compatible con el futuro generalmente tiene una hoja de ruta para la compatibilidad con estándares y productos futuros. [2]

Uso

En hardware

Un ejemplo simple de compatibilidad hacia atrás y hacia adelante es la introducción de la radio FM en estéreo . La radio FM inicialmente era mono , con solo un canal de audio representado por una señal . Con la introducción de la radio FM estéreo de dos canales, muchos oyentes solo tenían receptores FM mono. La compatibilidad hacia adelante para receptores mono con señales estéreo se logró enviando la suma de los canales de audio izquierdo y derecho en una señal y la diferencia en otra señal. Eso permite que los receptores FM mono reciban y decodifiquen la señal de suma mientras ignoran la señal de diferencia, que solo es necesaria para separar los canales de audio. Los receptores FM estéreo pueden recibir una señal mono y decodificarla sin la necesidad de una segunda señal, y pueden separar una señal de suma en canales izquierdo y derecho si se reciben señales de suma y diferencia. Sin el requisito de compatibilidad con versiones anteriores, se podría haber elegido un método más simple. [3]

La compatibilidad total con versiones anteriores es particularmente importante en las arquitecturas de conjuntos de instrucciones de computadora , siendo dos de las más exitosas las familias de mainframes IBM 360 / 370 / 390 / Zseries y la familia de microprocesadores Intel x86 .

IBM anunció los primeros modelos 360 en 1964 y ha continuado actualizando la serie desde entonces, con migraciones a lo largo de las décadas desde registros de 32 bits/direcciones de 24 bits a registros y direcciones de 64 bits.

Intel anunció los primeros procesadores Intel 8086/8088 en 1978, nuevamente con migraciones a lo largo de las décadas de 16 bits a 64 bits. (Los 8086/8088, a su vez, fueron diseñados teniendo en mente la fácil traducibilidad por máquina de los programas escritos para su predecesor, aunque no eran compatibles con el conjunto de instrucciones del procesador Intel 8080 de 8 bits de 1974. El Zilog Z80 , sin embargo, era totalmente compatible con versiones anteriores del Intel 8080).

Los procesadores totalmente compatibles con versiones anteriores pueden procesar las mismas instrucciones de software ejecutables binarias que sus predecesores, lo que permite el uso de un procesador más nuevo sin tener que adquirir nuevas aplicaciones o sistemas operativos . [4] De manera similar, el éxito del estándar de comunicación digital Wi-Fi se atribuye a su amplia compatibilidad hacia adelante y hacia atrás; se volvió más popular que otros estándares que no eran compatibles con versiones anteriores. [5]

En software

En el desarrollo de software, la compatibilidad con versiones anteriores es una noción general de interoperación entre piezas de software que no producirán ningún error cuando se invoque su funcionalidad a través de API . [6] El software se considera estable cuando su API que se utiliza para invocar funciones es estable en diferentes versiones. [6]

En los sistemas operativos, se dice que las actualizaciones a versiones más nuevas son compatibles con versiones anteriores si los ejecutables y otros archivos de las versiones anteriores funcionan normalmente. [7]

En los compiladores , la compatibilidad con versiones anteriores puede referirse a la capacidad de un compilador para una versión más nueva del lenguaje de aceptar el código fuente de programas o datos que funcionaban con la versión anterior. [8]

Se dice que un formato de datos es compatible con versiones anteriores cuando una versión más nueva del programa puede abrirlo sin errores al igual que su predecesor. [9]

Compensaciones

Beneficios

Existen varios incentivos para que una empresa implemente la compatibilidad con versiones anteriores. La compatibilidad con versiones anteriores se puede utilizar para preservar software antiguo que de otro modo se habría perdido si un fabricante decide dejar de dar soporte a hardware antiguo. Los videojuegos clásicos son un ejemplo común utilizado cuando se habla del valor de dar soporte a software antiguo. El impacto cultural de los videojuegos es una gran parte de su éxito continuo, y algunos creen que ignorar la compatibilidad con versiones anteriores haría que estos títulos desaparecieran. [10] La compatibilidad con versiones anteriores también actúa como un argumento de venta para el nuevo hardware, ya que una base de jugadores existente puede actualizar de manera más asequible a las generaciones posteriores de una consola. Esto también ayuda a compensar la falta de títulos en el lanzamiento de nuevos sistemas, ya que los usuarios pueden sacar de la biblioteca de juegos de la consola anterior mientras los desarrolladores hacen la transición al nuevo hardware. [11] Además, los estudios realizados a mediados de la década de 1990 descubrieron que incluso los consumidores que nunca juegan juegos antiguos después de comprar un nuevo sistema consideran la compatibilidad con versiones anteriores una característica muy deseable, valorando la mera capacidad de seguir jugando una colección existente de juegos incluso si eligen no hacerlo nunca. [12] Se considera que la compatibilidad con los discos de software y periféricos originales de PlayStation (PS) fue un factor de venta clave para la PlayStation 2 (PS2) durante sus primeros meses en el mercado. [13]

A pesar de no estar incluida en el lanzamiento, Microsoft incorporó lentamente la compatibilidad con versiones anteriores para títulos seleccionados en Xbox One varios años después de su ciclo de vida del producto. [14] Los jugadores han acumulado más de mil millones de horas con juegos compatibles con versiones anteriores en Xbox, y la generación más nueva de consolas como PlayStation 5 [15] y Xbox Series X/S también admiten esta función. Una gran parte del éxito y la implementación de esta función es que el hardware dentro de las consolas de nueva generación es potente y lo suficientemente similar a los sistemas heredados como para que los títulos más antiguos se puedan desmontar y reconfigurar para ejecutarse en Xbox One. [16] Este programa ha demostrado ser increíblemente popular entre los jugadores de Xbox y va en contra de la tendencia reciente de remasterizaciones de títulos clásicos realizadas por estudios, creando lo que algunos creen que es un cambio importante en las estrategias de los fabricantes de consolas. [14]

Costos

Los costos monetarios de dar soporte a software antiguo se consideran un gran inconveniente para el uso de la compatibilidad con versiones anteriores. [11] [12] Los costos asociados a la compatibilidad con versiones anteriores son una mayor factura de materiales si se requiere hardware para dar soporte a los sistemas heredados; una mayor complejidad del producto que puede llevar a un mayor tiempo de comercialización , obstáculos tecnológicos y una ralentización de la innovación; y mayores expectativas de los usuarios en términos de compatibilidad. [1] También introduce el riesgo de que los desarrolladores favorezcan el desarrollo de juegos que sean compatibles tanto con los sistemas antiguos como con los nuevos, ya que esto les da una base más grande de compradores potenciales, lo que resulta en una escasez de software que utilice las características avanzadas del nuevo sistema. [12] Debido a esto, varios fabricantes de consolas eliminaron gradualmente la compatibilidad con versiones anteriores hacia el final de la generación de consolas para reducir costos y revitalizar brevemente las ventas antes de la llegada de hardware más nuevo. [17]

Es posible evitar algunos de estos costes de hardware. Por ejemplo, los sistemas PlayStation 2 (PS2) anteriores utilizaban el núcleo de la CPU de la PlayStation (PS1) original como procesador de doble propósito, ya sea como CPU principal para el modo PS1 o aumentando la velocidad de reloj para descargar la E/S en el modo PS2. Este coprocesador fue reemplazado por un procesador basado en PowerPC en sistemas posteriores para cumplir las mismas funciones, emulando el núcleo de la CPU de la PS1. Sin embargo, este enfoque puede resultar contraproducente, como fue el caso de la Super Nintendo Entertainment System (Super NES). Optó por la CPU 65C816 más peculiar en lugar de los microprocesadores de 16 bits más populares sobre la base de que permitiría una fácil compatibilidad con la Nintendo Entertainment System (NES) original, pero en última instancia no resultó viable una vez que se diseñó el resto de la arquitectura de la Super NES. [18]

Véase también

Referencias

  1. ^ de Belleflamme, Paul; Peitz, Martin (2010), "Estrategias en guerras estándar", Organización industrial: mercados y estrategias , Cambridge University Press, ISBN 9780521862998
  2. ^ Zeldman, Jeffrey (2006). Diseño con estándares web. Peachpit Press. Págs. 15-16. ISBN. 0-321-38555-1.
  3. ^ Winder, Steve; Carr, Joseph (2002), Newnes Radio and RF Engineering Pocket Book (3.ª edición), Newnes, págs. 121-123, ISBN 9780080497471
  4. ^ Naresh Jotwani (2009), Organización del sistema informático , Tata McGraw-Hill Education, págs. 320-324, ISBN 9781259081217
  5. ^ Perahia, Eldad; Stacey, Robert (2013), "Prólogo", LAN inalámbricas de próxima generación: 802.11n y 802.11ac , Cambridge University Press, ISBN 9781107016767
  6. ^ ab etc1M (18 de diciembre de 2019). "Compatibilidad con versiones anteriores en el desarrollo de software: qué y por qué". Red Star IT . Consultado el 13 de mayo de 2023 .
  7. ^ "¿Qué es la compatibilidad con versiones anteriores?". Computer Hope . 31 de diciembre de 2022. Consultado el 13 de mayo de 2023 .
  8. ^ Kay, Michael (2004). Referencia del programador XSLT 2.0 . Wiley. pág. 123. ISBN 0-7645-6909-0. compatibilidad hacia adelante.
  9. ^ Bos, Bert (2003). "Compatibilidad con versiones anteriores". ¿Qué es un buen estándar? Archivado desde el original el 11 de marzo de 2016 . Consultado el 12 de julio de 2016 .
  10. ^ "La compatibilidad con versiones anteriores es la única manera de avanzar". PopMatters . 2015-04-10. Archivado desde el original el 2019-09-29 . Consultado el 2019-11-05 .
  11. ^ ab "Entender la compatibilidad con versiones anteriores y cómo beneficia a los jugadores". Tech Magazine . 2018-08-14. Archivado desde el original el 2019-10-02 . Consultado el 2019-11-05 .
  12. ^ abc "¿Compatibilidad con versiones anteriores de PlayStation 2?". Next Generation . N.º 39. ​​Imagine Media . Marzo de 1998. pág. 22.
  13. ^ "Sony Playstation 2(PS2)". Pnpgames . Archivado desde el original el 13 de julio de 2020 . Consultado el 15 de marzo de 2020 .
  14. ^ ab "No se necesitan remasterizaciones si la PS5 es completamente compatible con versiones anteriores". Android Central . 24 de septiembre de 2019. Archivado desde el original el 10 de noviembre de 2019. Consultado el 10 de noviembre de 2019 .
  15. ^ Wales, Matt (20 de marzo de 2020). «Sony aclara que la «abrumadora mayoría» de los juegos de PS4 serán compatibles con versiones anteriores en PS5». Eurogamer . Archivado desde el original el 6 de abril de 2020. Consultado el 8 de abril de 2020 .
  16. ^ Leadbetter, Richard (9 de diciembre de 2017). «Compatibilidad con versiones anteriores de Xbox One: ¿cómo funciona realmente?». Eurogamer . Archivado desde el original el 14 de enero de 2019. Consultado el 10 de noviembre de 2019 .
  17. ^ Stein, Scott. "Las consolas de juegos y la muerte de la compatibilidad con versiones anteriores: por qué no nos importa". CNET . Archivado desde el original el 29 de septiembre de 2019. Consultado el 5 de noviembre de 2019 .
  18. ^ "¿Se suponía que la SNES sería compatible con versiones anteriores?". Gaming Reinvented . 2015-08-10. Archivado desde el original el 2022-02-24 . Consultado el 2022-02-24 .
  • Medios relacionados con Compatibilidad con versiones anteriores en Wikimedia Commons
Obtenido de "https://es.wikipedia.org/w/index.php?title=Compatibilidad_con_versiones_anteriores&oldid=1250416471"