Software, Es el conjunto de las instrucciones que las computadoras emplean para manipular datos. Sin el software las computadoras serían un conjunto de medios inservibles. Como concepto general, el software puede dividirse en varias categorías basadas en el tipo de trabajo realizado. Las dos categorías primarias de software son los sistemas operativos (software del sistema), que controlan los trabajos del ordenador o computadora, y el software de aplicación, que dirige las distintas tareas para las que se utilizan las computadoras. Por lo tanto, el software del sistema procesa tareas tan esenciales, aunque a menudo invisibles, como el mantenimiento de los archivos del disco y la administración de la pantalla, mientras que el software de aplicación lleva a cabo tareas de tratamiento de textos, gestión de bases de datos y similares. Constituyen dos categorías separadas el software de red, que permite comunicarse a grupos de usuarios, y el software de lenguaje utilizado para escribir programas Además de estas categorías basadas en tareas, varios tipos de software se describen basándose en su método de distribución. Entre estos se encuentran los así llamados programas enlatados, el software desarrollado por compañías y vendido principalmente por distribuidores, el freeware y software de dominio público, que se ofrece sin costo alguno, el shareware, que es similar al freeware, pero suele conllevar una pequeña tasa a pagar por los usuarios que lo utilicen profesionalmente y, por último, el infame vapourware, que es software que no llega a presentarse o que aparece mucho después de lo prometido. Clasificación de software De multiprogramación (o de multitarea). Monotareas. Monousuario. Multiusuario. Por lotes. De tiempo real. De tiempo compartido Distribuidos De red. Paralelos. Tipos de procesamiento. Procesamiento centralizado. 1 En un computador se pueden distinguir tres grandes funciones: procesamiento de información, procesamiento de base de datos y procesamiento de las comunicaciones. Cuando todas estas funciones están situadas en un mismo computador se conoce como procesamiento centralizado; existe sólo una unidad inteligente y varios puntos remotos terminales tontas que se encargan de realizar las consultas. Un sistema constituido por una unidad de control y muchos esclavos no es una red, ni tampoco lo es un ordenador grande con lectoras de tarjetas de control remoto, impresoras y terminales. Procesamiento con distribución de la función de comunicaciones. El procesamiento de base de datos y de información se sitúa en el procesador central y lo concerniente a la carga de comunicaciones se le encarga a otro computador. Procesamiento con distribución de la función de procesar información. Se realizan ciertas funciones en el procesador satélite y el local central contiene la base de datos central, que cada satélite tiene que consultar para obtener información que fuera precisa en ese momento. El local satélite debía aceptar la limitación de desempeñar siempre un papel subordinado al computador principal al que servía. Procesamiento completamente distribuído. Cada procesador de la red mantiene una base de datos, ya sea redundante o concerniente al área de su interés; si la información mantenida en un local es diferente a la de otro, existe una base de datos distribuida; si la información mantenida en ambos locales es la misma existe una base de datos redundante. Puede existir una combinación de ambas. En ambas posibilidades el procesamiento de información, de comunicaciones y de base de datos reside en cada local. Por consiguiente, los procesadores satélites son capaces de manejar consultas y procesamiento de datos que residen dentro de su margen de responsabilidad. En un sistema distribuido nada se tiene que hacer de forma explícita, todo lo hace de manera automática el sistema sin que el usuario tenga conocimiento de ello. Un sistema distribuido es efectivamente un caso especial de una red, aquél cuyo software da un alto grado de cohesividad y transparencia. La diferencia entre una red y un sistema distribuido está más bien en el software (en especial el sistema operativo) que en el hardware. Tanto el sistema distribuido como el de redes de ordenadores necesitan mover archivos, la diferencia está en quién invoca el movimiento, el sistema o el usuario. Sistema en línea. Es aquel que recibe los datos directamente del punto de su generación y transmite la salida directamente al usuario final. Sistema en tiempo real. Recibe el ingreso desde el ambiente (o evento), procesa con demora mínima (incluyendo la actualización de archivos) y transmite la respuesta (salida) a tiempo, para afectar el ambiente o controla el evento en curso 2