1 / 16

Introduction to Operating Systems: Concepts, Functions, and Evolution

This course covers the fundamentals of operating systems, including concepts, functions, and the evolution of OS technology. Topics include resource management, kernel implementation, API design, and system software examples. Assignments, labs, exams, and quizzes are included to reinforce learning.

trew
Download Presentation

Introduction to Operating Systems: Concepts, Functions, and Evolution

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. CS350 Operating Systems

  2. Administrivia • Assignments • Homework on most chapters • Approximately 8 lab assignments • Exams • Midterm • Final (comprehensive) • Quizzes • Random, 10 minutes each • Grades required to pass (after curving) • >= 70 average on labs • >= 70 average on (h/w + quizzes) together • >= 60 on midterm to pass

  3. Course Outline

  4. Introduction & Motivation • Wanted – a methodology to: • get more work done in a fixed time • allow multiple users on 1 computer • allow programs to interact with each other • maximize memory and CPU utilization • reduce the need for device handling • allow programs' parts to be shared • make the system more usable (friendlier?) • make system faster

  5. Why Study Operating Systems? • Understand support structure so we can: • Exploit system features • Learn to write more effective code • Learn to design an OS

  6. What IS an Operating System? • A "virtual machine" that provides: • An abstraction of some virtual computer • Common functionality for apps • Security across apps/devices • Some level of concurrency (maybe) • Portability across real machines • Simplified access to resources • Sharing of resources • Services for apps

  7. Perspectives • End user • Getting work done • Application programmer • More efficient use of system • Make work easier for user • O/S programmer • Exploit h/w • Enhance performance, usability

  8. Examples of System Software • Tools - a DBMS • API's - functions to create windows • Resident programs – resource mgmt

  9. Abstractions • User • Windows, folders • Application programmer • OS, language API's • Run-time libraries & DLL's • Shell • OS programmer • Hardware interfaces • Machine instructions • OS service interfaces

  10. Abstract View of System User Space Application Programming Interface O/S Space

  11. The API • Application Programming Interface • Exposes a portion of an environment • Provides services • I/O • Memory • Protection • Security

  12. Evolution of OS's • Uni-programming • DOS • Apparent multiprogramming • Windows Versions 2 to 3.1 • True multi-programming • UNIX/LINUX, OS/2, Windows95+ • Mainframe systems: • MVS, VMS, VM

  13. OS Strategies • Batch • All work pre-scheduled • Timesharing • Multi-user, Interactive • PC's and Workstations • Single-user, interactive • Embedded • Satellites, robots, etc • PDA's • Single-user, interactive, small • Network OS's • Multi-machine, multi-user

  14. Resource Management • Resources • Memory • CPU cycles • I/O • Includes networks, robot arms, motors • That is, any means of getting information (or signals) into or out of the computer

  15. Resource Sharing • Why do we need to share? • Greater throughput • Lowers cost of resources • Allows more resources to be available

  16. The Kernel • Implements O/S functions • Privileged, non-interruptible • Sometimes reduced to a "micro-kernel" • Absolutely minimal set of functions required to be in privileged mode • Micro-kernel does NOT include : • Device drivers • File services • Process server • Virtual memory mgmt

More Related