COURSE DESCRIPTION CSCI 524 - Distributed Operating System Design Description: Analysis of operating system design principles for multiple computers. A distributed operating system model is presented and compared to selected network and distributed operating system examples. Prerequisite: 423 or equivalent. (3). Textbook: Tanenbaum, A. & Maarten van Steen, Distributed Systems: Principles and Paradigms (2nd Edition) Prentice-Hall, 2006. Plus various research articles Coordinator: P. Tobin Maginnis, Associate Professor of Computer and Information Science Goals: In depth analysis of distributed operating system design including a model presentation, principles, design tradeoffs and implementations details. Prerequisite by Topic 1. Familiarity with a general purpose high-level language such as C, Pascal, or Ada. 2. Familiarity with general programming concepts. 3. Knowledge of basic operating system principles. 4. Knowledge of the Linux operating system. Topics: 1. Introduction to distributed systems 2. Communication models in distributed systems 3. Synchronization issues 4. Processes versus Processors 5. Logical versus literal file systems 6. Distributed shared memory 7. Example systems 8. Three tests Graduate vs undergraduate requirements Undergraduates are responsible for the lecture portion while graduate students are responsible for lecture and laboratory course components. In this way undergraduates will understand the theory and principles while graduate students must demonstrate mastery of these concepts though programming assignments. Laboratory Projects See: http://pix.cs.olemiss.edu/csci423 Course Grading Undergraduate: Three written tests @ 100 points each 300 --- Total course points 300 Graduate: Three written tests @ 100 points each 300 Programming project 100 --- Total course points 400 First ten questions of the final must replace a previous test, last ten bonus questions count a total of one letter grade worth of points (e.g. 30 for 300, 40 for 400 and so on). But, access to bonus points require that you score your average or better from the regular tests on the first ten questions of the final. Grading scale for 300 points: 370 and up -> A 340 to 369 -> B 310 to 339 -> C 280 to 309 -> D Up to 279 -> F Grading scale for 400 points: 360 and up -> A 320 to 359 -> B 280 to 319 -> C 240 to 279 -> D Up to 239 -> F Course Objectives Upon course completion the student should be able to: 1. Describe categories of distributed and parallel computer architectures independent of circuit packaging. 2. Compare and contrast various distributed operating system designs based upon recourse sharing, reliability, and performance design goals. 3. Describe system architecture and operating design parameters which significantly impact algorithm performance. 4. Describe operating system design elements offer performance improvements over other resource sharing distributed operating systems designs. 5. Describe the Global State Problem in terms of process and file naming, interprocess communication and synchronization, and resource management. 6. Describe the design tradeoffs of distributed file systems.