5-42 Vol. 3
PROTECTION
exception is generated. If an exception is generated by segmentation, no paging
exception is generated.
Page-level protections cannot be used to override segment-level protection. For
example, a code segment is by definition not writable. If a code segment is paged,
setting the R/W flag for the pages to read-write does not make the pages writable.
Attempts to write into the pages will be blocked by segment-level protection checks.
Page-level protection can be used to enhance segment-level protection. For
example, if a large read-write data segment is paged, the page-protection mecha-
nism can be used to write-protect individual pages.
Table 5-3. Combined Page-Directory and Page-Table Protection
Page-Directory Entry Page-Table Entry Combined Effect
Privilege Access Type Privilege Access Type Privilege Access Type
User Read-Only User Read-Only User Read-Only
User Read-Only User Read-Write User Read-On ly
User Read-Write User Read-Only User Read- Only
User Read-Write User Read-Write User Read /Write
User Read-Only Supervisor Read-Only Supervisor Read/Writ e*
User Read-Only Supervisor Read-Write Supervisor Read/Wri te*
User Read-Write Supervisor Read-Only Supervisor Read/Write *
User Read-Write Supervisor Read-Write Supervisor Read/Write
Supervisor Read-Only User Read-Only Supervisor Read/Writ e*
Supervisor Read-Only User Read-Write Supervisor Read/Wri te*
Supervisor Read-Write User Read-Only Supervisor Read/Wri te*
Supervisor Read-Write User Read-Write Supervisor Read/Wr ite
Supervisor Read-Only Supervisor Read-Only Supervisor Read/Write *
Supervisor Read-Only Supervisor Read-Write Supervisor Read/Writ e*
Supervisor Read-Write Supervisor Read-Only Supervisor Read/Writ e*
Supervisor Read-Write Supervisor Read-Write Supervisor Read/Writ e
NOTE:
*If CR0.WP = 1, access type is determined by the R/W flags of the page-directory and page-table
entries. IF CR0.WP = 0, supervisor privilege permits read-write access.