Capitulo 4 grupo 4

19

Transcript of Capitulo 4 grupo 4

Page 1: Capitulo 4 grupo 4
Page 2: Capitulo 4 grupo 4

Con los sistemas

antiguos solo un

programa tenia el

control absoluto del

sistema y el acceso a

los recursos.

PROCESOS

Permiten cargar varios

programas en la memoria Y

ejecutarlos de manera

concurrente

Con lo

sistemas

de hoy en

día

Esto requirió de un control

mas firme y una mayor división

de los diferentes programas.

Por esta necesidad se introdujo

el concepto de procesos

Un proceso es la unidad de

trabajo en un sistema

moderno en tiempo

compartido.

El cual es un

programa en

ejecución

Page 3: Capitulo 4 grupo 4

PROCESOS

Aunque la ocupación

principal del sistema

operativo es la

ejecución de los

programas de usuario

También se necesita

encargarse de varias

tareas del sistema que

es preferible dejar fuera

del kernel mismo

El SO consiste en una

colección de procesos

Procesos del

sistema operativo

ejecutando

código del

sistema

Procesos de

usuario

ejecutando

códigos de

usuario

En gran

medida los

procesos

pueden

ejecutarse de

manera

concurrente,

multiplexando

el o los

procesadores

Page 4: Capitulo 4 grupo 4

El Proceso

El cual es

conocido

como la

sección de

texto

Por lo general

un proceso

incluye la pila

del proceso y

una sección de

datos

También incluye

la actividad,

representada por

el valor del

contador del

programa y el

contenido de los

registros del

proceso

Un proceso es

mas que el

código del

programa

Un programa en si

no se considera

un proceso por lo

que es una

entidad pasiva y

un proceso lo

considera a una

entidad activa

Page 5: Capitulo 4 grupo 4

Estado del proceso

En espera:

esperando

que ocurra

algún evento

El proceso: a

terminado

su ejecución

Listo : esta en

espera de ser

asignado a un

procesador

Cuando se

ejecuta un

proceso este

cambia de

estado y se la

define por la

actividad actual

del proceso

Nuevo: el

proceso se

esta

creando

Ejecución:

esta

ejecutando

instrucciones

i

Page 6: Capitulo 4 grupo 4

Bloque de control de proceso PCB

APUNTADO

R

ESTADO

DEL

PROCESO

NUMERO DE PROCESO

CONTADOR DE

PROGRAMA

REGISTROS

LIMITES DE LA MEMORIA

LISTA DE ARCHIVOS

ABIERTOS .

.

.

Cada proceso se

representa en el

sistema operativo

mediante un PCB.

El cual contiene

diversas piezas

Puede ser nuevo ,

listo, ejecución,

espera y detenido

Indica la dirección

de la siguiente

intruccion a

ejecutar

Varían en numero y

tipos , como

acumuladores ,

registros de índice,

apuntadores de pila

y registro de

propósito general

Page 7: Capitulo 4 grupo 4

Bloque de control de proceso PCB

Información de planificación de la

CPU: este incluye la prioridad del

proceso , apuntadores a colas de

planificación y cualquier otro

parámetro de planificación

Información de administración de

memoria: puede incluir datos

referentes al valor de los

registros base y limite, las tablas

de paginas, o las tablas de

segmento, dependiendo de

esquema de memoria del sistema

Información contable incluye la

cantidad de tiempo de CPU y el

tiempo real usado

Información de

estado de E/S: este

incluye la lista de

dispositivos de E/S

asignados al proceso

El PCB SIRVE

COMO UN

DEPOSITO DE

INFORMACIO

N QUE PUEDE

VARIAR DE

UN PROCESO

A OTRO

Page 8: Capitulo 4 grupo 4

Este implica que un proceso sigue un solo hilo.

Los sistemas modernos ha extendido el concepto

de proceso para permitir que este tenga varios hilos

de ejecución. de esta forma permite que el proceso

realice mas de una tarea a la vez

HILOS

El objetivo del tiempo compartido es conmutar la

CPU entre procesos de manera tan frecuente que

los usuarios puedan interactuar con cada programa

mientras esta en ejecución.

Planificación de procesos

Colas de trabajo:

En esta están todos

los procesos en el

sistema.

Los procesos que

residen en la memoria

principal listos y en

espera de ejecutarse

se mantiene en una

listas denomina la cola

de procesos listos. Esta

cola se almacena por

lo general como una

lista enlazada.

La lista de procesos

que están esperando

por un dispositivo de

E/S particular se

conoce como cola del

dispositivo

Colas de

planificación

Page 9: Capitulo 4 grupo 4

Planificadores

Para fines de

planificación, el

sistema operativo

debe seleccionar

en alguna forma

los procesos de

estas colas . Esta

selección la realiza

el planificador

apropiado

Planificador de largo

plazo, o planificador

de trabajos,

selecciona procesos

de la reserva y la

carga en memoria

para su ejecución

Planificador de

corto plazo, o

planificador de la

CPU, selecciona de

entre los procesos

que están listos para

la ejecución, y asigna

la CPU a uno de

ellos

Page 10: Capitulo 4 grupo 4

Cuando ocurre una comunicación de contexto, el

kernel guarda el contexto del proceso anterior en su

PCB y carga el del nuevo proceso programado para la

ejecución.

Conmutación en contexto

Page 11: Capitulo 4 grupo 4

Operaciones sobre procesos

Los procesos en el sistema se pueden

ejecutar de manera concurrente y

deben ser creados y eliminados de

manera dinámica. Por esto el sistema

operativo debe proporcionar un

mecanismo de creación y terminación

de procesos

Page 12: Capitulo 4 grupo 4

Creación de procesos

Un proceso puede

crear otros proceso

donde el proceso

creador se lo

denomina padre y a

los creados hijos y a

la vez los hijos pueden

crear otros procesos

creando un árbol

Por lo general los procesos necesitan de ciertos

recursos como tiempo de la CPU, memoria,

archivos y dispositivos de entrada y salida para

realizar su tarea

Page 13: Capitulo 4 grupo 4

Terminación de procesos

Un proceso concluye

cuando termina de

ejecutar su

declaración final y

pide al so que borre

usando la llamada exit.

En ese punto el

proceso regresa

datos(salida) a su

proceso padre( vía la

llamada wait). Cuando

ocurre esto todos los

procesos son

devueltos al SO.

Un padre puede terminar la

ejecución de un proceso hijo por

varias razones como:

El hijo excedió en el uso de

alguno de los recursos que tiene

asignados.

Ya no se requiere la tareas

asignada al hijo.

El padre esta saliendo, y el sistema

no permite que un hijo continúe

si su padre termina

Page 14: Capitulo 4 grupo 4

Procesos cooperativos

Los procesos concurrentes

que se ejecutan en el SO

pueden ser procesos

independientes o pueden

ser procesos cooperativos

independientes:

Son los que no pueden ser

afectados por otros

procesos que se están

ejecutando en el sistema

Cooperativos:

Son los que son afectados

por otros procesos ya que

comparten datos entre

otros procesos Razones para la cooperación de

procesos

Compartir

información

Aceleración de

cálculos Modularidad Conveniencia

Page 15: Capitulo 4 grupo 4

Comunicación entre procesos

El esquema requiere que estos

procesos mantengan una

reserva común de buffer y el

programador de la aplicación

escrita de manera explicita el

código para la implementación

del buffer

Métodos para implementar

lógicamente un enlace y las

operaciones send=recive

• Comunicación directa o

indirecta.

• Comunicación simétrica o

asimétrica

• Uso automático o explicito

de buffers.

• Envió por copia de

referencia.

• Mensajes de tamaño fijo o

variable

Page 16: Capitulo 4 grupo 4

Sistema de paso de mensajes

La función de un sistema de

mensajes es permitir que los

procesos se comuniquen sin

necesidad de recurrir a datos

compartidos

Hay dos tipos de

tamaño de mensaje

fijo y variable

Asignación de nombres

Comunicación directa:

Cada proceso que quiere

comunicarse debe nombrar

explícitamente al receptor o

al emisor de la comunicación

Comunicación indirecta:

Un buzón puede verse, de manera abstracta

como un objeto en donde los procesos

pueden colocar y remover mensajes . Cada

buzón tiene una identificación única. En este

esquema, un proceso se puede comunicar

con otro utilizando varios buzones

diferentes

Page 17: Capitulo 4 grupo 4

Sincronización

El paso de mensajes puede ser con

bloqueo o sin bloqueo- también

conocido como síncrono y asíncrono

Envió sin bloqueo

Envió con bloqueo

Recepción sin bloqueo

Recepción con bloqueo

Cuando ambos son con bloqueo tenemos una

cita(redezvous )entre emisor y receptor.

Page 18: Capitulo 4 grupo 4

Uso de buffers

Los mensajes intercambiados

por los procesos comunicados

residen en una cola temporal.

básicamente existen tres

formas

Capacidad cero

Capacidad limitada

Capacidad ilimitada

La capacidad cero se la

denomina sistema sin buffers

los otro casos son con

buffers automático

Page 19: Capitulo 4 grupo 4