×

Multiprocessor system implementing virtual memory using a shared memory, and a page replacement method for maintaining paged memory coherence

  • US 6,684,305 B1
  • Filed: 04/24/2001
  • Issued: 01/27/2004
  • Est. Priority Date: 04/24/2001
  • Status: Active Grant
First Claim
Patent Images

1. A virtual memory page replacement method for use in a multiprocessor system comprising a first processor and a second processor, the method comprising:

  • accessing a set of page table entries of the second processor, wherein each of the set of page table entries corresponds to a different page of a set of pages of the second processor, and wherein each page of the set of pages of the second processor is stored in a memory and corresponds to a first page of the first processor to be removed from the memory, and wherein each page table entry of the second processor comprises a present bit and a dirty bit, and wherein the present bit has a value indicating whether the corresponding page of the second processor is present in the memory, and wherein the dirty bit has a value indicating whether the corresponding page of the second processor needs to be written to a storage;

    changing a value of the present bit of each of the set of page table entries to indicate that the corresponding page of the second processor is not present in the memory, wherein the changing is performed such that the value of the dirty bit of each of the set of page table entries is not changed;

    informing the second processor of a need to remove any entry of a buffer of the second processor corresponding to a page of the set of pages, wherein the buffer includes multiple entries;

    reading each of the set of page table entries;

    wherein the read is performed after the informing;

    reading a page table entry corresponding to the first page of the first processor, wherein the page table entry comprises a dirty bit indicating whether or not the first bit needs to be written to the storage; and

    writing the first page of the first processor from the memory to the storage if;

    (i) a dirty bit of at least one of the set of page table entries obtained during the reading of each of the set of page table entries indicates the corresponding page of the second processor needs to be written to the storage, or (ii) the dirty bit of the page table entry obtained during the reading of the page table entry of the first processor indicates the first page of the first processor needs to be written to the storage.

View all claims
  • 6 Assignments
Timeline View
Assignment View
    ×
    ×