El paquete de software de los estudiantes del MIT corrige automáticamente el funcionamiento de los programas.
En una conferencia sobre el desarrollo y la implementación de lenguajes de programación, un equipo de expertos en informática del Instituto de Tecnología de Massachusetts (MIT) presentó un sistema con características sorprendentes . Según ellos, este paquete de software encuentra automáticamente errores en los programas y los corrige, sustituyendo en su lugar piezas que son adecuadas para la funcionalidad de otros programas. Al mismo tiempo, el sistema no necesita familiarizarse con el código fuente del programa que se está corrigiendo para la operación; solo necesita un archivo ejecutable.Los programadores virtuosos nombraron su programa CodePhage (codephage). Los desarrolladores explican que su sistema "analiza la ejecución del programa y caracteriza los tipos de controles de seguridad que realiza". Después de eso, el codeófago puede tomar los mismos controles de otros programas de donantes, incluso si están escritos en otros lenguajes de programación, y alimentarlos al programa receptor. Cómo se seleccionan los donantes para esto, los desarrolladores no especificaron."Ya hay muchos programas de código abierto: hay millones de proyectos en los repositorios, y muchos de ellos cumplen con especificaciones similares", dice Stelios Sidiroglu-Duskos, bajo cuyo liderazgo se desarrolló CodePhage. - Incluso si los programas son esencialmente diferentes, a menudo pueden encontrar componentes con una funcionalidad similar. Con CodePhage, algún día será posible crear un sistema híbrido que incluya los mejores componentes de todas las implementaciones disponibles ".Para comenzar la búsqueda de errores, el fago de código mágico necesita un poco: un conjunto de datos de entrada en los que el programa en estudio se bloquea y otro en el que no se bloquea. Luego, el codephage inicia automáticamente el programa de donantes con estos conjuntos de datos y registra su trabajo. Por ejemplo, si el programa receptor puede abrir archivos de cierto formato, pero se topa con algún archivo, CodePhage registra todo lo que el programa de donantes "correcto" hace con este archivo, en particular, lo que realiza. Después de eso, el codeófago analiza cómo la operación del programa de donantes difiere de la operación del programa receptor y corrige al receptor en consecuencia.Los desarrolladores afirman que su programa ha solucionado con éxito los programas que funcionan incorrectamente y son optimistas sobre el futuro, en el que los programadores no tienen que escribir esas piezas de código cuya funcionalidad ya ha sido implementada por alguien."La tecnología de pedir prestado código de otro programa con una funcionalidad similar y corregir un programa que funciona mal con ella es ciertamente genial", dijo Emery Berger, profesora de TI en otra Universidad de Massachusetts en Amherst, quien comentó sobre el trabajo de especialistas. "Para ser honesto, me sorprende que ella incluso trabaje".Source: https://habr.com/ru/post/es381263/
All Articles