El software dependiente de la máquina es aquel que se ejecuta únicamente en un ordenador específico . Las aplicaciones que se ejecutan en múltiples arquitecturas informáticas 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 una ventaja y atraerá a más compradores. Las organizaciones que desean que el software de aplicación funcione en ordenadores heterogéneos pueden portar dicho software a las demás máquinas. Al implementar aplicaciones dependientes de la máquina en dichas arquitecturas, estas aplicaciones requieren portabilidad. Este procedimiento incluye componer o recomponer el código de la aplicación para adaptarlo 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 modificar el código fuente . El término se aplica cuando se modifica la programación o el equipo para que sea utilizable en una arquitectura diferente.
El código que no funciona correctamente en un sistema específico debe ser adaptado a otro sistema.
El esfuerzo de adaptación depende de algunas variables, incluido el grado en que el primer entorno (la etapa de origen) difiere del nuevo entorno (la etapa de destino) 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 resolver incompatibilidades. [ 4 ] La representación transicional caracteriza una máquina virtual que puede ejecutar todos los módulos escritos en el dialecto intermedio. Las directrices del código intermedio son interpretadas en distintas disposiciones de código 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 a código específico de la plataforma. [ 5 ]
Aproches
- Adapta el traductor. Esto se puede programar en código portable.
- Adapta el código fuente a la nueva máquina.
- Ejecute el código fuente modificado utilizando el traductor con el código fuente del generador de código como datos. Esto generará el código máquina para el generador de código.
Véase también
Referencias
Enlaces externos
- Agrawala, AK y Rauscher, TG, 2014, Fundamentos de la microprogramación: arquitectura, software y aplicaciones , Academic Press
- 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 , Information and Software Technology , 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 la máquina: minimización del retraso total , The International Journal of Advanced Manufacturing Technology , 69(9–12), 2081–2089
- Lin, SW y Ying, KC, 2014, Programación de la 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., & Du, M., 2015, Automatización adaptativa: aprovechamiento del 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 , International Journal of Information Engineering and Electronic Business (IJIEEB) , 6(2), 9
- Röhrich, T., & Welfonder, E., 2014, Cableado y programación de software independientes de la máquina para sistemas de control digital distribuidos , en Aplicaciones informáticas digitales al control de procesos: Actas de la 7.ª Conferencia IFAC/IFIP/IMACS, Viena, Austria, 17-20 de septiembre de 1985 (pág. 247), Elsevier
- Shepperd, M., Bowes, D., & Hall, T., 2014, Sesgo del investigador: El uso del aprendizaje automático en la predicción de defectos de software , IEEE Transactions on Software Engineering, 40(6), 603–616
- Wang, JB, Sun, LH y Sun, LY, 2011, Programación del tiempo total de finalización 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
- Arquitectura de software