The art of multiprocessor programming - Herlihy, Maurice (Elsevier / Morgan Kaufmann, 2008)