Operating System Concepts with Java , Sixth Edition uses Java to illustrate fundamental operating system concepts. All of the Java code has been updated to Java 1.4. Complete Java programs are used to illustrate threads, interprocess communication (IPC), process and thread synchronization, deadlock, thread scheduling, and memory-mapped I/O. The client-server model is integrated throughout and additional coverage of distributed systems is provided. The rich networking features of Java, including sockets and remote method invocation (RMI), are used to demonstrate networking and client-server concepts. Finally, there are several examples of the most popular operating systems, such as Linux, Windows 2000/XP, Solaris, and Mac OS X. Operating System Concepts with Java , Sixth Edition is the new edition of the book previously titled Applied Operating System Concepts by the same authors. Table of Contents Part I: Overview Introduction Computer-System Structures Operating-System Structures Part II: Process Management Processes Threads CPU Scheduling Process Synchronization Deadlocks Part III: Storage Management Memory Management Virtual Memory File System Interface File System Implementation Part IV: I/O Systems I/O Systems Mass-Storage Structure Part V: Distributed Systems Distributed System Structures Distributed File System Distributed Coordination Part V: Protection and Security Protection Security Part VI: Case Studies The Linux System Windows 2000/NT Windows XP Historical Perspective Appendix A: The FreeBSD System (Contents Online) Appendix B: The Mach System (Contents Online) Appendix C: Distributed Communication Appendix D: The Nachos System Appendix E: Java Primer