Apparatus and method for handling page protection faults in a computing system
First Claim
Patent Images
1. A computing system, comprising:
- a translator unit arranged to convert a subject code into a target code, the subject code comprising a reference to at least one subject memory page having associated subject page access attributes;
a target processor unit arranged to execute the target code;
a target memory associated with the target processor unit and including a page descriptor store and plurality of memory locations related to the subject memory pages, wherein N most significant bits of the location in the target memory are selected based on information in the page descriptor store according to the subject page access attributes, the N most significant bits indicating a page protection condition of a corresponding subject memory page; and
wherein the translator unit is arranged to allow an attempt to access a target memory location within the plurality of memory locations to proceed without an interruption in control flow, if the attempted access is within the scope of the subject page access attributes for the associated subject memory page, and wherein the translator unit is operable to detect a page protection fault based on an attempt to access a target memory location and determine a nature of the page protection fault by examining the N most significant bits of the respective target memory location.
4 Assignments
0 Petitions
Accused Products
Abstract
Method and apparatus for handling page protection faults in combination particularly with the dynamic conversion of binary code executable by a one computing platform into binary code executed instead by another computing platform. In one exemplary aspect, a page protection fault handling unit (196) is used to detect memory accesses; to check page protection information relevant to the detected access by examining the contents of a page descriptor store; and to selectively allow the access or pass on page protection fault information in accordance with the page protection information.
7 Citations
34 Claims
-
1. A computing system, comprising:
-
a translator unit arranged to convert a subject code into a target code, the subject code comprising a reference to at least one subject memory page having associated subject page access attributes; a target processor unit arranged to execute the target code; a target memory associated with the target processor unit and including a page descriptor store and plurality of memory locations related to the subject memory pages, wherein N most significant bits of the location in the target memory are selected based on information in the page descriptor store according to the subject page access attributes, the N most significant bits indicating a page protection condition of a corresponding subject memory page; and wherein the translator unit is arranged to allow an attempt to access a target memory location within the plurality of memory locations to proceed without an interruption in control flow, if the attempted access is within the scope of the subject page access attributes for the associated subject memory page, and wherein the translator unit is operable to detect a page protection fault based on an attempt to access a target memory location and determine a nature of the page protection fault by examining the N most significant bits of the respective target memory location. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A method of handling page protection faults comprising the steps of:
-
converting a subject code executable that comprises a reference to at least one subject memory page having associated subject page access permissions into a target code executable by the at least one target processor and including references to a target memory, the conversion including establishing a page descriptor store according to the reference to the subject memory page and the associated subject page permissions and forming a plurality of target memory locations related to the subject memory page wherein N most significant bits of the location in the target memory are selected based on information in the page descriptor store according to the subject page access permissions, the N most significant bits indicating a page protection condition of the subject memory page; allowing an attempt to access a target memory location within the plurality of target memory locations to proceed without an interruption in control flow, if the attempted access is within the scope of the subject page access permissions for the subject memory page; and detecting a page protection fault based on an attempt to access a target memory location and determining a nature of the page protection fault by examining the N most significant bits of the respective target memory location. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20)
-
-
21. A non-transitory computer readable recording medium having instructions recorded thereon which when executed by a computing system having at least one target processor cause the computing system to perform at least the steps of:
-
converting a subject code executable that comprises a reference to at least one subject memory page having associated subject page access permissions into a target code executable by the at least one target processor and including references to a target memory, the conversion including establishing a page descriptor store according to the references to the subject memory pages and the associated subject page access permissions and forming a plurality of target memory locations related to the subject memory page wherein N most significant bits of the location in the target memory are selected based on information in the page descriptor store according to the subject page access permissions, the N most significant bits indicating a page protection condition of the subject memory page; allowing an attempt to access a target memory location within the plurality of target memory locations to proceed without an interruption in control flow, if the attempted access is within the scope of the subject page access permissions for the subject memory page; and detecting a page protection fault based on an attempt to access a target memory location and determining a nature of the page protection fault by examining the N most significant bits of the respective target memory location. - View Dependent Claims (22, 23, 24, 25, 26, 27, 28, 29, 30)
-
-
31. A method of handling page protection faults, comprising:
-
converting a subject code executable that comprises a reference to at least one subject memory page having associated subject page access permissions into a target code executable by the at least one target processor and including references to a target memory, the conversion including establishing a page descriptor store according to the reference to the subject memory page and the associated subject page permissions; and allowing an attempt to access a target memory location within the plurality of memory locations to proceed without an interruption in control flow, if the attempted access is within the scope of the subject page access attributes for the associated subject memory page, wherein the information in the page descriptor store is provided in N most significant bits of the location in the target memory, wherein values of the N most significant bits indicate a nature of a page protection condition of a corresponding subject memory page. - View Dependent Claims (32, 33, 34)
-
Specification