Está en la página 1de 9

Sistemas Operativos Ingeniera de Sistemas

Captulo I

SISTEMAS OPERATIVOS
Tema IV. Definicin, Servicios y Clasificacin de los SO 1. DEFINICIN DE SO

El Sistema Operativo es un programa o conjunto de programas que constituyen una de las piezas fundamentales de un ordenador. Es tan fundamental y tiene tantos cometidos que se puede hablar mucho de l, sin embargo, como ya nos ha sucedido otras veces, resulta muy difcil dar una definicin. Afortunadamente a nosotros no nos interesa su definicin concreta, sino conocer sus funciones, los servicios que proporciona y, en general, sus caractersticas. As, tal vez podamos efectuar algunas afirmaciones -no definiciones- sobre el SO. Podemos pensar, por ejemplo, en algunas de las operaciones que habitualmente realizamos con un ordenador. Una de stas puede ser cuando solicitamos que se muestre en la pantalla la lista de los ficheros de un disco o directorio, es decir, cuando tecleamos el comando dir de MS-DOS o ls de Unix. Como veremos ms adelante, la lista de los archivos de un disco est contenida en un rea del disco denominada directorio; por lo tanto, lo nico que hay que hacer es leer dicho directorio. El lector de disquetes, por su parte, es un artilugio mecnico muy delicado y complejo; para acceder y manejar este dispositivo mecnico se dispone de procesadores especializados (denominados controladores) tales como el NEC PD765 utilizado en el PC de IBM. Este controlador tiene 16 comandos, formado cada uno de ellos por una serie de 1 a 9 bytes que deben cargarse en uno de sus registros internos. Estos comandos sirven para leer y escribir datos, mover la cabeza de L/E, formatear las pistas, recalibrar los brazos con las cabezas de L/E, etc. Los comandos ms bsicos son READ y WRITE, cada uno de los cuales requiere 13 parmetros empaquetados en 9 bytes. Estos parmetros especifican datos tales como la direccin del bloque a leer, el nmero de sectores por pista, el modo de grabacin de los datos, el interleaving y otras informaciones variadas. Cuando se completa una de las operaciones solicitadas mediante este controlador, ste devuelve uno entre 23 cdigos de error o resultado de 7 bytes, cdigos que se deben tratar convenientemente en caso de que se produzcan errores en la operacin solicitada. Adems, en cada momento se debe estar pendiente de si el motor est arrancado o no, para encenderlo en caso necesario y con el tiempo de antelacin debido. Por otra parte, el motor no debe estar constantemente encendido, pues de ser as, se desgastara en poco tiempo. No hace falta seguir profundizando sobre las acciones necesarias para efectuar con xito la lectura del directorio de un disquete. Parece obvio que tales acciones no son nada triviales, o ms an, aunque alguno de los comandos que se utilizan para acceder al disquete no sean especialmente complicados, resultan, cuando menos, engorrosos de utilizar. Pero entonces, para acceder a la informacin del disquete tenemos que aprendernos el manual del NEC765?, tenemos que ocuparnos personalmente de verificar y tratar adecuadamente los cdigos de error que nos devuelve el controlador? Y si algn da se sustituye el controlador NEC PD765 por otro ms eficiente tenemos que aprendernos otra vez su funcionamiento? La respuesta sera S de no ser por la existencia del Sistema Operativo, pues una de sus funciones es la de actuar de interfaz entre el usuario y el hardware del ordenador. De esta manera, basta con indicarle mediante un comando lo que deseamos, para que l se encargue de arrancar, supervisar y controlar las operaciones necesarias con el hardware subyacente. Todo sin que nosotros tengamos que intervenir. Incluso si se da el caso de que el controlador correspondiente o cierto componente hardware es sustituido por otro, basta con modificar o sustituir la parte del sistema operativo que se encarga de la programacin o manejo de tal dispositivo, de tal forma que el usuario no tiene ni por qu conocer el tipo concreto de los dispositivos que alberga su ordenador. Como podemos ir viendo, el sistema operativo se encarga de esconder los entresijos del hardware del ordenador, ofreciendo una vista abstracta de sus componentes, y proporcionando los medios para manejarlos o acceder a ellos de una forma simple y sencilla. Como se puede ver en la Figura 1, el sistema operativo nos ofrece una mquina virtual distinta de la compuesta por los meros componentes hardware. Esta nueva mquina virtual nos ofrece los servicios normales que se desean de la mquina fsica que subyace, pero de tal forma que la utilizacin se realiza de una forma fcil, eficiente y adecuada. Decimos que de una forma fcil porque nos proporciona servicios de alto nivel, al contrario de los que nos proporciona el controlador NEC PD765, que aunque son apropiados para su cometido (controlar el disquete)
Ingeniera de Sistemas UNSCH/QECM Pgina 1 de 9

Sistemas Operativos Ingeniera de Sistemas

Captulo I

resultan insuficientes para obtener informacin tan simple como la lista de ficheros de un disquete. Esta insuficiencia se debe al hecho de que no basta con tener acceso al disquete, cosa que nos da el controlador, sino que adems es necesario conocer la estructura de los datos del disquete para poder interpretarlos adecuadamente. El sistema operativo, adems de ocuparse de programar el controlador, establece y conoce la estructura lgica de la informacin contenida en el disquete, siendo as capaz de ofrecer servicios de alto nivel. Sabemos que los ordenadores nacieron siendo una ayuda extremadamente cara, por esto, el sistema operativo tambin debe encargarse de que los recursos fsicos del sistema se aprovechen eficientemente, llevando la cuenta de su utilizacin y reparto entre mltiples programas o usuarios que deseen acceder a ellos. As, por ejemplo, debe encargarse de repartir la memoria RAM de un sistema multiprogramado entre todas las aplicaciones en ejecucin; de ir controlando el envo de listados a la impresora sin que se mezclen los de uno con los de otro usuario; o de ir repartiendo la CPU entre distintos programas para evitar tiempos muertos en su utilizacin. Puesto que para aprovechar al mximo la utilizacin de los ordenadores se han inventado tcnicas para compartir sus recursos entre varios usuarios, resulta indispensable introducir mecanismos para asegurar que el ordenador y sus recursos se utilizan adecuadamente, es decir, ofreciendo proteccin a los datos y programas de cada usuario de las posibles injerencias de los dems usuarios. Hemos dicho anteriormente que el sistema operativo es la interfaz entre el usuario y el hardware del ordenador; ahora bien, el concepto usuario tiene un significado muy amplio en esta afirmacin, es decir, que entendemos por usuario no solamente una persona sentada en la consola del sistema, sino tambin cualquier programa de aplicacin invocado por alguna persona o programa, y que por supuesto, se ejecuta bajo la supervisin del sistema operativo. Figura 1

Qu es el Sistema Operativo?
Es un programa que acta de interfaz entre el usuario y el hardware del ordenador

Ingeniera de Sistemas UNSCH/QECM

Pgina 2 de 9

Sistemas Operativos Ingeniera de Sistemas

Captulo I

As pues, tenemos que el sistema operativo tiene interfaz, por una parte con los usuarios y los programas, y por otra parte con el hardware de la mquina. Los usuarios del sistema operativo pueden ser de cualquier ndole: operadores, programadores de aplicaciones y de sistemas, administradores y, por supuesto, los propios usuarios finales de las aplicaciones. Como podemos apreciar en la Figura 1, el acceso al sistema operativo se realiza a travs de las denominadas llamadas al sistema, que es un conjunto de servicios que proporciona de manera directa a cualquier aplicacin. Para que las personas puedan acceder de forma directa al sistema operativo, se dispone de un programa especial denominado intrprete de comandos. Este intrprete se encarga de recibir los comandos escritos en el teclado y pasrselos al sistema operativo mediante las correspondientes llamadas al sistema. Histricamente el intrprete de comandos ha sido considerado como programa integrante del sistema operativo, sin embargo hoy da no hay un acuerdo al respecto. Tiempo atrs, cada sistema operativo ofreca su propio intrprete de comandos, intrprete que estaba ligado de forma incuestionable al sistema operativo, debido a que estaba incluido en el ncleo o kernel del sistema. Hoy da, el intrprete de comandos no suele formar parte del ncleo del sistema operativo, de tal forma que es fcilmente substituible, pues no es ms que un programa ms realizando llamadas a los servicios del sistema operativo. De hecho, para sistemas operativos populares, como Unix, se suelen ofrecer distintos intrpretes de comandos como alternativas, lo cual da pie a que algunos autores no lo consideren como parte integrante del sistema operativo. No obstante, a pesar de la libertad para elegir o cambiar el intrprete de comandos, lo cierto es que todos los sistemas operativos de propsito general se ofrecen con un intrprete de comandos, suministrando incluso el correspondiente manual de uso como parte integrante del manual del sistema operativo completo. Y es que por el simple hecho de que se haya conseguido que algunas partes de los sistemas operativos sean fcilmente substituibles no tiene por que dar pie a pensar que por ello ya no forman parte de l. El SO est formado por una serie de componentes especializados en determinadas funciones. Cada SO estructura estos componentes de forma distinta. Vamos a describir en principio los distintos componentes que conforman un SO, para pasar luego a ver las distintas formas que tienen los SO de estructurar estos componentes: Componentes del SO: Para fines de nuestro estudio, el SO est formado conceptualmente por tres capas principales. - Ncleo (kernel): es la capa ms cercana al hardware, es la que gestiona los recursos del HW del sistema y la que suministra la funcionabilidad bsica del SO. Esta capa ha de ejecutar en nivel ncleo, mientras que las otras pueden ejecutar en niveles ms permisivos. Sus funciones se centran en la gestin de recursos, tratamiento de interrupciones y funciones bsicas de manipulacin de memoria. - Capa de servicios (llamadas al sistema): ofrece a los programas unos servicios en forma de una interfaz de programacin o API (application programming interface). Desde el punto de vista de los programas, esta capa extiende la funcionalidad de la computadora, por lo que se suele decir que el SO ofrece una mquina virtual extendida a los programas. Se suelen agrupar segn su funcionalidad en varios componentes, cada uno de los cuales se ocupan de funciones diversas que se vern en el item de SERVICIOS (en este mismo archivo) - Capa de intrprete de comandos (shell), suministra una interfaz (textuales o grficos) a travs de la cual el usuario puede dialogar de forma interactiva con la computadora. El shell recibe los mandatos u rdenes del usuario, los interpreta y, si puede, los ejecuta.

Componentes del Sistema Operativo

El SO con detalle de las 3 capas:

Ingeniera de Sistemas UNSCH/QECM

Pgina 3 de 9

Sistemas Operativos Ingeniera de Sistemas

Captulo I

FACETAS DEL SISTEMA OPERATIVO A. SO como gestor de recursos Los programas que coexisten en una computadora actual, ejecutndose simultneamente compiten por los recursos de la computadora, siendo el SO el encargado de arbitrar su asignacin y uso. a. Asignacin de recursos - Recursos fsicos: procesador, memoria, perifricos - Recursos lgicos: archivos, puertos de comunicaciones Especial mencin reviste la recuperacin de recursos, cuando los programas ya no los necesitan. b. Proteccin: el SO ha de garantizar la proteccin entre los usuarios del sistemas. Garantiza la confidencialidad de la informacin y que nos trabajos no interfieran con otros. c. Contabilidad: permite medir la cantidad de recursos que, a lo largo de su ejecucin, utiliza cada programa. B. SO como mquina extendida El SO ofrece a los programas un conjunto de servicios o llamadas al sistema que pueden solicitar cuando lo necesiten, proporcionando a los programas una visin de mquina extendida. Estos servicios se pueden agrupar en 4 clases: a. Ejecucin de programas: el SO incluye servicios para lanzar la ejecucin de un programa, as como para pararla o abortarla. b. rdenes de E/S: Los servicios de E/S ofrecen una gran comodidad y proteccin al proveer a los programas de operaciones de lectura, escritura y modificacin del estado de los perifricos. Ofrece un alto nivel de abstraccin. c. Operaciones sobre archivos: Los archivos ofrecen un nivel de abstraccin mayor que el de las rdenes de E/S, permitiendo operaciones tales como: creacin, borrado, renombrado, apertura, escritura y lectura de archivos. d. Deteccin y tratamiento de errores: el SO se encarga de tratar todas las condiciones de error que detecte el hardware. Entre las condiciones de error que pueden aparecer destacaremos: Errores en las operaciones de E/S - Errores de paridad en los accesos a memoria o en los buses - Errores de ejecucin en los programas (desbordamiento, violacin de memoria, etc.) C. SO como interfaz de usuario El mdulo del SO que permite que los usuarios dialoguen de forma interactiva con el sistema es el intrprete de mandatos o shell, que se comporta como un bucle infinito, realizando la siguiente secuencia: - Espera una orden del usuario - Analiza la orden - Concluida la orden, vuelve a la espera

Ingeniera de Sistemas UNSCH/QECM

Pgina 4 de 9

Sistemas Operativos Ingeniera de Sistemas

Captulo I

Como hemos visto en el apartado anterior, el sistema operativo se comunica con los programas y con los usuarios, a quienes les ofrece sus servicios directamente. Pero el sistema operativo tambin ofrece otro tipo de servicios indirectos que aunque puede que el usuario no se aperciba de ellos, estn dirigidos a mejorar la eficiencia y la seguridad del sistema. Podemos decir, entonces, que el sistema operativo ofrece servicios al usuario y al sistema. Como sabemos, los usuarios directos del sistema son el programador, es decir, sus programas, y el operador, o sea, la persona que se comunica con el ordenador mediante un intrprete de comandos. Los programas utilizan los servicios del sistema operativo mediante las llamadas al sistema, esto es, un conjunto de rutinas de interfaz que ofrece el sistema operativo para solicitar sus servicios. En cualquier caso, de una u otra forma, tenemos que el sistema operativo ofrece bsicamente estos servicios a los usuarios: Ejecucin de programas Operaciones con dispositivos de E/S Manejo de ficheros Ejecucin de programas El sistema le permite al usuario cargar y ejecutar programas, lo cual puede realizarlo bien desde el intrprete de comandos, o desde un programa en ejecucin que realiza la apropiada llamada al sistema. Normalmente tambin facilita medios para controlar su ejecucin, determinando en qu estadio se encuentra en cada momento o el tipo de operaciones que est realizando. Asimismo, tambin proporciona, al final de la ejecucin del programa, un cdigo o resultado de la ejecucin, indicando si sta se realiz normalmente o surgi algn problema. Operaciones con dispositivos de E/S En algn ejemplo anterior ya hemos visto lo dificultoso que puede resultar la interaccin con los dispositivos del sistema, pues forman directamente la capa hardware, tan lejos de nosotros los humanos. Para aliviar esta farragosa interfaz, el sistema operativo nos ofrece una mquina virtual en la que los dispositivos de E/S se manejan mediante operaciones de muy alto nivel, que expresan directamente los servicios que una persona puede necesitar de estos perifricos, tales como rebobinar una cinta, formatear un disco, recibir o transmitir datos por una lnea de comunicaciones, etc. Manejo de ficheros Si con las operaciones con los dispositivos de E/S se logra la abstraccin del hardware, con el manejo de ficheros se consigue la independencia de la representacin de las colecciones de datos, de tal forma que a una larga serie de bits se le puede tratar como un nico objeto -un fichero de datosdespreocupndose de si los datos componentes del fichero ocupan un rea consecutiva en el disco, o incluso de si est completamente contenida en un nico disco o en varios. De esta manera se pueden realizar operaciones con un conjunto completo de datos tales como leer o escribir registros individuales, copiar ficheros, borrarlos, imprimirlos, visualizarlos por pantalla, buscar un registro dentro del fichero o simplemente pedir una lista de los ficheros de un disco. En cuanto a los servicios ofrecidos al propio sistema, aunque estos son variados, pueden encuadrarse en dos grupos: Gestin y contabilidad de recursos Proteccin A veces se oye hacer la comparacin de que un sistema operativo es como el gobierno de un pas, de tal forma que no solamente debe ofrecer servicios a los ciudadanos (los usuarios), sino que adems debe preocuparse l mismo de su propia gestin para asegurar su buen funcionamiento. Para ello, debe llevar la cuenta de los recursos de que dispone, de los que estn disponibles, de los que estn ocupados y de quin los tiene en uso, bien sea para repartirlos de la manera adecuada y justa, bien sea para pasar factura posteriormente, o simplemente para poder reclamarlos cuando estime que algo anormal sucede con ellos y puedan haberse perdido. Los recursos bsicos gestionados son los componentes hardware del ordenador: La CPU La Memoria Los dispositivos de E/S Con una acertada gestin del procesador se consigue un buen rendimiento del ordenador, como es el caso de los sistemas multiprogramados o multiusuarios. Una persona que est sentada en un terminal de un ordenador multiusuario puede que no sea consciente de si el ordenador es multiusuario o no, ni le preocupa; desde su punto de vista l tiene una mquina dedicada. Como vemos, este es un servicio que no es directamente visible por los usuarios, pero que ayuda a aprovechar la utilizacin del sistema.
Ingeniera de Sistemas UNSCH/QECM Pgina 5 de 9

2. SERVICIOS DE LOS SO

Sistemas Operativos Ingeniera de Sistemas

Captulo I

Mediante ciertos algoritmos de gestin de memoria, al usuario se le pueden proporcionar servicios tales como la Memoria Virtual, mediante el cual el usuario tiene la posibilidad de ejecutar programas ms grandes que la memoria principal disponible. El usuario simplemente piensa que siempre dispone de mucha memoria. El sistema operativo tambin debe ocuparse de repartir la memoria entre todos los programas en ejecucin. Tambin debe llevar control de los perifricos, como por ejemplo de las impresoras, discos o armarios de cinta, de tal forma que cuando un programa solicite la impresin de un fichero o la carga de una cinta en un cierto armario, el sistema operativo sepa asignar un dispositivo libre o poner en la cola de espera al proceso peticionario. Al igual que los servicios internos de espionaje se preocupan de la seguridad dentro de los rganos de gobierno de la nacin, en un sistema operativo se deben tomar las medidas oportunas para evitar que algn programa o usuario, voluntaria o inadvertidamente realice alguna operacin que ponga en peligro la integridad del sistema, tanto de los programas y datos componentes del sistema operativo como del resto de los usuarios del sistema. Dado que las operaciones de bajo nivel permiten realizar cualquier accin con la mquina, el sistema operativo esconde estas operaciones que ofrece el hardware impidiendo el acceso a ellas, y ofreciendo en su lugar otras operaciones y servicios que, adems de ser de ms alto nivel, no incluyen la posibilidad de realizar operaciones o acciones peligrosas, tanto para el propio proceso y dems usuarios (por ejemplo, borrar ficheros de otros usuarios), como para el propio sistema operativo (formatear el disco duro). De forma organizada podemos describir los servicios del sistema operativo en la siguiente relacin: 2.1 Gestin de Procesos El SO tiene por funcin generar y gestionar los procesos y atender a sus peticiones. Dependiendo del nmero de procesos y usuarios el SO puede ser: - Monotarea o monoproceso - Multitarea o multiproceso - Monousuario - Multiusuario 2.2 Gestin de Memoria Su actividad se centra fundamentalmente en la categora de gestin de recursos, puesto que tiene por objetivo casi exclusivo la gestin del recurso memoria, se encarga de: - Asignar memoria a los procesos - Proporciona memoria a los procesos cuando lo solicitan y libera cuando as lo requieren - Tratar los posibles errores de acceso a memoria - Permitir que los proceso puedan compartir memoria entre ellos - Gestiona la jerarqua de memoria. Y trata los fallos de pgina en sistemas con memoria virtual 2.3 Comunicacin y sincronizacin entre procesos El SO debe incluir servicios de comunicacin y sincronizacin entre procesos que, sin romper los esquemas de seguridad, han de permitir la cooperacin entre ellos. 2.4 Gestin de Entrada /Salida Una de las principales funciones del un SO es la gestin de los recursos de la computadora y, en concreto, de los dispositivos perifricos. 2.5 Gestin de Archivos y Directorios El servidor de archivos e la parte del SO que cubre una de las 4 funciones que tienen ste en su faceta de mquina extendida. Los servicios que se engloban en el servidor de archivos son de dos tipos: Servicios dirigidos al manejo de datos o archivos Servicios dirigidos al manejo de los nombres o directorios

2.6 Seguridad y Proteccin La seguridad reviste 2 aspectos: uno es garantizar la identidad de los usuarios y otro es definir lo que puede hacer cada uno de ellos. El primer aspecto se trata bajo el trmino de autentificacin, mientras que el segundo se hace mediante los privilegios.

Ingeniera de Sistemas UNSCH/QECM

Pgina 6 de 9

Sistemas Operativos Ingeniera de Sistemas

Captulo I

Clasificacin por su estructura. Clasificacin por servicios ofrecidos. Clasificacin por el soporte a los servicios.

CLASIFICACION DE LOS SISTEMAS OPERATIVOS

3.1 SISTEMAS OPERATIVOS POR LA ESTRUCTURA DEL KERNEL i. Monolticos: no tiene una estructura clara y bien definida. Todos sus componentes se encuentran integrados en un nico programa (el SO) que ejecuta en un nico espacio de direcciones... todas las funciones se ejecutan en el modo ncleo. Ejemplos: MS-DOS y UNIX. El problema que plantean este tipo de sistemas radica en lo complicado que es modificar el SO para aadir nuevas funcionalidades y servicios. En efecto, aadir una nueva caracterstica al SO implica la modificacin de un gran programa, compuesto por miles de lneas de cdigo fuente y funciones, cada una de las cuales puede invocar a otras cuando as lo requiera. Adems, en este tipo de sistemas no se sigue el principio de ocultacin de la informacin. Para solucionar este problema es necesario dotar de cierta estructura al SO.

ii. Estructurados: Cuando se quiere dotar de estructura a un SO, normalmente se recurre a dos tipos de soluciones: - Sistemas por capa - Modelo cliente Servidor Sistemas por capa El SO se organiza como una jerarqua de capas, donde cada capa ofrece una interfaz clara y bien definida a la capa superior y solamente utiliza los servicios que le ofrece la capa inferior. La principal ventaja es la modularidad y la ocultacin de la informacin. Una capa no necesita conocer cmo se ha implementado la capa sobre la que se construye, nicamente necesita conocer la interfaz que ofrece. Esto facilita enormemente la depuracin y verificacin del sistema, puesto que las capas se pueden ir construyendo y depurando por separado. Estructura del SO THE (Technische Hogescholl Eindhoven)

Modelo cliente Servidor En este tipo de modelo, el enfoque consiste en implementar la mayor parte de los servicios y funciones del SO en procesos de usuario, dejando solo una pequea parte del SO ejecutando en modo ncleo. A esta parte se le denomina microncleo y a los procesos que ejecutan al resto de funciones se les denomina servidores. No hay una definicin clara de las funciones que deben llevar a cabo un microncleo. La mayora incluyen la gestin de interrupciones, gestin bsica de procesos y de memoria y servicios bsicos de comunicacin entre procesos. Para solicitar un servicio, por ejemplo crear un proceso, el proceso usuario (proceso denominado cliente) solicita el servicio al servidor del SO correspondiente en este caso al Servidor de procesos. A su vez, el proceso servidor puede requerir los servicios de otros servidores, como es el caso del Servidor de memoria. En este caso, el servidor de procesos se convierte en el cliente del servidor de memoria.

Ingeniera de Sistemas UNSCH/QECM

Pgina 7 de 9

Sistemas Operativos Ingeniera de Sistemas

Captulo I

Estructura cliente servidor en un sistema operativo

3.2 SISTEMAS OPERATIVOS POR SERVICIOS Esta clasificacin es la ms comnmente usada y conocida desde el punto de vista del usuario final. 3.2.1 MONOUSUARIO Los sistemas operativos monousuario son aqullos que soportan a un usuario a la vez, sin importar el nmero de procesadores que tenga el computador o el nmero de procesos o tareas que el usuario pueda ejecutar en un mismo instante de tiempo. Como ejEmplo de este tipo se pueden mencionar entre otros: MS DOS MS Windows 9x y Me Mac OS (antes de OS X) 3.2.2 MULTIUSUARIO Los sistemas operativos multiusuario son capaces de dar servicio a ms de un usuario a la vez, ya sea por medio de varias terminales conectadas al computador o por medio de sesiones remotas en una red de comunicaciones. No importa el nmero de procesadores en la mquina ni el nmero de procesos que cada usuario puede ejecutar simultneamente. Algunos sistemas tipo UNIXcomo GNU/Linux ofrecen adems de la posibilidad de trabajar con terminales remotas, el trabajo con terminales virtuales, esta caracterstica permite emular en una sola mquina el trabajo con varias terminales remotas ya que es posible iniciar sesin como diferentes usuarios (o como el mismo varias veces) utilizando el mismo hardware pero de forma tal que parezca que cada uno trabaja con una terminal independiente. Ejemplos de S.O. multiusuario: UNIX (y sus derivados) MS Windows 2000 Mac OS X 3.2.3 MONOTAREA Los sistemas monotarea son aquellos que slo permiten una tarea a la vez por usuario. Puede darse el caso de un sistema multiusuario y monotarea, en el cual se admiten varios usuarios al mismo tiempo pero cada uno de ellos puede estar haciendo slo una tarea a la vez. Ejemplos: MS DOS MS Windows 3.X, 95 (estos sistemas tan slo simulaban la multitarea, pero realmente pertenecen a esta clasificacin) 3.2.4 MULTITAREA Un sistema operativo multitarea es aqul que le permite al usuario estar realizando varias labores al mismo tiempo. Por ejemplo, puede estar escuchando msica con un reproductor de CD, escribiendo un programa, copiando archivos entre directorios y descargando msica de Internet (adems de mantener una interface grfica). Es comn encontrar en ellos interfaces grficas orientadas al uso de mens y el ratn, lo cual permite un rpido intercambio entre las tareas para el usuario, mejorando su productividad. Mac OS UNIX (y derivados) MS Windows 98, Me, 2000 y XP.
Ingeniera de Sistemas UNSCH/QECM Pgina 8 de 9

Sistemas Operativos Ingeniera de Sistemas

Captulo I

3.2.5 UNIPROCESADOR Un sistema operativo uniproceso es aqul que es capaz de manejar solamente un procesador del computador, de manera que si el computador tuviese ms de uno le sera intil. El ejemplo ms tpico de este tipo de sistemas es el MS DOS y MacOS(versiones antiguas). 3.2.6 MULTIPROCESADOR Un sistema operativo multiproceso se refiere al nmero de procesadores del sistema, que es ms de uno y ste es capaz de usarlos todos para distribuir su carga de trabajo. Generalmente estos sistemas trabajan de dos formas: Simtricamente Asimtricamente. Cuando se trabaja de manera asimtrica, el sistema operativo selecciona a uno de los procesadores el cual jugar el papel de procesador maestro y servir como pivote para distribuir la carga a los dems procesadores, que reciben el nombre de esclavos. Cuando se trabaja de manera simtrica, los procesos o partes de ellos (hilos o threads) son enviados indistintamente a cualquiera de los procesadores disponibles, teniendo, tericamente, una mejor distribucin y equilibrio en la carga de trabajo bajo este esquema. Se dice que un hilo es la parte activa en memoria y corriendo de un proceso, lo cual puede consistir de un rea de memoria, un conjunto de registros con valores especficos, la pila y otros valores de contexto. Un aspecto importante a considerar en estos sistemas es la forma de crear aplicaciones para aprovechar los varios procesadores. 3.3 SISTEMAS OPERATIVOS POR LA FORMA DE OFRECER SUS SERVICIOS Esta clasificacin tambin se refiere a una visin externa, que en este caso se refiere a la del usuario: el cmo accesa los servicios. Bajo esta clasificacin se pueden detectar dos tipos principales: sistemas operativos de red y sistemas operativos distribuidos. 3.3.1 SISTEMAS OPERATIVOS DE RED Los sistemas operativos de red se definen como aquellos que tiene la capacidad de interactuar con sistemas operativos en otras mquinas por medio de un medio de transmisin con el objeto de intercambiar informacin, transferir archivos, ejecutar comandos remotos y un sin fin de otras actividades. El punto crucial de estos sistemas es que el usuario debe conocer la ubicacin de los recursos que desee accesar (p.e. direccin y/o nombre de la mquina remota, ruta o camino al recurso compartido), e incluso en ocasiones puede ser necesario incluso conocer la sintaxis de una serie de instrucciones necesarias para la utilizacin del recurso (vale la pena aclarar que esto cada vez es menos frecuente debido al surgimiento de interfaces ms amigables con el usuario, aunque sin lograr superar la flexibilidad que una lnea de comandos puede brindar). 3.3.2 SISTEMAS OPERATIVOS DISTRIBUDOS Los sistemas operativos distribuidos abarcan los servicios de red, logrando integrar recursos (impresoras, unidades de respaldo, memoria, procesos, unidades centrales de proceso) en una sola mquina virtual que el usuario accesa 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. La labor del sistema operativo distribuido es la de permitir a las aplicaciones hacer uso de los diversos procesadores, memorias, discos y en general todo dispositivo conectado al sistema mltiple, tal como si se encontraran fsicamente en la misma mquina. Las razones para crear o adoptar sistemas distribuidos se dan por dos razones principales: por necesidad (debido a que los problemas a resolver son inherentemente distribuidos) o porque se desea tener ms confiabilidad y disponibilidad de recursos. Un ejemplo de aplicacin de sistemas de cluster o distribuidos es en la renderizacin de algunas partes (o toda ella) de una pelcula cinematogrfica, en especial cunado la carga de efectos especiales visuales requiere grandes capacidades de procesamiento.

Ingeniera de Sistemas UNSCH/QECM

Pgina 9 de 9