Sistema Operativo

31
Un sistema operativo (SO). Es el programa o conjunto de programas que efectúan la gestión de los procesos básicos de un Sistema informático y permite la normal ejecución del resto de las operaciones. Contenido [ocultar ] 1 Introducción 2 Historia y evolución o 2.1 Primera generación (Finales de la década de los 50's) o 2.2 Segunda generación (Mitad de la década de los 60's) o 2.3 Tercera generación o 2.4 Cuarta generación (Mitad de la década de los 70's hasta nuestros días) 3 Sistema operativo 4 Componentes del sistema operativo 5 Funciones de los Sistemas Operativos 6 Características de los Sistemas Operativos 7 Sistema Operativo como administrador de recursos 8 Recursos administrados por los Sistemas Operativos 9 Tareas que realiza un Sistema Operativo 10 Clasificación de los Sistemas Operativos o 10.1 Sistemas operativos por lotes o 10.2 Sistemas operativos multiprogramación o 10.3 Sistemas operativos multiusuario o 10.4 Sistemas operativos de tiempo compartido o 10.5 Sistemas operativos de tiempo real 11 Tipos de Sistemas Operativos 12 Ejemplos de Sistemas Operativos o 12.1 Familia Windows o 12.2 Familia Macintosh o 12.3 Familia UNIX 13 Empleo de Sistemas Operativos de Código Abierto 14 Fuentes Introducción

Transcript of Sistema Operativo

Un sistema operativo(SO). Es elprogramaoconjuntode programas que efectan la gestin de los procesos bsicos de unSistema informticoy permite la normal ejecucin del resto de las operaciones.Contenido[ocultar] 1Introduccin 2Historia y evolucin 2.1Primera generacin (Finales de la dcada de los 50's) 2.2Segunda generacin (Mitad de la dcada de los 60's) 2.3Tercera generacin 2.4Cuarta generacin (Mitad de la dcada de los 70's hasta nuestros das) 3Sistema operativo 4Componentes del sistema operativo 5Funciones de los Sistemas Operativos 6Caractersticas de los Sistemas Operativos 7Sistema Operativo como administrador de recursos 8Recursos administrados por los Sistemas Operativos 9Tareas que realiza un Sistema Operativo 10Clasificacin de los Sistemas Operativos 10.1Sistemas operativos por lotes 10.2Sistemas operativos multiprogramacin 10.3Sistemas operativos multiusuario 10.4Sistemas operativos de tiempo compartido 10.5Sistemas operativos de tiempo real 11Tipos de Sistemas Operativos 12Ejemplos de Sistemas Operativos 12.1Familia Windows 12.2Familia Macintosh 12.3Familia UNIX 13Empleo de Sistemas Operativos de Cdigo Abierto 14Fuentes

IntroduccinEn el inicio de lacomputacinel programador deba tener unconocimientoy contacto profundo con elhardware, y en el infortunado caso de que su programa fallara, deba examinar los valores de los registros y paneles de luces indicadoras del estado de lacomputadorapara determinar la causa del fallo y poder corregir su programa, adems de enfrentarse nuevamente a los procedimientos de apartar tiempo del sistema y poner a punto losCompiladores, ligadores, etc para volver a correr el programa.La importancia de los Sistemas Operativos nace histricamente desde los aos 50's, cuando se hizo evidente que el operar una computadora por medio de tableros enchufables en la primera generacin y luego por medio del trabajo en lote en la segunda generacin, se poda mejorar notoriamente, pues el operador realizaba siempre una secuencia de pasos repetitivos, lo cual es una de las caractersticas contempladas en la definicin de lo que es un programa. Es decir, se comenz a ver que las tareas mismas del operador podan plasmarse en un programa, el cual a travs del tiempo y por su enorme complejidad se le llam "Sistema Operativo". As, entre los primeros sistemas operativos se encuentra el Fortran Monitor System ( FMS ) e IBSYS.Todo sistema de cmputo se puede dividir, en forma general, en dos partes: hardware (aseguramiento tcnico) y software (aseguramiento de programas). El software hace til al hardware y puede dividirse en dos clase: los programas del sistema (software de base) que manejan la operacin de la computadora, y elsoftwarede aplicacin que realiza acciones tiles a los usuarios. Entre los programas del sistema se pueden mencionar: sistemas de operacin (los ms importantes de todo el conjunto), compiladores,intrpretes,editores, etc. Para que funcionen los otros programas, cada ordenador de uso general debe tener un sistema operativo.Historia y evolucinLos Sistemas Operativos han estado relacionados histricamente con la arquitectura de las computadoras en las cuales se ejecutan, razn por la cual su historia. Los Sistemas Operativos, al igual que el Hardware de los computadores, han sufrido una serie de cambios revolucionarios llamados generaciones.En el caso del hardware, las generaciones han sido marcadas por grandes avances en los componentes utilizados, pasando devlvulas(primera generacin ) atransistores(segunda generacin), acircuitos integrados(tercera generacin), a circuitos integrados de gran y muy gran escala (cuarta generacin).Cada generacin Sucesiva de hardware ha ido acompaada de reducciones substanciales en los costos, tamao, emisin de calor y consumo deenerga, y por incrementos notables en velocidad y capacidad. En la actualidad existe gran variedad de Sistemas Operativos como pueden serWindows 98,Windows NT,Linux, etc.Primera generacin (Finales de la dcada de los 50's)En esta dcada aparecen los sistemas de procesamiento por lotes, donde los trabajos se reunan por grupos o lotes. Cuando se ejecutaba alguna tarea, sta tena control total de la mquina. Al terminar cada tarea, el control era devuelto al sistema operativo, el cual limpiaba, lea e iniciaba la siguiente tarea. Aparece el concepto de nombres de archivo del sistema para lograr independencia de informacin. Los laboratorios de investigacin deGeneral Motorsposeen el crdito de haber sido los primeros en poner en operacin un sistema operativo para suIBM 701.Segunda generacin (Mitad de la dcada de los 60's)En esta generacin se desarrollan los sistemas compartidos conmultiprogramacin, en los cuales se utilizan varios procesadores en un solo sistema, con la finalidad de incrementar el poder de procesamiento de la mquina. El programa especificaba tan slo que unarchivoiba a ser escrito en una unidad de cinta con cierto nmero de pistas y cierta densidad. El sistema operativo localizaba entonces una unidad de cinta disponible con las caractersticas deseadas, y le indicaba al operador que montara una cinta en esa unidad.Tercera generacinEn esta poca surge la familia de computadores IBM/360 diseados como sistemas para uso general, por lo que requeran manejar grandes volmenes de informacin de distinto tipo, lo cual provoc una nueva evolucin de los sistemas operativos: los sistemas de modos mltiples, que soportan simultneamente procesos por lotes, tiempo compartido, procesamiento en tiempo real y |multiprocesamiento.Cuarta generacin (Mitad de la dcada de los 70's hasta nuestros das)Los sistemas operativos conocidos en lapoca actualson los considerados sistemas de cuarta generacin. Con la ampliacin del uso de redes de computadoras y del procesamiento en lnea es posible obtener acceso a computadoras alejadas geogrficamente a travs de varios tipos de terminales. Con estos sistemas operativos aparece el concepto de mquinas virtuales, en el cual el usuario no se involucra con el hardware de la computadora con la que se quiere conectar y en su lugar el usuario observa una interfaz grfica creada por el sistema operativo.Sistema operativoUn sistema operativo es un conjunto de programas o software, destinado a permitir la comunicacin entre el usuario y la mquina de forma cmoda y eficiente; se encarga de gestionar los recursos delordenador, esto incluye la gestin del hardware desde los niveles ms bsicos.Componentes del sistema operativo

El sistema operativo est compuesto por un conjunto de paquetes de software que pueden utilizarse para gestionar las interacciones con elhardware. Estos elementos se incluyen por lo general en este conjunto de software: El ncleo, que representa las funciones bsicas del sistema operativo, como por ejemplo, la gestin de lamemoria, de los procesos, de los archivos, de las entradas/salidas principales y de las funciones decomunicacin. El intrprete de comandos, que posibilita la comunicacin con el sistema operativo a travs de un lenguaje de control, permitiendo al usuario controlar los perifricos sin conocer las caractersticas del hardware utilizado, la gestin de las direcciones fsicas, etctera. El sistema de archivos, que permite que los archivos se registren en una estructura arbrea.Los Sistemas Operativos son una interfaz con: Operadores. |Programadores de aplicaciones. Programadores de sistemas (administradores del S. O.). Programas. Hardware. Usuarios.Funciones de los Sistemas Operativos Administracin del procesador: el sistema operativo administra la distribucin del procesador entre los distintos programas por medio de unalgoritmo de programacin. El tipo de programador depende completamente del sistema operativo, segn el objetivo deseado. Gestin de la memoria de acceso aleatorio: el sistema operativo se encarga de gestionar el espacio de memoria asignado para cada aplicacin y para cada usuario, si resulta pertinente. Cuando lamemoria fsicaes insuficiente, el sistema operativo puede crear una zona de memoria en el disco duro, denominada "memoria virtual". Lamemoria virtual permiteejecutar aplicaciones que requieren una memoria superior a laMemoria RAMdisponible en el sistema. Sin embargo, esta memoria es mucho ms lenta. Gestin de entradas/salidas: el sistema operativo permite unificar y controlar el acceso de los programas a los recursos materiales a travs de losdrivers(tambin conocidos como administradores perifricos o de entrada/salida). Gestin de ejecucin de aplicaciones: el sistema operativo se encarga de que las aplicaciones se ejecuten sin problemas asignndoles los recursos que stas necesitan para funcionar. Esto significa que si una aplicacin no responde correctamente puede "sucumbir". Administracin de autorizaciones: el sistema operativo se encarga de la seguridad en relacin con la ejecucin de programas garantizando que los recursos sean utilizados slo por programas y usuarios que posean las autorizaciones correspondientes. Gestin de archivos: el sistema operativo gestiona la lectura y escritura en el sistema de archivos, y las autorizaciones de acceso a archivos de aplicaciones y usuarios. Gestin de la informacin: el sistema operativo proporciona cierta cantidad de indicadores que pueden utilizarse para diagnosticar el funcionamiento correcto del equipo.Caractersticas de los Sistemas Operativos Conveniencia. Un Sistema Operativo hace ms conveniente el uso de una computadora. Eficiencia. Un Sistema Operativo permite que los recursos de la computadora se usen de la manera ms eficiente posible. Habilidad para evolucionar. Un Sistema Operativo deber construirse de manera que permita el desarrollo, prueba o introduccin efectiva de nuevas funciones del sistema sin interferir con el servicio. Encargado de administrar el hardware. El Sistema Operativo se encarga de manejar de una mejor manera los recursos de la computadora en cuanto a hardware se refiere, esto es, asignar a cada proceso una parte del procesador para poder compartir los recursos. Relacionar dispositivos (gestionar a travs del kernel). El Sistema Operativo se debe encargar de comunicar a los dispositivosperifricos, cuando el usuario as lo requiera. Organizar datos para acceso rpido y seguro. Manejar las comunicaciones en red. El Sistema Operativo permite al usuario manejar con alta facilidad todo lo referente a la instalacin y uso de las redes de computadoras. Procesamiento porbytesde flujo a travs delbus de datos. Facilitar las entradas y salidas. Un Sistema Operativo debe hacerle fcil al usuario el acceso y manejo de los dispositivos deEntrada/Salida de la computadora. Tcnicas de recuperacin de errores. Evita que otros usuarios interfieran. El Sistema Operativo evita que los usuarios se bloqueen entre ellos, informndoles si esa aplicacin esta siendo ocupada por otro usuario. Generacin de estadsticas. Permite que se puedan compartir el hardware y los datos entre los usuarios.Sistema Operativo como administrador de recursosLa otra tarea de un sistema operativo consiste en administrar los recursos de un computador cuando hay dos o ms programas que ejecutan simultneamente y requieren usar el mismo recurso (como tiempo deCPU, memoria oimpresora).Adems, en unsistema multiusuario, suele ser necesario o conveniente compartir, adems de dispositivos fsicos, informacin. Al mismo tiempo, debe tenerse en cuenta consideraciones de seguridad: por ejemplo, lainformacin confidencialslo debe ser accesada por usuarios autorizados, un usuario cualquiera no debiera ser capaz de sobrescribir reas crticas delSistema, etc. (En este caso, un usuario puede ser una persona, un programa, u otro computador). En resumen, el sistema operativo debe llevar la cuenta acerca de quin est usando qu recursos; otorgar recursos a quienes los solicitan (siempre que el solicitante tenga derechos adecuados sobre el recurso); y arbitrar en caso de solicitudes conflictivas.Recursos administrados por los Sistemas Operativos Procesadores. Almacenamiento. Dispositivos de entrada y salida. Datos.Tareas que realiza un Sistema Operativo Realizar el interfazsistema-usuario. Compartir los recursos de Hardware entre los usuarios. Permitir a los usuarios compartir sus datos entre ellos. Prevenir que las actividades de un usuario no interfieran en las de los dems usuarios. *Calendarizar los recursos de los usuarios. Facilitar el acceso a los dispositivos de E/S. Recuperarse de fallas o errores. Llevar el control sobre el uso de los recursos (entre otras).Clasificacin de los Sistemas OperativosDebido a la evolucin de los sistemas operativos fue necesario realizar una clasificacin; considerando las diferencias existentes entre sus componentes los podemos clasificar en: Sistemas operativos por lotes. Sistemas operativos multiprogramacin. Sistemas operativos multiusuario. Sistemas operativos de tiempo compartido. Sistemas operativos de tiempo real.Sistemas operativos por lotesLos sistemas operativos por lotes requieren que la informacin est reunida en bloque o "lote" (el programa, los datos, y las instrucciones). Los trabajos son procesados en el orden de admisin, segn el modelo de "primero en llegar primero en ser atendido". En estos sistemas la memoria se divide en dos zonas. Una de ellas es ocupada por el sistema operativo, y la otra se usa para cargar programas transitorios para su ejecucin. Cuando termina la ejecucin de un programa se carga un nuevo programa en la misma zona de memoria.Sistemas operativos multiprogramacinLos sistemas demultiprogramacinson capaces de soportar dos o ms procesos concurrentes mltiples, permiten que residan al mismo tiempo en la memoria primaria las instrucciones y los datos procedentes de dos o ms procesos. Estos sistemas implican la operacin de multiproceso, para el manejo de la informacin. Se caracterizan principalmente por un gran nmero de programas activos simultneamente que compiten por los recursos del sistema, como el procesador, la memoria, y los "dispositivos de E/S". Estos sistemas monitorean el estado de todos los programas activos y recursos del sistema.Sistemas operativos multiusuarioLos sistemas operativosmultiusuariopermiten acceder simultneamente a un sistema de computadoras a travs de dos o ms terminales. Estetipo de sistema operativoes fundamental en el manejo de redes de computadoras actualmente.Sistemas operativos de tiempo compartidoLos sistemas operativos de tiempo compartido tratan de proporcionar un reparto equitativo de los recursos comunes para dar la impresin a los usuarios de que poseen unacomputadoraindependiente. En estos sistemas el administrador de memoria proporciona aislamiento y proteccin de los programas, ya que generalmente no tienen necesidad de comunicarse entre ellos. El control de E/S se encarga de proporcionar o retirar la asignacin a los dispositivos de forma que se preserve la integridad del sistema y se proporcione servicio a todos los usuarios. Eladministrador de archivosproporciona proteccin y control en el acceso de la informacin, dada la posibilidad de concurrencia y conflictos al tratar de acceder a los archivos.Sistemas operativos de tiempo realEstossistemastienen como objetivo proporcionar tiempos ms rpidos de respuesta, procesar la informacin sin tiempos muertos. En estos sistemas el administrador de memoria es relativamente menos solicitado debido a que muchos procesos residen permanentemente en memoria. El administrador de archivos se encuentra normalmente en grandes sistemas de tiempo real y su objetivo principal es manejar la velocidad de acceso, ms que la utilizacin eficaz del almacenamiento secundario.Tipos de Sistemas OperativosExisten varios tipos de sistemas operativos, definidos segn su capacidad para administrar simultneamente informacin de 16 bits, 32 bits, 64 bits o ms.SistemaProgramacinUsuario nicoUsuario MltipleTarea nicaMultitarea

DOS16 bitsXX

Windows 3.116/32 bitsXNo preventivo

Windows 95/98/Me32 bitsXCooperativo

Windows NT/ 200032 bitsXPreventivo

Windows XP32/64 bitsXPreventivo

Unix/Linux32/64 bitsXPreventivo

MAC/OS X32 bitsXPreventivo

VMS32 bitsXPreventivo

Ejemplos de Sistemas OperativosFamilia Windows Windows 95 Windows 98 Windows ME Windows NT Windows 2000 Windows 2000 Server Windows XP Windows Server 2003 Windows CE Windows Mobile Windows XP 64 bits Windows Vista (Longhorn) Windows 7Familia Macintosh Mac OS 7 Mac OS 8 Mac OS 9 Mac OS XFamilia UNIX AIX AMIX GNU/Linux GNU / Hurd HP-UX Irix Minix System V Solaris UnixWareEmpleo de Sistemas Operativos de Cdigo AbiertoEl vertiginoso desarrollo alcanzado, la ausencia de licencias restrictivas para la copia, modificacin y redistribucin hacen del Sistema Operativo Linux un candidato muy fuerte a ganar cada da ms usuarios en el mundo y en particular en nuestro pas con las limitaciones impuestas porel bloqueo, de aqu que los lineamientos generales para el uso del software libre enCubaas lo contemplen creando las condiciones necesarias para la migracin, siendo losJoven Clubla va principal para acercar a la poblacin cubana en general, al software libre. ellos, la bien llamadaComputadora de la familia cubana, que desempea un papel vital en la introduccin de cualquier programa informtico en lasociedadcriolla, ya que es all donde la gran mayora de nuestra poblacin tiene el primer contacto con una computadora, ah coinciden eladolescente, el universitario, el adulto y elAdulto Mayory se preparan en la modalidad de sistema operativo (Windows) y software libre (Linux), un sistema operativo que favorece el uso de cdigos abiertos por lo tanto ahora con la insercin delSoftware Libreen nuestropas, estos centros estn llamados a desarrollar programas de enseanza acorde a las potencialidades de los usuarios y encaminados a satisfacer las necesidades de toda la comunidad circundante y al que laislaapuesta para sustituir en instituciones oficiales el uso delMicrosoft.Ejemplos de sistemas operativos multiprogramacin8 diciembre, 2013InformticaComo se clasifican los sistemas operativos por su estructura,Cuantas clases de sistemas operativos existen,Cuantos tipos de sistemas operativos hay,Examen de sistemas operativos,Sistemas operativos,Sistemas operativos de multiprogramacion,Sistemas operativos multiprogramacion ejemplos,Tipos de sistemas operativos

S.O: Programa o conjunto de programas que sirven de intermediario entre elusuario/programay el hardware del ordenador.Objetivos

Proporcionar a los programas de usuario unamquina abstractaAdministrar eficientemente los recursos del ordenadorEl sistema operativo como mquina abstractaEl hardware y el software del ordenador se estructuran en forma jerrquica, en niveles, de forma que cadanivelutiliza los servicios del nivel inmediatamente inferior para prestar unos servicios mejorados al nivelinmediatamente superior.El SO proporciona al resto de aplicaciones una mquina abstracta, es decir, oculta losdetallesconcretos del ordenador y lascomplejidadesdel hardware. Para ello, proporciona una API (Application Programming Interface, Interfaz de programacin de aplicaciones), que es un conjunto de funciones que pueden utilizar los programas de usuario.La ocultacin del Hardware a las aplicaciones de los usuarios tiene dosobjetivos:Abstraccin

La tendencia actual del software es la de dar una visin global y abstracta del ordenador haciendo fcil su uso, ocultando por completo la gestin interna.Seguridad

Existen instrucciones en la mquina que pueden detener el ordenador, interferir procesos, etc. Pero ello, es necesario restringir determinadas operaciones a los usuarios creando diferentes niveles de privilegio, de forma que cada usuario tenga protegida su informacin y procesos.Recursoes un componente hardware necesario para llevar a cabo un trabajo. En los ordenadores existen cuatro tipos de recursos: elprocesador, la memoria principal, el almacenamiento secundario y los perifricos de entrada/salida.Programa:

Conjunto de instrucciones + estructuras de datos es un concepto esttico.Proceso (trabajo, JOB):

Programa en ejecucin concepto dinmico.Observaciones relacionadas con los conceptos de programa yproceso:Un programa puede dar lugar a distintos procesos (segn los datos, etc).Elsistemaoperativova a gestionar los programas en ejecucin (procesos).Procesador (CPU):

Ente capaz de ejecutar procesos.1. Primerageneracin: 1945-1955Desde la construccin de los primeros computadores (1943) hasta aproximadamente el ao 1955 no existen sistemas operativos. El usuario que deseaba utilizar un ordenador deba apuntarse en un cuaderno de reservas de horas. Cuando llegaba su turno, el programador, que haca tambin las funciones de operador, introduca su programa (con conmutadores) y esperaba a que poco a poco fuesen escribindose en una impresora los resultados.El programa se daba a travs de tarjeta perforada y se redactaba a mano en lenguaje mquina. Los datos tambin se suministraban al computador con tarjetas perforadas.Posteriormente, se idearon los ensambladores. Despus de ensamblar el programa, el programa objeto obtenido (en lenguaje mquina) se montaba manualmente; es decir, se juntaba con otros paquetes de tarjetas que contenan las funciones utilizadas en el programa y no definidas en el mismo (multiplicacin o raz cuadrada, por ejemplo). El paquete total de tarjetas, por ltimo, se ejecutaba con los datos del programa. En resumen, la mquina, durante su utilizacin, estaba totalmente bajo el control directo del usuario.Con esta forma de trabajar no se obtena un aprovechamiento adecuado del computador. Cuando la CPU estaba trabajando, los dispositivos de E/S estaban inactivos, y cuando un dispositivo de E/S estaba actuando, las dems unidades, incluyendo la CPU, no trabajaban. Las grandes posibilidades operativas de la CPU, en cuanto a velocidad de ejecucin, no se aprovechaban adecuadamente.Como resumen de esta primera etapa (1943 a 1955)podemos decir que la introduccin y control de la ejecucin de programas se haca manualmente, uno a uno: no existan sistemas operativos.Procesamiento en serie1. Segunda etapa: 1956-1965En la segunda etapa en vez de utilizar slo lectoras de tarjetas e impresoras, se utilizan soportes de informacin intermedios, comocinta magntica.Inicialmente, en cinta magntica slo se encontraban los traductores, funciones de biblioteca, etc., necesitndose dar por tarjeta nicamente el programa y datos del usuario.Posteriormente, se dio un paso importante. Se utiliz unordenador perifricopara gestionar las entradas/salidas, y el ordenador principal (ms potente) nicamente lea/escriba sobre cinta magntica. Este era el caso del computador IBM-7090, que se utilizaba en conjuncin con un IBM-140l.El sistema era gestionado por personas especializadas u operadores, que eran quienes manipulaban los computadores. El IBM-1401 contena programas, suministrados por el fabricante, que volcaban sobre cinta magntica los programas en tarjeta de los usuarios. En la cinta se tenan as grabadas imgenes de tarjeta. Posteriormente, y una vez que en una cinta haba una cola de trabajos, el operador desmontaba la cinta del 1401 y la montaba en el 7090. El 7090 lea los programas de la cinta, y los resultados a imprimir los escriba en otra cinta magntica, obtenindose as por cada programa un archivo de impresin grabado en cinta. El operador, con cierta regularidad, montaba la cinta de archivos de impresin en el 1401, y ste los iba escribiendo por las impresoras.El operador organizaba el trabajo incluyendo, por ejemplo, en una misma cinta todos los trabajos con programas en FORTRAN, en otra los trabajos con programas en COBOL, etc. Cuando se pasaban al IBM-7090 los trabajos en FORTRAN, se montaba en otra unidad la cinta con el compilador y bibliotecas de FORTRAN, cargndose en el computador cuando fuese necesario.El procedimiento de funcionamiento descrito, desde el punto de vista del usuario-programador, es mucho ms sencillo que el de la primera etapa. Pero es necesario uncontrol automtico del flujo o cola de trabajos.En efecto,este tipo de funcionamiento, denominado por lotes o batch, es posible gracias a la existencia de un sistema operativo; es decir, un programa de control. Este programa de control que planifica los trabajos se suele denominarmonitor.Poco a poco los monitores se perfeccionaron, incluyendorutinas de control de E/S, mduloscontroladores del tiempo mximo de CPU(para evitar que un programa se est ejecutando por tiempo indefinido, a causa de un error de programacin), mdulo decontabilidad del uso del computador por los usuarios, etc.Esta segunda etapa la podramos denominar deprocesamiento de trabajos en lotes, o tambin de utilizacin de dispositivos de E/S fuera de lnea.1. Tercera y cuarta etapa: 1966 a 1981La tercera etapa se caracteriza fundamentalmente por el perfeccionamiento del sistema de trabajos por lotes, el desarrollo de sistemas operativos enmultiprogramacinque permite a una mquina estar realizandovarios procesos a la vez; los usuarios pueden trabajar en forma interactiva/conversacional y se introduce el concepto dememoria virtual.En un sistema de tipo multiusuario, existen varios usuarios con un terminal en lnea (usuarios interactivos), se llama sistema detiempo compartido.En estos sistemas se divide el tiempo del procesador central, y de los dems recursos del ordenador, de forma que cada usuario tiene la ilusin de que todo el ordenador se le dedica exclusivamente a l, al recibir unos tiempos de respuesta aceptables. En un sistema detiempo compartidolos usuarios suelen ejecutar programas cortos (por ejemplo, compilar un programa), frente a los programas largos (por ejemplo, ordenar una cinta de un milln de datos) que se suelen dar en los sistemas batch.Hay que indicar que algunos sistemas operativos permiten tanto usuarios interactivos como lotes de trabajos batch. En estos sistemas se atiende a los usuarios interactivos con mayor prioridad, ejecutndose los programas batch cuando no hay programas de usuario.Tambin aparecen las tcnicasspoolinggracias a las cuales se almacenan trabajos en colas de espera.Quinta y sexta etapa: 1982-actualidadLa cuarta etapa se caracteriza por el desarrollo de sistemas operativos paracomputadores personales(MS-DOS, OS/2, etc.), SO con interfaces grficos, y para estaciones de trabajo (UNIX, Windows-NT, etc.).Tambin se desarrollan sistemas operativos deredy sistemas operativosdistribuidos.Los sistemas operativos en red no se diferencian sustancialmente de los sistemas operativos convencionales, ya que pueden considerarse como una ampliacin de stos con programas de control de interfaz con la red y permiten realizar una sesin de trabajo con un computador remoto.Los sistemas operativos distribuidos son mucho ms complejos, ya que permiten que un usuario ejecute, de forma transparente, uno o varios programas en varios procesadores trabajando simultneamente y, posiblemente, con datos distribuidos en diferentes servidores de archivos, lo cual requiere un SO adecuado.Monoltica:

es la estructura utilizada en los primeros SO en la que todas las funciones se implementaban en el Kernel o ncleo. Puede decirse que su estructura consista en que no exista una estructura como tal.El SO estaba constituido por un nico programa compuesto por multitud de rutinas interrelacionadas entre s, de forma que cada una de ellas poda llamar a cualquier otra. Un ejemplo de SO de este tipo es el MS-DOS para PC.Por capas o jerrquica:

A medida que los SO fueron creciendo, fue necesario tener una estructura ms organizada. Para ello el SO se dividi en distintos niveles, cada uno de ellos con funciones concretas y especializadas. Estos niveles dieron lugar a una jerarqua entre funciones, de ah que se conozcan como SO jerrquicos. Estos SO se estructuran en las siguientes capas:

Hardware: nivel mas bajo de todo el sistema. Gestin de procesos Gestin de memoria Gestin de E/S Gestin del sistema de archivos Control de programas de usuarioLa funciones de nivel superior solo pueden invocar a las de nivel inferior.Mquina virtual:

se trata de un tipo de SO que presenta una interfaz a cada proceso, mostrando una mquina que parece idntica a la mquina real subyacente.Estos SO separan dos conceptos que suelen estar unidos en el resto de sistemas: la multiprogramacin y la mquina extendida.El ncleo de estos SO se denomina monitor virtual y tiene como misin llevar a cabo la multiprogramacin, presentando a los niveles superiores tantas mquinas virtuales como se soliciten.La principal ventaja de esta estructura reside en que permite implementar varios tipos de SO sobre cada mquina virtual. No obstante presenta el problema de que los SO implementados son disjuntos, lo cual complica enormemente la interaccin, comunicacin y comparticin que necesitan.Unix MS-DOSHw virtual Hw virtualHARDWARECliente-Servidor:

es la ms difundida. El ncleo se hace cada vez ms descargado de cdigo, dotndole solamente de funciones criticas. Ahora son los programas los que realizan las funciones del SO. Los procesos pueden ser clientes y servidores. Adems el ncleo se encargara de establecer la comunicacin entre los clientes y los servidores.Orientada a objetos:

El SO se ve como una coleccin de objetos en ves de funciones. Un objeto sera un programa, las funciones del SO etc. El ncleo del SO es el responsable del mantenimiento de las definiciones de los tipos de objetos soportados y del control de los privilegios de acceso a los mismos.Un ejemplo de SO que utilizaba esta estructura es el Windows NT de Microsoft.Procesamiento por lotes (batch)

Se llaman as a aquellos sistemas que emplean procesos (trabajos) queno necesitan la interaccin con el usuario, se cargan, se procesan y devuelven un resultado sin apenas intervencin por parte del usuario. Lo que supone que la mayor parte del tiempo del proceso est dedicado al procesamiento de los datos y muy poco a gestionar los lentos procesos de entrada y salida de la informacin. Ejemplos de estos sistemas seran: SCOPE (procesamiento cientfico) y EXEC II (procesamiento acadmico).Actualmente se puede llevar a cabo este tipo de procesamiento en tareas como: procesos de actualizacin de bases de datos, la cola de trabajos de impresin de una impresora, los ficheros de procesamiento por lotes de MS-DOS, etc. No hay interaccin con el usuario.Tiempo compartido:

en estos SO durante la ejecucin de los programas se pueden pedir datos al usuario y aceptar sus respuestas. La entidad a controlar por el sistema son las sesiones y no los trabajos. Una sesin comprende el intervalo de tiempo transcurrido desde el momento en que un usuario se identifica en el PC hasta que lo abandona. Durante una sesin el usuario cree que todos los recursos del PC los tiene asignados y disponibles, a pesar de que pueda haber ms sesiones de otros usuarios activas a la vez.En estos sistemas se produce una interrogacin secuencial a los distintos usuarios (son conversacionales), asegurando que cada cierto intervalo de tiempo el sistema atender a cada uno de ellos. Adems usan tcnicas de buffering y spooling para que las respuestas hacia los usuarios se emitan lo ms rpido posible. Ejemplos de estos sistemas seran: UNIX, Windows XP, Windows Server etc.Hay interaccin con el usuario.Tiempo real

Existe una interaccin continua entre el usuario que se encarga de introducir la informacin y el proceso. Adems el resultado del procesamiento de los datos se obtiene de forma inmediata.A veces las respuestas que se obtienen proceden de sucesos externos al propio sistema, por ejemplo aquellos sistemas empleados para el control de instalaciones (telecomunicaciones, trfico areo etc).Algunos ejemplos de estos sistemas seran: Solaris, Spectra, Windows Xp, Windows 7, Windows Server,etc. Hay mucha interaccin con el usuario.3.3. Por los servicios ofrecidos.En esta clasificacin se tiene en cuenta la visin del usuario final y puede ser:3.3.1. Por el nmero de usuarios.Atendiendo al nmero de usuarios que pueden utilizar los recursos del sistema.Monousuario:

son aquellos que nicamente soportan un usuario a la vez. En estos sistemas todos los recursos estn a disposicin de ese usuario y no pueden ser utilizados por nadie ms hasta que ste no finalice. Como ejemplos se tienen el MS-DOS, Windows XP, Vista, 7 etc.Multiusuario:

varios usuarios podrn utilizar simultneamente los recursos del sistema. Pueden compartir, sobre todo, los dispositivos externos de almacenamiento y perifricos de salida (impresora). Tambin pueden compartir el acceso a una misma Base de Datos etc. Como ejemplos tenemos: UNIX, Windows Server etc.3.3.2. Por el nmero de tareas o procesos.Esta clasificacin se hace atendiendo al nmero de programas que pueden ejecutarse simultneamente en el equipo.Monoprogramacin o monotarea:

el sistema solamente puede ejecutar un programa a la vez. De esta forma, los recursos del sistema estarn dedicados al programa hasta que finalice su ejecucin. MS-DOS es un sistema de este tipo.El que un sistema sea monotarea no implica que no pueda ser multiusuario. Se pueden tener varios usuarios usando el mismo equipo pero cada uno de ellos ejecutando una sola tarea. Se controla la tarea de cada usuario de manera secuencial. Cuando termina una empieza la del siguiente.Multiprogramacin o multitarea:

el sistema permite ejecutar varios programas simultneamente. De manera real slo se consigue la simultaneidad en aquellos sistemas que tienen ms de un procesador. En los casos que solo exista un procesador, la CPU compartir su tiempo entre los diferentes programas a ejecutar. Ejemplos de estos sistemas seran: LINUX, Windows XP, Vista, 7 etc.3.3.3. Por el nmero de procesadoresEsta clasificacin depende del nmero de procesadores que el SO es capaz de gestionar.Monoprocesador:

el ordenador consta de un solo procesador. Todos los trabajos pasarn por l ya sean de uno o varios usuarios. Este procesador slo ser capaz de atender en cada momento a un nico proceso, pero se podr simular la multitarea repartiendo su tiempo entre los distintos procesos.Multiprocesador:

el ordenador cuenta con 2 o mas procesadores. Los programas se podrn ejecutar sobre cualquier procesador. Adems permite el multiprocesamiento, es decir, la ejecucin de varios procesos de manera simultnea.Hay dos formas de utilizar los distintos procesadores por parte del SO:Multiproceso simtrico (SMP)

El SO distribuir la carga de procesamiento por igual entre todos los procesadores existentes.Multiproceso asimtrico (AMP):

el SO reparte las tareas que esta realizando a cada procesador en funcin de su prioridad. En el caso que se tenga un sistema biprocesador, se pueden ejecutar unas tareas concretas en uno y en el otro el resto de tareas (programas de usuario). Podra darse el caso que un procesador este siempre trabajando y el otro, en ocasiones, ste totalmente parado.3.4. Por la forma de ofrecer los serviciosEn esta clasificacin se encuentran:Sistemas centralizados:

hasta que los computadores no tuvieron un precio accesible y suficiente potencia, la mayora de los sistemas utilizaban el modelo de proceso centralizado. Con este tipo de modelo los computadoresmainframese encargaban de todo el procesamiento y los usuarios manejaban nicamente terminalestontos(sin memoria ni procesador). Ejemplos de estos sistemas seran: OS/390, Linux etc.Sistemas distribuidos:

son sistemas cuasi-independientes que permiten distribuir los trabajos, tareas o procesos entre un conjunto de procesadores. Puede ocurrir que este conjunto de procesadores se encuentren en el mismo equipo o en equipos distintos (siendo en este ltimo caso transparente para el usuario).Los sistemas distribuidos ms extendidos son: Solaris-MC, Spring, Taos etc.Sistemas operativos en red:

son aquellos que mantienen a dos o ms computadoras unidas a travs de algn medio de comunicacin (fsico o no), con elobjetivode primordial de poder compartir los diferentes recursos y la informacin del sistema. En este entorno cada computador mantiene su propio sistema operativo y su propio sistema de archivos local.Los sistemas en red mas usados son: Novell NetWare, Windows Server, Linux Server etc.Sistemas operativos de escritorio:

estos sistemas son los que se utilizan en los equipos de sobremesa, estaciones de trabajo o porttiles. Tambin se les puede denominar sistemas operativos cliente. Entre ellos se encuentran: Windows XP Professional, Windows Vista, Windows 7 y Linux.3.5. Por su disponibilidad.En esta clasificacin se encuentran:Sistemas propietarios:

son aquellos que son propiedad intelectual de alguna empresa. Esto implica que se necesitanlicenciasde uso para que el usuario ejecute el software y no se dispone de acceso a su cdigo fuente o, aun teniendo acceso a l, no se tiene derecho a modificarlo ni distribuirlo. En este grupo se encuentra Windows.Sistemas libres:

son aquellos que garantizan las 4 libertades del software:La libertad de usar el programa con cualquier propsito.La libertad de estudiar como funciona el programa y modificarlo, adaptndolo a las necesidades que tuviera el usuario.La libertad de distribuir copias del programa con lo que se puede ayudar a otros usuarios.La libertad de mejorar el programa y hacer publicas dichas mejoras a otros usuarios de modo que toda la comunidad se beneficie de ello.Las libertades 2 y 4 requieren acceso al cdigo fuente para estudiar y modificar dicho software, por lo que al final el software libre es tambinsoftware de cdigo abierto.El software libre suele estar disponible gratuitamente o al precio de coste de la distribucin a travs de otros medios, sin embargo no es obligatorio que sea as, por lo tanto, no hay que asociar software libre a software gratuito, ya que, conservando su carcter libre, podr ser distribuido comercialmente (software comercial).Del mismo modo, el software gratuito puede incluir el cdigo fuente, pero eso no quiere decir que se pueda considerar como libre a no ser que se garanticen los derechos de modificacin y redistribucin de las versiones modificadas del programa.Tampoco debe confundirse software libre consoftware de dominio pblico.Este ltimo es aquel que no requiere de licencia pues sus derechos de explotacin pertenecen a todos por igual y cualquiera puede hacer uso de l, siempre con fines legales y consignando su autora original.4. FUNCIONES DE UN SISTEMA OPERATIVO.A continuacin se muestran las funciones principales que realiza todo sistema operativo:Control de la ejecucin de los programas

Para ello, acepta los trabajos, administra la manera en que se realizan, les asigna los recursos y los conserva hasta su finalizacin.Administracin de perifricos

Coordinando y manipulando los dispositivos conectados al ordenador.Gestin de permisos y de usuarios

Adjudica los permisos de acceso a los usuarios y evita que las acciones de uno afecten el trabajo que est realizando otro.Control de concurrencia

Establece prioridades cuando diferentes procesos solicitan el mismorecurso.Control de errores

Gestiona los errores de hardware y la prdida de datos.Administracin de memoria

Asigna memoria a los procesos y gestiona su uso.Control de seguridad

debe proporcionar seguridad tanto para los usuarios como para el software y la informacin almacenada en los sistemas.En concordancia con estas funciones principales, es posible analizar la estructura de un sistema operativo en cinco niveles. Los primeros dos niveles entraran dentro de la parte del sistema operativo dependiente del hardware, el resto de los niveles pertenecen a la parte portable del mismo (vase la figura mostrada a continuacin).

Cada uno de estos niveles se comunica con el inmediatamente inferior y superior coordinando sus funciones.Nivel 1. Gestin del procesador

En este nivel se encuentra elKernelo ncleo que es la parte del sistema operativo encargada de la gestin de la CPU. Cuando arranca el ordenador se carga en memoria y permanece all realizando las siguientes funciones:Comunicacin y conmutacin de procesos

Controla los procesos activos, trasladando el control de CPU de un proceso y guardando el estado de un proceso. El planificador de procesos realiza la asignacin de CPU a cada uno de los procesos.Control de interrupciones.Manejo de condiciones de error.Nivel 2. Gestin de memoria

Es el encargado de repartir la memoria disponible entre los recursos. Las acciones principales son:Asignacin y liberacin de memoria.Control de violacin de acceso a zonas no permitidas de memoria.Nivel 3. Gestin de procesos

Es el encargado de la creacin y destruccin de procesos, intercambio de mensajes y deteccin y arranque de los mismos.Nivel 4. Gestin de dispositivos

Se encarga de la funcin de creacin de procesos de E/S, asignacin y liberacin de dispositivos de E/S y planificacin de E/S.Nivel 5. Gestin de la informacin

Gestiona el espacio de nombres lgicos, para simplificar el acceso a los recursos y proteccin de la informacin realizando funciones de creacin y eliminacin de ficheros, apertura y cierre de ficheros, lectura y escritura de ficheros, y proteccin de acceso.5. INTERFAZ DE COMUNICACIN CON EL USUARIO.Hay que destacar las interfaces como medio de comunicacin entra hardware y software a travs del sistema operativo. Las interfaces se pueden clasificar en:Interfaz tipo texto

Si el sistema operativo tiene una interfaz de tipo texto, todas las rdenes que el usuario introduzca y las respuestas que el sistema operativo d, se introducirn o se visualizarn mediante cadenas de caracteres.Interfaz tipo grfico

Hoy en da, la mayora de los sistemas operativos utilizan medios de comunicacin entre usuario y mquina de tipo grfico.