The patent badge is an abbreviated version of the USPTO patent document. The patent badge does contain a link to the full patent document.
The patent badge is an abbreviated version of the USPTO patent document. The patent badge covers the following: Patent number, Date patent was issued, Date patent was filed, Title of the patent, Applicant, Inventor, Assignee, Attorney firm, Primary examiner, Assistant examiner, CPCs, and Abstract. The patent badge does contain a link to the full patent document (in Adobe Acrobat format, aka pdf). To download or print any patent click here.
Patent No.:
Date of Patent:
Oct. 07, 1997
Filed:
Jan. 06, 1995
William Kress Bodin, Boca Raton, FL (US);
David Michael Hyde, Boca Raton, FL (US);
Tatchi Placido Lay, Boca Raton, FL (US);
James Wilkinson, Southampton, GB;
Susan Yee, Coral Springs, FL (US);
International Business Machines Corporation, Armonk, NY (US);
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.