The Little Book of Semaphores is a free (in both senses of the word) textbook that introduces the principles of synchronization for concurrent programming.
In most computer science curricula, synchronization is a module in an Operating Systems class. OS textbooks present a standard set of problems with a standard set of solutions, but most students don't get a good understanding of the material or the ability to solve similar problems.
The approach of this book is to identify patterns that are useful for a variety of synchronization problems and then show how they can be assembled into solutions. After each problem, the book offers a hint before showing a solution, giving students a better chance of discovering solutions on their own.
The book covers the classical problems, including "Readers-writers", "Producer-consumer", and "Dining Philosophers". In addition, it collects a number of not-so-classical problems, some written by the author and some by other teachers and textbook writers. Readers are invited to create and submit new problems.
Penrose is a java-based virtual directory server. Virtual directory enables federating (aggregating) identity data from multiple heterogeneous sources like directory, databases, flat files, and web services - real-time - and makes it available to identity consumers via LDAP.
J. Abbate. MIT Press, Cambridge, MA, (1999)Provides a good overview over the history of the Internet.
Use of the Internet has grown tremendously in a very short time and we take much of it for granted. We shop online, bank online, purchase airline tickets and make hotel reservations online, all at the click of a mouse through the World Wide Web, a graphical application for using the Internet. But how did the Internet get its start?
In Inventing the Internet, Janet Abbate tells the tale of the creation and evolution of the Internet beginning in the late 1960s with the development of a revolutionary concept for transferring data called packet switching developed simultaneously by Paul Baran of the Rand Corporation in the U.S. and Donald Davies of the National Physics Laboratory in Great Britain.
Abbate discusses the challenges faced by the Advanced Research Projects Agency (ARPA) in creating ARPANET, the first wide-scale computer network. ARPA's challenges ranged from utilizing the new and unproven technique of packet switching to connecting a wide variety of incompatible computers to the fledgling network. Packet switching proved to be a success but as Abbate points out, it is hard to say if packet switching made ARPANET a success or if ARPANET made packet switching a success. Abbate explains the efforts of several organizations that went into developing international standards that were necessary for the Internet to become as successful as it has become.
Abbate also explores the social issues surrounding the creation and development of the Internet; issues such as the cooperation necessary between the builders and the users of ARPANET in the 1970s and 80s that made ARPANET more user friendly to how the users themselves saved the ARPANET and ultimately the Internet through the popularization of an unlikely application. Abbate states 'had the ARPANET's only value been as a tool for resource sharing, the network might be remembered today as a minor failure rather than a spectacular success. But the network users unexpectedly came up with a new focus for network activity: electronic mail.'
Abbate delves into the popularization of the Internet through such applications such as the World Wide Web and how private enterprises including Internet service providers such as America Online, CompuServe and Prodigy quickly transformed the Internet from a dull, text-only entity to a glitzy, graphically oriented medium. The World Wide Web exponentially added to this popularization by providing an application that was not only easy to use but also wildly entertaining to both expert and novice users alike.
Abbate presents this history of the Internet in an easy-to-read style that is both entertaining and informative. Inventing the Internet is well documented with extensive chapter notes and an excellent bibliography..
F. Abbattista, F. Calefato, D. Gendarmi, и F. Lanubile. Automated Software Engineering - Workshops, 2008. ASE Workshops 2008. 23rd IEEE/ACM International Conference on, (сентября 2008)