CSCI 1302 - PowerPoint PPT Presentation

1 / 32
About This Presentation
Title:

CSCI 1302

Description:

The chipset supports the CPU. ... Some systems have more than one chipset. Computer Memory ... controller is part of the chipset, and this controller establishes the ... – PowerPoint PPT presentation

Number of Views:25
Avg rating:3.0/5.0
Slides: 33
Provided by: jonpr
Category:
Tags: csci | chipset

less

Transcript and Presenter's Notes

Title: CSCI 1302


1
CSCI 1302
  • Introduction to Operating Systems

2
Motivation
  • Maximize system utilization
  • CPU
  • Memory
  • Efficiency
  • Tasks should complete as soon as possible
  • Security

3
OS Placement
Applications (Word, IE, Games, etc.)
User
Low-level apps (compilers, interpreters, editors)
Operating System
Machine Language (Binary)
Machine
Microarchitecture (processor-level)
Physical Devices (Hardware)
4
OS Defined
  • Extended Machine
  • Service provider for hardware
  • Abstracts the details of the machine
  • Provides an API (system calls) to user
  • Resource Manager
  • Multiple users, multiple resources
  • Orderly, controlled allocation of resources
  • Fairness, protection, space-time, etc.

5
Single Processor Systems
  • Batch processing
  • Job queue
  • First-in, first-out (FIFO)
  • Interactive processing (real-time)
  • Time-sharing
  • Rapid swapping of tasks (multiple users)
  • Multitasking
  • Rapid swapping of tasks (single user)

6
Multiprocessor Systems
  • Move toward distributed (de-centralized)
    computing
  • Information/resource sharing via networks
  • Network of networks (Internet)
  • Manage resources
  • Distribute tasks (load balancing)
  • Coordinating distributed communication

7
Flavors of OS
  • Mainframe
  • Server
  • Multiprocessor
  • Personal Computer
  • Real-Time
  • Embedded
  • Smart Card

8
Mainframe OS
  • High-end I/O capacity
  • 1000 disks
  • Gigabytes of data
  • High-end web servers
  • B2B (business to business) E-commerce
  • High-speed VR/FMV Rendering
  • Many small, simultaneous jobs

9
Server OS
  • Large personal computers
  • Print, file servers for small businesses
  • Web servers
  • Can load balance these to increase performance
  • UNIX, Linux, Win2k Win2003 Server OS

10
Multiprocessor OS
  • Connect multiple computers together
  • Share/distribute jobs among multiple
    machines/processors
  • Specialized protocols for managing communication
  • Win2000 Win2003 Advanced Server

11
Personal Computer OS
  • Focus on single user, multiple jobs
  • What youre running on your machine
  • Win9x, Win2000 Pro, Linux

12
Real-Time OS
  • Time dominates these machines specs
  • Data collection from production lines, factory
    machinery
  • Hard real-time time critical in all instances
  • Soft real-time OK to drop occasionally

13
Embedded OS
  • Personal Digital Assistants
  • TVs, microwaves, mobile phones
  • Very small OS, embedded on chip
  • PalmOS, WinCE

14
Smart Card OS
  • Credit card sized devices
  • Specialized OS for specialized purposes
  • E-payment cards (e-cash cards)
  • Some JVM coming into play

15
Hardware Review
CPU
Memory
Display
Display Controller
Bus
Keyboard
Keyboard Controller
Floppy
Floppy Controller
Hard Disk
Hard Disk Controller
16
Hardware Review
  • Processors
  • Memory
  • I/O Devices
  • Bus

17
Processors
  • Brain of the computer
  • Fetch, decode, execute cycle
  • Registers
  • Program Counter (PC)
  • Stack Pointer (SP)
  • Pipelining improves performance, but complexities
    of rolling back appear
  • Kernel vs. User Mode (enables establishing
    limitations of instruction set available)

18
Memory
  • Trade off of speed vs. cost/size
  • Registers (on processor)
  • Cache (processor)
  • Cache (mainboard)
  • Main Memory
  • Disk
  • Other Network Cache/Machines
  • Tape

Cost increases
Speed decreases
19
I/O Devices
  • Typically consist of two parts
  • Controller
  • Device
  • Controller manages presents the API of the
    device to the OS
  • The software that talks to the controller is
    called a device driver

20
Memory Allocation
  • We need a protective and fair way of allocating
    and resizing memory blocks for processes/jobs
  • Two sections of memory
  • Code (typically static)
  • Data (volatile)

Limit
User 2 Data
Base
Limit
User 1 Data
Base
Limit
Program Code
Base
OS
21
Computer Memory
  • The CPU is often referred to as the brain of the
    computer. This is where all the actual computing
    is done.
  • The chipset supports the CPU. It usually contains
    several "controllers" which govern how
    information travels between the processor and
    other components in the system. Some systems have
    more than one chipset.

22
Computer Memory
  • The memory controller is part of the chipset, and
    this controller establishes the information flow
    between memory and the CPU.
  • A bus is a data path in a computer, consisting of
    various parallel wires to which the CPU, memory,
    and all input/output devices are connected.
  • The memory bus runs from the memory controller to
    the computer's memory sockets

23
Computer Memory
  • Memory speed is sometimes measured in Megahertz
    (MHz), or in terms of access time - the actual
    time required to deliver data - measured in
    nanoseconds (ns).
  • A computer's system clock resides on the
    motherboard. It sends out a signal to all other
    computer components in rhythm, like a metronome.
  • Cache memory is a relatively small amount
    (normally less than 1MB) of high speed memory
    that resides very close to the CPU. Cache memory
    is designed to supply the CPU with the most
    frequently requested data and instructions.

24
Invoking Device Actions
  • Busy wait execute a kernel-level system call
    and wait (ties up the processor ?)
  • Ask the device to generate an interrupt (signal
    that its done or failed)
  • Doesnt tie up the processor
  • Adds complexity
  • DMA Direct Memory Access
  • Bypasses the use of the processor
  • Allows the device to write directly to memory
    once the rules of the road are established

25
Bus
  • Communication highway for all data to travel
    upon
  • Multiple buses exist in modern machines
  • Cache (fastest)
  • Local (on mainboard other busses connect to it)
  • Memory
  • PCI (successor of ISA - high-speed I/O)
  • SCSI (high-speed scanners disks)
  • USB (slow peripherals)
  • IDE (disks, etc.)
  • ISA (slowest legacy)

26
OS Architecture
  • Application vs. System software
  • Utility vs. OS
  • Security, adaptability, customization (OO)
  • Shell
  • Interface to user (text or GUI)
  • Kernel
  • Core of the OS (file mgr, device drivers, memory
    mgr, scheduler)

27
Bootstrapping (booting)
  • ROM (BIOS) read first
  • Load OS into volatile memory
  • Transfer control to OS code

28
Processes
  • Task
  • Maintains state (process state)
  • Program counter (PC)
  • Register values
  • Memory (process-scope)
  • ProgramProcessClassObject

29
Processes
  • Defined as a program in execution
  • AKA a job
  • Contain
  • Instructions (code segment)
  • SP, PC, registers, file handles
  • Data segment
  • Processes can spawn subprocesses threads
  • The OS must ensure fairness protection,
    timeslicing managing multiple processes at a
    time

30
Process Internals
  • States
  • Running
  • Ready
  • Blocking
  • Process Control Block
  • State
  • Registers Memory
  • PC, SP, Files

31
Process Administration
  • Coordinating competing processes
  • Scheduler
  • Process table (lists all processes)
  • Process state priorities
  • Dispatcher
  • Time slice (quantum)
  • Process/context switch
  • Generate interrupt (interrupt handler)

32
FIN
Write a Comment
User Comments (0)
About PowerShow.com