synchronization in multicore systems

if multiple cores are executing at different frequencies, how to implement synchronization? for example if 1 core is working at x speed and other woring at 100x speed, the faster core will always hog on the common resource and slow core will starve.

solution to this problem is token based mutex. the mutex should assign a token to the incoming request irrespective of which core generates the request. And it should serialize the service to request using these tokens. this way both cores will get the shared variable irrespective of their clock speeds.