The author claims that this book will enable the novice reader to 'quickly grasp a balanced overview [of parallel and distributed computing]' and I would agree. The content of the book is excellent and the structure is logical and comprehensive. The author covers the background of parallel and distributed computing, various architectures, commonly used models and finally considers future issues and research areas. The introductory section of the book is quite disjointed, however the remainder of the book reads well.
The author does not cover any concepts in great depth, however most of the common parallel and distributed principles are detailed. The book tends to focus more on the parallel than the distributed area of the field. For someone wishing to gain an insight into distributed computing alone, this book is not ideal.
Common principles and pitfalls are introduced at the outset and these points are re-iterated throughout the book, e.g. race conditions and deadlock. Each chapter has a further reading section which provides an excellent resource for expanding on the concepts introduced. My only gripe with this book is the absence of a glossary, which, with masses of acronyms being used, quickly becomes frustrating.
This title is more suited to the reader with knowledge of a specific area of parallel or distributed computing who wishes to gain a holistic view of the field; many areas assume knowledge above the 'elementary concepts of computer science' suggested, making it unsuitable for novices. Overall this bookgives an excellent introduction to the field of parallel computing but tends to neglect some areas of distributed computing.