Vous êtes sur la page 1sur 17

Agregar a favoritos Invitar a un amigo Ayuda

Português
¡Regístrese! | Iniciar sesión

Principio del formulario


0 and
Busqueda
En el índice avanzada

Final del formulario


• Monografías
• Nuevas
• Publicar
• Blogs
• Foros
Monografias.com > Computacion > Sistemas Operativos
• Descargar

• Imprimir

• Comentar

• Ver trabajos relacionados

SISTEMAS OPERATIVOS
Enviado por cypress_92
Anuncios Google:
Antispam Software
Get rid of spam for good. Easy To Use. Download Now! |
AntiSpam.byteplant.com
Aplicaciones de Google
Correo Electrónico, Video Chat y Mensajería Instantánea. Contáctenos |
www.Google.com/a

Indice
1. Introducción a los sistemas operativos
2. Estructura de un sistema operativo
3. Funciones y características de los sistemas operativos.
4. Modalidades de trabajo de los sistemas operativos.
5. Bibliografia
1. Introduccióna los sistemas operativos
Definiciones de los sistemas operativos.
Un sistema operativo es un programaque actúa como intermediario entre el
usuario y el hardware de un computador y su propósito es proporcionar un
entorno en el cual el usuario pueda ejecutar programas. El objetivo principal de
un sistema operativo es lograr que el sistema de computación se use de
manera cómoda, y el objetivo secundario es que el hardware del computador
se emplee de manera eficiente.
Un sistema Operativo (SO) es en sí mismo un programa de computadora. Sin
embargo, es un programa muy especial, quizá el más complejo e importante en
una computadora. El SO despierta a la computadora y hace que reconozca a la
CPU, la memoria, el teclado, el sistema de vídeo y las unidades de disco.
Además, proporciona la facilidad para que los usuarios se comuniquen con la
computadora y sirve de plataforma a partir de la cual se corran programas de
aplicación.
Cuando enciendes una computadora, lo primero que ésta hace es llevar a cabo
un autodiagnóstico llamado auto prueba de encendido (Power On Self Test,
POST). Durante la POST, la computadora identifica su memoria, sus discos, su
teclado, su sistema de vídeo y cualquier otro dispositivo conectado a ella. Lo
siguiente que la computadora hace es buscar un SO para arrancar (boot).
Una vez que la computadora ha puesto en marcha su SO, mantiene al menos
parte de éste en su memoria en todo momento. Mientras la computadora esté
encendida, el SO tiene 4 tareas principales:
• Proporcionar ya sea una interfaz de línea de comando o una interfaz
gráfica al usuario, para que este último se pueda comunicar con la
computadora. Interfaz de línea de comando: tú introduces palabras y
símbolos desde el teclado de la computadora, ejemplo, el MS-DOS.
Interfaz gráfica del Usuario (GUI), seleccionas las acciones mediante el
uso de un Mouse para pulsar sobre figuras llamadas iconos o
seleccionar opciones de los menús.
• Administrar los dispositivos de hardware en la computadora. Cuando
corren los programas, necesitan utilizar la memoria, el monitor, las
unidades de disco, los puertos de Entrada/Salida ( impresoras, módems,
etc.). El SO sirve de intermediario entre los programas y el hardware.
• Administrar y mantener los sistemas de archivo de disco. Los SO
agrupan la información dentro de compartimientos lógicos para
almacenarlos en el disco. Estos gruposde información son llamados
archivos. Los archivos pueden contener instrucciones de programas o
información creada por el usuario. El SO mantiene una lista de los
archivos en un disco, y nos proporciona las herramientas necesarias
para organizar y manipular estos archivos.
• Apoyar a otros programas. Otra de las funciones importantes del SO es
proporcionar servicios a otros programas. Estos servicios son similares a
aquellos que el SO proporciona directamente a los usuarios. Por
ejemplo, listar los archivos, grabarlos a disco, eliminar archivos, revisar
espacio disponible, etc. Cuando los programadores escriben programas
de computadora, incluyen en sus programas instrucciones que solicitan
los servicios del SO. Estas instrucciones son conocidas como "llamadas
del sistema"
¿Qué es un sistema operativo?
Un sistema operativo es el programa que oculta la verdad del hardware al
programador y presenta una vista simple y agradable de los archivos
nominados que pueden leerse y escribirse. El sistema operativo resguarda al
programador del hardware del disco y presenta una interfaz simple orientada al
archivo, también disimula mucho del trabajoconcerniente a interrupciones,
relojes o cronómetros, manejo de memoria y otras características de bajo nivel.

La función del sistema operativo es la de presentar al usuario con el


equivalente de una máquina ampliada o máquina virtual que sea más fácil de
programar que el hardware implícito.
Un sistema operativo es una parte importante de casi cualquier sistema de
computación. Un sistema de computación puede dividirse en cuatro
componentes: el hardware, el sistema operativo, los programas de aplicación y
los usuarios.
El hardware (unidad central de procesamiento (UCP), memoria y dispositivos
de entrada y salida (E/S)) proporciona los recursos de computación básicos.
Los programas de aplicación (compiladores, sistemas de bases de datos,
juegos de video y programas para negocios) definen la forma en que estos
recursos se emplean para resolver los problemasde computación de los
usuarios. Puede haber distintos usuarios (personas, máquinas, otros
computadores) que intentan resolver problemas diferentes; por lo tanto es
posible que haya diferentes programas de aplicación. El sistema operativo
controla y coordina el uso del hardware entre los diversos programas de
aplicación de los distintos usuarios
Podemos ver al sistema operativo como un asignador de recursos. Un sistema
de computación tiene muchos recursos (hardware y software) que pueden
requerirse para resolver un problema: tiempo de la UCP, espacio de memoria,
espacio de almacenamiento de archivos, dispositivos de E/S, etc. El sistema
operativo actúa como el administrador de estos recursos y los asigna a
usuarios y programas concretos según los necesiten las tareas de los usuarios.
Puesto que pueden surgir conflictosen las solicitudes de recursos, el sistema
operativo debe decidir a que solicitudes se les asignaran para que el sistema
de computación pueda funcionar de manera eficiente y justa.
En términos generales no hay una definición de sistema operativo
completamente adecuada. Los sistemas operativos existen porque son una
manera razonable de solucionar el problema de crear un sistema de
computación utilizable.
Objetivos para la creación de los sistemas
Operativos.
• Transformar el complejo hardware de una computadora a una máquina
accesible al usuario.
• Lograr el mejor uso posible de los recursos. Hacer eficiente el uso del
recurso.
El objetivo fundamental de los sistemas de computación es ejecutar los
programas de los usuarios y facilitar la resolución de sus problemas. El
hardware se construye con este fin, pero como este no es fácil de utilizar, se
desarrollan programas de aplicación que requieren ciertas operaciones
comunes, como el control de dispositivos de E/S. las funciones comunes de
control y de asignación de recursos se integran para formar un solo fragmento
de software: el sistema operativo.
Desarrollo histórico de los sistemas operativos.
En un principio solo existía el hardware del computador. Los primeros
computadores eran (físicamente) grandes maquinas que se operaban desde
una consola. El programador escribía un programa y luego lo controlaba
directamente desde la consola. En primer lugar, el programa se cargaba
manualmente en la memoria, desde los interruptores del tablero frontal (una
instrucción en cada ocasión), desde una cinta de papel o desde tarjetas
perforadas. Luego se pulsaban los botones adecuados para establecer la
dirección de inicio y comenzar la ejecución del programa. Mientras este se
ejecutaba, el programador-operador lo podía supervisar observando las luces
en la consola, si se descubrían errores, el programador podía detener el
programa, examinar el contenido de la memoria y los registros y depurar el
programa directamente desde la consola. La salida del programa se imprimía, o
se perforaba en cintas de papel o tarjetas para su impresión posterior.
Sin embargo, con este procedimiento se presentaban ciertos problemas.
Supongamos que un usuario se había registrado para usar una hora de tiempo
del computador dedicada a ejecutar el programa que estaba desarrollando,
pero se topaba con algún error difícil y no podía terminar en esa hora. Si
alguien más había reservado el siguiente bloque de tiempo, usted debía
detenerse, rescatar lo que pudiera y volver mas tarde para continuar. Por otra
parte, si el programa se ejecutaba sin problemas, podría terminar en 35
minutos; pero como pensó que necesitaría la maquina durante más tiempo, se
registro para usarla una hora, y permanecería inactiva durante 25 minutos.
Conforme transcurrió el tiempo, se desarrollaron software y hardware
adicionales; empezaron a popularizarse los lectores de tarjetas, impresoras de
líneas y cintas magnéticas; se diseñaron ensambladores, cargadores y
ligadores para facilitar las tareas de programación, y se crearon bibliotecas de
funciones comunes, de manera que estas podían copiarse a un nuevo
programa sin tener que escribirlas de nuevo.
Las rutinas que efectuaban operaciones de E/S tenían una importancia
especial. Cada nuevo dispositivo de E/S poseía sus propias características, lo
que requería una cuidadosa programación. Así mismo, para cada uno de ellos
se escribía una subrutina especial, la cual se denominaba manejador de
dispositivos. Este sabe como deben de usarse los buffers, indicadores,
registros, bits de control y bits de estado para cada dispositivo. Cada tipo de
dispositivo tenía su propio manejador. Una tarea sencilla, como leer un carácter
de un lector de cinta de papel, podía conllevar complicadas secuencias de
operaciones específicas para el dispositivo. En lugar de tener que escribir cada
vez el código necesario, bastaba usar el manejador de dispositivo de la
biblioteca.
Más tarde aparecieron los compiladores de FORTRAN, COBOL y otros
lenguajes, lo que facilito la tarea de programación, pero hizo más complejo el
funcionamiento del computador. Por ejemplo, al preparar la ejecución de un
programa en FORTRAN, el programador primero necesitaba cargar en el
computador el compilador de FORTRAN, que generalmente se conservaba en
una cinta magnética, por lo que había que montar la cinta adecuada en la
unidad correspondiente. El programa se leía a través del lector de tarjetas y se
escribía en otra cinta. El compilador de FORTRAN producía una salida en
lenguaje ensamblador, que luego tenia que ensamblarse, para esto era
necesario montar otra cinta con el ensamblador, y su salida debía enlazarse
con las rutinas de apoyo de las bibliotecas. Finalmente, el programa objeto, en
código binario, estaba listo para ejecutarse; se cargaba en memoria y se
depuraba desde la consola como antes.
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 de válvulas (primera generación) a
transistores (segunda generación), a circuitos integrados (tercera generación),
a circuitos integrados de gran y muy gran escala (cuarta generación). Cada
generación Sucesiva de hardware ha ido acompañada de reducciones
substanciales en los costos, tamaño, emisión de calor y consumode energía, y
por incrementos notables en velocidad y capacidad.
Generación Cero (década de 1940)
Los primeros sistemas computacionales no poseían sistemas operativos. Los
usuarios tenían completo acceso al lenguaje de la maquina. Todas las
instrucciones eran codificadas a mano.
Primera Generación (década de 1950)
Los sistemas operativosde los años cincuenta fueron diseñados para hacer
mas fluida la transición entre trabajos. Antes de que los sistemas fueran
diseñados, se perdía un tiempo considerable entre la terminación de un trabajo
y el inicio del siguiente. Este fue el comienzo de los sistemas de procesamiento
por lotes, donde los trabajos se reunían por grupos o lotes. Cuando el trabajo
estaba en ejecución, este tenia control total de la maquina. Al terminar cada
trabajo, el control era devuelto al sistema operativo, el cual limpiaba y leía e
iniciaba el trabajo siguiente.
Al inicio de los 50's esto había mejorado un poco con la introducción de tarjetas
perforadas (las cuales servían para introducir los programas de lenguajes de
máquina), puesto que ya no había necesidad de utilizar los tableros
enchufables.
Además el laboratorio de investigación General Motors implementó el primer
sistema operativo para la IBM 701. Los sistemas de los 50's generalmente
ejecutaban una sola tarea, y la transición entre tareas se suavizaba para lograr
la máxima utilización del sistema. Esto se conoce como sistemas de
procesamiento por lotes de un sólo flujo, ya que los programas y los datos eran
sometidos en grupos o lotes.
La introducción del transistor a mediados de los 50's cambió la
imagenradicalmente. Se crearon máquinas suficientemente confiables las
cuales se instalaban en lugares especialmente acondicionados, aunque sólo
las grandes universidades y las grandes corporaciones o bien las oficinas del
gobierno se podían dar el lujo de tenerlas.
Para poder correr un trabajo (programa), tenían que escribirlo en papel (en
FORTRAN o en lenguaje ensamblador) y después se perforaría en tarjetas.
Enseguida se llevaría la pila de tarjetas al cuarto de introducción al sistema y la
entregaría a uno de los operadores. Cuando la computadora terminara el
trabajo, un operador se dirigiría a la impresora y desprendería la salida y la
llevaría al cuarto de salida, para que la recogiera el programador.
Segunda Generación (a mitad de la década de 1960)
La característica de los sistemas operativos fue el desarrollo de los sistemas
compartidos con multiprogramación, y los principios del multiprocesamiento. En
los sistemas de multiprogramación, varios programas de usuario se encuentran
al mismo tiempo en el almacenamiento principal, y el procesador se cambia
rápidamente de un trabajo a otro. En los sistemas de multiprocesamiento se
utilizan varios procesadores en un solo sistema computacional, con la finalidad
de incrementar el poder de procesamiento de la maquina.
La independencia de dispositivos aparece después. Un usuario que desea
escribir datos en una cinta en sistemas de la primera generación tenia que
hacer referencia especifica a una unidad de cinta particular. En la segunda
generación, el programa del usuario especificaba tan solo que un archivo iba a
ser escrito en una unidad de cinta con cierto número de pistas y cierta
densidad.
Se desarrollo sistemas compartidos, en la que los usuarios podían acoplarse
directamente con el computador a través de terminales. Surgieron sistemas de
tiempo real, en que los computadores fueron utilizados en el control de
procesos industriales. Los sistemas de tiempo real se caracterizan por proveer
una respuesta inmediata.
Tercera Generación (mitad de década 1960 a mitad década de 1970)
Se inicia en 1964, con la introducción de la familiade computadores
Sistema/360 de IBM. Los computadores de esta generación fueron diseñados
como sistemas para usos generales. Casi siempre eran sistemas grandes,
voluminosos, con el propósito de serlo todo para toda la gente. Eran sistemas
de modos múltiples, algunos de ellos soportaban simultáneamente procesos
por lotes, tiempo compartido, procesamiento de tiempo real y
multiprocesamiento. Eran grandes y costosos, nunca antes se había construido
algo similar, y muchos de los esfuerzos de desarrollo terminaron muy por arriba
del presupuesto y mucho después de lo que el planificador marcaba como
fecha de terminación.
Estos sistemas introdujeron mayor complejidad a los ambientes
computacionales; una complejidad a la cual, en un principio, no estaban
acostumbrados los usuarios.
Cuarta Generación (mitad de década de 1970 en adelante)
Los sistemas de la cuarta generación constituyen el estado actual de la
tecnología. Muchos diseñadores y usuarios se sienten aun incómodos,
después de sus experiencias con los sistemas operativos de la tercera
generación.
Con la ampliación del uso de redes de computadores y del procesamiento en
línea los usuarios obtienen acceso a computadores alejados geográficamente a
través de varios tipos de terminales.
Los sistemas de seguridad se han incrementado mucho ahora que la
información pasa a través de varios tipos vulnerables de líneas de
comunicación. La clave de cifrado esta recibiendo mucha atención; han sido
necesario codificar los datos personales o de gran intimidad para que; aun si
los datos son expuestos, no sean de utilidad a nadie mas que a los receptores
adecuados.
2. Estructura de un sistema operativo
En esta unidad examinaremos cuatro estructuras distintas que ya han sido
probadas, con el fin de tener una idea más extensa de cómo esta estructurado
el sistema operativo. Veremos brevemente algunas estructuras de diseños de
sistemas operativos.
Estructura modular.
También llamados sistemas monolíticos. Este tipo de organización es con
mucho la mas común; bien podría recibir el subtitulo de "el gran embrollo". La
estructura consiste en que no existe estructura alguna. El sistema operativo se
escribe como una colección de procedimientos, cada uno de los cuales puede
llamar a los demás cada vez que así lo requiera. Cuando se usa esta técnica,
cada procedimiento del sistema tiene una interfaz bien definida en términos de
parámetros y resultados y cada uno de ellos es libre de llamar a cualquier otro,
si este ultimo proporciona cierto cálculo útil para el primero. Sin embargo
incluso en este tipo de sistemas es posible tener al menos algo de estructura.
Los servicios (llamadas al sistema) que proporciona el sistema operativo se
solicitan colocando los parámetros en lugares bien definidos, como en los
registros o en la pila, para después ejecutar una instrucción especial de trampa
de nombre "llamada al núcleo" o "llamada al supervisor".
Esta instrucción cambia la máquina del modo usuario al modo núcleo y
transfiere el control al sistema operativo, lo que se muestraen el evento (1) de
la figura 1. El sistema operativo examina entonces los parámetros de la
llamada, para determinar cual de ellas se desea realizar, como se muestra en
el evento (2) de la figura 1. A continuación, el sistema operativo analiza una
tabla que contiene en la entrada k un apuntador al procedimiento que realiza la
k-esima llamada al sistema. Esta operación que se muestra en (3) de la figura
1, identifica el procedimiento de servicio, al cual se llama. Por ultimo, la llamada
al sistema termina y el control regresa al programa del usuario.
Figura 1. La forma en que debe hacerse una llamada al sistema: (1) el
programa del usuario es atraído hacia el núcleo. (2) el sistema operativo
determina el número del servicio solicitado. (3) el sistema operativo localiza y
llama al procedimiento correspondiente al servicio. (4) el control regresa al
programa del usuario.
Esta organización sugiere una organización básica del sistema operativo:
1.- un programa principal que llama al procedimiento del servicio solicitado.
2.- un conjunto de procedimientos de servicio que llevan a cabo las llamadas al
sistema.
3.- un conjunto de procedimientos utilitarios que ayudan al procedimiento de
servicio.
En este modelo, para cada llamada al sistema existe un procedimiento de
servicio que se encarga de él. Los procedimientos utilitarios hacen cosas
necesarias para varios procedimientos de servicio, por ejemplo buscar los
datos de los programas del usuario. La siguiente figura muestra este
procedimiento de tres capas:
(Para ver el gráfico faltante haga click en el menú superior "Bajar Trabajo")
Figura 2. Un modelo de estructura simple para un sistema monolítico.
(Para ver el gráfico faltante haga click en el menú superior "Bajar Trabajo")
Estructura por microkernel.
Las funciones centrales de un SO son controladas por el núcleo (kernel)
mientras que la interfaz del usuario es controlada por el entorno (shell). Por
ejemplo, la parte más importante del DOS es un programa con el nombre
"COMMAND.COM" Este programa tiene dos partes. El kernel, que se mantiene
en memoria en todo momento, contiene el código máquina de bajo nivel para
manejar la administración de hardware para otros programas que necesitan
estos servicios, y para la segunda parte del COMMAND.COM el shell, el cual
es el interprete de comandos
Las funciones de bajo nivel del SO y las funciones de interpretación de
comandos están separadas, de tal forma que puedes mantener el kernel DOS
corriendo, pero utilizar una interfaz de usuario diferente. Esto es exactamente
lo que sucede cuando cargas Microsoft Windows, el cual toma el lugar del
shell, reemplazando la interfaz de línea de comandos con una interfaz gráfica
del usuario. Existen muchos "shells" diferentes en el mercado, ejemplo: NDOS
(Norton DOS), XTG, PCTOOLS, o inclusive el mismo SO MS-DOS a partir de la
versión 5.0 incluyó un Shell llamado DOS SHELL.

Estructura po r anillos concéntricos (capas).


El sistema por "capas" consiste en organizar el sistema operativo como una
jerarquía de capas, cada una construida sobre la inmediata inferior. El primer
sistema construido de esta manera fue el sistema THE (Technische
Hogeschool Eindhoven), desarrollado en Holanda por E. W. Dijkstra (1968) y
sus estudiantes.
El sistema tenia 6 capas, como se muestra en la figura 3. La capa 0 trabaja con
la asignación del procesador y alterna entre los procesos cuando ocurren las
interrupciones o expiran los cronómetros. Sobre la capa 0, el sistema consta de
procesos secuénciales, cada uno de los cuales se podría programar sin
importar que varios procesos estuvieran ejecutándose en el mismo procesador,
la capa 0 proporcionaba la multiprogramación básica de la CPU.
La capa 1 realizaba la administración de la memoria. Asignaba el espacio de
memoria principal para los procesos y un recipiente de palabras de 512K se
utilizaba para almacenar partes de los procesos (páginas) para las que no
existía lugar en la memoria principal. Por encima de la capa 1, los procesos no
debían preocuparse si estaban en la memoria o en el recipiente; el software de
la capa 1 se encargaba de garantizar que las páginas llegaran a la memoria
cuando fueran necesarias.
La capa 2 se encargaba de la comunicación entre cada proceso y la consola
del operador. Por encima de esta capa, cada proceso tiene su propia consola
de operador.
La capa 3 controla los dispositivos de E/S y guarda en almacenes(buffers) los
flujos de información entre ellos. Por encima de la capa 3, cada proceso puede
trabajar con dispositivos exactos de E/S con propiedades adecuadas, en vez
de dispositivos reales con muchas peculiaridades. La capa 4 es donde estaban
los programas del usuario, estos no tenían que preocuparse por el proceso,
memoria, consola o control de E/S. el proceso operador del sistema se
localizaba en la capa 5
Una generalización mas avanzada del concepto de capas se presento en el
sistema MULTICS. En lugar de capas, MULTICS estaba organizado como una
serie de anillos concéntricos, siendo los anillos interiores los privilegiados.
Cuando un procedimiento de un anillo exterior deseaba llamar a un
procedimiento de un anillo interior, debió hacer el equivalente a una llamada al
sistema
Mientras que el esquema de capas de THE era en realidad un apoyo al diseño,
debido a que todas las partes del sistema estaban ligadas entre si en un solo
programa objeto, en MULTICS, el mecanismo de anillos estaba mas presente
durante el tiempo de ejecución y era reforzado por el hardware. La ventaja del
mecanismo de anillos es su facilidad de extensión para estructurar subsistemas
del usuario.

5 El operador

4 Programas del usuario

3 Control de entrada/salida

2 Comunicación operador-proceso

1 Administración de la memoria y del disco

0 Asignación del procesador y multiprogramación

Figura 3. Estructura del sistema operativo THE.


Estructura cliente– servidor
Una tendencia de los sistemas operativos modernos es la de explotar la idea
de mover el código a capas superiores y eliminar la mayor parte posible del
sistema operativo para mantener un núcleo mínimo. El punto de vista usual es
el de implantar la mayoría de las funciones del sistema operativo en los
procesos del usuario. Para solicitar un servicio, como la lectura de un bloque de
cierto archivo, un proceso del usuario (denominado proceso cliente) envía la
solicitud a un proceso servidor, que realiza entonces el trabajo y regresa la
respuesta. En este modelo, que se muestra en la figura 4, lo único que hace el
núcleo es controlar la comunicación entre los clientes y los servidores. Al
separar el sistema operativo en partes, cada una de ellas controla una faceta
del sistema, como el servicio a archivos, servicios a procesos, servicio a
terminales o servicio a la memoria, cada parte es pequeña y controlable.
Además como todos los servidores se ejecutan como procesos en modo
usuario y no en modo núcleo, no tienen acceso directo al hardware. En
consecuencia si hay un error en el servidor de archivos, éste puede fallar, pero
esto no afectará en general a toda la máquina.
(Para ver el gráfico faltante haga click en el menú superior "Bajar Trabajo")
Figura 4. El modelo Cliente-servidor.
Otra de las ventajas del modelo cliente-servidor es su capacidad de adaptación
para su uso en los sistemas distribuidos (figura 5).
Si un cliente se comunica con un servidor mediante mensajes, el cliente no
necesita saber si el mensaje se maneja en forma local, en su máquina, o si se
envía por medio de una red a un servidor en una máquina remota. En lo que
respecta al cliente, lo mismo ocurre en ambos casos: se envió una solicitud y
se recibió una respuesta.
(Para ver el gráfico faltante haga click en el menú superior "Bajar Trabajo")
Figura 5. El modelo cliente-servidor en un sistema distribuido.
3. Funciones y características de los sistemas operativos.
Funciones de los sistemas operativos.
1.- Aceptar todos los trabajos y conservarlos hasta su finalización.
2.- Interpretación de comandos: Interpreta los comandos que permiten al
usuario comunicarse con el ordenador.
3.- Control de recursos: Coordina y manipula el hardware de la computadora,
como la memoria, las impresoras, las unidades de disco, el teclado o el Mouse.

4.- Manejo de dispositivos de E/S: Organiza los archivos en diversos


dispositivos de almacenamiento, como discos flexibles, discos duros, discos
compactos o cintas magnéticas.
5.- Manejo de errores: Gestiona los errores de hardware y la pérdida de datos.
6.- Secuencia de tareas: El sistema operativo debe administrar la manera en
que se reparten los procesos. Definir el orden. (Quien va primero y quien
después).
7.- Protección: Evitar que las acciones de un usuario afecten el trabajo que esta
realizando otro usuario.
8.- Multiacceso: Un usuario se puede conectar a otra máquina sin tener que
estar cerca de ella.
9.- Contabilidad de recursos: establece el costo que se le cobra a un usuario
por utilizar determinados recursos.
Características de los sistemas operativos.
En general, se puede decir que un Sistema Operativo tiene las siguientes
características:
• Conveniencia. Un Sistema Operativo hace más conveniente el uso de
una computadora.
• Eficiencia. Un Sistema Operativo permite que los recursos de la
computadora se usen de la manera más eficiente posible.
• Habilidad para evolucionar. Un Sistema Operativo deberá construirse de
manera que permita el desarrollo, prueba o introducción 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 través del kernel). El Sistema
Operativo se debe encargar de comunicar a los dispositivos periféricos,
cuando el usuario así lo requiera.
• Organizar datos para acceso rápido y seguro.
• Manejar las comunicaciones en red. El Sistema Operativo permite al
usuario manejar con alta facilidad todo lo referente a la instalación y uso
de las redes de computadoras.
• Procesamiento por bytes de flujo a través del bus de datos.
• Facilitar las entradas y salidas. Un Sistema Operativo debe hacerle fácil
al usuario el acceso y manejo de los dispositivos de Entrada/Salida de la
computadora.
4. Modalidades de trabajo de los sistemas operativos.
Sistemas operativos por lotes.
La secuencia por lotes o procesamiento por lotes en microcomputadoras, es la
ejecución de una lista de comandos del sistema operativo uno tras otro sin
intervención del usuario.
En los ordenadores más grandes el proceso de recogida de programas y de
conjuntosde datos de los usuarios, la ejecución de uno o unos pocos cada vez
y la entrega de los recursos a los usuarios. Procesamiento por lotes también
puede referirse al proceso de almacenar transacciones durante un cierto lapso
antes de su envío a un archivo maestro, por lo general una operación separada
que se efectúa durante la noche
Los sistemas operativos por lotes (batch), en los que los programas eran
tratadospor grupos (lote) en ves de individualmente. La función de estos
sistemas operativos consistía en cargar en memoria un programa de la cinta y
ejecutarlo. Al final este, se realizaba el salto a una dirección de memoria desde
donde reasumía el control del sistema operativo que cargaba el siguiente
programa y lo ejecutaba. De esta manera el tiempo entre un trabajo y el otro
disminuía considerablemente.
(Para ver el gráfico faltante haga click en el menú superior "Bajar Trabajo")
Figura 6 - Sistema de procesamiento por lotes.
Algunas otras características con que cuentan los Sistemas Operativos por
lotes son:
• Requiere que el programa, datos y órdenes al sistema sean remitidos
todos juntos en forma de lote.
• Permiten poca o ninguna interacción usuario/programa en ejecución.
• Mayor potencial de utilización de recursos que procesamiento serial
simple en sistemas multiusuarios.
• No conveniente para desarrollo de programas por bajo tiempo de retorno
y depuración fuera de línea.
• Conveniente para programas de largos tiempos de ejecución (Ej.,
análisis estadísticos, nóminas de personal, etc.)
• Se encuentra en muchos computadores personales combinados con
procesamiento serial.
• Planificación del procesador sencilla, típicamente procesados en orden
de llegada.
• Planificación de memoria sencilla, generalmente se divide en dos: parte
residente del S.O. y programas transitorios.
• No requieren gestión crítica de dispositivos en el tiempo.
• Suelen proporcionar gestión sencilla de manejo de archivos: se requiere
poca protección y ningún control de concurrencia para el acceso.
Sistemas operativos de tiempo compartido.
El tiempo compartido en ordenadores o computadoras consiste en el uso de un
sistema por más de una persona al mismo tiempo. El tiempo compartido
ejecuta programas separados de forma concurrente, intercambiando porciones
de tiempo asignadas a cada programa (usuario). En este aspecto, es similar a
la capacidad de multitareas que es común en la mayoría de los
microordenadores o las microcomputadoras. Sin embargo el tiempo compartido
se asocia generalmente con el acceso de varios usuarios a computadoras más
grandes y a organizaciones de servicios, mientras que la multitarea relacionada
con las microcomputadoras implica la realización de múltiples tareas por un
solo usuario.
Los principales recursos del sistema, el procesador, la memoria, dispositivos de
E/S, son continuamente utilizados entre los diversos usuarios, dando a cada
usuario la ilusión de que tiene el sistema dedicado para sí mismo. Esto trae
como consecuencia una gran carga de trabajo al Sistema Operativo,
principalmente en la administración de memoria principal y secundaria.
Características de los Sistemas Operativos de tiempo compartido:
• Populares representantes de sistemas multiprogramados multiusuario,
Ej.: sistemas de diseño asistido por computador, procesamiento de
texto, etc.
• Dan la ilusión de que cada usuario tiene una máquina para sí.
• La mayoría utilizan algoritmo de reparto circular.
• Los programas se ejecutan con prioridad rotatoria que se incrementa
con la espera y disminuye después de concedido el servicio.
• Evitan monopolización del sistema asignando tiempos de procesador
(time slot).
• Gestión de memoria: proporciona protección a programas residentes.
• Gestión de archivo: debe proporcionar protección y control de acceso
debido a que pueden existir múltiples usuarios accesando un mismo
archivo.
Sistemas operativos de tiempo real.
Un sistema operativo en tiempo real procesa las instrucciones recibidas al
instante, y una vez que han sido procesadas muestra el resultado. Este tipo
tiene relación con los sistemas operativos monousuarios, ya que existe un solo
operador y no necesita compartir el procesador entre varias solicitudes.
Su característica principal es dar respuestas rápidas; por ejemplo en un caso
de peligro se necesitarían respuestas inmediatas para evitar una catástrofe.
Los Sistemas Operativos de tiempo real, cuentan con las siguientes
características:
• Se dan en entornos en donde deben ser aceptados y procesados gran
cantidad de sucesos, la mayoría externos al sistema computacional, en
breve tiempo o dentro de ciertos plazos.
• Se utilizan en control industrial, conmutación telefónica, control de vuelo,
simulaciones en tiempo real., aplicaciones militares, etc.
• Su objetivo es proporcionar rápidos tiempos de respuesta.
• Procesa ráfagas de miles de interrupciones por segundo sin perder un
solo suceso.
• Un proceso se activa tras ocurrencia de suceso, mediante interrupción.
• Un proceso de mayor prioridad expropia recursos.
• Por tanto generalmente se utiliza planificación expropiativa basada en
prioridades.
• Gestión de memoria menos exigente que tiempo compartido,
usualmente procesos son residentes permanentes en memoria.
• Población de procesos estática en gran medida.
• Poco movimiento de programas entre almacenamiento secundario y
memoria.
• La gestión de archivos se orienta más a velocidad de acceso que a
utilización eficiente del recurso.
Sistemas operativos de red.
La principal función de un sistema operativo de red es ofrecer un mecanismo
para transferir archivos de una máquina a otra. En este entorno, cada
instalación mantiene su propio sistema de archivos local y si un usuario de la
instalación A quiere acceder a un archivo en la instalación B, hay que copiar
explícitamente el archivo de una instalación a otra.
Internetproporciona un mecanismo para estas transferencias, a través del
programa protocolo de transferencias de archivos FTP (File Transfer Protocol).
Suponga que un usuario quiere copiar un archivo A1, que reside en la
instalación B, a un archivo A2 en la instalación local A. Primero, el usuario debe
invocar el programa FTP, el cual solicita al usuario la información siguiente:
a) El nombre de la instalación a partir de la cual se efectuará la transferencia
del archivo (es decir la instalación B).
b) La información de acceso, que verifica que el usuario tiene los privilegios de
acceso apropiados en la instalación B.
Una vez efectuada esta comprobación, el usuario puede copiar el archivo A1
de B a A2 en A, ejecutando "get A1 to A2"
En este esquema, la ubicación del archivo no es transparente para el usuario;
tiene que saber exactamente donde esta cada archivo. Además los archivos no
se comparten realmente, porque un usuario solo puede copiar un archivo de
una instalación a otra. Por lo tanto pueden existir varias copias del mismo
archivo, lo que representa un desperdicio de espacio. Así mismo, si se
modifican, estas copias no serán consistentes.
Los Sistemas Operativos de red son aquellos sistemas que mantienen a dos o
más computadoras unidas a través de algún medio de comunicación (físico o
no), con el objetivo primordial de poder compartir los diferentes recursos y la
información del sistema.
El primer Sistema Operativo de red estaba enfocado a equipos con un
procesador Motorola 68000, pasando posteriormente a procesadores Intel
como Novell Netware.
Los Sistemas Operativos de red más ampliamente usados son: Novell Netware,
Personal Netware, LAN Manager, Windows NT Server, UNIX, LANtastic.
Sistemas operativos distribuidos.
En un sistema operativo distribuido los usuarios pueden acceder a recursos
remotos de la misma manera en que lo hacen para los recursos locales. La
migración de datos y procesos de una instalación a otra queda bajo el control
del sistema operativo distribuido.
Permiten distribuir trabajos, tareas o procesos, entre un conjunto de
procesadores. Puede ser que este conjunto de procesadores esté en un equipo
o en diferentes, en este caso es transparente para el usuario. Existen dos
esquemas básicos de éstos. Un sistema fuertemente acoplado es aquel que
comparte la memoria y un reloj global, cuyos tiempos de acceso son similares
para todos los procesadores. En un sistema débilmente acoplado los
procesadores no comparten ni memoria ni reloj, ya que cada uno cuenta con su
memoria local.
Los sistemas distribuidos deben de ser muy confiables, ya que si un
componente del sistema se descompone otro componente debe de ser capaz
de reemplazarlo.
Entre los diferentes Sistemas Operativos distribuidos que existen tenemos los
siguientes: Sprite, Solaris-MC, Mach, Chorus, Spring, Amoeba, Taos, etc.
Características de los Sistemas Operativos distribuidos:
• Colección de sistemas autónomos capaces de comunicación y
cooperación mediante interconexiones hardware y software.
• Proporciona abstracción de máquina virtual a los usuarios.
• Objetivo clave es la transparencia.
• Generalmente proporcionan medios para la compartición global de
recursos.
Servicios añadidos: denominación global, sistemas de archivos distribuidos,
facilidades para distribución de cálculos (a través de comunicación de procesos
internodos, llamadas a procedimientos remotos, etc.).
Figura 7.- Sistema Operativo Distribuido.
Sistemas operativos multiprocesadores.
En los sistemas multiprocesador, los procesadores comparten la memoria y el
reloj. Se incrementa la capacidad de procesamiento y la confiabilidad, son
económicos.
• Multiprocesamiento simétrico: Cada procesador ejecuta una copia del
sistema operativo.
• Multiprocesamiento asimétrico: Cada procesador tiene asignado una
tarea específica, existe un procesador master que asigna tareas a los
procesadores esclavos.
Multiproceso: Las computadoras que tienen más de un CPU son llamadas
multiproceso. Un sistema operativo multiproceso coordina las operaciones de
las computadoras multiprocesadores. Ya que cada CPU en una computadora
de multiproceso puede estar ejecutando una instrucción, el otro procesador
queda liberado para procesar otras instrucciones simultáneamente.
Al usar una computadora con capacidades de multiproceso incrementamos su
velocidad de respuesta y procesos. Casi todas las computadoras que tienen
capacidad de multiproceso ofrecen una gran ventaja.
Los primeros Sistemas Operativos Multiproceso realizaban lo que se conoce
como Multiproceso asimétrico. Una CPU principal retiene el control global de la
computadora, así como el de los otros procesadores. Esto fue un primer paso
hacia el multiproceso pero no fue la dirección ideal a seguir ya que la CPU
principal podía convertirse en un cuello de botella.
Multiproceso simétrico. En un sistema multiproceso simétrico, no existe una
CPU controladora única. La barrera a vencer al implementar el multiproceso
simétrico es que los SO tienen que ser rediseñados o diseñados desde el
principio para trabajar en un ambientemultiproceso. Las extensiones de UNIX,
que soportan multiproceso asimétrico ya están disponibles y las extensiones
simétricas se están haciendo disponibles. Windows NT de Microsoft soporta
multiproceso simétrico.
5. Bibliografia
• Sistemas Operativos Modernos
Andrew S. Tanenbaum
Pearson Education
• Operating System Concepts
A. Silberschatz, J. Peterson, P. Galvin
Addison - Wesley Publishing Company
• Sistemas Operativos / Diseño E Implementación
Andrew S. Tanenbaum
Prentice - Hall

Autor:

Heriberto Gabriel Soto


cypress_92[arroba]hotmail.com0

Comentarios
El comentario ha sido publicado.

Para dejar un comentario, regístrese gratis o si ya está registrado, inicie sesión.


Principio del formulario

Agregar un comentario Enviar comentario


Los comentarios están sujetos a los Términos y Condiciones
Final del formulario

Trabajos relacionados
• Sistemas operativos -
Componentes de una PC
La Tarjeta Madre. El
Procesador. Tipos de
procesadores. Memoria
Cache. Partes de la Tarjeta
Madre. El Disco Duro. La
Mem...
• Windows 98
Conocimiento del Escritorio
de Windows 98. ¿Cómo
trabajar con una ventana?.
¿Cómo utilizar las Barras
de desplazamiento?...
• Sistemas Operativos I
(Netware - Novell)
Concepto y definición de
Sistemas operativos.
Características de los
Sistemas Operativos.
Clasificación de los
sistemas ...
Ver mas trabajos de Sistemas
Operativos

Nota al lector: es posible que esta página no contenga todos los componentes
del trabajo original (pies de página, avanzadas formulas matemáticas,
esquemas o tablas complejas, etc.). Recuerde que para ver el trabajo en su
versión original completa, puede descargarlo desde el menú superior.

Todos los documentos disponibles en este sitio expresan los puntos de vista de
sus respectivos autores y no de Monografias.com. El objetivo de
Monografias.com es poner el conocimiento a disposición de toda su
comunidad. Queda bajo la responsabilidad de cada lector el eventual uso que
se le de a esta información. Asimismo, es obligatoria la cita del autor del
contenido y de Monografias.com como fuentes de información.
El Centro de Tesis, Documentos, Publicaciones y Recursos Educativos más
amplio de la Red.
Términos y Condiciones | Haga publicidad en Monografías.com | Contáctenos |
Blog Institucional
© Monografias.com S.A.

Iniciar sesión
Ingrese el e-mail y contraseña con el que está registrado en Monografias.com
Principio del formulario Regístrese gratis
¿Olvidó su contraseña?
E-mail: Ayuda

Contraseña:

Recordarme en este equipo


Iniciar sesión

Final del formulario

Vous aimerez peut-être aussi