Está en la página 1de 11

ESCUELA POLITECNICA DEL EJRCITO

INGENIERIA EN SISTEMAS E INFORMATICA

AQUITECTURA DE COMPUTADORES

SISTEMAS OPERATIVOS

SANTIAGO MORALES DAVID DURANGO ERICK NIVELO ANDY ROJAS ALEX TOAPANTA

DEFINICION Es un programa o conjunto de programas que en un sistema informtico gestiona los recursos de hardware y provee servicios a los programas de aplicacin, ejecutndose en modo privilegiado respecto de los restantes. Uno de los propsitos del sistema operativo que gestiona el ncleo intermediario consiste en gestionar los recursos de localizacin y proteccin de acceso del hardware, hecho que alivia a los programadores de aplicaciones de tener que tratar con estos detalles. La mayora de aparatos electrnicos que utilizan microprocesadores para funcionar, llevan incorporado un sistema operativo (telfonos mviles, reproductores de DVD, computadoras, radios, enrutadores, etc.). En cuyo caso, son manejados mediante una Interfaz Grfica de Usuario, un gestor de ventanas o un entorno de escritorio, si es un celular, mediante una consola o control remoto si es un DVD y, mediante una lnea de comandos o navegador web si es un enrutador.

HISTORIA Los primeros sistemas (1945-1955) eran grandes mquinas operadas desde la consola maestra por los programadores. Durante la dcada siguiente (1955-1965) se llevaron a cabo avances en el hardware: lectoras de tarjetas, impresoras, cintas magnticas, etc. Esto a su vez provoc un avance en el software: compiladores, ensambladores, cargadores, manejadores de dispositivos, etc. A finales de los aos 1980, una computadora Commodore Amiga equipada con una aceleradora Video Toaster era capaz de producir efectos comparados a sistemas dedicados que costaban el triple. Un Video Toaster junto a Lightwave ayud a producir muchos programas de televisin y pelculas, entre las que se incluyen Babylon 5, Seaquest DSV y Terminator II. Problemas de explotacin y soluciones iniciales El problema principal de los primeros sistemas era la baja utilizacin de los mismos, la primera solucin fue poner un operador profesional que lo manejase, con lo que se eliminaron las hojas de reserva, se ahorr tiempo y se aument la velocidad. Para ello, los trabajos se agrupaban de forma manual en lotes mediante lo que se conoce como procesamiento por lotes (batch) sin automatizar.

Fichas en lenguaje de procesamiento por lotes, con programa y datos, para ejecucin secuencial. Monitores residentes Segn fue avanzando la complejidad de los programas, fue necesario implementar soluciones que automatizaran la organizacin de tareas sin necesidad de un operador. Debido a ello se crearon los monitores residentes: programas que residan en memoria y que gestionaban la ejecucin de una cola de trabajos. Un monitor residente estaba compuesto por un cargador, un Intrprete de comandos y un Controlador (drivers) para el manejo de entrada/salida. Sistemas con almacenamiento temporal de E/S

Los avances en el hardware crearon el soporte de interrupciones y posteriormente se llev a cabo un intento de solucin ms avanzado: solapar la E/S de un trabajo con sus propios clculos, por lo que se cre el sistema de bfers con el siguiente funcionamiento:

Un programa escribe su salida en un rea de memoria (bfer 1). El monitor residente inicia la salida desde el buffer y el programa de aplicacin calcula depositando la salida en el buffer 2. La salida desde el buffer 1 termina y el nuevo clculo tambin. Se inicia la salida desde el buffer 2 y otro nuevo clculo dirige su salida al buffer 1. El proceso se puede repetir de nuevo.

Los problemas surgen si hay muchas ms operaciones de clculo que de E/S (limitado por la CPU) o si por el contrario hay muchas ms operaciones de E/S que clculo (limitado por la E/S). Spoolers Hace aparicin el disco magntico con lo que surgen nuevas soluciones a los problemas de rendimiento. Se eliminan las cintas magnticas para el volcado previo de los datos de dispositivos lentos y se sustituyen por discos (un disco puede simular varias cintas). Debido al solapamiento del clculo de un trabajo con la E/S de otro trabajo se crean tablas en el disco para diferentes tareas, lo que se conoce como Spool (Simultaneous Peripherial Operation On-Line). Sistemas operativos multiprogramados Surge un nuevo avance en el hardware: el hardware con proteccin de memoria. Lo que ofrece nuevas soluciones a los problemas de rendimiento:

Se solapa el clculo de unos trabajos con la entrada/salida de otros trabajos. Se pueden mantener en memoria varios programas. Se asigna el uso de la CPU a los diferentes programas en memoria.

Debido a los cambios anteriores, se producen cambios en el monitor residente, con lo que ste debe abordar nuevas tareas, naciendo lo que se denomina como Sistemas Operativos multiprogramados, los cuales cumplen con las siguientes funciones:

Administrar la memoria. Gestionar el uso de la CPU (planificacin). Administrar el uso de los dispositivos de E/S.

Cuando desempea esas tareas, el monitor residente se transforma en un sistema operativo multiprogramado.

COMPONENTES DE UN SISTEMA OPERATIVO Gestin de procesos Un proceso es simplemente, un programa en ejecucin que necesita recursos para realizar su tarea: tiempo de CPU, memoria, archivos y dispositivos de E/S. El SO es el responsable de: Crear y destruir los procesos. Parar y reanudar los procesos. Ofrecer mecanismos para que se comuniquen y sincronicen. La gestin de procesos podra ser similar al trabajo de oficina. Se puede tener una lista de tareas a realizar y a estas fijarles prioridades alta, media, baja Una vez realizada la tarea se tacha. Esto puede traer un problema que las tareas de baja prioridad pueden que nunca lleguen a ejecutarse

Gestin de la memoria principal La Memoria es una gran tabla de palabras o bytes que se referencian cada una mediante una direccin nica. Este almacn de datos de rpido accesos es compartido por la CPU y los dispositivos de E/S, es voltil. El SO es el responsable de: Conocer qu partes de la memoria estn siendo utilizadas y por quin. Decidir qu procesos se cargarn en memoria cuando haya espacio disponible. Asignar y reclamar espacio de memoria cuando sea necesario. Gestin del almacenamiento secundario Un sistema de almacenamiento secundario es necesario, ya que la memoria principal (almacenamiento primario) es voltil y adems muy pequea para almacenar todos los programas y datos. El SO se encarga de:

Planificar los discos. Gestionar el espacio libre. Asignar el almacenamiento. Verificar que los datos se guarden en orden

El sistema de entrada y salida Consiste en un sistema de almacenamiento temporal (cach), una interfaz de manejadores de dispositivos y otra para dispositivos concretos. El sistema operativo debe gestionar el almacenamiento temporal de E/S y servir las interrupciones de los dispositivos de E/S.

Sistema de archivos Los archivos son colecciones de informacin relacionada, definidas por sus creadores. stos almacenan programas (en cdigo fuente y objeto) y datos tales como imgenes, textos, informacin de bases de datos, etc. El SO es responsable de: Construir y eliminar archivos y directorios. Ofrecer funciones para manipular archivos y directorios. Establecer la correspondencia entre archivos y unidades de almacenamiento. Realizar copias de seguridad de archivos. Existen diferentes sistemas de archivos, es decir, existen diferentes formas de organizar la informacin que se almacena en las memorias (normalmente discos) de los ordenadores. Por ejemplo, existen los sistemas de archivos FAT, FAT32, EXT3, NTFS, XFS, etc. Sistemas de proteccin Mecanismo que controla el acceso de los programas o los usuarios a los recursos del sistema. El SO se encarga de: Distinguir entre uso autorizado y no autorizado. Especificar los controles de seguridad a realizar. Forzar el uso de estos mecanismos de proteccin Sistema de comunicaciones Para mantener las comunicaciones con otros sistemas es necesario poder controlar el envo y recepcin de informacin a travs de las interfaces de red. Tambin hay que crear y mantener puntos de comunicacin que sirvan a las aplicaciones para enviar y recibir informacin, y crear y mantener conexiones virtuales entre aplicaciones que estn ejecutndose localmente y otras que lo hacen remotamente. Programas de sistema Son aplicaciones de utilidad que se suministran con el SO pero no forman parte de l. Ofrecen un entorno til para el desarrollo y ejecucin de programas, siendo algunas de las tareas que realizan: Manipulacin y modificacin de archivos. Informacin del estado del sistema. Soporte a lenguajes de programacin. Comunicaciones. Gestor de recursos Como gestor de recursos, el sistema operativo administra:

La unidad central de procesamiento (donde est alojado el microprocesador).

Los dispositivos de entrada y salida. La memoria principal (o de acceso directo). Los discos (o memoria secundaria). Los procesos (o programas en ejecucin). Y en general todos los recursos del sistema.

TIPOS DE SISTEMAS OPERATIVOS Sistemas operativos por lotes Los sistemas operativos por lotes, procesan una gran cantidad de trabajos con poca o ninguna interaccin entre los usuarios y los programas en ejecucin. Algunas caractersticas de los sistemas operativos por lotes son las siguientes: Requiere que el programa, datos y rdenes al sistema sean remitidos todos juntos en forma de lote Permiten poca o ninguna interaccin con el usuario Mayor potencial de utilizacin de recursos que procesamiento serial simple en sistemas multiusuario Conveniente para programas de largos tiempos de ejecucin Sistemas operativos de tiempo real Los sistemas operativos de tiempo real son aquellos en donde no tiene importancia el usuario, sino los procesos. Se utilizan en entornos donde son procesados un gran nmero de sucesos o eventos. Algunos campos de aplicacin son los siguientes: Control de trenes Telecomunicaciones

Algunas caractersticas de los sistemas operativos de tiempo real son: Su objetivo es proporcionar rpidos tiempos de respuesta Poco movimiento de programas entre almacenamiento secundario y memoria Procesa rfagas de miles de interrupciones por segundo sin perder algn proceso Proceso de mayor prioridad expropia recursos

Sistemas operativos de multiprogramacin (o Sistemas operativos de multitarea) Soporta la ejecucin de dos o ms trabajos activos al mismo tiempo. Su objetivo es tener varias tareas en la memoria principal. Las caractersticas de un Sistema operativo de multiprogramacin son las siguientes: Mejora productividad del sistema y utilizacin de recursos Multiplexa recursos entre varios programas Soporta mltiples usuarios Requiere validacin de usuario para seguridad y proteccin

Estos sistemas operativos se caracterizan por tener mltiples programas activos, compitiendo por los recursos del sistema: procesador, memoria, dispositivos perifricos. Sistemas operativos de tiempo compartido Estos sistemas permiten la simulacin de que el sistema y sus recursos son todos para cada usuario. El usuario hace una peticin a la computadora, esta la procesa tan pronto como le es posible, y la respuesta aparecer en la terminal del usuario.

Las caractersticas de los sistemas operativos de tiempo compartido son: Dan la ilusin de que cada usuario tiene una mquina para s La mayora utilizan algoritmo de reparto circular Los programas se ejecutan con prioridad rotatoria que se incrementan con la espera y disminuye despus de concedido el servicio Gestin de memoria proporciona proteccin a programas residentes

Sistemas operativos distribuidos Estos sistemas permiten distribuir trabajos, tareas o procesos, entre un conjunto de procesadores; este conjunto de procesadores puede estar en un equipo o en diferentes, en este caso es transparente para el usuario. Sus caractersticas de los sistemas operativos distribuidos son: Colocacin de sistemas autnomos capaces de comunicacin y cooperacin mediante el hardware y software Proporcionan medios para la comparticin global de recurso Servicios aadidos: denominacin global, sistemas de archivos distribuidos, facilidades para distribucin de clculos.

Sistemas operativos de red Son aquellos que mantienen a dos o ms computadoras unidas a travs de algn medio de comunicacin, con el objetivo de poder compartir los diferentes recursos y la informacin del sistema. Por lo regular son utilizados en: Novell NetWare, Personal NetWare, LAN Manager, etc. Sistemas operativos paralelos En estos sistemas se pretende que cuando existan dos o ms procesos que compitan por algn recurso se puedan realizar o ejecutar al mismo tiempo. En UNIX existe tambin la posibilidad de ejecutar programas sin tener que atenderlos en forma interactiva, simulando paralelismo. As, en lugar de esperar a que el proceso termine de ejecutarse, regresa a atender al usuario inmediatamente.

Llamadas al sistema operativo Llamadas que ejecutan los programas de aplicacin para pedir algn servicio al SO. Constituyen el lenguaje que deben usar las aplicaciones para comunicarse con el SO.

Las llamadas correspondientes deben tener el mismo formato. Cada llamada al nuevo SO tiene que dar los mismos resultados que la correspondiente del anterior.

NOTA: si cambiamos de SO, y abrimos un programa diseado para trabajar sobre el anterior, en general el programa no funcionar, a no ser que el nuevo SO tenga la misma interfaz. En otras palabras, el sistema operativo acta como intermediario, ofreciendo una interfaz de programacin (API) que el programa puede usar en cualquier momento para solicitar recursos gestionados por el sistema operativo. Algunos ejemplos de llamadas al sistema son las siguientes:

time, que permite obtener la fecha y hora del sistema. write, que se emplea para escribir un dato en un cierto dispositivo de salida, tales como una pantalla o un disco magntico. read, que es usada para leer de un dispositivo de entrada, tales como un teclado o un disco magntico. open, que es usada para obtener un descriptor de un fichero del sistema, ese fichero suele pasarse a write.

Bibliotecas de interfaz de llamadas al sistema Son bibliotecas de funciones que pueden usarse para efectuar llamadas al sistema. Las hay para distintos lenguajes de programacin. La aplicacin llama a una funcin de la biblioteca de interfaz (mediante una llamada normal) y esa funcin es la que realmente hace la llamada al sistema. Familias de llamadas al sistema operativo: Las dos familias de APIs estandarizas ms importantes son:

WIN32/64, empleada en los sistemas operativos de tipo-Windows. Adems, existen emuladores como Wine que tambin las implementan. POSIX, Persigue generalizar las interfaces de los sistemas operativos para que una misma aplicacin pueda ejecutarse en distintas plataformas.

Modos de ejecucin en un CPU El Sistema Operativo, tiene que poder utilizar todo el conjunto de instrucciones del CPU que es una especificacin que detalla las instrucciones que una CPU de un ordenador puede entender y ejecutar. La CPU debe tener (al menos) dos modos de operacin diferentes:

Modo usuario: el CPU podr ejecutar slo las instrucciones del juego restringido de las aplicaciones.

Modo supervisor: la CPU debe poder ejecutar el juego completo de instrucciones.

Bibliografia http://es.kioskea.net/contents/systemes/sysintro.php3 http://1984.lsi.us.es/wiki-ssoo/index.php/Llamadas_al_sistema http://es.wikipedia.org/wiki/Sistema_operativo http://www.e-mas.co.cl/categorias/informatica/tiposso.htm http://exa.unne.edu.ar/depar/areas/informatica/SistemasOperativos/SOF.htm

También podría gustarte