UTNianos

Versión completa: [Aporte] Sistemas Operativos
Actualmente estas viendo una versión simplificada de nuestro contenido. Ver la versión completa con el formato correcto.
Páginas: 1 2 3 4 5
(17-02-2013 12:24)proyectomaru escribió: [ -> ]Todo muy lindo, pero yo lo subí en 4shared xq en su momento cuando empecé a subir cosas no pedían usuario, ahora necesitás tener cuenta para verlo. Cuando esté al pedo de vacaciones hostearé todo eso en otro lado. Peeeeeero capaz alguien tiene y le sirve.
http://www.mediafire.com , es una masa

Che pregunto algo más fácil de responder...
No termino de entender el término "dirección absoluta" en lo que respecta Memoria. Antes lo entendía y ahora lo tengo mezclado con otro concepto.
Dirección absoluta/física: es una dirección unequívoca para identificar a una determinada posición de memoria dentro del sistema en su totalidad. Osea, es una dirección que está en el mismo espacio de direcciones que las de los distintos dispositivos del sistema. Es la dirección que usa el HW para acceder a una determinada posición.

Es en contraposición a "dirección lógica", que es un conjunto de dirección base + desplazamiento. La dirección lógica usa "otra numeración". La dirección base referencia al comienzo de un determinado bloque/sector (no me acuerdo si había un término específico para esto... ¿frame?) de memoria, y el desplazamiento representa la distancia en bytes al comienzo de ese bloque/sector de una posición determinada.



O por ahí tiré mucha fruta, no se...
Ah o sea que entendí bien.... Solo existen dos tipos de direcciones: las físicas y las lógicas, y las direcciones físicas son las únicas que son absolutas dentro de todo el sistema, entonces siempre que dicen "dir. absoluta" están diciendo "dir. física", verdad?
si, se refieren a lo mismo
Tengo una domanda con el algoritmo Clock (el normal). Cuando lo vimos en clase creo que lo vimos mal.
Por lo que entendí y dice el Stallings, cuando empiezo a cargar páginas por primera vez siempre cargo el bit de referencia a 0.
Si todas las páginas cargadas están en 1, les borro a todas el bit a 0, saco la primera de la lista FIFO y la nueva página se carga a cero... ¿no?

Y otra cosa... El clock modificado, ¿se toma en los finales? Por el momento no la vi en ninguna parte
no lo carga en 1 el bit? si lo carga en 0 lo sacaría enseguida, y tiene que darle la "segunda oportunidad"

lo otro si, si estan todas en 1, termina en una fifo, solo que "dando una vuelta mas" en las que pasa todas a 0
(03-03-2013 19:51)gonnza escribió: [ -> ]no lo carga en 1 el bit? si lo carga en 0 lo sacaría enseguida, y tiene que darle la "segunda oportunidad"

lo otro si, si estan todas en 1, termina en una fifo, solo que "dando una vuelta mas" en las que pasa todas a 0
Cla, eso mismo pensé. El problema es que tengo dos versiones de como se hace el clock... una la que vi en clase (creo que era la posta) y otra que encontré resuelta en Utnianos (la que debe estar mal).

Tiro un ejemplo y me dicen si está bien...
Empiezo a cargar páginas hasta que todos los marcos estén cargados, supongamos 4 marcos. Hasta ahí serían 4 page faults y todas las páginas cargadas con un 1 en el bit de ref.
Después si quiero cargar una página diferente, todos los bits pasan a cero por la vuelta que pega el puntero. Ahí saco el primero de la lista FIFO, y según gonnza, el nuevo que entra tiene un 1 en el bit de ref. Supongamos que se hacen referencia a otros que ya están cargados, esos se ponen en 1. Y supongamos que alguno de ellos queda en "0" y hay que cargar una nueva página... sacamos ese que está en 0, y la nueva pag queda en 1.
¿Es así?
Para Clock necesitás un puntero que va a apuntar a una determinada página del conjunto y un bit de referencia asociado a cada página, que indica si fueron usadas (ref = 1) o no (ref = 0).

Cuando una página nueva entra, su bit de referencia se pone en 1, y el puntero apunta a la página siguiente.
Cuando hay que reemplazar, el puntero va moviendose entre las páginas hasta encontrar una que tenga el bit de referencia en 0. Cuando lo encuentra, reemplaza esa página, coloca la nueva, settea su bit de referencia en 1 y el puntero apunta a la próxima página. Mientras se mueve, las páginas que el puntero haya barrido se les settea el bit de referencia a 0.
Tante grazie =)
Páginas: 1 2 3 4 5
URLs de referencia