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