El software es el conjunto de programas que permite
emplear la PC, es decir, es el medio de comunicacin con la computadora, el control de sus funciones y su programacin para la solucin de diversos problemas. En 1946 J ohn Von Neuman, miembro del grupo del desarrollo de la ENIAC, pens que las instrucciones podan almacenarse en la computadora junto con los datos; a ello lo llam programa almacenado o concepto de Von Neumann. Tema 3: Software Operativo y de Desarrollo. Tema 3: Software Operativo y de Desarrollo. La caracterstica principal de modelo de Von Neumann, es el concepto de programa almacenado, por lo que los programas se almacenan en memoria de la computadora. Programa Datos Memoria Tema 3: Software Operativo y de Desarrollo. Sistemas de Computacin Sistemas de Computacin Hardware Hardware Software Software Sistema Operativo Sistema Operativo Programas de Aplicacin Programas de Aplicacin Tema 3: Software Operativo y de Desarrollo. Sistema Operativo Una interfaz entre el hardware de una computadora y el usuario. Serie de programas que facilita la ejecucin de otros programas. Acta como el gerente general que supervisa la actividad de cada componente del sistema computacional. Tema 3: Software Operativo y de Desarrollo. Objetivos principales: El uso eficiente del hardware Facilidad para usar los recursos Tema 3: Software Operativo y de Desarrollo. Evolucin de los S.O.s Sistemas por Lotes Sistemas de Tiempo Compartido Sistemas Personales Sistemas Paralelos Sistemas Distribuidos Tema 3: Software Operativo y de Desarrollo. Sistema Operativo Sistema Operativo Administrador de Memoria Administrador de Memoria Administrador de Procesos Administrador de Procesos Interfaz de usuario Interfaz de usuario Administrador de Dispositivos Administrador de Dispositivos Administrador de Archivos Administrador de Archivos Tema 3: Software Operativo y de Desarrollo. Sistemas Operativos ms Comunes: Windows, UNIX, Linux Windows Comenz con MS-DOS, ahora es Grfico, es de los que ms ha evolucionado, es multiprogramacin. Tema 3: Software Operativo y de Desarrollo. UNIX Conocido y usado por programadores y cientficos. Es porttil, tiene utileras para evitar ciertos errores e independiente de los dispositivos. Multiprogramacin, comandos cortos y a su vez complicados. Tema 3: Software Operativo y de Desarrollo. Linux Parecido a UNIX, la idea original para este sistema era que se instalar en mquinas personales, por lo que se ha convertido en el ms usado por programadores expertos. Sistema Operativo Administra los procesos de entrada y salida, controla todos los recursos de la computadora y ofrece la base sobre la cual pueden escribirse los programas de aplicacin. Un sistema de computacin moderno consta de uno o ms procesadores, alguna memoria principal, relojes, terminales, discos, interfaces de redes, y otros dispositivos de entrada/salida, por lo que se hizo evidente que tena que descubrirse alguna manera de resguardar a los programadores de la complejidad del hardware. Tema 3: Software Operativo y de Desarrollo. Clasificacin de Sistemas Operativos Requisitos de usuario: Sistema fcil de usar y de aprender, seguro, rpido y adecuado al uso al que se le quiere destinar. Requisitos del software: Donde se engloban aspectos como el mantenimiento, forma de operacin, restricciones de uso, eficiencia, tolerancia frente a los errores y flexibilidad. Tema 3: Software Operativo y de Desarrollo. Sistemas Operativos por Servicios Tema 3: Software Operativo y de Desarrollo. Sistemas Operativos por la Forma de Ofrecer sus Servicios Sistemas Operativos de Red Los sistemas operativos de red se definen como aquellos que tiene la capacidad de interactuar con sistemas operativos en otras computadoras por medio de un medio de transmisin con el objeto de intercambiar informacin, transferir archivos, ejecutar comandos remotos, etc. Sistemas Operativos Distribuidos Los sistemas operativos distribuidos abarcan los servicios de los de red, logrando integrar recursos (impresoras, unidades de respaldo, memoria, procesos, unidades centrales de proceso) en una sola mquina virtual que el usuario accede en forma transparente. Es decir, ahora el usuario ya no necesita saber la ubicacin de los recursos, sino que los conoce por nombre y simplemente los usa como si todos ellos fuesen locales a su lugar de trabajo habitual. Tema 3: Software Operativo y de Desarrollo. Al goritmo: Son procedimientos que se realizan paso a paso para resolver un problema. O bien, mtodo paso a paso para resolver un problema o realizar una tarea. Los hay numricos y alfanumricos. Al goritmo: Se define como la secuencia de pasos o instrucciones para resolver un problema dado. Haciendo enfoque hacia la programacin se utilizara un Lenguaje de programacin. Tema 3: Software Operativo y de Desarrollo. Tema 3: Software Operativo y de Desarrollo. Al goritmo Lista de Entrada Lista de Salida Tema 3: Software Operativo y de Desarrollo. Se pueden identificar tres estructuras de control para la creacin de un algoritmo. Secuencia: Instruccin simple o incluso cualquier otra estructura. Decisin: Donde se comprueba una condicin. Repeticin: Da la opcin de repetir instrucciones o hasta bloques de instrucciones. Tema 3: Software Operativo y de Desarrollo. Los algoritmos se pueden representar mediante: Diagramas de Flujo Pseudocdigo Tema 3: Software Operativo y de Desarrollo. Al goritmo: Una serie de pasos ordenada de pasos precisos que produce un resultado y termina en un tiempo finito. Debe contener instrucciones ordenadas y bien definidas. Da un resultado, de lo contrario sera intil. Debe detenerse. Tema 3: Software Operativo y de Desarrollo. Lenguajes de Programacin Serie de palabras predefinidas que se combinan en un programa de acuerdo a las reglas predefinidas. Por lo que para escribir un programa se necesita un lenguaje de Programacin. Dentro de una metodologa podra ser el paso siguiente despus del algoritmo. Tema 3: Software Operativo y de Desarrollo. Evolucin de Lenguajes de Programacin Lenguajes de Mquina Lenguajes Simblicos Lenguajes de Alto Nivel Lenguajes Naturales Existen dos tipo de lenguaje de programacin: Bajo nivel, instrucciones dadas utilizando dgitos binarios. Al to nivel, instrucciones dadas en palabras. Tema 3: Software Operativo y de Desarrollo. Primera generacin de lenguajes Lenguaje binario o de mquina. Segunda generacin de lenguajes Los lenguajes de mquina avanzaron hacia los ensambladores o lenguajes de cdigo, que dieron la base para la elaboracin de software de sistemas y el software de procedimientos. Tema 3: Software Operativo y de Desarrollo. Tema 3: Software Operativo y de Desarrollo. Lenguajes Procedurales: FORTRAN COBOL PASCAL C ADA Lenguajes Orientados a Objetos: C++ J ava Tema 3: Software Operativo y de Desarrollo. Lenguajes Funcionales: LISP Scheme Lenguajes Declarativos: Prolog Lenguajes Especiales: HTML Perl Sql Programa Es un conjunto de instrucciones escritas en un lenguaje de programacin de alto nivel que indica paso a paso, las acciones para resolver un problema dado y que pueden ser traducidas al lenguaje de la computadora, se le conoce como programa fuente. En realidad las mquinas solo tienen un lenguaje; de mquina, cuando se programa en un lenguaje de alto nivel existen adems un software llamado compilador que lo traduce, a su vez, en lenguaje de mquina para que la PC lo interprete y a estas instrucciones se la llama programa objeto. Programa FUENTE Programa OBJ ETO Programa EJ ECUTABLE Tema 3: Software Operativo y de Desarrollo. Pasos para crear un programa: Escribir el programa y editar el programa Compilar el programa Vincular el programa con los mdulos de biblioteca requeridos Tema 3: Software Operativo y de Desarrollo. Intrprete: Traduce y ejecuta instruccin por instruccin del programa fuente y slo continua con la siguiente instruccin si no hay errores de escritura en la instruccin que analiza en turno. Compilador: Traduce todas las instrucciones y al final indica los posibles errores. Entonces, el software de la computadora puede dividirse de modo general en dos clases: Los programas del sistema: Manejan la operacin de la computadora. Los programas de aplicacin: Resuelven problemas de los usuarios. Tema 3: Software Operativo y de Desarrollo. Software aplicativo La aparicin de paquetes para procesar informacin se debe al xito del uso de las PCs, ya que no es necesario programar. Hoja de clculo electrnica, bases de datos, procesador de palabras, paquetes de aplicacin especifica como pueden ser el de anlisis estadstico y el de diseo estructural, entre muchos. El concepto de paquete o software orientado a una aplicacin especifica continua evolucionando y cada vez es mejor. Tema 3: Software Operativo y de Desarrollo. El software aplicativo se divide en: a) Software a la medida b) Software de propsito general En los cuales debe de existir calidad total, utilizando mtodos y mecanismos. El software libre y software patentado Pros y contras. Piratera de software. Software incompleto y con muchos errores. Tema 3: Software Operativo y de Desarrollo.