How we did it:
For any feedback, any questions, any notes or just for chat - feel free to follow us on social networks
W. Richard Stevens, Bill Fenner, Andrew M. Rudoff
* *Previous editions sold over 160,000 units! Second Edition (1998) sold over 53,000 in retail alone! *Updates coverage of programming standards, debugging techniques, and covers Operating Systems including Red Hat 9, Solaris 9, HP-UX, Free BSD 4.8/5.0, AIX 5.x, and Mac OS X. *Bill Fenner (AT/T Labs) and Andrew Rudoff (SUN) carry on the tradition of this great work.
W. Richard Stevens
A practical book that explains many of the details that have been considered a mystery, this guidebook focuses on the design, development, and coding of networking software under the UNIX operating system. It begins by showing how a fundamental basic for networking programming is interprocess communication (IPC), and a requisite for understanding IPC is a knowledge of what constitutes a process. Throughout, the text provides both a description and examples of how and why a particular solution is arrived at.
To guide readers through the new scripting language, Python, this book discusses every aspect of client and server programming. And as Python begins to replace Perl as a favorite programming language, this book will benefit scripters and serious application developers who want a feature-rich, yet simple language, for deploying their products. The text explains multitasking network servers using several models, including forking, threading, and non-blocking sockets. Furthermore, the extensive examples demonstrate important concepts and practices, and provide a cadre of fully-functioning stand alone programs. Readers may even use the provided examples as building blocks to create their own software.
Most applications in distributed computing center around a set of common subproblems. Distributed Systems: An Algorithmic Approach presents the algorithmic issues and necessary background theory that are needed to properly understand these challenges. Achieving a balance between theory and practice, this book bridges the gap between theoreticians and practitioners. With a set of exercises featured in each chapter, the book begins with background information that contains various interprocess communication techniques and middleware services, followed by foundational topics that cover system models, correctness criteria, and proof techniques. The book also presents numerous important paradigms in distributed systems, including logical clocks, distributed snapshots, deadlock detection, termination detection, election, and several graph algorithms. The author then addresses failures and fault-tolerance techniques in diverse applications, such as consensus, transactions, group communication, replicated data management, and self-stabilization. He concludes with an exploration of real-world issues, including distributed discrete-event simulation and security, sensor networks, and peer-to-peer networks. By covering foundational matters of distributed systems and their relationships to real-world applications, Distributed Systems provides insight into common distributed computing subproblems,
Written by experts, this unique Linux networking tutorial/reference provides a practical overview and understanding of the implementation of networking protocols in the Linux kernel. The organization of the book follows the TCP/IP layering model, beginning with the kernel's network device drivers, continuing with link-layer protocols such as PPP, and finally giving a description of all core protocols of the TCP/IP protocol family.
Ioannis Pavlidis, Vassilios Morellas, Pete Roeber
The rapid spread of PC-based cameras has popularized an array of software applications where computer video programming plays a crucial role. These applications include smart user interfaces (eye-controlled), video conferencing, automated security and surveillance, industrial inspection, and web cameras. This book comes at a critical time when web cameras and cameras in general are becoming ubiquitous and are communicating with computers in one way or another. This in turn is fueling demand for developers who are well versed in computer video processing applications. This book, the first on the topic, includes clear explanations of relevant computer vision concepts when introducing video processing coding examples. Special attention is given to the development of web-based video processing applications through the use of DirectX & Java.