Funciones y Características de un Sistema Operativo

Funciones

Se tendrá como punto de partida la máquina tal cual, es decir, el hardware básico del computador, con una CPU, memoria central y periféricos. Sin ayuda del software las operaciones de cargar y ejecutar un programa se debe realizar de forma manual, es decir totalmente bajo control humano. El operador debe llevar a cabo una secuencia de tareas:

  • Colocar el programa fuente almacenado en el dispositivo de entrada adecuado (cintas, tarjetas, discos...).

  • Desencadenar la ejecución de un programa de lectura para el dispositivo elegido.

  • Desencadenar la ejecución de un compilador que traduzca el programa fuente.

  • Colocar los datos de entrada en el dispositivo adecuado.

  • Ejecutar el programa objeto.

  • Sacar los resultados por impresora.

Tipos de Servicios

Un sistema operativo crea un entorno para la ejecución de programas. Ofrece ciertos servicios a los programas y a los usuarios de estos programas. Dependen del tipo de Sistema Operativo, pero las funciones básicas son:

 

De cara al usuario:

  • Ejecución de programas. El sistema debe ser capaz de cargar un programa en memoria y ejecutarlo.

  • Operación de I/O. Un programa de usuario no puede ejecutar directamente operaciones de I/O. El sistema operativo debe facilitar medios para realizarla.

  • Manipulación de ficheros: Lectura, escritura y borrado a partir del identificador de los mismos.

  • Detección de errores: Para cada tipo de error el sistema operativo debe adoptar la iniciativa apropiada que garantice una computación correcta y consistente. No confundir esta detección de errores con la producida durante la compilación de un programa. Esta detección se hace de cara a un funcionamiento eficiente.

 

De funcionamiento eficiente:

  • Asignación de recursos.

  • Contabilidad: control del uso del ordenador por cada usuario.

  • Protección: de datos, recursos, programación, etc.

Características de un Sistema Operativo

1.

Concurrencia.

Consiste en la existencia de varias actividades simultáneas o paralelas. Ejemplo de ello lo son la superposición de las operaciones de I/O con el proceso de computación, así como la coexistencia en memoria de varios programas. La concurrencia lleva asociado el problema de conmutar de una tarea a otra, así como proteger una determinada actividad de los efectos de las otras, así como la sincronización de tareas que sean mutuamente dependientes.

2.

Utilización conjunta de recursos. Compartición.

Las razones para la compartición son las siguientes:

a)
El coste: es absurdo disponer de suficientes recursos para cada usuario por separado.
b)
Aprovechamiento de los trabajos de otros. La utilidad es poder utilizar rutinas y programas desarrollados por otras personas.
c)
Posibilidad de compartir datos: Utilización de una misma base de datos para varios programas distintos, asociados posiblemente a distintos usuarios.
d)
Eliminación de redundancias: poder disponer de una sola copia de un programa (por ejemplo un compilador) y compartirlo con otros.

3.

Permite que el usuario guarde sus datos o programas en el propio ordenador, y no tener que usar medios externos (portables). Los problemas que se plantean son de protección de la información frente a terceros y protegerlos frente a fallos del sistema.

4.

Un Sistema Operativo debe ser determinista en el sentido de que el mismo programa ejecutado con los mismos datos, en momentos diferentes, debe producir los mismos resultados. En cambio será indeterminista porque en caso de variabilidad de las situaciones puede responder de un modo impredecible. Deben tomarse las medidas oportunas. Estas situaciones pueden ser debidas a petición de recursos, errores de ejecución en programas o bien interrupción de periféricos.

Características Deseables en un Sistema Operativo

Eficiencia

Se juzgará la eficiencia de un Sistema Operativo mediante los siguientes criterios:

a)

Tiempo transcurrido entre tareas.

b)

Tiempo no empleado del procesador central.

c)

Tiempo de ejecución empleado en las tareas batch.

d)

Tiempo de respuesta (en los sistemas de acceso múltiple).

e)

Utilización de recursos.

f)

Rendimiento (tareas ejecutadas por hora).

 

Fiabilidad

Estar libre de errores y ser capaz de resolver satisfactoriamente todas las contingencias que se pudieran presentar.

 

Mantenibilidad

Ser posible corregir un Sistema Operativo (mejorándolo, o bien subsanando errores) sin tener graves problemas. Estar bien documentado.

 

Tamaño reducido

El espacio ocupado por el Sistema Operativo no está disponible para su utilización productiva, por lo que debe ocupar lo menos posible. Para ello es preciso que el sistema operativo sea modular en su construcción. Disponer de interfaces claramente definidas en módulos y estar bien documentado.

Prestación de Servicios

Llamada al sistema:
Los servicios de más bajo nivel se obtiene mediante el uso de llamadas al sistema, Constituyen un interfaz entre el programa que se está ejecutando y el sistema operativo. Estas llamadas están implementadas generalmente por instrucciones en lenguaje ensamblador. Se dividen en cuatro clases:

  • Control de procesos: Sirven para poder detener un programa normal o anormalmente. También se utilizan para cargar y ejecutar otros procesos. Un ejemplo son los J.C.L..

  • Manipulación de ficheros: Crean, abren, borran, cierran, leen, escriben y reposicionan ficheros. Obtienen y establecen atributos de ficheros.

  • Manipulación de dispositivos: Solicitud y liberación de dispositivos. Leen, escriben y reposicionan ficheros. Obtienen y establecen atributos de dispositivos.

  • Mantenimiento de la información: Obtener y establecer hora y fecha. Obtener y modificar datos del sistema. Obtener y establecer atributos de proceso, fichero o dispositivo.

Retroceder Indice Avanzar