×

Methods and apparatus for selecting processes for execution

  • US 7,318,128 B1
  • Filed: 08/01/2003
  • Issued: 01/08/2008
  • Est. Priority Date: 08/01/2003
  • Status: Active Grant
First Claim
Patent Images

1. In a multiprocessing computer system having a plurality of processing devices, a method for identifying processes to be executed, the method comprising:

  • detecting when a first process executing on a first processing device releases access to shared data, wherein the first processing device maintains at least a portion of the shared data accessed and released by the first process in a cache associated with the first processing device;

    in response to the first process releasing access to the shared data, attempting to identify a second process that;

    i) formerly executed on the first processing device; and

    ii) is awaiting access to the shared data; and

    providing, to a kernel responsible for selecting processes to execute amongst the plurality of processing devices, an identification of the second process as a process that is ready for execution in the multiprocessing computer system;

    in the kernel responsible for selecting processes to execute amongst the plurality of processing devices;

    receiving the identification of the second process as a process that is ready for execution in the multiprocessing computer system;

    applying an affinity-based process selection technique to select the second process as a next process to execute on the first processing device;

    executing the second process on the first processing device by executing the second process to access the at least a portion of the shared data maintained in the cache associated with the first processing device, such that the first processing device does not have to access that at least a portion of the shared data from a main memory associated with the multiprocessing computer system.

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