Compact programming

From www.arrakis.es/~aikido/interdic :

DEL 'FATWARE' Y LA CRISIS CRÓNICA DE LA PROGRAMACIÓN...

Definiremos el concepto "Fatware" como programas de gran tamaño y bajo rendimiento, concepto que incluye a una buena parte de los programas comerciales disponibles. Es fácil seguirle la pista al Fatware programas cuyas nuevas versiones ocupan cada vez mas espacio en disco y su rendimiento es menor, es decir, necesitan de maquinas mas potentes para igualar la velocidad de versiones anteriores, no solo de las mejoras implementadas sino de también de las características precedentes.
Hay malas lenguas que opinan que se trata de un acuerdo entre compañías de Hardware y Software con una doble intención: por un lado el facilitar a las productoras de programas la elaboración de estos, ya que no tienen que optimizarlos ni depurarlos apenas, y por otro el conseguir que el usuario tenga que cambiar de equipo o aumentar su capacidad antes.

Si a todo esto añadimos lo que se ha dado en llamar por los especialistas: "La Crisis Crónica de la Programación" nos encontramos ante un problema de dimensiones alarmantes que nos afecta a todos ( no solo a los usuarios de ordenadores ).
La falta de previsión de la mayoría de los programadores, hace que aplicaciones que gestionan nuestras pensiones, nuestros datos fiscales y muchas otras cosas fallen provocando problemas a ciudadanos ajenos a todo esto.

No faltan ejemplos: el fallo que hizo que el nuevo Ariadne se desviara de su trayectoria y obligara al control de la misión ha hacerlo explotar según informaciones oficiales se debió a un fallo de programación. Lo mismo a ocurrido con sistemas de guía de misiles ( pero los militares no facilitan mucha información sobre sus fracasos). Los problemas informáticos a la hora de gestionar las puntuaciones de los atletas de las olimpiadas de Atlanta 96 son conocidas por todos. Estados Unidos lleva años intentando cambiar su sistema de control aereo y todo el problema radica también en que todo el código escrito hasta ahora a resultado tan complejo, caro e inoperativo que se ha tenido que desechar.
Se calculan miles de millones de perdidas en empresas muy informatizadas ( como los bancos ) por una cosa aparentemente tan anodina como el cambio de fecha al paso por el año 2000.

¿ Que ocurre ? ¿ no son capaces las máquinas de realizar sus funciones correctamente ? rotundamente no, de hecho, tenemos potencia de proceso de sobra, el problema radica casi exclusivamente en el software.
Existen problemas en cuanto al hardware en equipos concretos como el caso de los PC's este problema es debido al concepto de compatibilidad descendente, esto es, que los nuevos equipos deben de ser compatibles con los anteriores a la hora de ejecutar programas que funcionaban en equipos de tecnología mas antigua. La manera en que se ha resuelto esto es la que ocasiona los famosos problemas y concep tos de memoria base, memoria superior, memoria extendida y memoria expandida. Cuando realmente cualquier PC con procesador 386DX o superior puede acceder a la memoria directamente sin necesidad de artificios como la memoria extendida.

Luego para sacarle rendimiento a estas máquinas es necesario una programación especifica, como por ejemplo la famosa y tardía programación a 32 bits. La programación a 32 bits no es mas que usar las nuevas instrucciones extendidas ( normalmente las mismas pero usando registros de 32 bits ) propias del 386 y superiores en lugar de aprovechar el código antiguo ( también puede ser necesario alterar el sistema de direccionamiento de la memoria si se quiere conseguir mas rendimiento ).

No vamos a extendernos aquí sobre posibilidades de alto rendimiento como la programación para cache interna en la que se optimiza el código para que el programa se ejecute en la cache interna del procesador y los datos del mismo residan en otra parte de la cache interna de manera que se reduz can los accesos a la RAM de la placa base al mínimo, esto junto a un código bien depurado y optimizado consigue rendimientos que multiplican por diez los normales de un programa en código máquina preparado para una ejecución normal.

Por tanto podríamos decir que existe una crisis en la programación, en parte causada por una inadecuada formación en una disciplina tan reciente y compleja como es la informática, y que hasta ahora los esfuerzos realizados para corregir esta situación han sido insuficientes.

Copyright -YASABES.COM. 1996/2004


Return to main page