Patent ID: 6339816
Filing Date: 2002-01-15
Classification: G06F

Abstract:
A method for a data processing system, the system having address conversion and using a translation memory for storing translated address pairs of virtual and real addresses for memory pages in connection with first control bits for marking the validity and write authorization of entries, wherein when write access is not granted the control bit for the write authorization is not set and, as a result, an interrupt request is triggered that triggers a check of the write authorization with the aid of control data present in a corresponding page table entry, the method comprising the steps of:determining whether or not write authorization is allowed by checking the corresponding page table entry; setting the control bit for the write authorization when it is determined that write a horization is allowed by the corresponding page table entry and repeating the write access; checking whether or not an access with a system authorization is present when it is detersined that write authorization is not allowed by the corresponding page table entry; setting the control bit for the write authorization without any modification to the corresponding page table entry when an access with the system authorization is present, and setting indicator as second control bits before the write access is repeated without triggering a new interrupt request and using the second control bits subsequent to the completion of the system accesses to invalidate the entries in the translation memory dependent on a type of the indicators wherein a global control bit is set when a current page is used globally and a task-local second control bit is set when the current page is used task-locally; and checking the control bits for the type of usage of the pages when an operating mode is changed from the system to a user; wherein when global control bit is set for a the globally used page all address entries in the translation memory whose control bit for the write authorization is set and that relate to the globally used pages are declared invalid; when the task-local control bit is set for a task-locally used page, all entries of the relevant local task are declared invalid; and the respective global control bit and task-local control bit are reset after the respective globally used and task-locally used pages are declared invalid; and wherein entries of the relevant local task are declared invalid by modifying an allocated address space identifier.