Patent ID: 8327363

Claim:
A method to be executed at least in part in a computing device for managing application compatibility in a multi-core processor system, the method comprising: receiving a thread from an application for processing by the multi-core processor system; determining whether the thread has a fixed core affinity for being executed by a particular core of the multi-core processor system; determining whether the received thread is from a single-thread legacy application, a multi-thread legacy application or a multi-core compatible application; when the thread is determined to be from a single-thread legacy application, assigning the fixed core affinity to the thread when the received thread is determined not to have an included fixed core affinity and placing the thread in the order of its arrival to a per-processor queue associated with the included fixed core affinity or the assigned fixed core affinity; when the thread is determined to be from the multi-thread legacy application, placing the received thread in a global run queue according to a determined priority when the thread is determined to not have the fixed core affinity to a particular core or placing the received thread in the per-processor queue when the thread is determined to have the fixed core affinity to a particular core; and when the thread is determined to be from the multi-core compatible application, placing the thread in one of the global run queue and the per-processor queue based on a designation by the application and the determination of whether the thread has the fixed core affinity for being executed by a particular core of the multi-core processor system.