Sie sind auf Seite 1von 43

Operating System Fundamentals

Lecture 1 : Introduction and Concepts

Dr. Ashraf Said Math. & Comp. Sc. Dept. Faculty of Science Alexandria University

Outline

What is an Operating System? Types of Computer Systems


Simple Batch Systems Multi-programmed Batched Systems Time-Sharing Systems Personal-Computer Systems Parallel Systems Distributed Systems Real-Time Systems Handheld Systems

What is an Operating System?


A software that controls the hardware. Processors, storage, input/output devices, communication devices and data. A software that manages the hardware. A software that acts as a resources allocator.

How Can We Define Operating System?


Operating System (OS) is a program that controls the execution of application programs. It is also defined as being the mean through which controlling of allocation and usage of hardware resources and coordinating of all software activities within a computer is done.

Where Can an OS Fit?

Operating System Objectives

Convenience:

Makes the computer more convenient to use. Between Computer and user through a friendly user interface. Among system components. Hardware-independent programming model. Allows computer system resources to be used in an efficient manner.

Ease of Communication:

Abstraction:

Efficiency:

Operating System Objectives (contd)

Monitoring and Alerting:

Monitors and alerts failures and problems. Permit effective development, testing, and introduction of new system functions without interfering with the services. A layer of security is to be added to ensure that a certain level of security is maintained to protect users data. Maximizing the throughput and Minimizing time needed to execute command.

Ability to Evolve:

Protection:

Increasing performance:

Services Provided by the Operating System


Program development: Such as editors and debuggers. Program execution:

Load program and data, initialize environment. Attempt to read from and write to the ports and units.

Access to I/O devices:

Controlled access to data: Access protection. System access: User authentication.

Services Provided by the Operating System (contd)

Error detection and response:

In case of error occurring, an error message should be displayed. Memory error. Device failure. Arithmetic overflow. Access forbidden memory locations.

Internal and external hardware errors:

Software errors:

Services Provided by the Operating System (contd)

Accounting:

Collect statistics. Monitor performance. Is used to anticipate future enhancements? Is used for billing users?

Functions of an Operating System on a Network


1. 2. 3.

4. 5.

6.

Sharing H/W among users. Allowing users to share data. Preventing users from interfering with one another. Scheduling resources among users. Organizing data for secure and rapid access. Handling network communications.

Components of Computer System


Input devices Processing devices (Central Processing Unit) Output devices Storage devices Applications software Word Processing Spreadsheet - Database System software Operating System - Utilities
Users, or end users, are the people in the computing environment who need the output that computer systems produce. Programmers are the people whose job it is to write programs to supply this information.

Layers of Computer System

Computer-System Operation

I/O devices and the CPU can execute concurrently. Each device controller is responsible of a particular device type. Each device controller has a local buffer (memory).

CPU moves data from/to main memory to/from local buffers I/O is from the device to local buffer of controller.

Storage-Device Hierarchy

Storage systems organized in hierarchy.


Speed Cost Volatility

What is a Kernel?
Module Kernel is responsible for:

Memory allocation. Garbage collection

Object finalization Module termination Interfacing to the


underlying operating system, and clock functions

Types of Computer Systems

Simple Batch Systems Multi-programmed Batched Systems Time-Sharing Systems Personal-Computer Systems Parallel Systems Distributed Systems Real-Time Systems Handheld systems

Simple Batch System

Runs only one job at a time.


Smoothed transition between jobs to get maximum utilization. Programs/data submitted in groups or batches.

Multi-programmed Batch System

Uses job scheduling to increase resources utilization. Stores more than one program in memory. Based on the fact that any one job rarely utilizes all computer resources. When one job is waiting for an I/O, other can use CPU and/or any other I/O.

Time Sharing System

Uses time sharing to switch between multiple jobs. Interactive. Provides a low response time to users. Developed to large numbers of simultaneously interactive users. A program shares in time only if it exists in memory.

Personal System (Desktop)

Every user has his own memory, processors, and I/O devices. Became possible after investing microprocessors. Computing may be distributed to the sites rather than central place. Data may be shared among users through networks.

Distributed System

Computers that communicate using a network: WAN (Wide area network) or LAN (Local area network), i.e. independent computers that works as a single system. Client-Server: A client is a computer that needs service. A server is a S/W or a H/W that do a single service (Printing, graphics, DB, e-mail). Peer-To-Peer: Decentralized computers provide services to peers. Incremental growth.

Parallel System

A computer contains two or more CPUs that share a common bus. A job Should be split to discrete (independent) small jobs. Exponential speed up in computation needs exponential increase in the number of processors.

Real-time System

Often used as a control device in a dedicated application such as: a. Controlling scientific experiments, b. Medical imaging systems, c. Industrial control systems. Well-defined fixed-time constraints. Real-time system may be either hard or soft system

Real-time System (contd)

Hard real-time system:


Secondary storage limited or absent Data stored in short term memory. Conflicts with time-sharing systems. Not supported by general purpose OS. Useful in applications (multimedia, virtual reality). Require Advanced OS features.

Soft real-time system:


Handheld Systems

Personal Digital Assistants (PDAs) Cellular telephones Issues:


Limited memory Slow processors Small display screens

Computer Categories

Computers are generally classified in one of four categories: small, or microcomputers; mediumsized, or midrange computers; large, or mainframe computers; and super-large, or supercomputers. An emerging new category is mobile devices, as discussed next. In general, the larger the computer, the greater its processing power. For example, big computers can process data at faster speeds and can perform more complicated types of processing than can small computers. Big computers can also accommodate larger, more powerful support devices. **

Computer Categories

Mobile devices Microcomputers

Midrange computers
Mainframe computers Supercomputers

Mobile Devices
A mobile device is loosely defined as a very small computing device based on a wireless phone or pager. Such devices usually offer limited Internet access in addition to their regular functions, such as placing phone calls and sending and receiving pages or messages.

Personal Computers
A technological breakthrough in the early 1970s made it possible to produce an entire CPU on a single silicon chip smaller than a dime. These computers-on-a-chip, or microprocessors, can be mass-produced at a very low cost.

Microprocessors also made it possible to build inexpensive computer systems small enough to fit on a desk or your lap. The small computers at the heart of these systems have come to be called microcomputers or personal computers (PCs).

Personal Computers, contd.

Although most microcomputers designed for home or business use are desktop computers, smaller PCs are available. Portable PCs include notebook, tablet, handheld, and pocket computers. PCs designed for network use only are referred to as network computers or thin clients. PCs or devices designed for Internet access only are called Internet appliances. Most PC users choose between two major computer platforms when they buy a computerPC compatibles and Macintosh computers. Often, people refer to PCcompatible computers as the Windows platform or as IBMcompatible PCs.

Personal Computers, contd.

PC compatiblea personal computer based on Intel microcomputer or compatible CPUs Macintosha type of personal computer manufactured by Apple

Midrange Computers
Midrange computers (or minicomputers) are regarded as medium-sized computers. Most of them fall between microcomputers and mainframes in their processing power. A small or medium-sized company, for example, may find a microcomputer system just too small or too slow to handle its current volume of work.

Mainframes

Mainstay of almost all large organizations Specialize in high-volume processing of business transactions

Mainframes often operate 24 hours a day, serving dozens of users on terminals during regular business hours and processing big jobs such as payroll and billing late at night.

Supercomputers
Some organizations, such as large scientific research laboratories, have extraordinary demands for processing power. To meet applications needs such as very fast speeds and extreme degrees of accuracy, a few vendors offer very powerful computers, called supercomputers. Many supercomputers today are created by linking together multiple PCs or microprocessor chips.

Computer Categories vs. Systems

Mobile devices: Handheld systems. Microcomputers: Desktop systems. Midrange computers: Desktop & Real-time systems. Mainframe computers: Batch & Time-share (Hybrid systems). Supercomputers: Parallel & distributed systems.

Useful Website

www.osdata.com

Das könnte Ihnen auch gefallen