SlideShare a Scribd company logo
1 of 53
Module 1: Introduction to
Operating System , system
structure.
Contents
 Introduction to Operating System , system structure.
 What Operating Systems Do
 Computer-System Organization
 Computer-System Architecture
 Operating-System Structure
 Operating-System Operations
 Process Management
 Memory Management
 Storage Management
 Protection and Security
 Distributed system
 Special purpose systems
 Computing Environments
 Operating system services:
 User operating system interface
 System calls
 Types of system calls
 System programs
 Operating system design and Implementation
 Operating system structure
 Virtual Machines
 Operating system generations
 System boot
 Process Management:
 Process concept
 Process scheduling
 Operations on process
 Inter process communication
What is an Operating System?
 A program that acts as an intermediary between a user of a computer and the computer
hardware
 Operating system goals:
 Execute user programs and make solving user problems easier
 Make the computer system convenient to use
 Use the computer hardware in an efficient manner
Components os computer system
Abstract view of the components of the computer system
 Computer system mainly consists of four components-
 Hardware – provides basic computing resources
 CPU, memory, I/O devices
 Operating system
 Controls and coordinates use of hardware among various
applications and users
 Application programs – define the ways in which the system
resources are used to solve the computing problems of the
users
 Word processors, compilers, web browsers, database
systems, video games
 Users- people, machines, other computers.
 Views of OS
Operating System can be viewed from two viewpoints– User views
& System views
1. User Views:-
The user’s view of the operating system depends on the type of user.
i. If the user is using standalone system, then OS is designed for ease of use and high
performances. Here resource utilization is not given importance.
ii. If the users are at different terminals connected to a mainframe or minicomputers, by sharing
information and resources, then the OS is designed to maximize resource utilization. OS is
designed such that the CPU time, memory and i/o are used efficiently and no single user takes
more than the resource allotted to them.
iii. If the users are in workstations, connected to networks and servers, then the user have a
system unit of their own and shares resources and files with other systems. Here the OS is
designed for both ease of use and resource availability (files).
i. Users of hand held systems, expects the OS to be designed for ease of use and performance
per amount of battery life.
ii. Other systems like embedded systems used in home devices (like washing m/c) &
automobiles do not have any user interaction. There are some LEDs to show the status of its
work.
1. System View:-
 Operating system can be viewed as a resource allocator and
control program.
i. Resource allocator - The OS acts as a manager of hardware
and software resources. CPU time, memory space, file-
storage space, I/O devices, shared files etc. are the different
resources required during execution of a program. There can
be conflicting request for these resources by different
programs running in same system. The OS assigns the
resources to the requesting program depending on the
priority.
ii. Control Program – The OS is a control program and
manage the execution of user program to prevent errors and
improper use of the computer.
Computer System Organization
 Computer-system operation
 One or more CPUs, device controllers connect through common bus
providing access to shared memory
 Concurrent execution of CPUs and devices competing for memory cycles.
COMPUTER SYSTEM OPERATION
 BOOTSTRAP PROGRAM
 INTERRUPT
 SYSTEM CALL
Interrupt Timeline
STORAGE STRUCTURE
 Storage-Device Hierarchy
Storage systems organized in hierarchy
Speed
Cost
Volatility
 Ideally, we want the programs and data to reside in main memory permanently.
This arrangement usually is not possible for the following two reasons:
1. Main memory is usually too small to store all needed programs and data permanently.
2. Main memory is a volatile storage device that loses its contents when power is turned
off.
 Thus, most computer systems provide secondary storage as an extension of main
memory. The main requirement for secondary storage is that it will be able to hold large
quantities of data permanently.
 The most common secondary-storage device is a magnetic disk, which provides
storage for both programs and data. Most programs are stored on a disk until they are
loaded into memory.
 In addition to differing in speed and cost, the various storage systems are either volatile
or nonvolatile.
 Volatile storage loses its contents when the power to the device is removed. In the
absence of expensive battery and generator backup systems, data must be written to
nonvolatile storage for safekeeping
I/O STRUCTURES
 STORAGE IS ONLY ONE OF MANY TYPES OF I/O DEVICES WITHIN A COMPUTER.
 A large portion of operating system code is dedicated to managing I/O, both because of
its importance to the reliability and performance of a system and because of the varying
nature of the devices.
 Every device have a device controller, maintains some local buffer and a set of
special- purpose registers. The device controller is responsible for moving the data
between the peripheral devices. The operating systems have a device driver for each
device controller.

BUFFER Registers
------
HOW A MODERN COMPUTER
SYSYTEM WORKS
 DMA is used for high-speed I/O devices, able to
transmit information at close to memory speeds
 Device controller transfers blocks of data from buffer
storage directly to main memory without CPU
intervention
 Only one interrupt is generated per block, rather than the
one interrupt per byte
 Computer System Architecture
 Categorized roughly according to the number of general-purpose processors used –
 1) Single-Processor Systems :
On a single-processor system, there is one main CPU capable of executing instructions
from user processes.
It contains special-purpose processors, in the form of device-specific processors, for
devices such as disk, keyboard, and graphics controllers.
For example, a disk-controller processor, implements its own disk queue and scheduling
algorithm, thus reducing the task of main CPU. Special processors in the keyboard,
converts the keystrokes into codes to be sent to the CPU.
The use of special-purpose microprocessors is common and does not turn a single-
processor system into a multiprocessor. If there is only one general-purpose CPU, then the
system is a single-processor system.
 Multiprocessor Systems (parallel systems or tightly coupled systems) –
 Systems that have two or more processors in close communication, sharing the
computer bus, the clock, memory, and peripheral devices are the multiprocessor
systems.
 Multiprocessor systems have three main advantages:
Increased throughput(amount of work completed in a time) - In multiprocessor system, as there are
multiple processors execution of different programs take place simultaneously. Even if the number of
processors is increased the performance cannot be simultaneously increased.The speed-up ratio with N
processorsisnotN,rather,itislessthanN.Thusthespeedofthesystemisnothas expected.
Economyofscale-Multiprocessorsystemscancostlessthanequivalentnumberofmanysingle-processor
systems.Asthemultiprocessorsystemsshareperipherals,massstorage,andpowersupplies,thecostof
implementingthissystemiseconomical.Ifseveralprocessesareworkingonthesamedata,thedatacanalsobe
sharedamong them.
Increasedreliability(probabilitythatacomponentwillperformitsfunctionforaspecifiedperiodoftime)-
Inmultiprocessorsystemsfunctionsaresharedamongseveralprocessors.Ifoneprocessorfails,thesystemisnot
halted,itonlyslowsdown.Thejobofthefailedprocessoristakenup,byother processors.
 Two techniques to maintain ‘Increased Reliability’ - graceful degradation &
fault tolerant
 Graceful degradation – As there are multiple processors when one
processor fails other process will take up its work and the system goes down
slowly.
 Fault tolerant – When one processor fails, its operations are stopped, the
system failure is then detected, diagnosed, and corrected.
 There are two types of multiprocessor system:
 Assymetric Multiprocessing
 Symmetric Multiprocessing
Asymmetric multiprocessing – (Master/Slave architecture) Here each processor is
assigned a specific task, by the master processor. A master processor controls the other
processors in the system. It schedules and allocates work to the slave processors.
Symmetric multiprocessing (SMP) – All the processors are considered as peers. There is
no master-slave relationship. All the processors have its own registers and CPU, only
memory is shared
Symmetric multiprocessing architecture
A dual core design with two cores placed
on the same chip
 Clustered system
 Like multiprocessor systems, but multiple systems working together
 Usually sharing storage via a storage-area network (SAN)
 Provides a high-availability service which survives failures
 Asymmetric clustering has one machine in hot-standby mode
 Symmetric clustering has multiple nodes running applications, monitoring
each other
 Some clusters are for high-performance computing (HPC)
 Applications must be written to use parallelization
 Some have distributed lock manager (DLM) to avoid conflicting operations
General structure of a clustered system
OPERATING SYSTEM STRUCTURE
 One of the most important aspects of operating systems is the ability to multiprogram.
A single user cannot keep either the CPU or the I/O devices busy at all times.
Multiprogramming increases CPU utilization by organizing jobs, so that the CPU
always has one to execute.
 The operating system keeps several jobs in memory simultaneously as shown in figure.
This set of jobs is a subset of the jobs kept in the job pool.
 Since the number of jobs that can be kept simultaneously in memory is usually smaller
than the number of jobs that can be kept in the job pool(in secondary memory).
 The operating system picks and begins to execute one of the jobs in memory.
 Eventually, the job may have to wait for some task, such as an I/O operation, to
complete.
 In a non-multiprogrammed system, the CPU would sit idle. In a multiprogrammed
system, the operating system simply switches to, and executes, another job. When that
job needs to wait, the CPU is switched to another job, and so on.
Time sharing
 In Time sharing (or multitasking) systems, a single CPU executes multiple jobs by
switching among them, but the switches occur so frequently that the users can interact
with each program while it is running.
 The user feels that all the programs are being executed at the same time. Time
sharing requires an interactive (or hands-on) computer system, which provides direct
communication between the user and the system.
 The user gives instructions to the operating system or to a program directly, using a
input device such as a keyboard or a mouse, and waits for immediate results on an output
device. Accordingly, the response time should be short—typically less than one second.
 A time-shared operating system allows many users to share the computer
simultaneously.
 As the system switches rapidly from one user to the next, each user is given the
impression that the entire computer system is dedicated to his use only, even though it is
being shared among many users.
 If several jobs are ready to be brought into memory ,if there is not enough room for all of
them then system must choose among them making this decision is job scheduling.
Operating system Operations
 Interrupt driven (hardware and software)
 Hardware interrupt by one of the devices
 Software interrupt (exception or trap):
Software error (e.g., division by zero)
Request for operating system service
Other process problems include infinite loop, processes
modifying each other or the operating system
 Dual-mode operation allows OS to protect itself and other system
components
 User mode and kernel mode
 Mode bit provided by hardware
Provides ability to distinguish when system is running user
code or kernel code
Some instructions designated as privileged, only
executable in kernel mode
System call changes mode to kernel, return from call resets
it to user
 Increasingly CPUs support multi-mode operations
 i.e. virtual machine manager (VMM) mode for guest VMs
Transition from User to Kernel Mode
 Timer to prevent infinite loop / process hogging resources
 Timer is set to interrupt the computer after some time period
 Keep a counter that is decremented by the physical clock.
 Operating system set the counter (privileged instruction)
 When counter zero generate an interrupt
 Set up before scheduling process to regain control or terminate program that
exceeds allotted time.
Timer
 Operating system uses timer to control the CPU. A user program cannot hold CPU
for a long time, this is prevented with the help of timer.
 A timer can be set to interrupt the computer after a specified period. The period may be
fixed (for example, 1/60 second) or variable (for example, from 1 millisecond to 1
second).
 Fixed timer – After a fixed time, the process under execution is interrupted.
 Variable timer – Interrupt occurs after varying interval. This is implemented using a
fixed-rate clock and a counter.
 The operating system sets the counter. Every time the clock ticks, the counter is
decremented. When the counter reaches 0, an interrupt occurs.
 Before changing to the user mode, the operating system ensures that the timer is set to
interrupt.
 If the timer interrupts, control transfers automatically to the operating system, which
may treat the interrupt as a fatal error or may give the program more time.
PROCESS MANAGEMENT
 A process is a program in execution. It is a unit of work within the system. Program is a
passive entity, process is an active entity.
 Process needs resources to accomplish its task
 CPU, memory, I/O, files
 Initialization data
 Process termination requires reclaim of any reusable resources
 Single-threaded process has one program counter specifying location of next
instruction to execute
 Process executes instructions sequentially, one at a time, until completion
 Multi-threaded process has one program counter per thread
 Typically system has many processes, some user, some operating system running
concurrently on one or more CPUs
 Concurrency by multiplexing the CPUs among the processes / threads
 Process Management Activities
The operating system is responsible for the following activities in connection with process
management:
 Creating and deleting both user and system processes
 Suspending and resuming processes
 Providing mechanisms for process synchronization
 Providing mechanisms for process communication
 Providing mechanisms for deadlock handling
Memory Management
 To execute a program all (or part) of the instructions must be in memory
 All (or part) of the data that is needed by the program must be in memory.
 Memory management determines what is in memory.
 Memory management activities
 Keeping track of which parts of memory are currently being used and by whom
 Deciding which processes (or parts thereof) and data to move into and out of
memory
 Allocating and deallocating memory space as needed
STORAGE MANAGEMENT
 FILE SYSTEM MANAGEMENT:
 File management is one of the most visible components of an operating system.
 A file is a collection of related information. file represent programs (both source and
object forms)and data.
 The operating system implements the abstract concept of a file by managing mass
storage media, such as tapes and disks.
 Files are normally organized into directories to make them easier to use.
 The operating system is responsible for the following activities in connection with the
file management:
 Creating and deleting files and directories
 Primitives to manipulate files and directories
 Mapping files onto secondary storage
 Backup files onto stable (non-volatile) storage media
Mass-Storage Management
The Operating system is responsible for the following activities in
connection with disk management.
 Free space Management
 Storage Allocation
 Disk Scheduling
 Magnetic tape drives and their tapes CD,DVD, drives and platters
are tertiary storage devices.
 The media (tapes and optical platters )vary between
WORM(Write-once,read many times) and RW(read-
write)formats.
Caching
 Caching is an important principle of computer systems.Information is normally
kept in some storage system(main memory).it is copied into a faster storage
system-the cache-on temporary basis.
 Cache have limited size , cache management is an important design problem.
 At the highest level, the operating system may maintain a cache of file-system data
in main memory.
 The movement of information between levels of a storage hierarchy may be either
explicit or implicit depending on the hardware design and os system.
Performance of Various Levels of Storage
Movement between levels of storage hierarchy can be explicit or implicit
Migration of data “A” from Disk to Register
 Multitasking environments must be careful to use most recent value, no matter where it
is stored in the storage hierarchy
 Multiprocessor environment must provide cache coherency in hardware such that all
CPUs have the most recent value in their cache
 Distributed environment situation even more complex
 Several copies of a datum can exist
 Various solutions covered in Chapter 17
I/O System
 One of the purpose of an operating system is to hide the specific hardware
devices from the user.
 Ex:In unix the i/o devices are hidden from OS by i/o subsystem.The I/O
subsystem consists of several components:
 Memory management of I/O including buffering (storing data temporarily
while it is being transferred), caching (storing parts of data in faster storage
for performance), spooling (the overlapping of output of one job with input
of other jobs)
 General device-driver interface
 Drivers for specific hardware devices
PROTECTION and SECURITY
 Protection – any mechanism for controlling access of processes or users to resources defined
by the OS
 Security – defense of the system against internal and external attacks
 Huge range, including denial-of-service, worms, viruses, identity theft, theft of service
 Systems generally first distinguish among users, to determine who can do what
 User identities (user IDs, security IDs) include name and associated number, one per user
 User ID then associated with all files, processes of that user to determine access control
 Group identifier (group ID) allows set of users to be defined and controls managed, then
also associated with each process.
 Ex:for backend developer only there id is given not a frontend id
 Privilege escalation allows user to change to effective ID with more rights.(to give the
temporary access to permission)
Distributed System
 Collection of separate possibly heterogeneous systems networked together to provide the users with
access to the various resources that system maintains
 Access to a shared resource increases computation speed, functionality, data availability, and
reliability.
 A network is a communication path between two or more systems. Networks vary by the protocols
used(TCP/IP,UDP,FTP etc.),
 TCP/IP is the most common network protocol. The operating systems support of protocols also varies.
Most operating systems support TCP/IP, including the Windows and UNIX operating systems.
 Networks are characterized based on the distances between their nodes.
 A local-area network (LAN) connects computers within a room, a floor, or a building.
 A wide-area network (WAN) usually links buildings, cities, or countries. (ex:internet)
 A metropolitan-area network (MAN) connects buildings within a city.(ex: cable network)
 The transportation media to carry networks are also varied. They include copper wires, fiber strands, and
wireless transmissions between satellites, microwave dishes, and radios. When computing devices are
connected to cellular phones, they create a network.
Special Purpose Systems
 Real Time Embedded System
 Multimedia System
 Handheld Systems
1. Real Time Embedded System:
 Embedded computers are the most prevalent form of computers in existence.
 These devices are found everywhere, from car engines and manufacturing robots to
VCRs and microwave ovens. They tend to have very specific tasks.
 Usually, they have little user interface, and more time is spent for monitoring and
managing hardware devices, eg. automobile engines and robotic arms.
 Embedded system always run real time operating system.A real time system has well
defined .fixed time constraint.
 Ex:Entire houses can be computerized, so that a computer —can control heating and
lighting, alarm systems, and even coffee makers
 2) Multimedia System:
 Multimedia data consist of audio and video files as well as
conventional files.
 These data differ from conventional data in that multimedia data—such as frames of
video—must be delivered (streamed) according to certain time restrictions (for
example, 30 frames per second.
 Multimedia describes a wide range of applications like audio files - MP3, DVD movies,
video conferencing, and short video clips of movie previews or news.
 Multimedia applications may also include live webcasts of speeches or sporting events
and even live webcams.
 Multimedia applications can be either audio or video or combination of both. For
example, a movie may consist of separate audio and video tracks.
 3) Handheld System:
 Handheld systems include personal digital assistants (PDAs), such as Palm and Pocket-
PCs, and cellular telephones.
 Developers of these systems face many challenges, due to the limited memory, slow
processors and small screens in such devices.
 The amount of physical memory in a handheld depends upon the device, the operating
system and applications must manage memory efficiently.
• Because of small size, most handheld devices have a
 → small amount of memory,
 → slow processors, and
 → small display screens.

Computing Environments:
 1) Traditional Computing
 2) Client Server Computing
 3) Peer to peer Computing
 4) Web-Based Computing
 1) Traditional Computing:
 The lines separating many of the traditional computing environment are blurring.
 In previous office environment PCs connected to a network,terminals attached to mainframe
providing batch and time sharing.
 Now portals are allowing networked and remote systems access to the same resources.
 Handheld PDAs can also connect to wireless networks to use the company's web portal. The fast
data connections are allowing home computers to serve up web pages and to use networks. Some
homes even have firewalls to protect their networks.
2)Client –Server Computing
 Dumb terminals replaced by smart pcs.
 Many systems now servers responding to requests generated by clients.
 As a result, many of today’s systems act as server systems to satisfy requests generated by
client systems. This form of specialized distributed system, called client- server system.
Fig :General Structure of a client –server System
 Server systems can be broadly categorized as compute servers
and file servers:
 The compute-server system provides an interface to which
a client can send a request to perform an action.
(for example, read data); in response, the server executes the
action and sends back results to the client.
A server running a database that responds to client requests
for data is an example of such a svstem.
 The file-server system provides a file-system interface
where clients can create, update, read, and delete files.
 An example of such a system is a web server that delivers
files to clients running the web browsers.

3)Peer-to-peer Computing
 In this model, clients and servers are not distinguished from one another; here, all
nodes within the system are considered peers, and each may act as either a client or a
server.
 In a client-server system, the server is a bottleneck, because all the services must
be served by the server. But in a peer-to-peer system, services can be provided by
several nodes distributed throughout the network.
 P2P does not distinguish clients and servers.
 Instead all nodes are considered peers
 May each act as client,server or both.
 Node must join p2p network
 Registers its services with central lookup services on network.
 Broadcast request for service and respond to request for sevice via discovery
protocal.
 Ex: Napster and Gnutella
4)Web Based Computing
 Web computing has increased the importance on networking. Devices that were
not previously networked now include wired or wireless access. Devices that were
networked now have faster network connectivity.
 The implementation of web-based computing has given rise to new categories of
devices, such as load balancers, which distribute network connections among a pool of
similar servers.
 Operating systems like Windows 95, which acted as web clients, have evolved into
Linux and Windows XP, which can act as web servers as well as clients. Generally, the
Web has increased the complexity of devices, because their users require them to be
web-enabled.

More Related Content

Similar to OS M1.1.pptx

Lecture_01 Operating System Course Introduction
Lecture_01 Operating System Course IntroductionLecture_01 Operating System Course Introduction
Lecture_01 Operating System Course IntroductionArnoyKhan
 
R20CSE2202-OPERATING-SYSTEMS .pdf
R20CSE2202-OPERATING-SYSTEMS        .pdfR20CSE2202-OPERATING-SYSTEMS        .pdf
R20CSE2202-OPERATING-SYSTEMS .pdfcVan3
 
Introduction and Types of Operating System.pptx
Introduction and Types of Operating System.pptxIntroduction and Types of Operating System.pptx
Introduction and Types of Operating System.pptxaparna14patil
 
Operating Systems
Operating SystemsOperating Systems
Operating Systemsachal02
 
Ch1 OS
Ch1 OSCh1 OS
Ch1 OSC.U
 
Operating system concepts (notes)
Operating system concepts (notes)Operating system concepts (notes)
Operating system concepts (notes)Sohaib Danish
 
Operting system
Operting systemOperting system
Operting systemKAnurag2
 
Module 1 Introduction.ppt
Module 1 Introduction.pptModule 1 Introduction.ppt
Module 1 Introduction.pptshreesha16
 
OS - Ch1
OS - Ch1OS - Ch1
OS - Ch1sphs
 
Chapter 1 - Introduction
Chapter 1 - IntroductionChapter 1 - Introduction
Chapter 1 - IntroductionWayne Jones Jnr
 
Operating systems. replace ch1 with numbers for next chapters
Operating systems. replace ch1 with numbers for next chaptersOperating systems. replace ch1 with numbers for next chapters
Operating systems. replace ch1 with numbers for next chapterssphs
 

Similar to OS M1.1.pptx (20)

os mod1 notes
 os mod1 notes os mod1 notes
os mod1 notes
 
Lecture_01 Operating System Course Introduction
Lecture_01 Operating System Course IntroductionLecture_01 Operating System Course Introduction
Lecture_01 Operating System Course Introduction
 
R20CSE2202-OPERATING-SYSTEMS .pdf
R20CSE2202-OPERATING-SYSTEMS        .pdfR20CSE2202-OPERATING-SYSTEMS        .pdf
R20CSE2202-OPERATING-SYSTEMS .pdf
 
ch1.ppt
ch1.pptch1.ppt
ch1.ppt
 
Introduction and Types of Operating System.pptx
Introduction and Types of Operating System.pptxIntroduction and Types of Operating System.pptx
Introduction and Types of Operating System.pptx
 
Ch1
Ch1Ch1
Ch1
 
Operating Systems
Operating SystemsOperating Systems
Operating Systems
 
Ch1 OS
Ch1 OSCh1 OS
Ch1 OS
 
OS_Ch1
OS_Ch1OS_Ch1
OS_Ch1
 
OSCh1
OSCh1OSCh1
OSCh1
 
Operating system concepts (notes)
Operating system concepts (notes)Operating system concepts (notes)
Operating system concepts (notes)
 
ITM(2).ppt
ITM(2).pptITM(2).ppt
ITM(2).ppt
 
Operting system
Operting systemOperting system
Operting system
 
Ch3
Ch3Ch3
Ch3
 
Types of os
Types of osTypes of os
Types of os
 
ch1.ppt
ch1.pptch1.ppt
ch1.ppt
 
Module 1 Introduction.ppt
Module 1 Introduction.pptModule 1 Introduction.ppt
Module 1 Introduction.ppt
 
OS - Ch1
OS - Ch1OS - Ch1
OS - Ch1
 
Chapter 1 - Introduction
Chapter 1 - IntroductionChapter 1 - Introduction
Chapter 1 - Introduction
 
Operating systems. replace ch1 with numbers for next chapters
Operating systems. replace ch1 with numbers for next chaptersOperating systems. replace ch1 with numbers for next chapters
Operating systems. replace ch1 with numbers for next chapters
 

Recently uploaded

Hostel management system project report..pdf
Hostel management system project report..pdfHostel management system project report..pdf
Hostel management system project report..pdfKamal Acharya
 
Linux Systems Programming: Inter Process Communication (IPC) using Pipes
Linux Systems Programming: Inter Process Communication (IPC) using PipesLinux Systems Programming: Inter Process Communication (IPC) using Pipes
Linux Systems Programming: Inter Process Communication (IPC) using PipesRashidFaridChishti
 
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXssuser89054b
 
Post office management system project ..pdf
Post office management system project ..pdfPost office management system project ..pdf
Post office management system project ..pdfKamal Acharya
 
School management system project Report.pdf
School management system project Report.pdfSchool management system project Report.pdf
School management system project Report.pdfKamal Acharya
 
Memory Interfacing of 8086 with DMA 8257
Memory Interfacing of 8086 with DMA 8257Memory Interfacing of 8086 with DMA 8257
Memory Interfacing of 8086 with DMA 8257subhasishdas79
 
Introduction to Geographic Information Systems
Introduction to Geographic Information SystemsIntroduction to Geographic Information Systems
Introduction to Geographic Information SystemsAnge Felix NSANZIYERA
 
Unit 4_Part 1 CSE2001 Exception Handling and Function Template and Class Temp...
Unit 4_Part 1 CSE2001 Exception Handling and Function Template and Class Temp...Unit 4_Part 1 CSE2001 Exception Handling and Function Template and Class Temp...
Unit 4_Part 1 CSE2001 Exception Handling and Function Template and Class Temp...drmkjayanthikannan
 
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdfAldoGarca30
 
Introduction to Data Visualization,Matplotlib.pdf
Introduction to Data Visualization,Matplotlib.pdfIntroduction to Data Visualization,Matplotlib.pdf
Introduction to Data Visualization,Matplotlib.pdfsumitt6_25730773
 
Employee leave management system project.
Employee leave management system project.Employee leave management system project.
Employee leave management system project.Kamal Acharya
 
Theory of Time 2024 (Universal Theory for Everything)
Theory of Time 2024 (Universal Theory for Everything)Theory of Time 2024 (Universal Theory for Everything)
Theory of Time 2024 (Universal Theory for Everything)Ramkumar k
 
Digital Communication Essentials: DPCM, DM, and ADM .pptx
Digital Communication Essentials: DPCM, DM, and ADM .pptxDigital Communication Essentials: DPCM, DM, and ADM .pptx
Digital Communication Essentials: DPCM, DM, and ADM .pptxpritamlangde
 
8th International Conference on Soft Computing, Mathematics and Control (SMC ...
8th International Conference on Soft Computing, Mathematics and Control (SMC ...8th International Conference on Soft Computing, Mathematics and Control (SMC ...
8th International Conference on Soft Computing, Mathematics and Control (SMC ...josephjonse
 
Introduction to Artificial Intelligence ( AI)
Introduction to Artificial Intelligence ( AI)Introduction to Artificial Intelligence ( AI)
Introduction to Artificial Intelligence ( AI)ChandrakantDivate1
 
Max. shear stress theory-Maximum Shear Stress Theory ​ Maximum Distortional ...
Max. shear stress theory-Maximum Shear Stress Theory ​  Maximum Distortional ...Max. shear stress theory-Maximum Shear Stress Theory ​  Maximum Distortional ...
Max. shear stress theory-Maximum Shear Stress Theory ​ Maximum Distortional ...ronahami
 
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills KuwaitKuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwaitjaanualu31
 
Introduction to Robotics in Mechanical Engineering.pptx
Introduction to Robotics in Mechanical Engineering.pptxIntroduction to Robotics in Mechanical Engineering.pptx
Introduction to Robotics in Mechanical Engineering.pptxhublikarsn
 
Computer Graphics Introduction To Curves
Computer Graphics Introduction To CurvesComputer Graphics Introduction To Curves
Computer Graphics Introduction To CurvesChandrakantDivate1
 

Recently uploaded (20)

Hostel management system project report..pdf
Hostel management system project report..pdfHostel management system project report..pdf
Hostel management system project report..pdf
 
Linux Systems Programming: Inter Process Communication (IPC) using Pipes
Linux Systems Programming: Inter Process Communication (IPC) using PipesLinux Systems Programming: Inter Process Communication (IPC) using Pipes
Linux Systems Programming: Inter Process Communication (IPC) using Pipes
 
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
 
Post office management system project ..pdf
Post office management system project ..pdfPost office management system project ..pdf
Post office management system project ..pdf
 
School management system project Report.pdf
School management system project Report.pdfSchool management system project Report.pdf
School management system project Report.pdf
 
Memory Interfacing of 8086 with DMA 8257
Memory Interfacing of 8086 with DMA 8257Memory Interfacing of 8086 with DMA 8257
Memory Interfacing of 8086 with DMA 8257
 
Introduction to Geographic Information Systems
Introduction to Geographic Information SystemsIntroduction to Geographic Information Systems
Introduction to Geographic Information Systems
 
Unit 4_Part 1 CSE2001 Exception Handling and Function Template and Class Temp...
Unit 4_Part 1 CSE2001 Exception Handling and Function Template and Class Temp...Unit 4_Part 1 CSE2001 Exception Handling and Function Template and Class Temp...
Unit 4_Part 1 CSE2001 Exception Handling and Function Template and Class Temp...
 
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
 
Introduction to Data Visualization,Matplotlib.pdf
Introduction to Data Visualization,Matplotlib.pdfIntroduction to Data Visualization,Matplotlib.pdf
Introduction to Data Visualization,Matplotlib.pdf
 
Employee leave management system project.
Employee leave management system project.Employee leave management system project.
Employee leave management system project.
 
Theory of Time 2024 (Universal Theory for Everything)
Theory of Time 2024 (Universal Theory for Everything)Theory of Time 2024 (Universal Theory for Everything)
Theory of Time 2024 (Universal Theory for Everything)
 
Digital Communication Essentials: DPCM, DM, and ADM .pptx
Digital Communication Essentials: DPCM, DM, and ADM .pptxDigital Communication Essentials: DPCM, DM, and ADM .pptx
Digital Communication Essentials: DPCM, DM, and ADM .pptx
 
8th International Conference on Soft Computing, Mathematics and Control (SMC ...
8th International Conference on Soft Computing, Mathematics and Control (SMC ...8th International Conference on Soft Computing, Mathematics and Control (SMC ...
8th International Conference on Soft Computing, Mathematics and Control (SMC ...
 
Introduction to Artificial Intelligence ( AI)
Introduction to Artificial Intelligence ( AI)Introduction to Artificial Intelligence ( AI)
Introduction to Artificial Intelligence ( AI)
 
Max. shear stress theory-Maximum Shear Stress Theory ​ Maximum Distortional ...
Max. shear stress theory-Maximum Shear Stress Theory ​  Maximum Distortional ...Max. shear stress theory-Maximum Shear Stress Theory ​  Maximum Distortional ...
Max. shear stress theory-Maximum Shear Stress Theory ​ Maximum Distortional ...
 
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills KuwaitKuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
 
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak HamilCara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
 
Introduction to Robotics in Mechanical Engineering.pptx
Introduction to Robotics in Mechanical Engineering.pptxIntroduction to Robotics in Mechanical Engineering.pptx
Introduction to Robotics in Mechanical Engineering.pptx
 
Computer Graphics Introduction To Curves
Computer Graphics Introduction To CurvesComputer Graphics Introduction To Curves
Computer Graphics Introduction To Curves
 

OS M1.1.pptx

  • 1. Module 1: Introduction to Operating System , system structure.
  • 2. Contents  Introduction to Operating System , system structure.  What Operating Systems Do  Computer-System Organization  Computer-System Architecture  Operating-System Structure  Operating-System Operations  Process Management  Memory Management  Storage Management  Protection and Security  Distributed system  Special purpose systems  Computing Environments
  • 3.  Operating system services:  User operating system interface  System calls  Types of system calls  System programs  Operating system design and Implementation  Operating system structure  Virtual Machines  Operating system generations  System boot  Process Management:  Process concept  Process scheduling  Operations on process  Inter process communication
  • 4. What is an Operating System?  A program that acts as an intermediary between a user of a computer and the computer hardware  Operating system goals:  Execute user programs and make solving user problems easier  Make the computer system convenient to use  Use the computer hardware in an efficient manner
  • 5. Components os computer system Abstract view of the components of the computer system
  • 6.  Computer system mainly consists of four components-  Hardware – provides basic computing resources  CPU, memory, I/O devices  Operating system  Controls and coordinates use of hardware among various applications and users  Application programs – define the ways in which the system resources are used to solve the computing problems of the users  Word processors, compilers, web browsers, database systems, video games  Users- people, machines, other computers.
  • 7.  Views of OS Operating System can be viewed from two viewpoints– User views & System views 1. User Views:- The user’s view of the operating system depends on the type of user. i. If the user is using standalone system, then OS is designed for ease of use and high performances. Here resource utilization is not given importance. ii. If the users are at different terminals connected to a mainframe or minicomputers, by sharing information and resources, then the OS is designed to maximize resource utilization. OS is designed such that the CPU time, memory and i/o are used efficiently and no single user takes more than the resource allotted to them. iii. If the users are in workstations, connected to networks and servers, then the user have a system unit of their own and shares resources and files with other systems. Here the OS is designed for both ease of use and resource availability (files). i. Users of hand held systems, expects the OS to be designed for ease of use and performance per amount of battery life. ii. Other systems like embedded systems used in home devices (like washing m/c) & automobiles do not have any user interaction. There are some LEDs to show the status of its work.
  • 8. 1. System View:-  Operating system can be viewed as a resource allocator and control program. i. Resource allocator - The OS acts as a manager of hardware and software resources. CPU time, memory space, file- storage space, I/O devices, shared files etc. are the different resources required during execution of a program. There can be conflicting request for these resources by different programs running in same system. The OS assigns the resources to the requesting program depending on the priority. ii. Control Program – The OS is a control program and manage the execution of user program to prevent errors and improper use of the computer.
  • 9. Computer System Organization  Computer-system operation  One or more CPUs, device controllers connect through common bus providing access to shared memory  Concurrent execution of CPUs and devices competing for memory cycles.
  • 10. COMPUTER SYSTEM OPERATION  BOOTSTRAP PROGRAM  INTERRUPT  SYSTEM CALL
  • 13. Storage systems organized in hierarchy Speed Cost Volatility
  • 14.  Ideally, we want the programs and data to reside in main memory permanently. This arrangement usually is not possible for the following two reasons: 1. Main memory is usually too small to store all needed programs and data permanently. 2. Main memory is a volatile storage device that loses its contents when power is turned off.  Thus, most computer systems provide secondary storage as an extension of main memory. The main requirement for secondary storage is that it will be able to hold large quantities of data permanently.  The most common secondary-storage device is a magnetic disk, which provides storage for both programs and data. Most programs are stored on a disk until they are loaded into memory.  In addition to differing in speed and cost, the various storage systems are either volatile or nonvolatile.  Volatile storage loses its contents when the power to the device is removed. In the absence of expensive battery and generator backup systems, data must be written to nonvolatile storage for safekeeping
  • 15. I/O STRUCTURES  STORAGE IS ONLY ONE OF MANY TYPES OF I/O DEVICES WITHIN A COMPUTER.  A large portion of operating system code is dedicated to managing I/O, both because of its importance to the reliability and performance of a system and because of the varying nature of the devices.  Every device have a device controller, maintains some local buffer and a set of special- purpose registers. The device controller is responsible for moving the data between the peripheral devices. The operating systems have a device driver for each device controller.  BUFFER Registers ------
  • 16. HOW A MODERN COMPUTER SYSYTEM WORKS
  • 17.  DMA is used for high-speed I/O devices, able to transmit information at close to memory speeds  Device controller transfers blocks of data from buffer storage directly to main memory without CPU intervention  Only one interrupt is generated per block, rather than the one interrupt per byte
  • 18.  Computer System Architecture  Categorized roughly according to the number of general-purpose processors used –  1) Single-Processor Systems : On a single-processor system, there is one main CPU capable of executing instructions from user processes. It contains special-purpose processors, in the form of device-specific processors, for devices such as disk, keyboard, and graphics controllers. For example, a disk-controller processor, implements its own disk queue and scheduling algorithm, thus reducing the task of main CPU. Special processors in the keyboard, converts the keystrokes into codes to be sent to the CPU. The use of special-purpose microprocessors is common and does not turn a single- processor system into a multiprocessor. If there is only one general-purpose CPU, then the system is a single-processor system.
  • 19.  Multiprocessor Systems (parallel systems or tightly coupled systems) –  Systems that have two or more processors in close communication, sharing the computer bus, the clock, memory, and peripheral devices are the multiprocessor systems.  Multiprocessor systems have three main advantages: Increased throughput(amount of work completed in a time) - In multiprocessor system, as there are multiple processors execution of different programs take place simultaneously. Even if the number of processors is increased the performance cannot be simultaneously increased.The speed-up ratio with N processorsisnotN,rather,itislessthanN.Thusthespeedofthesystemisnothas expected. Economyofscale-Multiprocessorsystemscancostlessthanequivalentnumberofmanysingle-processor systems.Asthemultiprocessorsystemsshareperipherals,massstorage,andpowersupplies,thecostof implementingthissystemiseconomical.Ifseveralprocessesareworkingonthesamedata,thedatacanalsobe sharedamong them. Increasedreliability(probabilitythatacomponentwillperformitsfunctionforaspecifiedperiodoftime)- Inmultiprocessorsystemsfunctionsaresharedamongseveralprocessors.Ifoneprocessorfails,thesystemisnot halted,itonlyslowsdown.Thejobofthefailedprocessoristakenup,byother processors.
  • 20.  Two techniques to maintain ‘Increased Reliability’ - graceful degradation & fault tolerant  Graceful degradation – As there are multiple processors when one processor fails other process will take up its work and the system goes down slowly.  Fault tolerant – When one processor fails, its operations are stopped, the system failure is then detected, diagnosed, and corrected.
  • 21.  There are two types of multiprocessor system:  Assymetric Multiprocessing  Symmetric Multiprocessing Asymmetric multiprocessing – (Master/Slave architecture) Here each processor is assigned a specific task, by the master processor. A master processor controls the other processors in the system. It schedules and allocates work to the slave processors. Symmetric multiprocessing (SMP) – All the processors are considered as peers. There is no master-slave relationship. All the processors have its own registers and CPU, only memory is shared
  • 22.
  • 24. A dual core design with two cores placed on the same chip
  • 25.  Clustered system  Like multiprocessor systems, but multiple systems working together  Usually sharing storage via a storage-area network (SAN)  Provides a high-availability service which survives failures  Asymmetric clustering has one machine in hot-standby mode  Symmetric clustering has multiple nodes running applications, monitoring each other  Some clusters are for high-performance computing (HPC)  Applications must be written to use parallelization  Some have distributed lock manager (DLM) to avoid conflicting operations
  • 26. General structure of a clustered system
  • 27. OPERATING SYSTEM STRUCTURE  One of the most important aspects of operating systems is the ability to multiprogram. A single user cannot keep either the CPU or the I/O devices busy at all times. Multiprogramming increases CPU utilization by organizing jobs, so that the CPU always has one to execute.  The operating system keeps several jobs in memory simultaneously as shown in figure. This set of jobs is a subset of the jobs kept in the job pool.  Since the number of jobs that can be kept simultaneously in memory is usually smaller than the number of jobs that can be kept in the job pool(in secondary memory).  The operating system picks and begins to execute one of the jobs in memory.  Eventually, the job may have to wait for some task, such as an I/O operation, to complete.  In a non-multiprogrammed system, the CPU would sit idle. In a multiprogrammed system, the operating system simply switches to, and executes, another job. When that job needs to wait, the CPU is switched to another job, and so on.
  • 28.
  • 29. Time sharing  In Time sharing (or multitasking) systems, a single CPU executes multiple jobs by switching among them, but the switches occur so frequently that the users can interact with each program while it is running.  The user feels that all the programs are being executed at the same time. Time sharing requires an interactive (or hands-on) computer system, which provides direct communication between the user and the system.  The user gives instructions to the operating system or to a program directly, using a input device such as a keyboard or a mouse, and waits for immediate results on an output device. Accordingly, the response time should be short—typically less than one second.  A time-shared operating system allows many users to share the computer simultaneously.  As the system switches rapidly from one user to the next, each user is given the impression that the entire computer system is dedicated to his use only, even though it is being shared among many users.  If several jobs are ready to be brought into memory ,if there is not enough room for all of them then system must choose among them making this decision is job scheduling.
  • 30.
  • 31. Operating system Operations  Interrupt driven (hardware and software)  Hardware interrupt by one of the devices  Software interrupt (exception or trap): Software error (e.g., division by zero) Request for operating system service Other process problems include infinite loop, processes modifying each other or the operating system
  • 32.  Dual-mode operation allows OS to protect itself and other system components  User mode and kernel mode  Mode bit provided by hardware Provides ability to distinguish when system is running user code or kernel code Some instructions designated as privileged, only executable in kernel mode System call changes mode to kernel, return from call resets it to user  Increasingly CPUs support multi-mode operations  i.e. virtual machine manager (VMM) mode for guest VMs
  • 33. Transition from User to Kernel Mode  Timer to prevent infinite loop / process hogging resources  Timer is set to interrupt the computer after some time period  Keep a counter that is decremented by the physical clock.  Operating system set the counter (privileged instruction)  When counter zero generate an interrupt  Set up before scheduling process to regain control or terminate program that exceeds allotted time.
  • 34. Timer  Operating system uses timer to control the CPU. A user program cannot hold CPU for a long time, this is prevented with the help of timer.  A timer can be set to interrupt the computer after a specified period. The period may be fixed (for example, 1/60 second) or variable (for example, from 1 millisecond to 1 second).  Fixed timer – After a fixed time, the process under execution is interrupted.  Variable timer – Interrupt occurs after varying interval. This is implemented using a fixed-rate clock and a counter.  The operating system sets the counter. Every time the clock ticks, the counter is decremented. When the counter reaches 0, an interrupt occurs.  Before changing to the user mode, the operating system ensures that the timer is set to interrupt.  If the timer interrupts, control transfers automatically to the operating system, which may treat the interrupt as a fatal error or may give the program more time.
  • 35. PROCESS MANAGEMENT  A process is a program in execution. It is a unit of work within the system. Program is a passive entity, process is an active entity.  Process needs resources to accomplish its task  CPU, memory, I/O, files  Initialization data  Process termination requires reclaim of any reusable resources  Single-threaded process has one program counter specifying location of next instruction to execute  Process executes instructions sequentially, one at a time, until completion  Multi-threaded process has one program counter per thread  Typically system has many processes, some user, some operating system running concurrently on one or more CPUs  Concurrency by multiplexing the CPUs among the processes / threads
  • 36.  Process Management Activities The operating system is responsible for the following activities in connection with process management:  Creating and deleting both user and system processes  Suspending and resuming processes  Providing mechanisms for process synchronization  Providing mechanisms for process communication  Providing mechanisms for deadlock handling
  • 37. Memory Management  To execute a program all (or part) of the instructions must be in memory  All (or part) of the data that is needed by the program must be in memory.  Memory management determines what is in memory.  Memory management activities  Keeping track of which parts of memory are currently being used and by whom  Deciding which processes (or parts thereof) and data to move into and out of memory  Allocating and deallocating memory space as needed
  • 38. STORAGE MANAGEMENT  FILE SYSTEM MANAGEMENT:  File management is one of the most visible components of an operating system.  A file is a collection of related information. file represent programs (both source and object forms)and data.  The operating system implements the abstract concept of a file by managing mass storage media, such as tapes and disks.  Files are normally organized into directories to make them easier to use.  The operating system is responsible for the following activities in connection with the file management:  Creating and deleting files and directories  Primitives to manipulate files and directories  Mapping files onto secondary storage  Backup files onto stable (non-volatile) storage media
  • 39. Mass-Storage Management The Operating system is responsible for the following activities in connection with disk management.  Free space Management  Storage Allocation  Disk Scheduling  Magnetic tape drives and their tapes CD,DVD, drives and platters are tertiary storage devices.  The media (tapes and optical platters )vary between WORM(Write-once,read many times) and RW(read- write)formats.
  • 40. Caching  Caching is an important principle of computer systems.Information is normally kept in some storage system(main memory).it is copied into a faster storage system-the cache-on temporary basis.  Cache have limited size , cache management is an important design problem.  At the highest level, the operating system may maintain a cache of file-system data in main memory.  The movement of information between levels of a storage hierarchy may be either explicit or implicit depending on the hardware design and os system.
  • 41. Performance of Various Levels of Storage Movement between levels of storage hierarchy can be explicit or implicit
  • 42. Migration of data “A” from Disk to Register  Multitasking environments must be careful to use most recent value, no matter where it is stored in the storage hierarchy  Multiprocessor environment must provide cache coherency in hardware such that all CPUs have the most recent value in their cache  Distributed environment situation even more complex  Several copies of a datum can exist  Various solutions covered in Chapter 17
  • 43. I/O System  One of the purpose of an operating system is to hide the specific hardware devices from the user.  Ex:In unix the i/o devices are hidden from OS by i/o subsystem.The I/O subsystem consists of several components:  Memory management of I/O including buffering (storing data temporarily while it is being transferred), caching (storing parts of data in faster storage for performance), spooling (the overlapping of output of one job with input of other jobs)  General device-driver interface  Drivers for specific hardware devices
  • 44. PROTECTION and SECURITY  Protection – any mechanism for controlling access of processes or users to resources defined by the OS  Security – defense of the system against internal and external attacks  Huge range, including denial-of-service, worms, viruses, identity theft, theft of service  Systems generally first distinguish among users, to determine who can do what  User identities (user IDs, security IDs) include name and associated number, one per user  User ID then associated with all files, processes of that user to determine access control  Group identifier (group ID) allows set of users to be defined and controls managed, then also associated with each process.  Ex:for backend developer only there id is given not a frontend id  Privilege escalation allows user to change to effective ID with more rights.(to give the temporary access to permission)
  • 45. Distributed System  Collection of separate possibly heterogeneous systems networked together to provide the users with access to the various resources that system maintains  Access to a shared resource increases computation speed, functionality, data availability, and reliability.  A network is a communication path between two or more systems. Networks vary by the protocols used(TCP/IP,UDP,FTP etc.),  TCP/IP is the most common network protocol. The operating systems support of protocols also varies. Most operating systems support TCP/IP, including the Windows and UNIX operating systems.  Networks are characterized based on the distances between their nodes.  A local-area network (LAN) connects computers within a room, a floor, or a building.  A wide-area network (WAN) usually links buildings, cities, or countries. (ex:internet)  A metropolitan-area network (MAN) connects buildings within a city.(ex: cable network)  The transportation media to carry networks are also varied. They include copper wires, fiber strands, and wireless transmissions between satellites, microwave dishes, and radios. When computing devices are connected to cellular phones, they create a network.
  • 46. Special Purpose Systems  Real Time Embedded System  Multimedia System  Handheld Systems 1. Real Time Embedded System:  Embedded computers are the most prevalent form of computers in existence.  These devices are found everywhere, from car engines and manufacturing robots to VCRs and microwave ovens. They tend to have very specific tasks.  Usually, they have little user interface, and more time is spent for monitoring and managing hardware devices, eg. automobile engines and robotic arms.  Embedded system always run real time operating system.A real time system has well defined .fixed time constraint.  Ex:Entire houses can be computerized, so that a computer —can control heating and lighting, alarm systems, and even coffee makers
  • 47.  2) Multimedia System:  Multimedia data consist of audio and video files as well as conventional files.  These data differ from conventional data in that multimedia data—such as frames of video—must be delivered (streamed) according to certain time restrictions (for example, 30 frames per second.  Multimedia describes a wide range of applications like audio files - MP3, DVD movies, video conferencing, and short video clips of movie previews or news.  Multimedia applications may also include live webcasts of speeches or sporting events and even live webcams.  Multimedia applications can be either audio or video or combination of both. For example, a movie may consist of separate audio and video tracks.
  • 48.  3) Handheld System:  Handheld systems include personal digital assistants (PDAs), such as Palm and Pocket- PCs, and cellular telephones.  Developers of these systems face many challenges, due to the limited memory, slow processors and small screens in such devices.  The amount of physical memory in a handheld depends upon the device, the operating system and applications must manage memory efficiently. • Because of small size, most handheld devices have a  → small amount of memory,  → slow processors, and  → small display screens. 
  • 49. Computing Environments:  1) Traditional Computing  2) Client Server Computing  3) Peer to peer Computing  4) Web-Based Computing  1) Traditional Computing:  The lines separating many of the traditional computing environment are blurring.  In previous office environment PCs connected to a network,terminals attached to mainframe providing batch and time sharing.  Now portals are allowing networked and remote systems access to the same resources.  Handheld PDAs can also connect to wireless networks to use the company's web portal. The fast data connections are allowing home computers to serve up web pages and to use networks. Some homes even have firewalls to protect their networks.
  • 50. 2)Client –Server Computing  Dumb terminals replaced by smart pcs.  Many systems now servers responding to requests generated by clients.  As a result, many of today’s systems act as server systems to satisfy requests generated by client systems. This form of specialized distributed system, called client- server system. Fig :General Structure of a client –server System
  • 51.  Server systems can be broadly categorized as compute servers and file servers:  The compute-server system provides an interface to which a client can send a request to perform an action. (for example, read data); in response, the server executes the action and sends back results to the client. A server running a database that responds to client requests for data is an example of such a svstem.  The file-server system provides a file-system interface where clients can create, update, read, and delete files.  An example of such a system is a web server that delivers files to clients running the web browsers. 
  • 52. 3)Peer-to-peer Computing  In this model, clients and servers are not distinguished from one another; here, all nodes within the system are considered peers, and each may act as either a client or a server.  In a client-server system, the server is a bottleneck, because all the services must be served by the server. But in a peer-to-peer system, services can be provided by several nodes distributed throughout the network.  P2P does not distinguish clients and servers.  Instead all nodes are considered peers  May each act as client,server or both.  Node must join p2p network  Registers its services with central lookup services on network.  Broadcast request for service and respond to request for sevice via discovery protocal.  Ex: Napster and Gnutella
  • 53. 4)Web Based Computing  Web computing has increased the importance on networking. Devices that were not previously networked now include wired or wireless access. Devices that were networked now have faster network connectivity.  The implementation of web-based computing has given rise to new categories of devices, such as load balancers, which distribute network connections among a pool of similar servers.  Operating systems like Windows 95, which acted as web clients, have evolved into Linux and Windows XP, which can act as web servers as well as clients. Generally, the Web has increased the complexity of devices, because their users require them to be web-enabled.