Sei sulla pagina 1di 56

Sin el software una computadora es solamente una masa metlica que no nos sirve.

Con el software, una computadora puede almacenar, procesar y recuperar informacin.

El software se puede clasificar de la siguiente forma

Los programas de sistema: Controlan las operaciones de la computadora. Los programas de aplicacin: resuelven problemas para los usuarios.

El programa fundamental de todos los programas de sistema es el SISTEMA OPERATIVO. El Sistema Operativo se encarga de controlar todos los recursos de la computadora y proporcionar la base sobre la cual pueden escribirse los programas de aplicacin.

Una forma de proteger a los programadores de la complejidad del hardware es colocando un nivel de software por arriba del simple hardware con el fin de controlar todas las partes del sistema y presentar al usuario una interfaz o mquina virtual que facilite la comprensin del programa. Este nivel de software es el S.O.

Un Sistema Operativo es un programa que acta como intermediario entre el usuario y el hardware de un computador, y proporciona un entorno en el cual el usuario puede ejecutar programas.

El objetivo principal de un Sistema Operativo es, entonces, lograr que el sistema de computacin se use de manera cmoda. El objetivo secundario es que el hardware del computador se emplee de manera eficiente.

Hardware Un sistema de cmputo esta constituido por Programas de sistemas Programas de aplicacin

Reservaciones de una lnea area Sistema Bancario

Juegos

Compiladores

Editores

Interprete de comandos

- Oculta la complejidad y proporciona un conjunto ms conveniente de instrucciones. - Es la parte de software que se ejecuta de modo central o modo supervisor.

- Sistema de instrucciones que es utilizado directamente por la mquina. - ste es interpretado por el microprograma. - Controla en forma directa los dispositivos y proporciona una interfaz con la siguiente capa. - Se localiza en la - memoria de solo Chips, cables, fuente de poder, etc. - Esta parte le corresponde al Ing. Elctrico.

lectura.

El Sistema Operativo lleva a cabo dos funciones importantes que son: Como mquina extendida Como controlador de recursos

Como mquina extendida o virtual Oculta la verdad acerca del hardware al programador y presenta una agradable y sencilla visin de los archivos con su nombre, tambin oculta asuntos relacionados con las interrupciones, cronmetros, control de la memoria y otras caractersticas de bajo nivel.

Como controlador de recursos Desde este punto de vista la labor del Sistema Operativo es la de proporcionar una asignacin ordenada y controlada de los procesadores, memorias y dispositivos de E/S para varios programas que compiten por ello.

HISTORIA DE LOS SISTEMAS OPERATIVOS Los S.O. han estado relacionados histricamente con la arquitectura de las computadoras con las cuales se ejecutan.

1 Generacin (1945-1955): Bulbos y Conexiones A mitad de la dcada de los 40s, HOWARD AIKEN, JOHN VON NEWMAN entre otros lograron construir mquinas de clculos mediante bulbos. Estas mquinas eran enormes y llenaban cuartos completos con docenas de miles de bulbos.

En esos primeros das, un solo grupo de personas diseaba, construa, programaba, operaba y daba mantenimiento a cada maquina. Toda la programacin se llevaba a cabo en lenguaje mquina absoluto y con frecuencia se utilizaban conexiones para controlar las funciones bsicas de la mquina.

Los lenguajes de programacin eran desconocidos (incluso el lenguaje ensamblador), no se oa de los sistemas operativos. A principios de los 50s, la rutina mejor un poco con la introduccin de las tarjetas perforadas, con esto se escriban los programas en las tarjetas y solo se insertaban pero el proceso era el mismo.

2 Generacin (1955-1965): Transistores y Sistemas de Procesamientos por Lotes.

La introduccin del transistor a mediados de los aos 50s, modific en forma radical el panorama.

Estas mquinas se aislaban del exterior en cuartos de cmputo con aire acondicionado especial y un equipo de operadores profesionales para la ejecucin, como eran muy costosas solamente la podan comprar y utilizar oficinas principales de gobierno o universidades.

Para ejecutar un trabajo el programador deba, primero escribir el programa en hojas de papel en fortran o ensamblador, despus perforar la tarjeta, despus llevar el paquete de tarjetas perforadas a los cuartos de lectura y drselas a uno de los programadores.

Al terminar la computadora el trabajo que estaba en ejecucin, un operador pasaba a la impresora, separaba la salida y la pasaba al cuarto de salida para que el programador la recogiera mas tarde. Como era mucho el tiempo invertido en cada uno de los procesos, se busco una solucin que fue el sistema de procesamiento por lotes.

Se recolectaba una charola repleta de trabajos en el cuarto de entrada, estos se pasaban a cinta magntica mediante una computadora pequea y relativamente barata, como la IBM 1401; en otra mquina la IBM 7094 se realizaban los clculos numricos.

Despus de transcurrir una hora para colectar un lote de trabajos, la cinta se embobinaba y era llevada al cuarto de mquina, donde se colocaba en una unidad de cinta. El operador cargaba una cinta especial, el cual lea el primer trabajo de la cinta y lo ejecutaba. La salida se escriba en una segunda cinta, en vez de imprimirse.

Al concluir cada trabajo, el sistema operativo lea en forma automtica el siguiente trabajo y comenzaba a ejecutarlo. Al concluir todo el lote se retiraba la cinta de entrada y salida reemplazaba la cinta de entrada con el siguiente con el siguiente lote y llevaba la cinta de salida a un 1401 para impresin fuera de lnea.

Para poder identificar cuando comenzaba o terminaba un trabajo era necesario utilizar tarjetas de control que son las antecesoras de los modernos lenguajes de control de las tareas y los interpretes de los comandos.

Los sistemas operativos ms comunes eran FMS (fortran monitor system) e IBSYS, el sistema operativo IBM para la 7094.

3 Generacin (1965-1980): Circuitos integrados y Multiprogramacin. A principio de la dcada de los sesenta, la mayora de los fabricantes de computadoras tenan dos lneas de productos, distintos y totalmente incompatibles.

Por un lado las computadoras cientficas de gran escala, orientadas a palabras, como la 7094, la cual se utilizaba en clculos cientficos y de ingeniera.

Y las computadoras comerciales, orientadas a caracteres, como la 1401, de uso comn para el ordenamiento de cintas e impresin por los bancos y las compaas aseguradoras.

Estas dos lneas de productos eran muy caras para los fabricantes, adems, la mayora de los nuevos clientes necesitaban una mquina pequea y ms rpida.

IBM intento resolver estos problemas; para ello introdujo el sistema /360. El 360 era una serie de mquinas compatibles en software, con un rango desde la 1401 hasta mquinas ms poderosas que la 7094.

intento resolver estos problemas; para ello introdujo el sistema /360. El 360 era una serie de mquinas compatibles en software, con un rango desde la 1401 hasta mquinas ms poderosas que la 7094.

Estas solo diferan en el precio y en el desempeo (mximo de memoria, velocidad de procesador, nmero permitido de dispositivos de E/S, etc.).

Puesto que las mquinas tenan la misma arquitectura y conjunto de instrucciones, al menos en teora, los programas escritos para una mquina podan ejecutarse en las otras. Adems, la 360 se diseo para hacer clculos tanto cientficos como comerciales.

As, una sola familia de mquinas podra satisfacer las necesidades de todos los clientes. La 360 fue la primera lnea principal que utiliz los circuitos integrados, lo que proporcion una gran ventaja de precio y desempeo.

Se tena la intensin de que todo el Software, Sistema Operativo incluido, deba funcionar en todos los modelos. Deba ser bueno en los sistemas con pocos perifricos y en sistemas con muchos perifricos. Deba funcionar en los ambientes cientficos y comerciales.

El resultado fue un S.O. enorme y extraordinariamente complejo. Constaba de millones de lneas de lenguaje ensamblador, escrito por miles de programadores, con miles y miles de errores, que requeran de flujo continuo de nuevas versiones, en un intento por corregirlo.

Una caracterstica muy importante de los S.O. de la tercera generacin fue la de multiprogramacin; Como se desperdiciaba mucho tiempo en la espera de que terminara un trabajo con E/S, esto se soluciono con la particin de la memoria en varios fragmentos.

Con un trabajo distinto en cada particin, mientras que un trabajo esperaba que concluyera la E/S, otro poda estar utilizando la CPU, si se poda mantener en la memoria principal los trabajos suficientes a la vez, la CPU estara ocupada el 100% del tiempo.

Otra de las caractersticas principales de los S.O. de la tercera generacin era la capacidad de leer trabajos de las tarjetas al disco, tan pronto como llegarn al cuarto de cmputo. As, siempre que concluyera un trabajo; el S.O. poda cargar un nuevo trabajo del disco en la particin que quedaba desocupada y ejecutarlo.

Esta tcnica se llama spooling (operacin simultanea y en lnea de perifricos); tambin utilizado para las salidas. Con el spooling, las 1401 ya no fueron necesarias y desapareci el transporte de las cintas de un lado a otro.

Otro avance muy importante es el tiempo compartido. Variante de la multiprogramacin; en la que cada usuario tena una terminal en lnea. En un sistema con tiempo compartido, si 20 usuarios estn conectados y 17 de ellos estn pensando o platicando, la CPU puede ser asignada a los tres trabajos que requieren servicio.

Aunque el primer sistema serio de tiempo compartido (CTSS) fue desarrollado por MIT en una 7094 con modificaciones especiales no se popularizo hasta la tercera generacin.

Despus del xito del sistema CTSS, MIT, BELL LABS Y GENERAL ELECTRIC, decidieron emprender el desarrollo de una utilera de computadora una mquina que soportaba a cientos de usuarios con tiempo compartido, est se llamo MULTICS.

Por ltimo, otro desarrollo fundamental durante la tercera generacin fue el crecimiento fenomenal de las microcomputadoras, a partir de la DECPDP-1 en 1961. La PDP-1 ya que era casi tan rpida como la 7094.

Uno de los cientficos de BELL LABS que trabaj en el proyecto Multics Ken Thomson, utilizando una PDP-7 intento escribir una versin desprotegida de Multics para un solo usuario. Este trabajo desemboco en el sistema operativo UNIX.

Estructura de un Sistema Operativo Un Sistema Operativo proporciona el entorno dentro del cual se ejecutan los programas. Para construir este entorno, dividimos lgicamente al Sistema Operativo en pequeos mdulos y creamos una interfaz bien definida para estos programas.

Estructura de un Sistema Operativo


NIVEL 5 4 3 NOMBRE Interprete del lenguaje de ordenes Sistema de archivos Memoria Primaria (la gestiona) E/S bsicas Ncleo o Kernel OBJETIVOS Datos del entorno Archivos, dispositivos de almacenamiento Segmentos y pginas

2 1

Bloques de datos Procesos, semforos

Nivel 5: Interprete del lenguaje Proporciona el interfaz entre los usuarios interactivos y el S.O., acepta las lneas de rdenes y las analiza sintcticamente para separar las ordenes de los parmetros e identificar el tipo de servicio solicitado.

Nivel 4: Sistema de archivos Proporciona facilidades para almacenamiento a largo plazo y manipulacin de archivos con nombre, tambin gestiona los dispositivos y perifricos externos. Utiliza spooling

Nivel 3: Memoria primaria Gestiona la memoria primaria. Asigna y libera memoria a los programas y se implementa la memoria virtual.

Nivel 2: E/S bsicas Proporciona facilidades de bajo nivel para la gestin de memoria secundaria para soportar las tareas de la memoria principal en el nivel 3. Permite que se transfieran bloques de datos entre los almacenamientos primario y secundario.

Nivel 1: Ncleo Solo utiliza los objetos y las operaciones disponibles en el hardware desnudo. Es conocido como ncleo o Kernel del S.O. y gestiona los procesos. Contiene un planificador de procesos y servicio de interrupciones hardware.

Potrebbero piacerti anche