This book presents the basic rudiments of multiprocessor task scheduling and its applications in a simple and easy to understand manner. The book avoids the abstract mathematical proofs as well as specialized technical details of different areas of application; it is intended to motivate the readers in getting a clear grasp of the basic concepts of the subject and its possible applications. A special feature of the book is that it provides details solutions to the problems undertaken for study. These are intended to help the reader in developing confidence that he/she has correctly grasped the concepts introduced in the chapter. The readers will find this book of real help in understanding the concepts of scheduling the tasks graphs on homogeneous as well heterogeneous multiprocessor systems and their applications in load balancing. The book also provides an overview on deciding the optimal number of processors required in a multiprocessor system to reduce the overall system cost.