1 / 25

Computer Systems Architecture CMT603 Operating Systems

Computer Systems Architecture CMT603 Operating Systems. Ian Cooper i.m.cooper@cs.cf.ac.uk. Plan for This session. Introduce myself Talk about the style of the lectures Brief introduction to Operating Systems Cover a few basic concepts. Ian Cooper. BEng Electronics. MSc Computing

ulla-sears
Download Presentation

Computer Systems Architecture CMT603 Operating Systems

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Computer Systems ArchitectureCMT603Operating Systems Ian Cooper i.m.cooper@cs.cf.ac.uk

  2. Plan for This session • Introduce myself • Talk about the style of the lectures • Brief introduction to Operating Systems • Cover a few basic concepts.

  3. Ian Cooper • BEng • Electronics • MSc Computing • Writing up PhD • Nortel • Holliday group / iTouch • Allied Telesyn Research

  4. The Course Info • INTERACTIVE!!!!! • 11 hours + 1 revision lecture • Example Exercises • Reading • Modern Operating Systems (second edition). Andrew S. Tanenbaum. Prentice Hall, 2001. • Operating System Concepts. Seventh edition. Silberschatz Galvin, Addison-Wesley, 2005. • INTERACTIVE!!!!!

  5. Examples of Operating Systems. What is an operating system? OSX Windows Mobile Linux Mac OS Android (open handset alliance) Unix Windows XP Windows 95 MS-DOS Windows Vista Symbian Acorn MOS

  6. What is an operating system? • What does it do? • Process Management • Memory management • I/O management • Support functions • Networking • User interface • Security

  7. Where does it fit in? Application Program Instruction Level Operating System Implementation Instruction Set Architecture Micro architecture

  8. Operating System Goals • Efficiency • Throughput • Functionality • Robustness • Extensibility • Portability • Security • Interactivity

  9. Course Contents. • Introduction • Processes and Threads • Scheduling • Critical Section Algorithms • Semaphores • Memory • Contiguous memory.. Fixed/Variable partition • Non Contiguous memory.. Paging/Segmentation • Virtual memory • File Systems

  10. Concepts • Architectures of Operating Systems • Monolithic • Layered • Kernel • Microkernel • Virtual Machines • Increasing Efficiency • Multi program • Multi User

  11. Monolithic Architecture • Monolithic Architecture—the early operating systems • Every component is contained in the kernel, can directly communicate with other components

  12. Monolithic Architecture User Space Applications OS Layer System Calls Computer Hardware

  13. Monolithic Architecture • Pros • Highly efficient – by direct intercommunication between components • Cons • difficult to develop • difficult to isolate the source of bugs and other errors • particularly susceptible to damage from malicious code

  14. Layered Architecture • Layered OS structure: • Group components that perform similar functions into layers. Each layer communicates only with neighbour layer User Space Kernel Space Layer 3 Layer 2 Layer 1 Layer 0 Computer Hardware

  15. Layered Architecture • Pros • It provides good modularity – helps simplify the development of an OS • Cons • Less efficient • Complex design – each functionality has to be divided into parts to fit into different layers.

  16. Kernel Based Architecture • It separates the machine-independent parts from the machine-dependent parts • Kernel is machine-dependent. It contains the basic component of OS. User Space Operating System OS Kernel Computer Hardware

  17. Kernel Based Architecture • Pros • Better portability—Kernel encloses all the machine-dependent code • Cons • Suffers similar problem as in layered OSs

  18. Microkernel Based Architecture • As OS expanded, the kernel became large and difficult to manage • Microkernel approach removes all nonessential components from the kernel and implementing them as system and user-level programs. • Result: A smaller kernel

  19. Microkernel Based Architecture User Space Operating System Microkernel Computer Hardware

  20. Microkernel Based Architecture • Pros • Enhance portability, extensibility, reliability and security • Cons • Less efficient—increased system function overhead

  21. Virtual Machines • Can create the illusion that there are more than one separate machines. User Space User Space User Space Kernel Kernel VM1 VM1 Virtual machine implementation Host Operating System ComputerHardware

  22. Increasing Efficiency • Multiprogramming • Try to Keep the CPU busy • CPU operations take less time than I/O • When a process waits for I/O operation, OS swaps to another process. Operating System Job 1 Job 2 Job 3

  23. Multi User • Logical extension of Multiprogramming

  24. Summary • What an Operating System does • Where an Operating System fits in • How an Operating System works • Architectures of Operating Systems • Multi [user, program]

  25. Question…(to think about, you don’t have to go and research this. (yet)) • If the OS is a multiprogramming OS, and the OS chooses a job for execution, this job will be active in the CPU. This means that (in a single processor computer) the OS is not running. • How does the OS retain control over the computer resources in order to swap the jobs???

More Related