Sistemas operativos modernos

Espacio de direcciones virtual 60K-64K 56K-60K 52K-56K 48K-52K 44K-48K 40K-44K 36K-40K 32K-36K 28K-32K 24K-28K 20K-24K 16K-20K 12K-16K 8K-12K 4K-8K 0K-4K X 1 Página virtual X X x 7 x 5 x \ \ x X 3 4 0 6 1 2 Dirección de memoria física 28K-32K 24K-28K 20K-24K 16K-20K 12K-16K 8K-12K 4K-8K 0K-4K Marco de página Figura 4-10. La relación entre las direcciones virtuales y las direcciones de la me­ moria física está dada por la tabla de páginas. la dirección virtual Ose envía a la MMU. Ésta ve que tal dirección virtual está en la página O (O a 4095), que según su correspondencia es el marco de página 2 (8192 a 12287). Así, la MMU transforma la dirección a 8192 y la coloca en el bus. La memoria no tiene conocimien­ to de la MMU; lo único que ve es una solicitud de leer o escribir en la dirección 8192, y lo ha­ ce. Por lo tanto, la MMU ha establecido la correspondencia de todas las direcciones virtuales entre Oy 4095 con las direcciones físicas 8192 a 12287. De forma similar, la instrucción MOV R EG ,8192 se transforma en efecto en MOV R EG ,24576 porque la dirección virtual 8192 está en la página virtual 2, la cual corresponde al marco de página físico 6 (direcciones físicas 24576 a 28671). Como tercer ejemplo, 1a dirección virtual 20500 está 20 bytes después del principio de la página virtual 5 (direcciones virtuales 20480 a 24575), por lo que corresponde a la dirección física 12288 + 20 = 12308. Esta capacidad para establecer una correspondencia entre las 16 páginas virtuales y cual­ quiera de los ocho marcos de página, ajustando debidamente el mapa de la MMU, no resuelve, por sí sola, el problema de que el espacio de direcciones virtual es más grande que la memoria fí­ sica. Puesto que sólo tenemos ocho marcos de página físicos, sólo ocho de las páginas virtuales

RkJQdWJsaXNoZXIy MjI4NDcx