Efficient write-watch mechanism useful for garbage collection in a computer system

   
   

An efficient write-watch mechanism and process. A bitmap is associated with the virtual address descriptor (VAD) for a process, one bit for each virtual page address allocated to a process having write-watch enabled. As part of the write-watch mechanism, if a virtual address is trimmed to disk and that virtual address page is marked as modified, then the corresponding bit in the VAD is set for that virtual address page. In response to an API call (e.g., from a garbage collection mechanism) seeking to know which virtual addresses in a processs have been modified since last checked, the memory manager walks the bitmap in the relevant VAD for the specified virtual address range for the requested process. If a bit is set, then the page corresponding to that bit is known to have been modified since last asked. If specified by the API, the bit is cleared in the VAD bitmap so that it will reflect the state since this time of asking. If the bit is not set, to determine if the page was modified, the page table entry (PTE) is checked for that page, and if the PTE indicates the page was modified, the page is known to be modified, otherwise that page is known to be unmodified since the last call. One enhancement uses page directory tables to locate a series of trimmed pages, sometimes avoiding the need to access the PTE.

Ein leistungsfähiges schreiben-passen Einheit auf und verarbeiten. Eine BitübersichtIST mit dem virtuellen Adresse Beschreiber (VAD) für einen Prozeß, ein Bit für jede virtuelle Seite Adresse verbunden, die einem Prozeßhaben zugeteilt wird, schreiben-aufpassen ermöglicht. Als Teil schreiben-passen Sie Einheit auf, wenn eine virtuelle Adresse zur Scheibe getrimmt wird und diese virtuelle Adresse Seite gekennzeichnet wird, wie geändert, dann die entsprechende Spitze im VAD für diese virtuelle Adresse Seite eingestellt wird. In Erwiderung auf eine API benennen Sie (z.B., von einer Abfallansammlung Einheit) das Suchen, zu wissen, welche virtuelle Adressen in processs da letztes überprüft, die Gedächtnismanagerwege die Bitübersicht im relevanten VAD für die spezifizierte virtuelle Adresse Strecke für den erbetenen Prozeß geändert worden sind. Wenn eine Spitze eingestellt wird, dann bekannt die Seite, die dieser Spitze entspricht, geändert worden zu sein, da letztes gebeten worden. Wenn sie durch die API spezifiziert wird, ist die Spitze löschte in die VAD Bitübersicht, damit sie den Zustand seit dieser Zeit des Bittens reflektiert. Wenn die Spitze nicht eingestellt wird, um festzustellen, wenn die Seite geändert wurde, wird der Seitentafeleintrag (PTE) auf diese Seite überprüft, und wenn das PTE anzeigt, wurde die Seite, die Seite bekannt geändert zu werden geändert, andernfalls, daß Seite bekannt, um unverändert zu sein da der letzte Anruf. Eine Verbesserung benutzt Seite Verzeichnistabellen, um eine Reihe getrimmte Seiten zu errichten und manchmal vermeidet die Notwendigkeit, das PTE zugänglich zu machen.

 
Web www.patentalert.com

< Multi-level partitioned database system

< System and method for content caching implementing compensation for providing caching services

> File editing system and shared file editing system with file content secrecy, file version management, and asynchronous editing

> Performing data backups with a stochastic scheduler in a distributed computing environment

~ 00112