16. 2 . Modelo de memoria de un proceso 2 .1. Introducción 2 .2. Fases en la generación de un ejecutable 2.3. Mapa de memoria de un proceso 2.4. Operaciones sobre regiones
31. Cabecera Fichero ejecutable 0 1000 5000 Secciones 8000 Número mágico Contador de programa inicial Tabla de secciones Código Datos con valor inicial Tabla de símbolos Mapa de memoria 0 4000 5000 Código Pila Datos con valor inicial Datos sin valor inicial 5500 Argumentos del programa Modelo de memoria de un proceso
36. 3 . Esquemas de memoria basados en asignación contigua 3 .1. Esquema hardware 3 .2. Gestión del SO 3.3. Política de asignación de espacio 3.4. Valoración del esquema contiguo
44. 5 . Memoria virtual 5 .1. Introducción 5 .2. Paginación 5.3. Segmentación 5.4. Segmentación paginada 5.5. Paginación por demanda 5.6. Políticas de reemplazo 5.7. Política de asignación de marcos de página 5.8. Hiperpaginación 5.9. Gestión del espacio de swap 5.10. Operaciones sobre las regiones de un proceso
45.
46.
47.
48.
49.
50. Página Byte Registro base de la TP (RIED) 0 1 2 3 n Dirección lógica MP: direcciones físicas Marcos de página Memoria virtual
51.
52.
53.
54.
55.
56. 1 er nivel 2º nivel Byte Registro base de la TP (RIED) Dirección lógica Página 0 1 2 3 n Memoria virtual 0 1 2 3 n MP: direcciones físicas Marcos de página 0 1 2 3 n
Fundamentos de Computadores II No confundir los aspectos lógico y físico. Desde el punto de vista físico, cada proceso dispone de su propio espacio de direcciones. Por tanto, la zona compartida, para cada proceso, no es más que un conjunto de direcciones y cualquier referencia a una posición en ella, desde otra posición en la misma zona, no supone mayor problema. Sin embargo, no hay que olvidar que para que esto funcione ha de poder volcarse los procesos en memoria. Cuando ambos estén cargados en memoria habrá una única zona de memoria principal encargada de albergar la memoria compartida por ambos procesos. Es decir, en una posición cualquiera de esta memoria principal sólo podrá haber un valor. Si se pone de parte del proceso1, en esta posición se escribe la dirección traducida correspondiente al proceso1, es decir 11000. Sin embargo, si se pone de parte del proceso2, la posición contendrá la dirección traducida teniendo en cuenta el espacio físico del proceso2. En cualquier caso esto significa que se rompe el mecanismo de compartición, porque la memoria física no puede mantener una representación coherente del contenido de ambos espacios lógicos a la vez.
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II Cuando llega una nueva página se inserta en el comienzo de la lista, y luego se avanza el puntero de la lista a la siguiente página. Cuando se desea determinar una página para reemplazar, se examina el bit de referencia de la página apuntada por el puntero. Si está activo, se desactiva y se avanza el puntero hasta la siguiente página. Así se continua hasta alcanzar una página en que no esté activado este bit. Esta forma de trabajo imita el comportamiento de un reloj en el que el puntero que recorre la lista se comporta como su aguja. Por eso, a esta estrategia también se le denomina algoritmo del reloj
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II
Fundamentos de Computadores II El número N es el parámetro crítico en el funcionamiento de esta estrategia. Se denomina ventana del conjunto de trabajo . Si N es muy grande, la ventana puede englobar diferentes fases de ejecución del proceso, suponiendo en este caso, una estimación excesiva de las necesidades del proceso. Si es demasiado pequeña, la ventana podría no englobar la situación actual del proceso, por lo que se producirían demasiados fallos de página
Fundamentos de Computadores II Esta estrategia supone la existencia de cotas inferior y superior de la frecuencia de fallos de página de los procesos