PDF de programación - Tema 2. Procesos e hilos

<<>>
Imágen de pdf Tema 2. Procesos e hilos

Tema 2. Procesos e hilosgráfica de visualizaciones

Publicado el 12 de Mayo del 2019
1.177 visualizaciones desde el 12 de Mayo del 2019
1,7 MB
121 paginas
Tema 2. Procesos e hilos

SS OO

IIII
IIII

Índice

n Concepto de proceso

n Información del proceso

n Estados del proceso

n Formación de un proceso

n Concepto de hilo de ejecución

n Procesos en Minix

n Procesos en Linux

n Procesos en Windows NT/2000

n Planificación de procesos e hilos

n Servicios POSIX para gestión de procesos e hilos

Sistemas Operativos II (II-UJI)

1

Procesos e hilos

Tema 2. Procesos e hilos

SS OO

IIII
IIII

Índice

n Procesos en Minix

3 Estados de un proceso
3 Implementación del descriptor de proceso

n Procesos en Linux

3 Estados de un proceso
3 Implementación del descriptor de proceso
3 Implementación de la tabla de procesos
3 Implementación de la lista de procesos preparados

n Procesos en Windows NT/2000
3 Objetos tipo proceso e hilo
3 Estados de un hilo
3 Implementación del procesos e hilos

Sistemas Operativos II (II-UJI)

2

Procesos e hilos

Tema 2. Procesos e hilos

SS OO

IIII
IIII

Índice

n Planificación de procesos e hilos

3 Planificación en Minix
3 Planificación en Linux
3 Planificación en Windows NT/2000

Sistemas Operativos II (II-UJI)

3

Procesos e hilos

Tema 2. Procesos e hilos

SS OO

IIII
IIII

Bibliografía

n J. Carretero et al. Sistemas Operativos: Una Visión Aplicada. McGraw-

Hill. 2001. Capítulo 3

n W. Stallings. Sistemas Operativos. Prenctice-Hall. 2001. Capítulos 3, 4,

9 y 10

n A.S. Tanenbaum, A.S. Woodnull. Operating Systems. Design and

Implementation. Prentice-Hall International, 2a. edición. 1996.

n H. Custer. Inside Windows NT. Microsoft Press. 1993.

Sistemas Operativos II (II-UJI)

4

Procesos e hilos

Tema 2. Procesos e hilos

SS OO

IIII
IIII

Índice

*

n Concepto de proceso

n Información del proceso

n Estados del proceso

n Formación de un proceso

n Concepto de hilo de ejecución

n Procesos en Minix

n Procesos en Linux

n Procesos en Windows NT/2000

n Planificación de procesos e hilos

n Servicios POSIX para gestión de procesos e hilos

Sistemas Operativos II (II-UJI)

5

Procesos e hilos

Concepto de proceso

SS OO

IIII
IIII

n ¿Qué es un proceso?

u Instancia de un programa en ejecución, requiriendo para ello unos

recursos

Programa

Pila

Recursos:
-Procesador
-Zonas de memoria
-Ficheros
-Dispositivos, etc.

Datos

Código

PC

Proceso

Otros recursos:
-Ficheros abierto
-Dispositivos E/S, etc.

Programa: estructura pasiva

Proceso: estructura activa

Sistemas Operativos II (II-UJI)

6

Procesos e hilos

Concepto de proceso

SS OO

IIII
IIII

n Jerarquía de procesos:

u Algunos SO, como Unix, mantienen una estructura jerárquica entre

procesos

init

Inicio

Inicio

Inicio

Inicio

Dem. Impr.

Dem. Com..

Shell

Editor

Shell

Proceso A

Proceso init:
l PID = 1
l Ancestro de todos los procesos

Proceso B

Proceso D

Proceso C

Proceso E

Proceso F

u Otros, como Windows NT/2000 (en adelante WNT/2K), no la mantienen

Sistemas Operativos II (II-UJI)

7

Procesos e hilos

Concepto de proceso

SS OO

IIII
IIII

n El proceso nulo (o la tarea ociosa):

u ¿Qué ocurre cuando el procesador está ocioso?

l Se ejecuta el proceso nulo

u ¿Qué hace el proceso nulo?

l Ejecuta un bucle infinito que no realiza ninguna operación útil
l En sistemas Unix suele tener PID=0

u Objetivo:

l Entretener al procesador cuando no hay ninguna otra tarea

Sistemas Operativos II (II-UJI)

8

Procesos e hilos

Concepto de proceso

SS OO

IIII
IIII

n Entorno del proceso:

u Tabla NOMBRE-VALOR que se pasa al proceso en su creación

u Se incluye en la pila
u Se establece:

l Por defecto
l Mediante mandatos del shell (export)
l Mediante API del SO (putenv, getenv )

u Ejemplo de entorno de un proceso en Unix:

l $env

LOGNAME=castano
SHELL=/bin/bash
TERM=vt100
HOME=/users/icc/castano
PATH=/usr/local/bin:/bin:/usr/bin:/users/castano/bin
...

Sistemas Operativos II (II-UJI)

9

Procesos e hilos

Concepto de proceso

SS OO

IIII
IIII

n Grupos de procesos:

u Los procesos forman grupos de procesos con alguna característica

común

l Conjunto de procesos creados por el mismo padre
l Conjunto de procesos creados a partir de un shell
l Conjunto de procesos dependientes de un terminal

u Se pueden realizar ciertas operaciones sobre un grupo de procesos

l Matar todos los procesos de un grupo de procesos
l Envío de señales a todos los procesos de un grupo de procesos

Sistemas Operativos II (II-UJI)

10

Procesos e hilos

Tema 2. Procesos e hilos

SS OO

IIII
IIII

Índice

n Concepto de proceso

*

n Información del proceso

n Estados del proceso

n Formación de un proceso

n Concepto de hilo de ejecución

n Procesos en Minix

n Procesos en Linux

n Procesos en Windows NT/2000

n Planificación de procesos e hilos

n Servicios POSIX para gestión de procesos e hilos

Sistemas Operativos II (II-UJI)

11

Procesos e hilos

Información del proceso

SS OO

IIII
IIII

n Estado del procesador:

u Contenido de los registros del modelo de programación

n Imagen de memoria:

u Contenido de los segmentos de memoria en los que reside el código y

los datos del proceso

n Bloque de control de proceso (BCP)

Sistemas Operativos II (II-UJI)

12

Procesos e hilos

Información del proceso

SS OO

IIII
IIII

Registros
especiales

Mapa de memoria

del Proceso A

Mapa de memoria

del Proceso B

Registros
generales

Mapa de memoria

del Proceso C

PC

SP

Estado

Tablas SO

Mapa de
Memoria

Tablas del sistema operativo

Tabla de procesos

BCP Proceso A
Estado (registros)

-
- Identificación
- Control

BCP Proceso B
Estado (registros)

-
- Identificación
- Control

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

- Tabla de memoria
- Tabla de E/S
- Tabla de ficheros

Sistemas Operativos II (II-UJI)

13

Procesos e hilos

Estado del procesador

SS OO

IIII
IIII

n Formado por el contenido de todos los registros del procesador:

u Registros generales
u Contador de programa
u Puntero de pila
u Registro de estado
u Registros especiales

n Cuando un proceso está ejecutando su estado del procesador reside en los

registros del computador

n Cuando un proceso no se está ejecutando su estado del procesador reside

en el BCP

Sistemas Operativos II (II-UJI)

14

Procesos e hilos

Preparación del código de un proceso

SS OO

IIII
IIII

Problema

Editor

Módulo
fuente A

Módulo
fuente B

Compilador o
ensamblador

Módulo
objeto A

Módulo
objeto B

Montador

Objeto
ejecutable

Otros
objetos

Cargador

Ejecutable en

memoria

Bibliotecas
del sistema

Sistemas Operativos II (II-UJI)

15

Procesos e hilos

Imagen de memoria

SS OO

IIII
IIII

n Formada por los espacios de memoria que un proceso está autorizado a

utilizar

n La memoria del proceso la asigna el gestor de memoria del SO

n Si un proceso genera una dirección que esta fuera del espacio de direcciones

el HW genera una interrupción HW interna

n La imagen de memoria, dependiendo del computador, puede estar referida a

memoria virtual o memoria física

Sistemas Operativos II (II-UJI)

16

Procesos e hilos

Imagen de memoria

SS OO

IIII
IIII

n Imagen de memoria de un proceso en un sistema con memoria virtual:

Registro identificador de estado de
direccionamiento

Memoria
virtual
Código

Datos

Pila

RIED

Tamaño

Tabla de
páginas

Una tabla de páginas por

proceso

Memoria
principal

Disco

Sistemas Operativos II (II-UJI)

17

Procesos e hilos

Información del BCP

SS OO

IIII
IIII

n Información de identificación:

u PID del proceso, PID del padre
u ID de usuario real (uid real)
u ID de grupo real (gid real)
u ID de usuario efectivo (uid efectivo)
u ID de grupo efectivo (gid efectivo)

n Estado del procesador

n Información de control del proceso:

Tabla de ficheros abiertos
por el proceso

u Información de planificación y estado
u Descripción de los segmentos de memoria del proceso
u Recursos asignados (ficheros abiertos, ...)
u Comunicación entre procesos (señales, ...)
u Punteros para estructurar los procesos en listas o colas

Sistemas Operativos II (II-UJI)

18

Procesos e hilos

Información del BCP

SS OO

IIII
IIII

n ¿Qué información del proceso se saca fuera del BCP?

u La que tiene tamaño variable

l Ejemplo: Tabla de páginas
l Razones de eficiencia
l La tabla de procesos se construye como una estructura estática,

formada por un número de BCP del mismo tamaño

u La que se comparte:

l El BCP es de acceso restringido al proceso que lo ocupa
l Ejemplo: Punteros de posición de ficheros abiertos por el proceso

Sistemas Operativos II (II-UJI)

19

Procesos e hilos

Información del BCP

SS OO

IIII
IIII

n Tabla de páginas:

u Describe la imagen de memoria del proceso
u Tamaño variable
u El BCP contiene el puntero a la tabla de páginas
u La compartición de memoria requiere que sea externa al BCP

n Punteros de posición de los ficheros:

u Si se asocian a la tabla de ficheros abiertos por los procesos (en el BCP)

no se pueden compartir

u Si se asocian al i-nod se comparten siempre
u Se ponen en una estructura común a los procesos y se asigna uno

nuevo en cada servicio open

Sistemas Operativos II (II-UJI)

20

Procesos e hilos

Compartir información

SS OO

IIII
IIII

BCP 4

fd

Tabla de
ficheros
0
23
1
4563
2
56
3
4
4
678

BCP 7

fd

Tabla de
ficheros
0
23
1
4563
2
56
3
4
4
0

BCP 23

fd

Tabla de
ficheros
0
54
1
633
2
5368
3
33
4
2

0

IDFF PP
24456
34512 2345
28
5566
34512 10000

1
2
3
4

Tabla de ficheros

del sistema

l El proceso con BCP7 es hijo del proceso con BCP4
l Los procesos con BCP7 y BCP4 comparten

punteros a los mismos ficheros

l El proceso con BCP23 abre uno de los ficheros
compartido por los procesos con BCP7 y BCP4

IDFF = Identificativo de fichero
PP

= Posición puntero al fichero

Sistemas Operativos II (II-UJI)

21

Procesos e hilos

Tablas del SO

SS OO

IIII
IIII

n Tabla de procesos: Tabla con los BCP de los procesos del sistema

n Tabla de memoria: Información sobre el uso de la memoria

n Tabla de E/S: Información asociada a los periféricos y a las operaciones de

E/S

n Tabla de ficheros: Información sobre los ficheros abiertos en el si
  • Links de descarga
http://lwp-l.com/pdf15908

Comentarios de: Tema 2. Procesos e hilos (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