Tiendo a estar de acuerdo en que esto pertenece a un intercambio de pila de arquitectura de computadora, no a un intercambio de pila de electrónica, pero dado que esto está aquí:
@davidcary es correcto.
Algo de historia:
Los recorridos de la tabla de páginas Intel x86 NO se almacenaron en caché hasta P5, también conocido como Pentium. Más precisamente, los accesos de memoria de la tabla de la página no se almacenaron en caché, omitieron el caché. Como la mayoría de las máquinas hasta ese momento eran de escritura, recibieron valores consistentes con el caché. Pero no husmearon los escondites.
P6, también conocido como Pentium Pro, y AFAIK, todos los pasos de la tabla de la página de procesadores posteriores pudieron acceder al caché y usar un valor extraído del caché. Por lo tanto, trabajaron con cachés de reescritura. (Por supuesto, podría colocar las tablas de páginas en la memoria no almacenable en caché, definida, por ejemplo, por los MTRR. Pero eso es una gran pérdida de rendimiento, aunque puede ser útil para depurar sistemas operativos).
Por cierto, este "acceso a la memoria de recorrido de la tabla de páginas puede acceder a los cachés de datos" es independiente de "las entradas de la tabla de páginas se pueden almacenar (almacenar en caché) en un TLB Ttranslation Lookaside Buffer". En algunas máquinas, el TLB se denomina "caché de traducción".
Otro problema relacionado es que los nodos interiores de las tablas de páginas pueden almacenarse en caché en estructuras de datos aún más similares a TLB, por ejemplo, el caché PDE.
Una diferencia clave: la memoria caché de datos es coherente y se espía. Pero los cachés TLB y PDE no son indagados, es decir, no son coherentes. La conclusión es que, dado que las tablas de páginas pueden almacenarse en caché en TLB no coherentes y cachés PDE, etc., el software debe eliminar explícitamente las entradas individuales o los grupos masivos (como el TLB completo), cuando las entradas de la tabla de páginas pueden haber sido tan en caché se cambian. Al menos cuando se cambia de forma "peligrosa", pasando de RW-> R-> I, o cambiando de dirección.
Creo que es justo decir que cada vez que se agrega un nuevo tipo de almacenamiento en caché no coherente similar a TLB, algunos sistemas operativos se rompen, porque tenía suposiciones implícitas de que esto no se estaba haciendo.