Sistemas operativos modernos
4 GB 2GB Proceso A Proceso B Proceso C Res^va ne Tablas de pág, d e^ TSas.date«,© to. ^ Tablas de páq. de B Tablas de p ^ . de C -P ila s , datos. ‘_Rteis, dates, ffte. .. Código y datos privados del proceso A Código y datos privados del proceso B Código y datos privados del proceso C Los 64 K8 más bajos y más altos no son válidos Figura 11-23. Organización del espacio de direcciones virtual para tres procesos de usuario. Las áreas blancas son privadas para cada proceso. Las áreas sombreadas se comparten entre todos los procesos. de cada proceso. Los procesos en modo de usuario no pueden escribir en los 2 GB altos de la me moria, y ni siquiera leerlos. El motivo para colocar aquí el sistema operativo es que cuando un sub proceso efectúa una llamada al sistema, salta por una interrupción de sistema al modo de kemel y sigue ejecutándose sin perder su identidad. Al hacer visible todo el sistema operativo y todas sus estructuras de datos (así como todo el proceso de usuario) dentro del espacio de direcciones de un subproceso cuando ingresa en el modo de kemel, se elimina la necesidad de modificar el mapa de memoria o de desalojar el caché cuando el subproceso ingresa en el kemel. Lo único que hay que hacer es cambiar a la pila de kemel del subproceso. Lo que se sacrifica aquí es espacio de di recciones privado del proceso, a cambio de que las llamadas al sistema sean más rápidas. Para los grandes servidores de bases de datos 2 GB podrian ser poco, y es por ello que en Advanced Server y Datacenter Server se ofrece la opción de un espacio de usuario de 3 GB. Una página virtual dada puede estar en uno de tres estados: libre, reservada o comprome- fida. Una página libre no se está usando en la actualidad y cualquier referencia a ella causa un fallo de página. Cuando se inicia un proceso, todas sus páginas están en estado libre hasta que el programa y los datos iniciales establecen correspondencia con su espacio de direcciones. Una vez que se establece correspondencia entre el código o los datos y una página, se dice que la página está comprometida. Una referencia a una página comprometida se hace correspon der empleando el hardware de memoria virtual y tiene éxito si la página está en la memoria principal. Si no está en la memoria principal, hay un fallo de página y el sistema operativo bus ca y trae la página del disco. Una página virtual también puede estar en estado reservado, lo que significa que no está disponible para hacerse corresponder mientras no se retire en forma explícita la reservación. Por ejemplo, cuando se crea un nuevo subproceso se reserva 1 MB de espacio de pila en el es
RkJQdWJsaXNoZXIy MjI4NDcx