PDF de programación - Sistemas operativos - Procesos

Imágen de pdf Sistemas operativos - Procesos

Sistemas operativos - Procesosgráfica de visualizaciones

Publicado el 14 de Agosto del 2019
522 visualizaciones desde el 14 de Agosto del 2019
5,9 MB
61 paginas
Creado hace 8a (03/03/2016)
SISTEMAS OPERATIVOS

PROCESOS

Pedro de Miguel Anasagast

ÍNDICE

© UPM 2014

● Conceptos generales de procesos
● Multitarea
● Servidores y demonios
● Servicios UNIX de gestión de procesos
● Señales y temporizadores
● Servicios UNIX de señales y temporizadores
● Procesos ligeros
● Servicios UNIX de procesos ligeros

2

PROCESOS

CONCEPTOS GENERALES

JERARQUÍA DE PROCESOS

Familia de procesos

● Proceso hijo.
● Proceso padre.
● (Proceso hermano).
● (Proceso abuelo).

Vida de un proceso

● Crea.
● Ejecuta.
● Muere o termina.

Ejecución del proceso

© UPM 2014

Proc. INIT

Inicio
Shell

Editor

Inicio

Inicio
Shell

Proceso A

Inicio

Dem. Impr.

Dem. Com.

Proceso B

Proceso D

Proceso C

Proceso E Proceso F

● No interactivo (Batch y segundo plano)
● Interactivo o primer plano.

Grupo de procesos

● Grupos de procesos dependientes de cada inicio.

4

INFORMACIÓN DEL PROCESO

© UPM 2014

Proceso:

Programa en ejecución
Unidad de procesamiento gestionada por el SO

La información se organiza en tres grupos:

● Estado del procesador
● Imagen (mapa) de memoria
● Tablas del SO

Registros
especiales

Registros
generales

o
d
a
t
s
E

PC
SP

Reg. Estado

Imagen de memoria

del Proceso A

Imagen de memoria

del Proceso B

Imagen de memoria

del Proceso N

Tablas SO

Mapa de
memoria

Tablas del sistema operativo

BCP Proceso A
- Estado
(registros)
- Identificación
- Control

BCP Proceso N
- Estado
(registros)
- Identificación
- Control

Tabla de procesos
BCP Proceso B
- Estado
(registros)
- Identificación
- Control
- Tabla de memoria
- Tabla de E/S
- Tabla de ficheros

5

ESTADO DEL PROCESADOR

© UPM 2014

● Está formado por el contenido de todos los registros del procesador
● Puede residir en:

• Registros del procesador, cuando el proceso está en ejecución
• En el BCP, cuando el proceso no está en ejecución

● Al detener la ejecución de un proceso (por una interrupción), se debe

copiar el estado del procesador en su BCP correspondiente. Realizado por
la rutina de tratamiento de interrupciones

6

INFORMACIÓN DEL BCP I

© UPM 2014

Información de identificación (identifica al usuario y al proceso)

● pid del proceso.
● pid del padre.
● Identificador de usuario real: uid real.
● Identificador de grupo real: gid real.
● Identificador de usuario efectivo: uid efectivo.
● Identificador de grupo efectivo: gid efectivo.
● Identificadores de grupos de procesos (el proceso pertenece a uno o más

grupos de procesos).

Estado del Procesador

● Contiene los valores iniciales del estado del procesador o su valor en el

instante en que fue interrumpido el proceso.

7

INFORMACIÓN DEL BCP II

© UPM 2014

Información de control del proceso I
En esta sección se incluye diversa información que permite gestionar al
proceso. Se destacan los siguientes datos:

● Información de planificación y estado.

• Estado del proceso (bloqueado, listo o en ejecución).
• Evento por el que espera el proceso cuando está bloqueado.
• Información de planificación: prioridad y tiempo en espera.
● Descripción de las regiones de memoria asignadas al proceso.
● Recursos asignados, tales como:

• Ficheros abiertos (tabla de descriptores).
• Puertos asignados.

● Comunicación entre procesos. Espacio para almacenar señales y algún

mensaje enviado al proceso.

8

© UPM 2014

INFORMACIÓN DEL BCP III

Información de control del proceso II

● Señales.

• Señales armadas.
• Máscara de señales.

● Temporizador.
● Información de contabilidad (uso de recursos).

• Tiempo de procesador consumido.
• Operaciones de E/S realizadas.

9

INFORMACIÓN FUERA DEL BCP

© UPM 2014

Justificación de información fuera del BCP.

● Por razones de implementación (eficiencia).
● Para compartirla con otros procesos.

Tabla de páginas: Se pone fuera.

● Describe la imagen de memoria del proceso.
● Tamaño muy variable.
● El BCP contiene el puntero a la tabla de páginas.
● Para compartir memoria se requiere que la tabla sea externa al BCP.

Punteros de posición de los ficheros.

● Si se añaden a la tabla de descriptores (en el BCP) no se pueden

compartir.

● Si se asocian al nodo-i se comparte siempre.
● Se ponen en una estructura común a los procesos (tabla intermedia) y se

asigna un nuevo puntero en cada servicio OPEN.

10

MULTITAREA

CONCEPTO DE MULTITAREA I

Proceso A

Proceso B

Proceso C

Proceso D

SO

Proceso Nulo

Proceso nulo

© UPM 2014

Ejecución
Listo
Bloqueado

Tiempo

12

CONCEPTO DE MULTITAREA II

© UPM 2014

Ventajas de la multiprogramación

● Facilita la programación, dividiendo los programas en

procesos(modularidad).

● Permite el servicio interactivo simultáneo de varios usuarios deforma

eficiente.

● Aprovecha los tiempos que los procesos pasan esperando a que

secompleten sus operaciones de E/S.

● Aumenta el uso de la CPU.
Grado de multiprogramación

● Nº de procesos en memoria (procesos activos).

Necesidades de memoria

● Sistema sin memoria virtual. La memoria principal debe tener capacidad

para almacenar el SO y todos los procesos.

● Sistema con memoria virtual. Los marcos de página disponibles se

reparten entre el SO y los procesos.

13

ESTADOS DEL PROCESO

© UPM 2014

● En ejecución: uno por procesador.
● Bloqueado: en espera de E/S o evento (p.e. pause).
● Listo para ejecutar.

Termina

Ejecución

Nuevo

Listo

Fin E/S

u otro evento

Bloqueado

Planificador: Módulo del SO que decide qué proceso listo se ejecuta.
Un proceso es expulsado porque ha gastado un cierto tiempo de procesador
o porque surge otro proceso más prioritario listo para ejecutar.

14

VIDA DEL PROCESO I

Creación del proceso (listo)

© UPM 2014

● Crear la imagen de memoria
● Seleccionar BCP libre
● Rellenar el BCP
● Cargar segmento de texto y segmento de datos
● Crear la pila inicial, en el segmento de pila, con el entorno del proceso y

los parámetros de invocación

Mapa de
memoria

Tabla de procesos

Objeto

ejecutable

Biblioteca
dinámica

r
o
d
a
g
r
a
C

Imagen

del proceso

BCP

15

VIDA DEL PROCESO II

© UPM 2014

Interrupción del proceso (paso a bloqueado/listo)

● Causas: Interrupción, excepción o solicitud de servicio
● Se salva el estado del procesador

Activación del proceso (paso a ejecución)

● Lo selecciona el planificador
● Se restituye el estado del procesador

• Se termina con el registro de estado seguido del contador de programa

Terminación del proceso
● Tipos de terminación

• Voluntaria: invoca llamada al sistema para tal fin (o fin del programa)
• Involuntaria: Error de ejecución (excepción) o abortado por un usuario

u otro proceso

● En cualquier caso, se recuperan los recursos asignados al proceso

• Si la asignación es exclusiva, se libera el recurso
• Si la asignación es compartida el SO llevará un contador de usuarios.

Cuando el contador llega a 0 se libera el recurso

16

CAMBIO DE CONTEXTO I

Cambio de contexto

© UPM 2014

● Se pasa de ejecutar el proceso A a ejecutar el proceso B.
● Requiere dos cambios de modo: de proceso A al SO y del SO al proceso B.

Interrupción → Cambio de modo: de proceso a SO

● Una interrupción hace que se pase de ejecutar el proceso a ejecutar el SO,

lo que significa un cambio de modo de ejecución.

● Necesidad de salvar el estado. Ejemplo:

LD

LD
¿Qué valor tiene el registro 5 al reiniciar la ejecución del proceso?

→ llega una interrupción y se pasa al SO.

.5,#CANT

.1,[.5]

17

CAMBIO DE CONTEXTO II

© UPM 2014

o
d
a
t
s
E

Registros
especiales

Registros
generales

PC
SP

Estado

Tabla de procesos

BCP Proceso A

BCP Proceso B

BCP Proceso N

Estado

(registros)

Información de
identificación
Información de

Control

Estado

(registros)

Información de
identificación
Información de

Control

Estado

(registros)

Información de
identificación
Información de

Control

Activación → Cambio de modo: de SO a proceso

● Se pasa de ejecutar el SO a ejecutar un proceso.
● Hay que restaurar el estado del proceso que está almacenado en el BCP.

18

PROCESOS ESPECIALES

PROCESO SERVIDOR

Servidor

● Atiende peticiones.
● Realiza el bucle:

• Lectura de orden.
• Ejecución de la orden.
• Contestación al cliente.

PROCESOS
CLIENTES

© UPM 2014

PROCESO
SERVIDOR

RECURSO

Puerto

Cliente

SO

Servidor
ficheros

Servidor
impresión

SO

SO

RED

Servidor
e_mail

SO

20

PROCESO SERVIDOR PARALELO

© UPM 2014

Bucle

● Lectura de orden.
● Asignación de un nuevo puerto y lanza hijo.
● Proceso hijo que atiende al cliente.
● Vuelta al comienzo.

a)

Servidor
Padre

Puerto A

b)
Servidor
Padre

Puerto A

Cliente A

c)

Servidor
Padre

Servidor

Hijo

Puerto A

Puerto B

Cliente A

21

PROCESO DEMONIO

Es un proceso:

© UPM 2014

● Que ejecuta en background (su padre no le espera).
● No asociado a un terminal o proceso login.
● Que espera a que ocurra un evento.
● O que debe realizar una tarea de forma periódica.

Características

● Se arrancan al inicializar el sistema.
● No mueren.
● Están normalmente en espera de evento.
● No hacen el trabajo, lanzan otros procesos o procesos ligeros.

22

EJEMPLOS DE SERVIDORES Y DEMONIOS UNIX

© UPM 2014

● lpd
● inetd
● smbd
● atd
● crond
● nfsd
● httpd

line printer daemon.
arranca servidores de red: ftp, telnet, http, finger,talk, etc.
demonio de samba.
ejecución de tareas a ciertas horas.
ejecución de tareas periódicas.
servidor NFS.
servidor WEB.

23

SERVICIOS UNIX

GESTIÓN DE PROCESOS

SETGID SETUID

© UPM 2014

Proceso

UID y GID
efectivo

UID y GID
real

SETGID
SETUID

Dueña del
ejecutable

Dueño del
proceso

El SO utiliza el UID y GID efectivos para determinar los privilegios del
proceso.

El fichero ejecutable puede tener activos los bits SETGID y SETUID.

● Si SETUID activo se pone como UID efectivo el UID del fichero ejecutable.
● Si SETGID activo se pone como GID efectivo el GID del fichero ejecutable

25

SERVICIOS UNIX DE GESTIÓN DE PROCESOS (Identificación)

©
  • Links de descarga
http://lwp-l.com/pdf16454

Comentarios de: Sistemas operativos - Procesos (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad