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

System for locking down part of portion of memory and updating page directory with entry corresponding to part of portion of the memory locked down

Assignee: International Business Machines Corp
•
Filing: 1995-01-06
•
Granted: 1997-10-07
•
Expires: 2015-01-06
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method and apparatus are disclosed for providing exchange of data between a peripheral device having a paging mechanism and an application operating in a virtual machine which includes a page directory for exclusive use by the paging mechanism of the peripheral device. The virtual machine is running on a data processing system and preferably contains a block of memory which is divided into various sections of memory. The page directory is provided to the paging mechanism of the peripheral device when the application requires the use of the peripheral device. A section of memory is selectively locked down in response to the section of memory being utilized by the application. Additionally, the page directory is updated with an entry which identifies the section of memory that is locked down. Memory may also be locked down in order to permit the peripheral device to access that section of memory. The page directory is selectively updated thereafter by mapping entries into the page directory in order to track memory usage within the block of memory utilized by the virtual machine. The page directory is preferably created at the same time the virtual machine is created. Memory for utilization by the virtual machine is preferably locked down while the virtual machine is in the foreground. When the virtual machine is terminated or moved into the background, the sections of memory that have been locked down are then unlocked or freed for other use.

Inventors

  • 👤 William Kress Bodin
  • 👤 David Michael Hyde
  • 👤 Tatchi Placido Lay
  • 👤 James Wilkinson
  • 👤 Susan Yee

Bibliographic Details

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

Claims Analysis

Total Claims: 21
Claim 1
Independent Claim 193 words
A method in a data processing system for providing exchange of data between a peripheral device having a paging mechanism and an application operating in a virtual machine, wherein said virtual machine is running on said data processing system and contains a block of memory having a plurality of sections of memory, comprising: providing a page directory for exclusive use by said paging mechanism of said peripheral device in response to said application requiring usage of said peripheral device; selectively locking down a section of said block of memory within said data processing system in response to a usage of said section of memory by said application; updating said page directory with an entry corresponding to said section of said block of memory locked down to allow said peripheral device access to said section of said block of memory, wherein data within said section of said block of memory is unswappable; and selectively updating therafter said page directory by mapping an entry into said page directory in response to said usage of said section of said memory in order to track memory usage within said block of memory utilized by said virtual machine.
Claim 2
Independent Claim 193 words
A method in a data processing system for providing exchange of data between a peripheral device having a paging mechanism and an application operating in a virtual machine, wherein said virtual machine is running on said data processing system and contains a block of memory having a plurality of sections of memory, comprising: providing a page directory for exclusive use by said paging mechanism of said peripheral device in response to said application requiring usage of said peripheral device; selectively locking down a section of said block of memory within said data processing system in response to a usage of said section of memory by said application; updating said page directory with an entry corresponding to said section of said block of memory locked down to allow said peripheral device access to said section of said block of memory, wherein data within said section of said block of memory is unswappable; and selectively updating therafter said page directory by mapping an entry into said page directory in response to said usage of said section of said memory in order to track memory usage within said block of memory utilized by said virtual machine.
Claim 3
Dependent Claim 36 words
The method of claim 1 further comprising the step of creating and locking down said page directory in response to creation of said virtual machine for exclusive use by said paging mechanism of said peripheral device.
Claim 4
Dependent Claim 25 words
The method of claim 2 further comprising the step of freeing said section of memory locked down in response to termination of said virtual machine.
Claim 5
Dependent Claim 28 words
The method of claim 3 further comprising the step of freeing said section of memory locked down in response to a switch of said virtual machine into background.
Claim 6
Dependent Claim 30 words
The method of claim 4 further comprising the step of freeing said section of memory locked down in response to said application no longer requiting access to said peripheral device.
Claim 7
Dependent Claim 40 words
The method of claim 5, wherein said page directory contains a page table and a page frame and wherein said step of updating said page directory comprising the step of mapping entries representing memory locations in a linear address form.
Claim 8
Dependent Claim 32 words
The method of claim 6, further comprising the step of updating said page directory to reflect accesses made to said block of memory while said virtual machine has been switched into background.
Claim 9
Dependent Claim 200 words
A data processing system for providing exchange of data between a peripheral device having a paging mechanism and application operating in a virtual machine, wherein said virtual machine is running on said data processing system and contains a block of memory having a plurality of sections of memory, said apparatus comprising: means for providing a page directory for exclusive use by said paging mechanism of said peripheral device in response to said application requiring usage of said peripheral device; means for selectively locking down a section of said block of memory within said data processing system in response to a usage of said section of memory by said application; and means for updating said page directory with an entry corresponding to said section of said block of memory locked down to allow said peripheral device access to said section of said block of memory, wherein data within said section of said block of memory is unswappable; and means for selectively updating thereafter said page directory by mapping an entry into said page directory in response to said usage of said section of said memory in order to track memory usage within said block of memory utilized by said virtual machine.
Claim 10
Dependent Claim 200 words
A data processing system for providing exchange of data between a peripheral device having a paging mechanism and application operating in a virtual machine, wherein said virtual machine is running on said data processing system and contains a block of memory having a plurality of sections of memory, said apparatus comprising: means for providing a page directory for exclusive use by said paging mechanism of said peripheral device in response to said application requiring usage of said peripheral device; means for selectively locking down a section of said block of memory within said data processing system in response to a usage of said section of memory by said application; and means for updating said page directory with an entry corresponding to said section of said block of memory locked down to allow said peripheral device access to said section of said block of memory, wherein data within said section of said block of memory is unswappable; and means for selectively updating thereafter said page directory by mapping an entry into said page directory in response to said usage of said section of said memory in order to track memory usage within said block of memory utilized by said virtual machine.
Claim 11
Dependent Claim 38 words
The data processing system according to claim 8 further comprising means for creating and locking down said page directory in response to creation of said virtual machine for exclusive use by said paging mechanism of said peripheral device.
Claim 12
Dependent Claim 28 words
The data processing system according to claim 9 further comprising means means for freeing said section of memory locked down in response to termination of said virtual machine.
Claim 13
Dependent Claim 30 words
The data processing system according to claim 10 further comprising means for freeing said section of memory locked down in response to a switch of said virtual machine into background.
Claim 14
Dependent Claim 32 words
The data processing system according to claim 11 further comprising means for freeing said section of memory locked down in response to said application no longer requiring access to said peripheral device.
Claim 15
Dependent Claim 43 words
The data processing system according to claim 12, wherein said page directory includes a page table and a page frame and wherein said means for selectively updating said page directory comprising means for mapping entries representing memory locations in a linear address form.
Claim 16
Dependent Claim 34 words
The data processing system according to claim 13, further comprising means for updating said page directory to reflect accesses made to said block of memory while said virtual machine has been switched into background.
Claim 17
Dependent Claim 191 words
A data processing system for providing exchange of data between a peripheral device and an application, said data processing system comprising: a system memory; a peripheral device, wherein said peripheral device access data in said system memory utilizing fixed locations within said system memory; a page directory, wherein said page directory is for use by said peripheral device; a virtual machine located within said system memory, wherein said virtual machine utilizes a portion of said system memory; an application executing within said virtual machine, wherein said application utilizes a part of said portion of said system memory; locking means, responsive to use of said peripheral device by said application, for locking down said part of said portion of said system memory utilized by said application, wherein said part of said portion of system memory that is locked down is unswappable; and updating means for updating said page directory with an entry corresponding to said part of said portion of system memory that is locked down by said locking means, wherein said peripheral device utilizes said page directory to access said part of said portion of system memory that is locked down.
Claim 18
Dependent Claim 191 words
A data processing system for providing exchange of data between a peripheral device and an application, said data processing system comprising: a system memory; a peripheral device, wherein said peripheral device access data in said system memory utilizing fixed locations within said system memory; a page directory, wherein said page directory is for use by said peripheral device; a virtual machine located within said system memory, wherein said virtual machine utilizes a portion of said system memory; an application executing within said virtual machine, wherein said application utilizes a part of said portion of said system memory; locking means, responsive to use of said peripheral device by said application, for locking down said part of said portion of said system memory utilized by said application, wherein said part of said portion of system memory that is locked down is unswappable; and updating means for updating said page directory with an entry corresponding to said part of said portion of system memory that is locked down by said locking means, wherein said peripheral device utilizes said page directory to access said part of said portion of system memory that is locked down.
Claim 19
Dependent Claim 24 words
The data processing system of claim 15 wherein all of said part of said portion of system memory that is locked down is contiguous.
Claim 20
Dependent Claim 25 words
The data processing system of claim 15 wherein all of said part of said portion of said system memory that is locked down is noncontiguous.
Claim 21
Dependent Claim 19 words
The data processing system of claim 17, wherein said page directory is for use only by said peripheral device.

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2000-10-06 2001-04-07 2001-10-07 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2004-10-06 2005-04-07 2005-10-07 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2008-10-06 2009-04-07 2009-10-07 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag