×

Operating system virtual memory management for hardware transactional memory

  • US 8,250,331 B2
  • Filed: 06/26/2009
  • Issued: 08/21/2012
  • Est. Priority Date: 06/26/2009
  • Status: Active Grant
First Claim
Patent Images

1. A method comprising:

  • at a first hardware thread, an operating system in kernel mode allocating a first virtual page causing the first virtual page to be mapped to a first physical page in a virtual memory page table;

    an application running on the first hardware thread beginning a hardware transaction, such that read or write operations performed while in the transaction implicitly have transactional memory hardware state established when data is read from or written to data cache entries, wherein the data cache entries are correlated to physical addresses in the first physical page, and in the application, the first thread accessing a virtual address within the first virtual page which generates a page fault;

    the first hardware thread performing a user to kernel mode transition caused by the page fault incurring the user to kernel mode transition;

    as a result of the first hardware thread performing a user to kernel mode transition, the transactional memory hardware automatically suspending implicitly correlating transactional memory hardware state in cache entries when data is read or written to cache entries for the first thread;

    then the first hardware thread performing a kernel to user mode transition back to user mode;

    as a result of the first hardware thread performing a kernel to user mode transition, the transactional memory hardware automatically resuming implicit correlating of transactional memory hardware state in cache entries when data is read or written to cache entries for the first thread; and

    wherein the transactional memory hardware state is not automatically flushed as a result of the first hardware thread performing a user to kernel mode transition, the first hardware thread performing a kernel to user mode transition back to user mode, or the execution of instructions while in kernel mode.

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