El software dependiente de la máquina es un software que se ejecuta solo en una computadora específica . Las aplicaciones que se ejecutan en múltiples arquitecturas de computadora se denominan independientes de la máquina o multiplataforma . [1] Muchas organizaciones optan por este tipo de software porque creen que el software dependiente de la máquina es un activo y atraerá a más compradores. Las organizaciones que desean que el software de aplicación funcione en computadoras heterogéneas pueden trasladar ese software a las otras máquinas. Al implementar aplicaciones dependientes de la máquina en tales arquitecturas, dichas aplicaciones requieren ser trasladadas. Este procedimiento incluye componer o recomponer el código de la aplicación para que se adapte a la plataforma de destino.
Portabilidad
La portabilidad es el proceso de convertir una aplicación de una arquitectura a otra. [2] Los lenguajes de software como Java están diseñados para que las aplicaciones puedan migrar entre arquitecturas sin modificaciones del código fuente. El término se aplica cuando se modifica la programación o el equipo para que se pueda utilizar en una arquitectura diferente.
El código que no funciona correctamente en un sistema específico debe trasladarse a otro sistema.
El esfuerzo de portabilidad depende de algunas variables, incluido el grado en que el primer entorno (la etapa de origen) varía del nuevo entorno (la etapa objetivo) y la experiencia de los creadores en el conocimiento de dialectos de programación específicos de la plataforma. [3]
Muchos lenguajes ofrecen un código intermedio independiente de la máquina que puede ser procesado por intérpretes específicos de la plataforma para solucionar incompatibilidades. [4] La representación transicional caracteriza a una máquina virtual que puede ejecutar todos los módulos escritos en el dialecto intermedio. Las pautas del código intermedio son interpretadas en distintas configuraciones de código de máquina por un generador de código para crear código ejecutable. El código intermedio también puede ejecutarse directamente sin conversión estática en código específico de la plataforma. [5]
Aproches
- Portar el traductor. Esto se puede codificar en código portable.
- Adaptar el código fuente a la nueva máquina.
- Ejecute la fuente ajustada utilizando el traductor con la fuente del generador de código como datos. Esto producirá el código de máquina para el generador de código.
Véase también
Referencias
- ^ Agrawala y Rauscher (2014)
- ^ Rashid, Patnaik y Bhattacherjee, 2014
- ^ Huang, Li y Xie, 2015
- ^ Yin y otros, 2012
- ^ Mathur, Miles y Du, 2015
Enlaces externos
- Agrawala, AK, y Rauscher, TG, 2014, Fundamentos de la microprogramación: arquitectura, software y aplicaciones, Prensa académica
- Huang, J., Li, YF y Xie, M., 2015, Un análisis empírico del preprocesamiento de datos para la estimación de costos de software basada en aprendizaje automático, Tecnología de la información y el software , 67, 108–127
- Lee, JH, Yu, JM y Lee, DH, 2013, Un algoritmo de búsqueda tabú para la programación de máquinas paralelas no relacionadas con configuraciones dependientes de la secuencia y de la máquina: minimización de la tardanza total, The International Journal of Advanced Manufacturing Technology , 69(9–12), 2081–2089
- Lin, SW y Ying, KC, 2014, Programación de fabricación basada en ABC para máquinas paralelas no relacionadas con tiempos de preparación dependientes de la máquina y de la secuencia de trabajos, Computers & Operations Research , 51, 172–181
- Mathur, R., Miles, S., y Du, M., 2015, Automatización adaptativa: aprovechar el aprendizaje automático para respaldar las pruebas automatizadas ininterrumpidas de aplicaciones de software, preimpresión de arXiv arXiv :1508.00671
- Rashid, EA, Patnaik, SB y Bhattacherjee, VC, 2014, Aprendizaje automático y predicción de la calidad del software: como un sistema experto, Revista internacional de ingeniería de la información y negocios electrónicos (IJIEEB) , 6(2), 9
- Röhrich, T., y Welfonder, E., 2014, Cableado y programación de software independiente de la máquina de sistemas de control digital distribuido, en Aplicaciones informáticas digitales para el control de procesos: Actas de la 7.ª conferencia IFAC/IFIP/IMACS, Viena, Austria, 17-20 de septiembre de 1985 (p. 247), Elsevier
- Shepperd, M., Bowes, D. y Hall, T., 2014, Sesgo del investigador: el uso del aprendizaje automático en la predicción de defectos de software, Ingeniería de software, Transacciones IEEE en , 40(6), 603–616
- Wang, JB, Sun, LH y Sun, LY, 2011, Programación del tiempo de finalización total de una sola máquina con un deterioro dependiente del tiempo, Applied Mathematical Modelling , 35(3), 1506–1511
- Yin, Y., Liu, M., Hao, J. y Zhou, M., 2012, Sin