A computer-readable, non-transitory medium storing a memory access control program for causing an information processing apparatus to execute a memory access control procedure, the memory access control procedure comprising:
- performing a page table management procedure configured to accept addresses of respective page tables generated for each of operation modes having different privilege levels where a first access right in accordance with the relevant operation mode is set with respect to one virtual address space, from an operating system that manages the virtual address space and configured to associate the addresses with the operating system to be recorded in a page table correspondence information storage;
- executing a context switch control procedure configured to set a second access right indicating a value lower than or equal to the first access right in accordance with the operation mode where the first access right is relatively small, in a memory management device in accordance with a switch of the operation mode of the operating system;
- and
- processing a fault processing procedure configured to set, in accordance with an memory access beyond the second access right, the address corresponding to the current operation mode in the memory management device, configured to cause the memory management device to execute a flush of a translation look-aside buffer, and configured to set the second access right indicating a value for validating the first access right set in the page table related to the relevant address in the memory management device,
- wherein the memory management device performs a control on the memory access while the second access right is prioritized over the first access right related to the page table where the address is set in the memory management device.