Access permissions modification
AssigneeApple Inc.
InventorsPeter G. Soderquist, Pradeep Kanapathipillai, Bernard J. Semeria, Joshua P. de Cesare, David J. Williamson, Gerard R. Williams, III
Life of this patent
Estimating the term…
Loading patent…
AssigneeApple Inc.
InventorsPeter G. Soderquist, Pradeep Kanapathipillai, Bernard J. Semeria, Joshua P. de Cesare, David J. Williamson, Gerard R. Williams, III
Estimating the term…
Systems, apparatuses, and methods for modifying access permissions in a processor. A processor may include one or more permissions registers for managing access permissions. A first permissions register may be utilized to override access permissions embedded in the page table data. A plurality of bits from the page table data may be utilized as an index into the first permissions register for the current privilege level. An attribute field may be retrieved from the first permissions register to determine the access permissions for a given memory request. A second permissions register may also be utilized to set the upper and lower boundary of a region in physical memory where the kernel is allowed to execute. A lock register may prevent any changes from being made to the second permissions register after the second permissions register has been initially programmed.
A processor comprising:
A method comprising:
A computing system comprising:
Dependencies are inferred from the claim text.
Drawings are temporarily unavailable. Open the PDF at USPTO
No related US applications are recorded in the indexed filing history.
By checking the subject access rights: using an access-table, e.g. matrix or list
Address translation: using page tables, e.g. page table structures
Providing a specific technical effect: security improvement
Computing and data processing
About 9 years 4 months of term left · ends 5 Mar 2036 (estimated)
Embodiments described herein relate to processors and more particularly, to managing access permissions in a processor.
Computing systems often utilize memory management units (MMUs) for translating virtual addresses into physical addresses. In addition to performing translations, MMUs may also control memory access permissions. Some of the deficiencies with current memory access permissions mechanisms include limited control over kernel read access, limited ability to reduce kernel access to be more restrictive than user access, and updates to access permissions requiring writes to the page tables. Additionally, accesses to the page tables to change permissions are inefficient in terms of throughput and latency.
Systems, apparatuses, and methods for managing access permissions are contemplated.
The above and further advantages of the methods and mechanisms may be better understood by referring to the following description in conjunction with the accompanying drawings, in which:
FIG. 1 is a block diagram illustrating one embodiment of a computing system.
FIG. 2 is a block diagram of one embodiment of a portion of a computing system.
In the following description, numerous specific details are set forth to provide a thorough understanding of the methods and mechanisms presented herein. However, one having ordinary skill in the art should recognize that the various embodiments may be practiced without these specific details. In some instances, well-known structures, components, signals, computer program instructions, and techniques have not been shown in detail to avoid obscuring the approaches described herein. It will be appreciated that for simplicity and clarity of illustration, elements shown in the figures have not necessarily been drawn to scale. For example, the dimensions of some of the elements may be exaggerated relative to other elements.
This specification includes references to “one embodiment”. The appearance of the phrase “in one embodiment” in different contexts does not necessarily refer to the same embodiment. Particular features, structures, or characteristics may be combined in any suitable manner consistent with this disclosure. Furthermore, as used throughout this application, the word “may” is used in a permissive sense (i.e., meaning having the potential to), rather than the mandatory sense (i.e., meaning must). Similarly, the words “include”, “including”, and “includes” mean including, but not limited to.
Terminology. The following paragraphs provide definitions and/or context for terms found in this disclosure (including the appended claims):