← Back to Patent Explorer
US5075848A Expired / Lapsed US ⏱️ 0.0 years remaining

Object lifetime control in an object-oriented memory protection mechanism

Assignee: Intel Corp
•
Filing: 1989-12-22
•
Granted: 1991-12-24
•
Expires: 2009-12-22
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract An object-oriented computer architecture in which access descriptors include an object index for selecting an object in the address space, and a rights field specifying the permissible operations on a bi-paged object selected by the access descriptor. A local object lifetime bit is provided in the encoded fields portion of access descriptors, object descriptors, and page table entries to determine the lifetime of an object. The AD lifetime bit in the encoded fields of AD is compared in OTE Lifetime Check Logic with the destination object lifetime, the OTE local bit in the encoded fields of the OTE access descriptor. The OTE local bit in the encoded fields of the OTE is compared in PDTE Lifetime Check Logic with the destination object lifetime, the PDTE local bit in the encoded fields of the PDTE access descriptor. The PDTE local bit in the encoded fields of the PDTE is compared in PTE Lifetime Check Logic with the destination object lifetime, the PTE local bit in the encoded fields of the PTE access descriptor. If any of these checks fails, a protection lifetime fault is asserted.

Inventors

  • 👤 Konrad K. Lai
  • 👤 Frederick J. Pollack

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-23 17:21
CPC Classifications
G; G06; G06F; G06F12/00; G06F12/14; G06F12/1458; G06F12/1466; G06F12/1475; G06F9/00; G06F9/06; G06F9/44; G06F9/448; G06F9/4488; G06F12/02; G06F12/0223; G06F12/023; G06F2216/00; G06F2216/09

Claims Analysis

Total Claims: 6
Claim 1
Independent Claim 186 words
A data processing system including a memory space (10) and a processor register space (11) in a processor of said data processing system for storing object descriptors having base and length information stored therein for use in locating objects in said memory space, communicating means in said processor for communicating with said memory space (10); executing means in said processor for executing an operation by means of an operator specified in an instruction (14); a plurality of addressable objects, including a bipaged object (38), said plurality of addressable objects being stored in an address space of said memory space, said plurality of addressable objects including instruction objects comprised of instructions including said instruction (14) defining an operation; an address (20) referenced in said instruction (14), said address (20) being specified as an offset (22) and an access descriptor (AD) (24); said plurality of objects including an object table (42), a page table directory (60), and a page table (44); each of said objects being comprised of words, each of said words being either an access descriptor or a data word; each of said access descriptors including
Claim 2
Dependent Claim 186 words
A data processing system including a memory space (10) and a processor register space (11) in a processor of said data processing system for storing object descriptors having base and length information stored therein for use in locating objects in said memory space, communicating means in said processor for communicating with said memory space (10); executing means in said processor for executing an operation by means of an operator specified in an instruction (14); a plurality of addressable objects, including a bipaged object (38), said plurality of addressable objects being stored in an address space of said memory space, said plurality of addressable objects including instruction objects comprised of instructions including said instruction (14) defining an operation; an address (20) referenced in said instruction (14), said address (20) being specified as an offset (22) and an access descriptor (AD) (24); said plurality of objects including an object table (42), a page table directory (60), and a page table (44); each of said objects being comprised of words, each of said words being either an access descriptor or a data word; each of said access descriptors including
Claim 3
Dependent Claim 317 words
an object index for selecting an object in said address space, 2. a rights field, said rights field specifying permissible operations on an object selected by said access descriptor; said data processing system comprising: each of said access descriptors including access descriptor (AD) lifetime bit means for indicating a lifetime of an object specified by said access descriptor; first means for storing said object table object (42) at an address accessible by said processor upon processor initialization, second means for storing in said object table object table entry (OTE) object descriptors for use by said processor in forming physical addresses to said page table directory object (60), third means for storing in each of said object descriptors a first encoded field (50) specifying a base address of an object referenced by said object descriptor and a second encoded field (52) which includes page rights; said object storage descriptor includes an OTE lifetime bit means for indicating a lifetime of said object selected by said access descriptor; fourth means for storing in said page table (44) page table entries for use by said processor in forming physical addresses to said paged object (38), fifth means for storing in each page table entry a page rights field (81); sixth means for storing in said offset (22) a page index (PI) used to index into a selected page table to locate said page table entry, and a page offset (PO) used in conjunction with a base address (79) stored in said page table entry to locate a datum entry in said paged object (38); and, means (150) for comparing said AD lifetime bit of said access descriptor with said OTE lifetime bit of said object table entry and for asserting a fault upon the condition that an access permitted by said AD lifetime bit of said access descriptor is inconsistent with said OTE lifetime bit of said object table entry.
Claim 4
Dependent Claim 317 words
an object index for selecting an object in said address space, 2. a rights field, said rights field specifying permissible operations on an object selected by said access descriptor; said data processing system comprising: each of said access descriptors including access descriptor (AD) lifetime bit means for indicating a lifetime of an object specified by said access descriptor; first means for storing said object table object (42) at an address accessible by said processor upon processor initialization, second means for storing in said object table object table entry (OTE) object descriptors for use by said processor in forming physical addresses to said page table directory object (60), third means for storing in each of said object descriptors a first encoded field (50) specifying a base address of an object referenced by said object descriptor and a second encoded field (52) which includes page rights; said object storage descriptor includes an OTE lifetime bit means for indicating a lifetime of said object selected by said access descriptor; fourth means for storing in said page table (44) page table entries for use by said processor in forming physical addresses to said paged object (38), fifth means for storing in each page table entry a page rights field (81); sixth means for storing in said offset (22) a page index (PI) used to index into a selected page table to locate said page table entry, and a page offset (PO) used in conjunction with a base address (79) stored in said page table entry to locate a datum entry in said paged object (38); and, means (150) for comparing said AD lifetime bit of said access descriptor with said OTE lifetime bit of said object table entry and for asserting a fault upon the condition that an access permitted by said AD lifetime bit of said access descriptor is inconsistent with said OTE lifetime bit of said object table entry.
Claim 5
Dependent Claim 70 words
The data processing system in accordance with claim 1 wherein said AD lifetime bit means for indicating the lifetime of an object specified by said access descriptor comprises seventh means for storing a Local bit (bit 5), said local bit having a value of 0 indicating a global object with unbound object lifetime and said local bit having a value of 1 indicating a local object with bound object lifetime.
Claim 6
Dependent Claim 77 words
The data processing system in accordance with claim 2 wherein said means (150) for comparing said AD lifetime bit of said access descriptor with the said OTE lifetime bit of said object table entry includes means for asserting a PROTECTION.LIFETIME fault upon the condition that said AD has its associated local bit set to 1 and the lifetime bit of said object table entry (OTE) has its associated local bit set to 0 (is of global lifetime).

References Cited (Backward Citations)

US4121286A Cited
US4325120A Cited
US4442484A Cited
US4498131A Cited
US4498132A Cited
US4701840A Cited
US4791550A Cited
US4814971A Cited
US4853842A Cited
US4811208A Cited
JPS6358558A Cited
JPH03192145A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1994-12-23 1995-06-24 1995-12-24 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 1998-12-23 1999-06-24 1999-12-24 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2002-12-23 2003-06-24 2003-12-24 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag