Presentation is loading. Please wait.

Presentation is loading. Please wait.

Overview of Operating Systems Introduction to Operating Systems: Module 0.

Similar presentations


Presentation on theme: "Overview of Operating Systems Introduction to Operating Systems: Module 0."— Presentation transcript:

1 Overview of Operating Systems Introduction to Operating Systems: Module 0

2 Course Introduction u Course Overview  Objectives  Topics  Prerequisite knowledge u Course Material  Texbooks  eBooks  Course homepage  Helpful links  Syllabus  D2L  Assignments, quizzes http://cs.uwm.edu/~cs537/

3 Objectives u Understand the principles of OS design  concentration on systems which are general-purpose multi-user single processor u See how OS design can impact program performance u Understand concurrency, and learn of the problems (such as race conditions) and tools used to solve them (such as semaphores) u Learn major features of the POSIX API  as implemented by Solaris

4 Core course topics u Computer architecture & OS foundations u Process management  Concurrency  Synchronization u Memory management u CPU scheduling u File systems

5 Prerequisite knowledge u The C++ programming language u Assembly language for some machine u Some familiarity with UNIX u Basic graph theory u Understanding of basic probability  Conditional probability  Expected value

6 What is an operating system? u Functions of an Operating System  Control resource allocation  Provide a user an environment for doing work u Traditional Design Approaches  Layers, modules, microkernel, monolithic u Traditional Types of Operating Systems  General Purpose  Multiprocessor  Distributed  Real-time

7 Functions of an OS: Resource Management u Time management - temporal properties  CPU and disk transfer scheduling u Space management  main and secondary storage allocation u Synchronization and deadlock handling  IPC, race condition, coordination u Accounting and status information  resource usage tracking

8 Functions of an OS: User Environment u Transforms bare hardware machine into higher level abstractions u Execution environment  process implementation  The processor does not know about processes  file manipulation  Blocks and sectors  file names and directories  interrupt handling  Serial device event  button click  I/O actions  Delayed block write scheduled  Save a file

9 What can understanding the OS do for me? u The machine code executed while your program is running is determined by the C++ statements in your program, the compiler and libraries, and the operating system CPU C++ program C++ Compiler Library Operating System


Download ppt "Overview of Operating Systems Introduction to Operating Systems: Module 0."

Similar presentations


Ads by Google