Anda di halaman 1dari 4

1.

La memoria est� compuesta de una gran matriz de palabras o bytes, cada uno con su
propia direcci�n.
A. Palabra: un grupo de bits que representa informaci�n binaria (un n�mero, un
c�digo de instrucci�n, uno o m�s caracteres alfanum�ricos, etc.), y est� almacenada
en la memoria. Se introduce o saca del almacenamiento como una unidad
B. DIRECCI�N DE MEMORIA � n�mero de identificaci�n que se le asigna a cada palabra
en la memoria. � Son n�meros de como localizar un dato dentro de memoria.
2. El sistema operativo es responsable de las siguientes tareas:
Mantener que partes de la memoria est�n siendo utilizadas y por quien.
�Decidir cuales procesos ser�n cargados a memoria cuando exista espacio de memoria
disponible.
�Asignar y quitar espacio de memoria seg�n sea necesario.
3. Un programa debe traerse (del disco) a la memoria y colocarse dentro de un
proceso para ejecuci�n.
Las �nicas �reas de almacenamiento a las que El CPU puede acceder son la memoria
principal y los registros integrados dentro del propio procesador.
CACH� COMPLETAR
4 Para asegurar de que cada proceso tenga un espacio de memoria separado utilizan
dos registros, llamados base y l�mite. El registro base almacena la direcci�n de
memoria f�sica legal m�s peque�a y el registro l�mite especifica el tama�o del
rango.

5. reasignaci�n de direcciones. puede hacerse en cualquiera de los pasos:


La asignaci�n de la ubicaci�n de un programa en memoria principal puede ser
realizada en varios tiempos:
�Tiempo de compilaci�n (compile time): El programa ser� asignado a un lugar
espec�fico y conocido de la memoria f�sica. La direcciones de memoria son
referenciadas en forma absoluta (static relocation).
�Tiempo de carga (load time): La asignaci�n del lugar de memoria donde ser� cargado
el programa es hecho al momento de la carga. Las direcciones de memoria deben ser
referenciadas en forma relativa (dynamic reolcation).
�Tiempo de ejecuci�n (execution time): Un programa puede variar su ubicaci�n en
memoria f�sica en el transcurso de la ejecuci�n.

cARGA din�mica:
- el tama�o de un proceso en memoria est� limitado por la cantidad de memoria
f�sica del sistema. Con la carga din�mica, una rutina nose carga en mempria f�sica
hasta que se la invoca. la ventaja de carga dinmamica es que las rutinas que no son
utilizadas no son cargadas en memoria f�sica u no consumen recursos
innecesariamente.

- montaje din�mico y bibliotecas compartidas


ENLACE DIN�MICO:
El concepto de enlace din�mico es semejante al de carga din�mica, en vez de
postergar la carga hasta
la ejecuci�n, se posterga el enlace.
Esta caracter�stica se emplea generalmente con las bibliotecas del sistema.
En el contenido binario se incluye un stub (fragmento) para cada referencia a una
rutina de la
biblioteca del sistema, el cual es un peque�o trozo de c�digo que indica como
localizar la rutina de biblioteca residente en memoria.
Se utiliza generalmente con las bibliotecas del sistema. Sin este recurso todos los
programas de un
sistema necesitan incluir en su contenido ejecutable una copia de la biblioteca,
desperdiciando
espacio en disco y en memoria central.
b) Todos los procesos que utilizan una biblioteca de lenguaje ejecutan solo una
copia del c�digo de la
biblioteca.
c) Esta caracter�stica puede extenderse para incluir actualizaciones a bibliotecas
(correcci�n de
errores). Una nueva versi�n puede sustituir a una biblioteca y todos los programas
que hacen
referencia a la biblioteca usaran autom�ticamente la nueva versi�n.

6. Espacio de direcciones l�gico y f�sico

- Direcci�n l�gica � generada por el CPU;tambi�n conocida como direcci�n virtual


- Direcci�n f�sica � direcci�n vista por la unidad de memoria
Para la asociaci�n de direcciones en tiempo de compilaci�n o carga, las direcciones
l�gicas o f�sicas coinciden. No es as� para la asociaci�n en tiempo de ejecuci�n.
El conjunto de todas las direcciones l�gicas generadas por un programa se llama
espacio de direcciones l�gicas
El conjunto de todas las direcciones f�sicas correspondientes a esas direcciones
l�gicas es un espacio de direcciones f�sicas
La traducciones de direcciones l�gicas a f�sicas son hechas por la MMU (Memory
Management Unit).
Los procesos solo manipulan direcciones l�gicas y no visualizan las f�sicas, que
solamente son vistas por la MMU.

COMPLETAR P�GINA 247

7 Swapping
Un proceso debe estar en memoria principal para ser ejecutado. Sin embargo, los
procesos pueden ser intercambiados temporalmente, sac�ndolos de memoria y
a�adi�ndolos al backing store (almac�n de respaldo) y despu�s de regreso a memoria
para continuar su ejecuci�n.
El disco (backing store) es un espacio donde se dispondr�n las imagen de memoria de
los procesos. disco r�pido y lo suficientemente grande.
Al mecanismo de llevar un proceso desde memoria principal a disco se le denomina
swap-out. Al inverso se le denomina swap-in.
El mayor tiempo consumido en el swapping es el tiempo de transferencia.

8 La memoria, por lo general, es dividida en dos particiones:


�Sistema operativo residente.
�Procesos de usuarios.
Se puede situar al s.o en la zona baja o en la zona alta de memoria. el factor que
afecta esta desicion es la ubicaci�n del vector de interrupciones. (es un vector
que almacena la direcci�n de atenci�n de la interrupci�n. Una interrupci�n es una
se�al recibida por el procesador de una computadora, para indicarle que debe
�interrumpir� el curso de ejecuci�n actual y pasar a ejecutar c�digo espec�fico
para tratar esta situaci�n.
En la asignaci�n contigua de memoria cada proceso est� contenido en una �nica
secci�n contigua de memoria.

9 Mapeo y protecci�n
Es necesario un mecanismo de protecci�n de memoria entre los procesos entre s� y el
sistema operativo.
El registro de ubicaci�n (relocation register) y el registro l�mite son utilizados
para realizar la verificaci�n de accesos v�lidos a la memoria El registro base
contiene el valor de la direcci�n f�sica m�s peque�a
El registro l�mite contiene el rango de direcciones l�gicas � toda direcci�n
l�gica debe ser menor que el registro limite
MMU mapea direcciones l�gicas din�micamente
10
Partici�n Fija� La memoria principal se divide en un conjunto no solapado de
regiones llamadas particiones durante el inicio del sistema. Las particiones
pueden ser de tama�os iguales o desiguales.� Un proceso se puede cargar
completamente en una partici�n de tama�o menor o igual .Si todas las particiones
est�n ocupadas, el sistema operativo puede expulsar (swap) un proceso de alguna de
las particiones y, cargar otro proceso de forma que haya trabajo para el
procesador.� Ventajas. Sencilla de implementar. Poca sobrecarga al SO.�
Desventajas. Fragmentaci�n interna (se malgasta el espacio interno de una partici�n
cuando el bloque de datos cargado sea m�s peque�o que la partici�n). Nro. fijo de
procesos activos

11 Partici�n Din�mica� Las particiones se crean din�micamente por demanda.� Son


variables en tama�o y n�mero� Cada proceso se carga completamente en una �nica
partici�n del tama�o del proceso.
12 Ventajas. No existe fragmentaci�n interna.� Desventajas. Fragmentaci�n externa (
Producto de la entrada y salida de procesos en la memoria, se van generando
porciones cada vez m�s peque�as de la memoria sin utilizar.para solucionar este
problema, se debe recurrir a la compactaci�n de la memoria para eliminar espacios
(huecos) existentes entre procesos, esto significa que los procesos deben ser
reubicados en memoria de forma din�mica.)
Mover contenidos de memoria para juntar todos la
memoria libre en un bloque grande
Compactar es posible s�lo si la relocalizaci�n es din�mica y se realiza en tiempo
de ejecuci�n
Problema de E/S
-Fijar trabajo en memoria mientras hace E/S
-Hacer E/S s�lo en buffers del SO

Primer ajuste: se asigna el primer hueco que sea lo suficientemente grande.


Mejor ajuste: se asigna el hueco m�s peque�o que tenga el tama�o suficiete. Se debe
explorar la lista completa. Hace que se genere un hueco m�s peque�o con la memoria
que sobre del hueco reci�n rellenado.
Peor ajuste: Se asigna el hueco de mayor tama�o. Se debe explorar la lista
completa. Se genera un hueco con el espacio sobrante del reci�n relllenado.
First-fit y best-fit mejores que worst-fit en t�rminos de velocidad y utilizaci�n
de almacenamiento.

13 PAGINACI�N
El espacio de direcciones l�gicas de un proceso pueden no ser contiguas; se asigna
memoria f�sica al proceso, conforme est� disponible
Dividir memoria f�sica en bloques de tama�o fijo llamados frames
Dividir memoria l�gica en bloques del mismo tama�o que los frames llamados p�ginas.
Mantener registro de todos los frames
Para ejecutar un programa de tama�o n p�ginas,
necesita encontrar n frames disponibles y cargarlo
Crear una tabla de p�ginas para traducir direcciones l�gicas a f�sica

14 Direccionamiento en paginaci�n
Las direcciones virtuales en paginaci�n se componen de un n�mero de p�gina (page
number) y un desplazamiento (offset).
P�gina n�mero (p) � utilizado como un �ndice en una tabla de p�ginas que contiene
las direcciones base de cada p�gina en memoria f�sica
Desplazamiento de p�gina (d) � combinado con direcciones base para definir la
direcci�n de
memoria f�sica que es enviada a la unidad de memoria
El n�mero de p�gina es un �ndice sobre una tabla de p�ginas (page table) y el
desplazamiento es la referencia dentro del frame.
La tabla de p�gina contiene el mapeo del frame correspondiente

15. soporte a nivel de hardware


La mayor�a de los sistemas operativos asignan una tabla de p�gina por proceso.
Un puntero al comienzo de la tabla de p�gina es agregado al PCB del proceso.
El uso de registros para alojar la tabla tiene la ventaja del acceso r�pido, pero
la cantidad de entradas es muy limitada
En los sistemas actuales no es posible guardar todas las entradas en registros de
r�pido acceso.
La tabla se mantiene en memoria principal y se asigna un registro que apunta a la
direcci�n base de la tabla (PTBR � Page Table Base Register).
La opci�n del PTBR mejora el cambio de contexto entre procesos ya que solo es
necesario cambiar un registro para acceder a la tabla de p�gina.
Registro longitud de tabla de p�ginas (PRLR) indica el tama�o de la tabla
Sin embargo, el acceso a memoria se duplica debido a que es necesario primero
acceder a la tabla para obtener el n�mero de frame y, posteriormente, al lugar de
memoria solicitado.
El problema de accesos dobles a memoria puede resolverse con hardware especializado
llamado associative memory o translation look-aside buffers (TLBs)
El cache TLB es asociativa y de r�pido acceso.
Cada entrada consiste de dos partes: una clave (tag) y un valor (el n�mero de
frame).
La b�squeda de un clave en la cache TLB es simult�nea entre todas las tags.
Si la clave es encontrada (TLB hit), inmediatamente se genera la direcci�n buscada
a partir del valor asociado. En caso contrario (TLB miss), es necesario realizar el
acceso a memoria para obtener la entrada. Posteriormente, se guarda el valor
obtenido en la cache TLB para posteriores accesos (principio de localidad).
Las TLB por lo general tienen pocas entradas (64 a 1024).
Algunas caches TLB agregan a cada entrada un identificador de espacio de
direccionamiento (ASID � Address Space IDentifier).
En la b�squeda de una clave solo ser�n tenidas en cuenta las entradas cuyo ASID
coincida con el del proceso que est� ejecutando en el procesador. provee protecci�n
espaciodirecci�n
para ese proceso
Si no se utiliza el ASID, en cada cambio de contexto es necesario �limpiar� las
entradas de la TLB, sino se realizar�an accesos equivocados a memoria

16 Protecci�n de memoria
La tabla de p�ginas tiene una entrada por cada p�gina posible que tenga el proceso.
Es necesario identificar cuales son entradas v�lidas y cuales no.
La utilizaci�n de un bit de protecci�n en cada entrada determina si la p�gina es
v�lida o inv�lida (valid-invalid bit).
El acceso a una p�gina cuyo bit marca que es inv�lida, genera un trap a nivel del
sistema operativo.

Anda mungkin juga menyukai