Sistemas Operativos

Post on 08-Jul-2015

2.856 views 1 download

Transcript of Sistemas Operativos

I n t r o d u c c i ó n

Para que un ordenador pueda hacer funcionar un

programa informático (conocido como aplicación

o software), debe contar con la capacidad

necesaria para realizar cierta cantidad de

operaciones preparatorias que puedan garantizar

el intercambio de información entre el

procesador, la memoria y los recursos físicos

(periféricos).

El sistema operativo se encarga de crear elvínculo entre los recursos materiales, el usuario ylas aplicaciones (procesador detexto, videojuegos, etc.).

Cuando un programa desea acceder a un recursomaterial, no necesita enviar informaciónespecífica a los dispositivos periféricos;simplemente envía la información al sistemaoperativo, el cual la transmite a los periféricoscorrespondientes a través de su driver(controlador). Si no existe ningún driver, cadaprograma debe reconocer y tener presente lacomunicación con cada tipo de periférico.

De esta forma, el sistema operativo permite

la «disociación» de programas y

hardware, principalmente para simplificar la

gestión de recursos y proporcionar una

interfaz de usuarios sencilla con el fin de

reducir la complejidad del equipo.

Un sistema operativo está conformadobásicamente por cuatro módulos:

Núcleo o Kernel

Administrador de memoria

Sistema de entrada/salida

Administrador de archivos

A veces se considera un quinto módulo: elintérprete de comandos o intérprete deinstrucciones, el cual se encarga de «traducir»las ordenes que el usuario ingresa mediante elteclado u otros dispositivos a un «lenguaje» quela máquina pueda entender.

Es el módulo de más bajo nivel de un sistema

operativo, pues descansa directamente sobre

el hardware de la computadora.

Entre las tareas que desempeña se incluyen:

El manejo de las interrupciones

La asignación de trabajo al procesador

Proporcionar una vía de comunicación entre los

distintos programas.

En general, se encarga de controlar el resto

de los módulos y sincronizar su ejecución.

Contiene un submódulo denominado

«planificador», el cual se encarga de asignar

tiempo del procesador a los programas, de

acuerdo a una cierta política de planificación

que varía de un sistema operativo a otro.

Utiliza una jerarquía de prioridades que

determinan cómo se asignará el tiempo del

CPU a cada programa.

Se encarga de asignar ciertas porciones de la

memoria principal (RAM) a los diferentes

programas o partes de los programas que la

necesitan, mientras el resto de los datos y

los programas se mantienen en los

dispositivos de almacenamiento masivo.

De este modo, cuando se asigna una parte de

la memoria principal se hace de una forma

estructurada, siguiendo un determinado

orden.

La forma más común de administración de la

memoria supone crear una memoria virtual;

con este sistema, la memoria de la

computadora aparece, para cualquier usuario

del sistema, mucho mayor de lo que en

realidad es.

Este componente presenta al usuario la E/S

de datos como una cuestión independiente

del dispositivo; es decir, para los

usuarios, todos los dispositivos tienen las

mismas características y son tratados de la

misma forma, siendo el sistema operativo el

encargado de atender las particularidades de

cada uno de ellos (como su velocidad de

operación).

Se encarga de mantener la estructura de los

datos y los programas del sistema y de los

diferentes usuarios (que se mantienen en

archivos) y de asegurar el uso eficiente de

los medios de almacenamiento masivo.

Supervisa la creación, actualización y

eliminación de los archivos, manteniendo un

directorio con todos los archivos que existen

en el sistema en cada momento y coopera

con el módulo administrador de memoria

durante las transferencias de datos desde y

hacia la memoria principal.

Las características deseables más

importantes de un sistema operativo son:

Permitir la concurrencia de

procesos, traslapándose en el tiempo de

entrada/salida (E/S) con el de cálculo y

ocupando la memoria con varios programas.

Posibilitar la ejecución de cualquier proceso en

el momento que se solicite siempre y cuando

haya suficientes recursos libres para él.

Ser eficiente en cuanto a reducir: el tiempo

medio que ocupa cada trabajo, el tiempo que no

se usa el CPU, el tiempo de respuesta en

sistemas multiacceso y el plazo entre dos

asignaciones de CPU a un mismo programa.

Ser eficiente en cuanto a aumentar la utilizaciónde recursos en general, tales comomemoria, procesadores, dispositivos deE/S, discos magnéticos, datos, etc.

Ser fiable, es decir, un sistema operativo no debetener errores y debe prever todas las posiblessituaciones.

Ser de tamaño pequeño.

Posibilitar y facilitar en lo posible el «diálogo»entre computadora y usuario de la misma.

Permitir compartir entre varios usuarios losrecursos de hardware con que cuenta unacomputadora.

Permitir a los usuarios compartir datos entre

ellos, en caso necesario.

Facilitar la E/S de los diferentes dispositivos

conectados a una computadora.

Las funciones más importantes que debe

cumplir un sistema operativo son las

siguientes:

Aceptar los trabajos y conservarlos hasta su

finalización.

Detectar errores y actuar de modo apropiado en

caso de que se produzcan.

Controlar las operaciones de E/S.

Controlar las interrupciones.

Planificar la ejecución de tareas.

Entregar recursos a las tareas.

Retirar recursos de las tareas.

Proteger la memoria contra el acceso indebido

de los programas.

Soportar el mutiacceso.

Proporcionar al usuario un sencillo manejo de

todo el sistema.

Aprovechar los tiempos muertos del procesador.

Compartir los recursos de la máquina entre varios

procesos al mismo tiempo.

Administrar eficientemente el sistema de

cómputo como un todo armónico.

Permitir que los diferentes usuarios se

comuniquen entre sí, así como protegerlos unos

de otros.

Permitir a los usuarios almacenar información

durante plazos medianos o largos.

Dar a los usuarios la facilidad de utilizar de

manera sencilla todos los recursos, facilidades y

lenguajes de que dispone la computadora.

Administrar y organizar los recursos de que

dispone una computadora para la mejor

utilización de la misma, en beneficio del mayor

número posible de usuarios.

Controlar el acceso a los recursos de un sistema

de computadora.

Debido a la evolución de los sistemas

operativos fue necesario realizar una

clasificación; considerando las diferencias

existentes entre sus componentes los

podemos clasificar en:

Sistemas operativos por lotes

Sistemas operativos multiprogramación

Sistemas operativos multiusuario

Sistemas operativos de tiempo compartido

Sistemas operativos de tiempo real

Los sistemas operativos por lotes requieren

que la información esté reunida en bloques o

«lotes» (el programa, los datos y las

instrucciones).

Los trabajos son procesados en el orden de

admisión, según el modelo de «primero en

llegar, primero en ser atendido».

En estos sistemas la memoria se divide en

dos zonas: una es ocupada por el sistema

operativo, y la otra se usa para cargar

programas transitorios para su ejecución.

Cuando termina la ejecución de un programa

se carga un nuevo programa en la misma

zona de memoria.

Los sistemas de multiprogramación son

capaces de soportar dos o más procesos

concurrentes múltiples, permiten que

residan al mismo tiempo en la memoria

primaria las instrucciones y los datos

procedentes de dos o más procesos.

Estos sistemas implican la operación de

multiproceso, para el manejo de la

información.

Se caracterizan principalmente por un gran

número de programas activos

simultáneamente 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.

Los sistemas operativos multiusuario

permiten acceder simultáneamente a un

sistema de computadoras a través de dos o

más terminales.

Este tipo de sistema operativo es

fundamental en el manejo de redes de

computadoras actualmente.

Los sistemas operativos de tiempo

compartido tratan de proporcionar un

reparto equitativo de los recursos comunes

para dar la impresión a los usuarios de que

poseen una computadora independiente.

En estos sistemas el administrador de

memoria proporciona aislamiento y

protección 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 asignación a los dispositivos de

forma que se preserve la integridad del

sistema y se proporcione servicio a todos los

usuarios.

El administrador de archivos proporciona

protección y control en el acceso de la

información, dada la posibilidad de

concurrencia y conflictos al tratar de

acceder a los archivos.

Estos sistemas tienen como objetivo

proporcionar tiempos más rápidos de

respuesta, procesar la información sin

tiempos muertos.

En estos sistemas el administrador de

memoria es relativamente menos solicitado

debido a que muchos procesos residen

permanentemente en la memoria.

El administrador de archivos se encuentra

normalmente en grandes sistemas de tiempo

real y su objetivo principal es manejar la

velocidad de acceso, más que la utilización

eficaz del almacenamiento secundario.