CITS2230 introduces the key mechanisms of all operating systems - processes, memory management, file systems, and protection and security. The evolution of these mechanisms is presented through a historical tour of operating system development, leading to a study of current hardware and operating system speeds, capacities, and physical limitations. The role of processes, and their creation, scheduling, synchronization, and communication is covered. This is followed by a study of storage management: static and dynamic allocation, paging and segmentation, virtual memory and demand paging, page replacement algorithms, and memory caches and their effect on performance. File system concepts are addressed: input/output hardware and software, files, directories and access mechanisms, file allocation and access algorithms, and performance. Finally, the increasingly important areas of protection and security are introduced: goals, authentication, access mechanisms, protection domains, access control lists and capabilities, and monitoring.
Throughout the unit, reference is made to case-studies from two of today's most successful operating systems, Linux and Microsoft Windows. Laboratory and tutorial work compare and contrast the provision of the key operating system mechanisms in each environment.
|Unit Coordinator:||Prof. Amitava Datta|
|Tutor:||Mr. Matthew Heinsen Egan|
|Lecture times:||9:00 - 10:45am Tuesdays (GGGL:WEBB)|
|Email discussion list for CITS2230:||help2230|
|Consultation times:||3:00 - 4:00 pm Tuesdays, or any time (no prior appointment is required)|
|Programming project handed out||Tuesday 4 September (Week 6)|
|Non-teaching period||Saturday 22 September to Sunday 30 September|
|Programming project due||11:59pm Monday 29 October (Week 13)|
|Final exam||2 hours, November|
Before undertaking this unit, students are strongly encouraged to read:
Completion of the lab sheets is essential for satisfactory progress in this unit.
Moreover, while you are welcome to undertake CITS2230 work on your home computers,
this should not be seen as a substitute for attendance at supervised lab sessions.
You have to make sure that your project submissions work in the Linux environment available in the lab. I will not check your project submissions using any other environment, including Windows.
We will be using the 5th edition of this textbook, but if you can find a 2nd-hand copy of a recent earlier edition, it should suffice. Additional reading material will be handed out, or placed online, during the unit.
Operating Systems: Internals and Design Principles
5th edition, 2005 (or any recent edition)
|School of Computer Science & Software Engineering
The University of Western Australia
Crawley, Western Australia, 6009.
Phone: +61 8 9380 2716 - Fax: +61 8 9380 1089.
CRICOS provider code 00126G