Patent US4802084A successfully refreshed from Google Patents.
← Back to Patent Explorer
US4802084A Expired / Lapsed US ⏱️ 0.0 years remaining

Address translator

Assignee: Hitachi Ltd
•
Filing: 1986-02-10
•
Granted: 1989-01-31
•
Expires: 2006-02-10
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract In order to carry out address translation which can reduce an overhead of the VMCP to support a virtual storage, a flag indicating a common segment in the virtual machine and a system identifier are held in a TLB, and a VM identifier is held in a segment table origin stack. For the common segment, a current VM identifier is compared with the VM identifier in the segment table origin stack to determine validity of a TLB entry, and for a non-common segment, a system identifier read from the segment table origin stack is compared with the system identifier in the TLB entry to determine validity of the TLB entry.

Inventors

  • 👤 Hiroshi Ikegaya
  • 👤 Hidenori Umeno
  • 👤 Takashige Kubo
  • 👤 Yoshio Ukai
  • 👤 Nobuyoshi Sugama

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-28 18:30
CPC Classifications
G; G06; G06F; G06F12/00; G06F12/02; G06F12/08; G06F12/10; G06F12/1027; G06F12/1036

Claims Analysis

Total Claims: 4
Claim 1
Independent Claim 415 words
An address translator for translating a virtual address into a corresponding physical address for use in a virtual machine system having a control program for simultaneously operating plural virtual machines with respective operating systems on one real machine, each of said operating systems holding a first identifier for identifying a virtual machine on which the operating system runs, comprising: a segment table origin stack for storing therein identification entries each containing a portion of a segment table origin address for a virtual address, a first identifier and a second identifier representative of a combination of said segment table origin address for a virtual address and said first identifier; a first comparator for comparing a first identifier for a virtual machine on which a current operation is running with each of said first identifiers stored in said segment table origin stack; a second comparator for comparing a portion of a segment table origin address for a virtual address specified by said running program with each of the portions of segment table origin addresses for virtual address stored in said segment table origin stack; an AND gate coupled to receive the outputs of said first and second comparators; an address translation buffer for storing therein address translation entries each containing a portion of a virtual address, a physical address corresponding to the virtual address, a second identifier and a flag indicative of whether or not said virtual address belongs to a common segment in a virtual machine; a third comparator for comparing a second identifier read out, in response to the output of said AND gate, from said segment table origin stack in association with the portion of a segment table origin address for said virtual address specified by said running program with each of said second identifiers stored in said address translation buffer; and selection means coupled to the outputs of said first and third comparators and responsive to said flag in said address translation buffer for delivering the output of said first comparator when said flag indicates that said virtual address specified by said running program belongs to a common segment and for delivering the output of said third comparator when said flag indicates that said virtual address specified by said running program does not belong to a common segment, whereby that one of said physical addresses stored in said address translation buffer which corresponds to the virtual address specified by said running program is delivered in response to the output of said selection means.
Claim 2
Dependent Claim 415 words
An address translator for translating a virtual address into a corresponding physical address for use in a virtual machine system having a control program for simultaneously operating plural virtual machines with respective operating systems on one real machine, each of said operating systems holding a first identifier for identifying a virtual machine on which the operating system runs, comprising: a segment table origin stack for storing therein identification entries each containing a portion of a segment table origin address for a virtual address, a first identifier and a second identifier representative of a combination of said segment table origin address for a virtual address and said first identifier; a first comparator for comparing a first identifier for a virtual machine on which a current operation is running with each of said first identifiers stored in said segment table origin stack; a second comparator for comparing a portion of a segment table origin address for a virtual address specified by said running program with each of the portions of segment table origin addresses for virtual address stored in said segment table origin stack; an AND gate coupled to receive the outputs of said first and second comparators; an address translation buffer for storing therein address translation entries each containing a portion of a virtual address, a physical address corresponding to the virtual address, a second identifier and a flag indicative of whether or not said virtual address belongs to a common segment in a virtual machine; a third comparator for comparing a second identifier read out, in response to the output of said AND gate, from said segment table origin stack in association with the portion of a segment table origin address for said virtual address specified by said running program with each of said second identifiers stored in said address translation buffer; and selection means coupled to the outputs of said first and third comparators and responsive to said flag in said address translation buffer for delivering the output of said first comparator when said flag indicates that said virtual address specified by said running program belongs to a common segment and for delivering the output of said third comparator when said flag indicates that said virtual address specified by said running program does not belong to a common segment, whereby that one of said physical addresses stored in said address translation buffer which corresponds to the virtual address specified by said running program is delivered in response to the output of said selection means.
Claim 3
Dependent Claim 86 words
An address translator according to claim 1, in which said selection means includes a second AND gate coupled to receive the output of said first comparator and a flag signal representative of said flag read out from said address translation buffer, a third AND gate coupled to receive the output of said third comparator and said flag signal, and an OR gate coupled to receive the outputs of said second and third AND gates for generating a signal as said output signal of said selection means.
Claim 4
Dependent Claim 55 words
An address translator according to claim 2, further comprising a fourth comparator for comparing a portion of said virtual address specified by said running program with each of the portions of said virtual addresses stored in said address translation buffer, the output of said fourth comparator being coupled to said second and third AND gates.

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1992-01-31 1992-08-01 1993-01-31 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 1996-01-31 1996-08-01 1997-01-31 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2000-01-31 2000-08-01 2001-01-31 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag