Está en la página 1de 46

INSTITUTO POLITÉCNICO NACIONAL

ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ELÉCTRICA


CAMPUS CULHUACAN
CARRERA
INGENIERÍA EN COMPUTACIÓN

MATERIA
SISTEMAS OPERATIVOS

TEMA
III. CAP. 4: ADMINISTRACIÓN DEL PROCESADOR
SINOPSIS

GRUPO: XXXX PROF. JUAN MANUEL HERNÁNDEZ ESPINOSA FECHA: XX/XX/XXXX


ACADÉMIA DE COMPUTACIÓN
CONTENIDO TEMÁTICO
I. Introducción
II. Justificación
III. Objetivo
IV. Introducción a los procesos
V. Despacho de procesos
VI.Concurrencia
VII.Conclusiones
VIII.Glosario
IX.Bibliografía
Introducción
Los SO multiprogramados, desde los SO
monousuario (para microcomputadoras) hasta
los sistemas multiusuario (para
supercomputadoras) se construyen entorno al
concepto de proceso (programa en ejecución).
El diseño de un SO debe reflejar ciertos
requisitos generales referente a los procesos:
• El SO debe intercalar la ejecución de
múltiples procesos, para maximizar la
utilización de los procesadores en un
tiempo de respuesta razonable.
• El SO debe asignar recursos a los procesos
conforme a políticas determinadas,
evitando los interbloqueos.
• Un SO debe dar soporte a la comunicación
entre procesos y la creación de procesos.
Justificación
Es importante conocer la forma en que
el o los procesadores atienden a los
trabajos de los usuarios en forma justa
y eficiente.
Objetivo
El alumno describirá las actividades y
funciones que realiza un procesador en un
sistema de cómputo.
Aplicará las diferentes técnicas de asignación
del procesador, así como herramientas
gráficas para describir actividades
concurrentes.
Programa
• Para un sistema operativo, un programa o
trabajo es una unidad de trabajo que ha
sido presentado por el usuario.
• Un programa es una unidad inactiva, como
un archivo almacenado en un disco.
• Un programa no es un proceso.
Proceso
• Un proceso es una entidad activa que
requiere un conjunto de recursos (H/S),
incluyendo un procesador y registros
especiales para efectuar su función.
• Un proceso, también denominado tarea,
es un programa en ejecución.
• Un hilo es una porción de un proceso que
puede ejecutarse de manera
independiente.
Al administrador del procesador es
responsable de la asignación del
procesador(es) para ejecutar varios trabajos o
programas, esto se conoce como
multiprogramación. Donde la CPU se conmuta
entre varios procesos.
Planificador de Trabajos vs Planificador de
Procesos.
El administrador del procesador es una
composición de dos administradores:
• Uno a cargo de la planificación de trabajos
(programas), y
• Otro a cargo de la planificación de
procesos (tareas)
Jerarquía de Administradores.
Primero el planificador de alto nivel o
planificador de trabajos. Se encarga de
seleccionar los trabajos de una cola de ellos
desde la entrada y colocarlos en la cola de
procesos, sea por lotes o en forma interactiva,
dependiendo de sus atributos
Con el objetivo de asignar los recursos del
sistema de la manera más completa.
Jerarquía de Administradores.
Segundo, el planificador de procesos o
planificador de bajo nivel, decide cuales
trabajos obtienen la CPU, cuándo y durante
qué tiempo son procesados. Determina de
que cola (listos) tomará el trabajo, cuándo
interrumpir el procesamiento y cuándo ha
terminado un proceso.
Estado del trabajo (programa) y del
proceso.
Un trabajo puede estar en uno de
los siguientes estados:
• Iniciado: trabajo aceptado por el
sistema
• LISTO: verifica espacio de
memoria y disponibilidad de
dispositivo(s) solicitado(s)
• EJECUCIÓN (proceso)
• ESPERA (bloqueado): hasta que se asigne
un recurso específico o haya terminado
una operación de E/S.
• Terminado: trabajo completado,
finalizando su ejecución.
Bloques de Control de Proceso
Cada proceso en el sistema está representado
por una estructura de datos llamada bloque
de control de proceso (PCB), que incluye:
• Identificación del proceso
• Situación del proceso
• Estado del proceso
• Contabilidad
Bloques de Control de Proceso y Colas
(PBC)
Un bloque de control de proceso de
un trabajo se crea cuando el
planificador de trabajos acepta el
trabajo y se actualiza a medida que
los trabajos avanzan desde el inicio
hasta el final de su ejecución.
Las colas usan bloques de control de
proceso para seguir la pista de trabajos,
se vinculan para formar colas como se
muestra a continuación.
Los bloque de control de proceso administran las colas de Retenidos, Listos, en Funcionamiento, Espera y Terminados
Políticas de Planificación de Procesos
Para planificar los procesos el SO debe
conocer que:
1) Hay un número finito de recursos (como
unidades de disco, impresoras y unidades
de cinta)
2) Algunos recursos, una vez asignados, no
pueden compartirse con otro trabajo (por
ejemplo, impresoras);
3) Algunos recursos requieren la intervención
del operador; es decir, no es posible
reasignarlos automáticamente de un trabajo a
otro (como las unidades de disco).
Criterios para la Planificación de Procesos
• Maximizar el resultado
• Minimizar el tiempo de respuesta
• Minimizar el tiempo de retorno
• Minimizar el tiempo de espera
• Maximizar la eficiencia de la CPU
• Asegurar la equidad para todos los trabajos
Para lograr un equilibrio en la asignación
de recursos el planificador de procesos usa
un mecanismo de sincronización e
interrumpe de manera periódica los
procesos en ejecución cuando ha expirado
una rebanada de tiempo predeterminada.
Y reinicia los estados de cada trabajo,
desde listo hasta terminado.
Una solicitud de E/S se denomina espera
natural que permite la conmutación de la CPU
a otro trabajo.
La asignación de CPU de un trabajo a otro se
llama planificación expropiativa es usada en
tiempo compartido.
Cuando no se puede conmutar la CPU
de un trabajo (excepto por una espera
natural o por terminado) a otro se llama
planificación no expropiativa.
Algoritmos de Planificación de Procesos
Al inicio de los planificadores se usaban
algoritmos no expropiativos, por lotes. En la
actualidad se usan algoritmos expropiativos
para la planificación de procesos. Aquí se
presentan tres de cada uno.
• Primero en llegar, primero en servirse
(FCFS). Considera su tiempo de llegada, usa
una cola FIFO. Para procesamiento por
lotes.
• Siguiente trabajo más corto primero (SJN),
trabaja con base a ciclos de reloj de CPU.
Es óptimo si todos los trabajos están
disponibles al mismo tiempo.
• Planificación de Prioridad, trabaja por
prioridades (requerimientos de memoria,
número y tipo de periféricos, tiempo total de
CPU y cantidad de tiempo de permanencia en
el sistema) o hasta completar un ciclo de CPU
o una espera natural. En igualdad de
prioridades funciona como FCFS.
• Tiempo más corto restante (SRT), otorga
preferencia a trabajos más cortos, es
expropiativo con cambio de contexto
(toda la información para su
procesamiento).
• Round Robin, expropiativo, para para
sistemas interactivos, opera por rebanadas
de tiempo (cuanto de tiempo), utilizando
una cola FCFS. Si el ciclo de CPU es más
corto que el cuanto de tiempo ocurre una
de dos acciones:
1) Si es el último ciclo de CPU
del trabajo y el trabajo ha
terminado, se liberan todos
los recursos asignados por
terminación.
2) Si el ciclo de CPU ha sido
interrumpido por una solicitud de
E/S, la información del trabajo se
guarda en su bloque de control de
proceso (PCB), y se vincula al final
de la cola de E/S idónea.
• Control de Colas Multinivel, no constituye
un algoritmo, ya que utiliza varios de los
esquemas ya mencionados anteriormente,
es expropiativo y presenta cuatro
esquemas para el movimiento entre las
colas:
1. Sin movimiento entre colas, atiende
primero a las colas con prioridad alta (usa
FCFS).
2. Movimiento entre colas, ajustando las
prioridades asignadas a cada trabajo, para
mantener la equidad.
3. Cuanto de tiempo variable por cola,
aumenta los cuantos de tiempo para colas
más bajas de prioridad
4. Envejecimiento, da tratamiento especial a
los trabajos que han estado durante largo
tiempo, para asegurar su procesamiento y su
completa ejecución.
Comentarios sobre Interrupciones
Hay:
• Interrupciones de página para acomodar
solicitudes de trabajo ( de software)
• Interrupción cuando termina el cuanto de
tiempo y el procesador se libera del trabajo
en ejecución y se asigna a otro (de software)
Comentarios sobre Interrupciones
Hay:
• Interrupciones provocadas por eventos
externos al proceso (de hardware).
Hay:
• Interrupciones internas o interrupciones
síncronas ( de software).
• Interrupciones ilegales de trabajo (excepción
al procesador), por ejemplo división por cero.
Todas controladas por el administrador de
interrupciones.
Conclusión
El administrador del procesador debe
distribuir el tiempo de CPU entre todos los
usuarios del sistema de acuerdo a políticas de
planificación de trabajos y planificación de
procesos, considerando las interrupciones de
hardware y software, así como las de
excepción.
Tabla de comparación de los algoritmos de planificación analizados
Glosario.
Cuanto de tiempo: periodo asignado a un
proceso para la ejecución antes de ser
expropiado
Interrupción: Señal del hardware o software
que suspende la ejecución de un programa.
Bibliografía
Flynn, Ida M., McHoes, Ann M. Sistemas
Operativos. International Thomson Editores,
Tercera Edición, España 2003.
Tanembaun, Andrew S. Sistemas Operativos:
Diseño e implementación. Prentice Hall
Hispanoamérica, México, 1998.
https://es.slideshare.net/cortesalvarez/interr
upciones-sistemas-operativos

También podría gustarte