Download Windows XP - British Columbia Institute of Technology

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Scheduling (computing) wikipedia , lookup

Trusted Computing wikipedia , lookup

Theoretical computer science wikipedia , lookup

Multi-core processor wikipedia , lookup

Transcript
The Operating System
Getting to Know What an OS Does
Software Types
• Applications a.k.a. Software:
– Word Processor
– Spreadsheet
– Accounting
– Database
– Internet
– Utilities
• Operating Systems:
– Windows
– Linux
– DOS…
Why we need an Operating System (OS)
• Manages the computer hardware so programs can use it
• OS provides consistent environment for applications to run in
varied hardware configurations
– To accommodate different hardware, ‘Device Drivers’ tell the
OS how to communicate with devices
What does the OS do?
•
•
•
•
•
•
•
•
•
Provides user interface
(GUI vs CLI)
Manages system hardware for the applications
Manages memory allocation and protection
Manages processor resources e.g. multitasking
Manages programs loaded into the computer
Manages files and storage resource I/O
Manages additional peripheral devices
Manages system security, integrity
Returns messages to user as needed about the system
Operating System Interfaces
• User Interface:
– Allows user to communicate and interact with computer
– Command Line Interface (CLI)
– Input via keyboard
– Graphical User Interface (GUI)
– Input via mouse
Multitasking
• PCs spend most of their time idle while waiting for input.
– They could use that time to run multiple programs ‘simultaneously’, given
enough memory.
– Problem:
• CPU is limited to only doing one thing at a time
– Solution:
• Processor runs one process for short period of time, then switches to
next process, and so on… (pre-emptive)
– As processor executes billions of instructions per second, it appears many
processes are running at same time.
– With multi-core processors this becomes even easier
Threads / Multi-Threading
• Within programs, individual tasks can run independently
• Independent ‘threads’ can handle separate parts of a process
– Load different elements of a web page
– Manage screen redraws or mouse input while other work is
happening in the background
• Each of these threads can in turn be multi-tasked
Multi-processing
• Modern OS’ support computers with multiple CPUs
– Traditionally via motherboard with multiple processor slots
– Multiple processors are now incorporated into single
packages containing multiple ‘cores’
• Single core, dual core, quad core, etc..
– Individual processes, threads can run simultaneously on
each processor/core
Virtualization
• Virtualization technology allows us to take the efficiency of our
computer one step further
• Can create a ‘virtual computer’ within a computer
– Useful for testing and maximizing resource usage
• In this class we will use a product called VMware
– Creates a ‘virtual’ instance of Windows for you to play with
without worrying about corrupting the computer settings