Upload
josephine-darby
View
247
Download
1
Tags:
Embed Size (px)
Citation preview
Operating Systems
• Manage system resources– CPU scheduling– Process management– Memory management– Input/Output device management– Storage device management (hard disks,
CD/DVD drives, etc)– File System Management
• Simplify the development and use of applications
Purpose of an Operating System
• Microsoft Windows• MacOS• Mac and PCs are not directly
compatible but virtualization can be used.
Mainstream Operating Systems
• Operating system for large computers about 40 years ago.
• Linux– Free implementation of Unix– Supported by most platforms
UNIX
• Most “devices” use an operating system to make application development easier.
• Examples: – cell phones (Symbian, BlackBerry,
Windows Mobile, etc).– Aircraft Systems (VxWorks, pSOS, QNX)
Special Purpose OS
• Layers need to be concerned with layer below (and above)
• Layers are isolated from certain changes
Layers
Running Multiple
Operating Systems
Virtual Machine
Hardware
Windows (OS)
Windows Application VMWare Application
Linux (OS)
Linux Application
Running a Virtual
Machine
USER
Windows Applications
Windows
HARDWARE
Figure 2.3Layers with a virtual operating system
LinuxApplications
Linux
Virtual Computer Application
OS Modes
• A typical operating system has two modes of operation. – User Mode– Kernel Mode
• These are like layers of operation within the operating system layer.
User Mode
• The User Mode is concerned with the actual interface between the user and the system.
• It controls things like running applications and accessing files.
Kernel Mode
• The Kernel Mode is concerned with everything running in the background.
• It controls things like:– accessing system resources– controlling hardware functions– processing program instructions.
• The Kernel forms the core of the operating system.– acts like a supervisor for everything that is
happening in the computer.
The Client-Server OS Model
• In the client-server model of an operating system, the User Mode is considered a client.– the User Mode accesses resources
provided by the Kernel (the server).
Gra
ph
ics
Sys
tem
ApplicationService
Typical OS Architecture
ServiceService
Service
ApplicationApplication
Application
Application Interface
Sch
ed
ule
r
Me
mo
ry
Ma
na
ge
r
I/O
De
vice
M
an
ag
er
File
Sys
tem
Se
curit
y S
yste
mKernel
Hardware
User mode(client)
Kernel mode(server)
Gra
ph
ics
Sys
tem
Dispatcher
• Way for the user to control the operating system.
• Two types: graphical user interface (GUI) and command line interface
User Interface
Who starts the OS?
GUI & Command Line
Command Line Interpreter
• Converts typed commands into operating system actions (system calls).
• Most interpreters execute applications to perform the system calls.
Managing System Resources
• An operating system needs to manage a wide range of system resources:– CPU scheduling and process
management– Memory (RAM)– Access to peripheral devices– File system management.
• Decide when applications should run; does the order matter?
• Are the applications active or sleeping?
• Multiple applications at the same time
CPU Scheduling
Word
Applications
Microsoft Outlook
Adobe Acrobat
Internet Explorer
The Process Table
• Keeping track of all of the processes is done with the Process Table.
• The Process Table lists:– Processes that are currently being run– Processes that are waiting to be
executed– Processes that have been temporarily
suspended– It also keeps track of the current status,
or state, of each process.
• Give memory to each application as needed.
• Protect applications from each other
• Protect operating system from ‘bad’ applications
Memory Management
Windows
Word
Internet Explorer
Internet Explorer
Unused
RAM
• Devices are very difficult to program• OS Provides Drivers• Applications speak to drivers• Drivers communicate to device
Peripherals
• Manage Information (files and folders)
• Provide common view of storage devices
File System
Review Questions1. Describe two tasks that are performed by an
operating system.
2. Describe the four layers of interaction in an operating system model.
3. Briefly describe how you can install multiple operating systems on the same computer.
4. Draw a diagram to demonstrate how virtualization can be used to run multiple operating systems at the same time.
5. Briefly describe the client-server model of an operating system.
6. Draw a simple diagram to show the two modes of operations of an OS.
7. Briefly describe the function of the Command Line Interpreter.
8. What are the major differences between System Calls and Interrupts?
9. Describe the purpose of the Process Table.
Thank you