Download Class 20 - OS 1.1. OS Introduction

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

Burroughs MCP wikipedia , lookup

Computer terminal wikipedia , lookup

OS/2 wikipedia , lookup

Process management (computing) wikipedia , lookup

Spring (operating system) wikipedia , lookup

Plan 9 from Bell Labs wikipedia , lookup

RSTS/E wikipedia , lookup

Mobile operating system wikipedia , lookup

Security-focused operating system wikipedia , lookup

Copland (operating system) wikipedia , lookup

Unix security wikipedia , lookup

Distributed operating system wikipedia , lookup

CP/M wikipedia , lookup

VS/9 wikipedia , lookup

Transcript
Operating System Principles
AUA CIS331
Albert Minasyan
Operating Systems Principles (Introduction)
Sources:
•
•
•
•
This course structure
OS Introduction
Processes, Threads,
Scheduling, Synchronization
Memory management
I/O systems
Interrupts
Operating
Systems
Yale university
UC Berkeley
JHU
My experience
File Systems
Protection and Security
Distributed Processing
Networks
Different OS comparison
Exercises, Assignments, Project (C, C++)
WinAPI
Linux API
Windows OS
Real
Workstation
Linux OS
Virtual
Machine
Minimal Requirement: Student’s should complete programming assignments on “Unix and Windows
Processes and Threads programming on C, C++”
Required Textbook:
Silberschatz, Galvin, Gagne “Operating System Concepts”, 9th edition. 2012
Recommended Reference Books:
 Kay A. Robbins, Steven Robbins, Unix Systems Programming, 2003
 Herbert Schildt. Windows 95 Programming in C and C++. 1995
 Herbert Schildt. Windows 2000 Programming from the Ground Up. 2000.
 Kate Gregory. Using Visual C++ 6.
1
Operating System Principles
AUA CIS331
Albert Minasyan
Textbook Silberschatz, Chapter 1
1.1. What is an Operating System
The three main purposes of an operating system:
 To provide an environment for a computer user to execute programs on computer hardware
in a convenient and efficient manner (Shells, Windows, Terminals, Executable files
concept).
 To allocate the separate resources (memory, processor, disk space, I/O device usage) of the
computer as needed to solve the problem given. The allocation process should be as fair and
efficient as possible.
 As a control program it serves two major functions:
o supervision of the execution of user programs to prevent errors and improper use of
the computer (protection of OS and programs from user programs).
o management of the operation and control of I/O devices (device drivers, file systems)

An operating system is a program that manages the computer hardware and acts as an
intermediary between the user applications and the computer hardware.
The operating system must ensure the correct operation of the computer system. To prevent user
programs from interfering with the proper operation of the system, the hardware must provide
appropriate mechanisms.
The operating system provides certain services to programs and to the users of those programs in
order to make their tasks possible and easier.
The services differ from one operating system to another, but we identify and explore some common
classes of these services.
An operating system is an important part of almost every computer system. A computer system can be
divided roughly into four components: the hardware, the operating system, the application
programs, and the users.
User 1
Compiler
User 2
Assembler
User 3
User n
Text editor
Database System
System and application programs
Operating System
Computer Hardware
2
Operating System Principles
AUA CIS331
Albert Minasyan
Abstract view of the components of a computer system.
The hardware - the central processing unit (CPU), the memory, and the input/output (I/O) devices provides the basic computing resources.
The application programs-such as word processors, spreadsheets, compilers, and web browsers define the ways in which these resources are used to solve the computing problems of the users.
The operating system controls and coordinates the use of the hardware among the various application
programs for the various users.
The operating system provides the means for the proper use of the resources of the computer system.
User Application
Programs
Trying to use Computing
Resources
Using ready solutions is
possible (is effective)
API to OS for User
Applications
Operating System
Device drivers
Direct usage is possible (but
is not effective)
Control API to Hardware
Computing
Resources
are provided by
Computer Hardware
(CPU, Memory, I/O
devices)
An application programming interface (API) is a set of functions, procedures, methods or classes that
an operating system, library or service provides to support requests made by computer programs.
The operating system is similar to a government. Like a government, it performs no useful function
by itself. It simply provides an environment within which other programs can do useful work.
3