Abstract View of System Components - PowerPoint PPT Presentation

1 / 21
About This Presentation
Title:

Abstract View of System Components

Description:

Title: Abstract View of System Components Author: Marilyn Turnamian Last modified by: Andrea Created Date: 6/25/1999 6:38:26 PM Document presentation format – PowerPoint PPT presentation

Number of Views:54
Avg rating:3.0/5.0
Slides: 22
Provided by: Marily337
Category:

less

Transcript and Presenter's Notes

Title: Abstract View of System Components


1
Corso di Laboratorio di Sistemi Operativi
Corsi di Laurea in Scienza e Teoria
dell'Informatica e Matematica, Università di
Siena Anno accademico 2003/2004  
Dott. Simone Rinaldi e-mail rinaldi_at_unisi.it
Dott. Andrea Frosini e-mail frosini_at_unisi.it
Ricevimento lunedì dalle 1400 alle 1600. I
lucidi delle lezioni ed altro eventuale materiale
didattico potranno essere reperiti alla
pagina http//www2.dsmi.unisi.it/newsito/insegnam
ento.php?id24
2
Programma del corso (1/2)
Introduzione 1. Preliminari 2. Sviluppo dei
Sistemi Operativi Storia di UNIX e di Linux 1.
Evoluzione di UNIX 2. Avvento di Linux 3. Linux e
MINIX 4. Concetto di Open Source e Free Software
Foundation 5. Distribuzioni6. Mandrake 9.0
"Dolphin" (caratteristiche e istallazione) Struttu
ra di UNIX e di Linux 1. Livelli e componenti di
UNIX 2. Shell 3. Libreria Standard 4. Kernel
5. Kernel modulare di Linux 6. Introduzione al
file system
I comandi principali 1. Avviare il sistema 2.
Connessione e disconnessione dal sistema 3.
Shell 4. Comandi 5. Filtri 6. Manuali man,
info 7. Gestione dei files e directories 8.
Standard input, output, error 9. Pipelines 10.
find 11. grep
La gestione dei files   1. UNIX File system 2.
Index node 3. Link 4. Gestione dei files e
delle directories5. Attributi dei files 6.
Gestione dei Permessi 7. Linux file system 8.
Compressione e uso del tar
3
Programma del corso (2/2)
La gestione dei processi  1. Introduzione ai
processi 2. Stati di un processo 3. Comandi
per la gestione dei processi UNIX 4. System
calls per la gestione dei processi fork(),
wait(), exec(), exit () 5. Programmi in C e
system calls 6. Segnali Link 7. Scheduling
La shell bash  1. Introduzione alle shell 2.
Programmi e Scripting 3. Introduzione agli
script per bash4. Gestione delle variabili 5.
If-then-else-fi 6. Espressioni 7. Parametri
posizioni e parametri speciali 8. case-in-esac
9. for-in-do-done 10. Array Link 11. Debugging
12. while-do-done 13. conitnue-break 14.
until-do-done Link 15. Gestione stringhe Link
16. Sostituzione dei parametri 17. Funzioni
18. Esempi  
4
  • Modalità di esame
  • L'esame consiste nella realizzazione di scripts
    che risolvono un esercizio assegnato dal docente.
  • Gli scripts devono essere realizzati in una
    settimana.
  • Al momento della consegnata del programma al
    docente lo studente sostiene la prova orale che
    consiste in una
  • discussione sugli scripts realizzati. L'esercizio
    deve essere svolto individualmente.
    Prenotazione Esame
  • Deve essere effettuata la prenotazione all'esame
    inviando una email con soggetto
  • Prenotazione Laboratorio di S.O. ad uno degli
    indirizzi
  • frosini_at_unisi.it
  • rinaldi_at_unisi.it
  • specificando inoltre Nome, Cognome, Nome del
    corso, Corso di Laurea.
  • Il docente invierà l'esercizio (sempre via email)
    dopo circa una settimana.
  •  
  • La consegna prevede
  • una relazione che illustri i vari passi della
    procedura che risolve l'esercizio e gli scripts
    implementati
  • sia la relazione che gli scripts possono essere
    consegnati inviando una email all'indirizzo
    frosini_at_unisi.it oppure rinaldi_at_unisi.it
  • il docente risponde al messaggio comunicando la
    data della prova orale
  •  

5
Libri di Testo   Linux La guida , M. Welsh, M. K.
Dalheimwer, L. Kaufman, ApogeoGuida a Unix con
Linux, di Jack Dent, Tony Gaddis, Apogeo Per
ulteriori approfondimenti sui S.O. Sistemi
Operativi, V Edizione, A. Silberschatz  and P. B.
Galvin, Addison Wesley. I Moderni Sistemi
Operativi, A. S. Tanenbaum, Jackson Al Kelley,
C Didattica e Programmazione Al Kelley, Ira
Pohl, , Addison-Wesley Manuali
online Appunti_di_informatica_libera.html,
Daniele Gioacomini Linux Guida dellUtente,
Larry Greenfield Linux HOWTO - Istallazione e
Configurazione BASH Programming - Introduction
HOWTO 
6
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
  • Furnish services to programs (I/O, read, write,
    timer, interrupt ... ) using special instructions
    (system calls).
  • Make the computer system convenient to use,
    organizing its resources and sharing them among
    the users.
  • Use the computer hardware in an efficient manner.

7
Computer System Components
  1. Hardware provides basic computing resources
    (CPU, memory, I/O devices).
  2. Operating system It is a special system program
    that controls and coordinates the use of the
    hardware among the various system and application
    programs for the various users.
  3. System and Application programs define the ways
    in which the system resources are used to solve
    the computing problems of the users (compilers,
    database systems, video games, browsers).
  4. Users (people, machines, other computers).

8
Abstract View of System Components
9
Operating System Definitions
  • Resource allocator manages and allocates
    resources.
  • Control program controls the execution of user
    programs and operations of I/O devices.
  • Kernel the one program running at all times
    (all else being application programs).

10
History of Operating Systems
  • First generation 1945 - 1955
  • vacuum tubes, plug boards
  • Second generation 1955 - 1965
  • transistors, batch systems
  • Third generation 1965 1980
  • ICs and multiprogramming
  • Fourth generation 1980 present
  • personal computers

11
Batch Systems (2nd generation)
  • Early batch system
  • bring cards to 1401
  • read cards to tape
  • put tape on 7094 which does computing
  • put tape on 1401 which prints output

12
Batch Systems
  • Structure of a typical Fortran Monitor System job

13
Batch Systems
  • Reduce setup time by batching similar jobs
  • Automatic job sequencing automatically
    transfers control from one job to another. First
    rudimentary operating system.
  • Use of a small machine for writing jobs on a tape
    and printing results from tape. It has no
    computational capability.

14
Memory Layout for a Simple Batch System
15
Multi-programmed Batch Systems (3rd generation)
Several jobs are kept in main memory at the same
time (pool of jobs), and the CPU is multiplexed
among them (CPU scheduling).
16
OS Features Needed for Multiprogramming
  • CPU scheduling the system must choose among
    several jobs ready to run.
  • Memory management the system must allocate the
    memory to several jobs.
  • I/O routine supplied by the system.
  • Spooling systems for handling outputs.

17
Time-Sharing SystemsInteractive Computing
  • The CPU is multiplexed among several jobs that
    are kept in memory and on disk (the CPU is
    allocated to a job only if the job is in memory).
  • A job swapped in and out of memory to the disk.
  • On-line communication between the user and the
    system is provided when the operating system
    finishes the execution of one command, it seeks
    the next control statement from the users
    keyboard.
  • On-line system must be available for users to
    access data and code.

18
OS Time-Sharing Systems
  • CTSS (Compatible Time Sharing System - 1962)
  • MULTICS (MULTIplexed Information and Computing
    Service - 1965)
  • UNIX (1969)

19
Desktop Systems (4nd generation)
  • Personal computers computer system dedicated to
    a single user.
  • I/O devices keyboards, mice, display screens,
    small printers.
  • User convenience and responsiveness.
  • Can adopt technology developed for larger
    operating system. Often individuals have sole use
    of computer and do not need advanced CPU
    utilization of protection features.
  • May run several different types of operating
    systems (Windows, MacOS, UNIX, Linux)

20
Desktop Systems
  • MS-DOS (MicroSoft Disk Operating System -1980)
  • Windows (1985)
  • Windows 95, Windows 98, Windows Me
  • Windows NT, Windows 2000 (5th version of NT),
    Windows XP
  • UNIX
  • Minix (1987)
  • Linux (1994)

21
Distributed Systems
  • Requires networking infrastructure.
  • Local area networks (LAN) or Wide area networks
    (WAN)
  • May be either client-server or peer-to-peer
    systems.
Write a Comment
User Comments (0)
About PowerShow.com