Introduction To Computer & Operating Systems
Introduction To Computer & Operating Systems
Operating Systems
Outline
1.0 Computer Architecture
- Pipelining
1.1 Introduction
1.2 What Is an Operating System?
1.3 Early History: The 1940s and 1950s
1.4 The 1960s
1.5 The 1970s
1.6 The 1980s
1.7 History of the Internet and World Wide Web
1.8 The 1990s
1.9 2000 and Beyond
1.10 Application Bases
1.11 Operating System Environments
1.12 Operating System Components and Goals
1.12.1 Core Operating System Components
1.12.2 Operating System Goals
Chapter 1 – Introduction to Computer &
Operating Systems
Outline (continued)
1.13 Operating System Architectures
1.13.1 Monolithic Architecture
1.13.2 Layered Architecture
1.13.3 Microkernel Architecture
1.13.4 Networked and Distributed Operating
Systems
Objectives
MU
IU ALU OU
CU
• The IU provides instructions and data to the system, which are
subsequently stored in the MU.
• The instructions and the data are processed by tye ALU under
the direction of the CU. The results are sent to the OU. The
ALU and CU are frequently referred to aas the CPU.
CPU
(ALU, MEMORY
REGISTER & I/O
CONTROL)
DATABUS
ADDRESS BUS
CONTROL BUS
}
SYSTEM BUS
• This model partitions the computer system into three:
• CPU, Memory and I/O.
• This refinement of the Von Neumann models
combines the ALU and the CU into one functional
unit, the CPU. The I/O units are also combined into a
single unit.
• Most important to the system bus model, the
communications among the components are by means
of a shared pathway called the system bus, which is
made up of data bus (which carries the information
being transmitted), the address bus(which identifies
where the information is being sent) and the control
bus(which describes aspects of how the information
is being sent, and in what manner).
• This arrangement is referred to as :
• Reduced Instruction Set Architecture (RISC)
• There is also a power bus for electrical power to the
components which is not shown.
• Some architecture may also have a separate I/O bus.
BUSES
• The data bus moves data among the system components. Some
systems have separate data buses for moving information to
and from the CPU, in which case there is a data-in bus and
data-out bus. More often a single data bus moves data in either
direction, although never in both direction at the same time.
ISA – Instruction Set Architecture
Aspects :
• taken or not
• where is the target
• link return
• save or restore state
PIPELINING
• STAGES
- fetch (F)
- decode (D)
- execute (X)
- memory access (M)
- writeback (W)
• Stages are divided by pipeline registers/latches
PIPELINING DIAGRAM
1 2 3 4 5 6 7 8 - CYCLES
INSTR. 0 F D X M W
INSTR. 1 F D X M W
INSTR.2 F D X M W
INSTR.3 F D M X W
Pipelining: Its Natural!
• Laundry Example
A B C D
• Ann, Brian, Cathy, Dave
each have one load of clothes
to wash, dry, and fold
• Washer takes 30 minutes
O C
r
d D
e
r• Sequential laundry takes 6 hours for 4 loads
• If they learned pipelining, how long would laundry take?
Pipelined Laundry
Start work ASAP
6 PM 7 8 9 10 11 Midnight
Time
30 40 40 40 40 20
T
A
a
s
k B
O C
r
d D
e
r • Pipelined laundry takes 3.5 hours for 4 loads
Pipelining Lessons
• 1960s
– Still batch-processing systems
– Process multiple jobs at once
• Multiprogramming
– One job could use processor while other jobs used
peripheral devices
– Advanced operating systems developed to service
multiple interactive users
• 1964
– IBM announced System/360 family of computers
1.4 The 1960s
• Timesharing systems
– Developed to support many simultaneous interactive users
– Turnaround time was reduced to minutes or seconds
• Time between submission of job and the return of its results
– Real-time systems
• Supply response within certain bounded time period
– Improved development time and methods
• MIT used CTSS system to develop its own successor, Multics
– TSS, Multics and CP/CMS all incorporated virtual memory
• Address more memory locations than actually exist
1.5 The 1970s
• 1980s
– Decade of personal computers and workstations
– Computing distributed to sites at which it was needed
– Personal computers proved relatively easy to learn and use
• Graphical user interfaces (GUI)
– Transferring information between computers via networks
became more economical and practical
1.6 The 1980s
• Middleware
– Links two separate applications
• Often over a network and between incompatible machines
– Particularly important for Web services
• Simplifies communication across multiple architectures
• Web services
– Encompass set of related standards
– Ready-to-use pieces of software on the Internet
– Enable any two applications to communicate and exchange data
1.10 Application Bases
• Real-time systems
– Require that tasks be performed within particular (often short)
time frame
• Autopilot feature of an aircraft must constantly adjust speed,
altitude and direction
– Such actions cannot wait indefinitely—and sometimes cannot
wait at all
1.11 Operating System Environments