Nivel ejecutivo de un sistema operativo


OBJETIVO: cuánto tiempo de ejecución se le asigna a cada proceso del sistema y en qué momento

1.Si el sistema es monousuario y monotarea no habrá que decidir

2.En sistemas multitarea, es fundamental

TABLA DE CONTROL DE PROCESOS

Es una tabla con la información relativa a cada proceso que se está ejecutando en el procesador)


1.Identificación del proceso


2.Identificación del proceso padre


3.Información sobre el usuario y grupo que lo han lanzado


4.

Estado del procesador

El contenido de los registros internos, contador de programa, etc. -> el entorno volátil (=temporal) del proceso.

5.Información de control de proceso

6.Segmentos de memoria y recursos asignados


Planificación DEL PROCESADOR


ESTRATEGIA:  buscar que los procesos obtengan sus turnos de ejecución de forma apropiada a la vez que un buen rendimiento y minimización de la sobrecarga. Para ello:
1.Todos los procesos en algún momento obtienen su turno de ejecución o intervalos de tiempo de ejecución hasta su terminación con éxito. 

2.El sistema debe finalizar el mayor número de procesos por unidad tiempo


3.El usuario no percibirá tiempos de espera demasiado largos


4.Evitar el aplazamiento indefinido, los procesos deben terminar en un plazo finito de tiempo. Esto es, el usuario no debe percibir que su programa se ha parado o “colgado”. 

CARGA DE TRABAJO


Depende de las carácterísticas de los procesos:

1.Procesos que hacen un uso intensivo de la CPU


2.Procesos que realizan una gran cantidad de operaciones de Entrada/Salida


3.Procesos por lotes, procesos interactivos, procesos en tiempo real


4.Procesos de menor o mayor duración

NON PREEMTIVE:


sin derecho preferente, sin expropiar uso por parte del S.O.

1.¿Qué significa?
Cuando a un proceso le toca su turno de ejecución, ya no puede ser suspendido;

2.

Consecuencia


         a. Si el proceso contiene ciclos infinitos, el resto de los procesos pueden quedar aplazados indefinidamente

B. Procesos largos que penalizarían a los cortos si entran en primer lugar

PREEMTIVE


Con derecho preferente, con expropiación de uso por parte del S.O.

1.El sistema operativo puede arrebatar el uso de la CPU a un proceso que esté ejecutándose


2.Hay un reloj

3.Interrupciones con toma de control


Planificación DE MEMORIA


GESTOR DE MEMORIA: Ningún proceso se puede activar antes de que se le asigne el espacio de memoria que requiere

1.Controlar las zonas de memoria que están asignadas y cuáles no -> mapa


2.
Asignar memoria a los procesos cuando la necesiten y retirársela cuando terminen. 

3.
Evitar que un proceso acceda a la zona de memoria asignada a otro proceso. 

4.Gestionar el intercambio entre memoria principal y memoria secundaria en los casos en que la memoria principal está completamente ocupada, etc. 

REQUISITOS:


1.

Reubicación

En un sistema multitarea la memoria va a estar compartida entre varios procesos, el gestor de memoria debe decidir qué zonas de memoria asigna a cada proceso y que zonas descarga.
2.

Protección

El gestor de memoria debe evitar que los procesos cargados en memoria interfieran unos con otros accediendo a zonas de memoria que no les corresponden. 
3.

Control de memoria

El sistema operativo, a través del gestor de memoria, tiene que controlar las zonas de memoria libres y las asignadas, además de saber las zonas de memoria que corresponden a cada proceso. 

4.Controlar fragmentación de la memoria:


a)fragmentación interna.
La fragmentación interna sucede al malgastarse el espacio interno de una partición cuando el proceso o bloque de datos cargado es más pequeño que la partición.
b)fragmentación externa:
Sucede cuando la memoria externa a todas las particiones se divide cada vez más y van quedando huecos pequeños y dispersos en memoria difícilmente reutilizables. 
5.

Organización lógica y física

En ocasiones la memoria principal no es suficiente para proporcionar toda la memoria que necesita un proceso o para almacenar todos los procesos que se pueden ejecutar. Entonces los procesos pueden ser intercambiados a disco y más tarde, si es necesario, vueltos a cargar en memoria

S.O MULTITAREA


Actualmente la mayoría de los sistemas operativos son sistemas multitarea

Deberá haber mecanismos de gestión para distribuir la memoria principal entre todos estos procesos que quieren ejecutarse en un S.O. Multitarea

Intercambio o swapping (Archivo de paginación o Memoria Virtual)


1.Memoria principal: recurso limitado

2.Situación: haya más procesos esperando a ser cargados en memoria que zonas libres

3.Solución: se sacan algunos procesos de memoria principal y se llevan al HD -> OPERACIÓN DE SWAPPING


PARTICIONES FIJAS


Cuando existen varios procesos (multitarea) que requieren ser cargados en memoria el gestor de memoria tiene que organizar el espacio.

PARTICIONES FIJAS:


A. Predefinidas antes de que lleguen los procesos a la memoria

B. El número de particiones se mantiene fijo en el tiempo

C. El tamaño de cada una de las particiones se mantiene fijo

1.Asignación de procesos

  a. Una cola por partición: se coloca cada trabajo en la cola de la partición más pequeña en que quepa dicho trabajo, a fin de nodesperdiciar el espacio disponible. Desventaja: baja ocupación de particiones grandes.

B. Una única cola: El sistema operativo decidirá en que partición se ubica cada proceso


El gestor de memoria establecerá mecanismos para impedir que un proceso pueda acceder a una zona de memoria que está fuera de la memoria correspondiente a la partición en la que se encuentra. 

La fragmentación puede surgir -> área ocupada discontinua


PARTICIONES VARIABLES

1.Crear las particiones dinámicamente, conforme llegan los procesos y en función de los tamaños de estos


2.Se ajusta a la realidad de que el número y tamaño de los procesos varía dinámicamente


MEMORIA VIRTUAL


Permite dividir los procesos en varias partes y cargar sólo algunas de ellas en memoria. La memoria virtual se basa en el uso de las técnicas de paginación o segmentación.

Paginación:


1.La idea es la de dividir la memoria principal en un conjunto de particiones conocidas como “marcos de página” de igual tamaño. Cada proceso se divide a su vez en una serie de partes llamadas “páginas” del mismo tamaño que los marcos. El proceso se carga en memoria situando todas sus páginas en los marcos de página de la memoria, sin embargo, las páginas no tienen por qué estar contiguas en memoria. Como ventaja reduce la fragmentación externa de la memoria principal. Sin embargo, puede aparecer cierta fragmentación interna.
Permite dividir los procesos en varias partes y cargar sólo algunas de ellas en memoria. La memoria virtual se basa en el uso de las técnicas de paginación o segmentación.

SEGMENTACIÓN:


1.Cada proceso se divide en una serie de segmentos. La peculiaridad de estos segmentos es que su tamaño no tiene que ser el mismo y puede variar hasta un límite máximo. Un proceso se carga situando todos sus segmentos en particiones dinámicas que no tienen que estar contiguas en memoria. Este sistema reduce la fragmentación interna de la memoria principal.

Gestión E/S

El sistema operativo abstrae de la complejidad y peculiaridad hardware de cada periférico para que las aplicaciones de usuario puedan hacer uso de los periféricos de una manera estandarizada y más sencilla. 

El sistema operativo actúa pues como intermediario mediante los controladores de dispositivos, device drivers


SPOOLS:


1.Almacenan temporal en cola situada en dispositivo de almacenamiento masivo (spool)


2.Se evita que el programa quede retenido porque el periférico no esté disponible


3.El SO añade y elimina archivos del spool


4.Dispositivos sin intercalación (impresora)


BUFFERS:


1.Peticiones de distintos orígenes


2.Se pueden enviarse porciones que el buffer retiene de forma temporal


3.Se acoplan velocidades de distintos dispositivos (grabadora de DVD y el HD)


Gestión E/S:Técnicas


E/S PROGRAMADA:


1.CPU protagonista -> inicia y lleva a cabo la transferencia


2.La CPU debe dejar todo lo que está haciendo para ocuparse del proceso de E/S -> Impacto en el rendimientos


E/S POR INTERRUPCIONES:


1.El Periférico solicita -> Interrupción ofreciendo disponibilidad

2.CPU ejecuta la transferencia, no pregunta


ACCESO DIRECTO A MEMORIA (DMA):


1.La CPU inicia el proceso

2.Transferencia realizada por un controlador especializado


3.Acelera enormemente el proceso de la E/S y libera a la CPU


Gestión ARCHIVOS:OBJETIVOS

OPTIMIZAR EL RENDIMIENTO:

1.Acceso rápido para recuperar la información contenida en archivos

2.No se debe ralentizar el sistema


FÁCIL ACTUALIZACIÓN:


1.Cambios (añadir, borrar y modificar) no deben suponer una tarea complicada


ECONOMÍA DE ALMACENAMIENTO:


1.Desperdiciar la menor cantidad de espacio en disco posible


2.Evitar la fragmentación de los discos


MANTENIMIENTO SENCILLO:


1.Evitar operaciones complicadas a usuarios y programas -> KISS


¿QUÉ ES UNA LICENCIA de SOFTWARE?:


Es un contrato entre el CREADOR y el USUARIO

En una licencia se definen

1.DERECHOS del autor y del usuario

2.DEBERES del autor y del usuarios

DERECHOS del autor –COPYRIGHT. Está recogido en la legislación de cada país. Aplica a:


1.Obras literarias

2.Música

3.Artes gráficas

4.Patentes …


Software propietario


Software libre (FSF)


1.Utilizar el programa, para cualquier propósito


2.Estudiar cómo funciona el programa y adaptarlo a necesidades

3.Distribuir copias


4.Mejorar el programa y hacer públicas las mejoras a los demás

Software semilibre


Software de dominio público


1.Donado

2.Pasados 70 años desde la muerte del autor

Software con copyleft: Es el software libre cuyos términos de distribución no permiten a los redistribuidores agregar ninguna restricción adicional 

Software freeware, Demo, Limitado en el tiempo


Dejar un Comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *