01-Sistema Operativo new.pptx [Sola lettura] Opera… · 18/09/2011 3 Un’esempio’di’Swdi...

10
18/09/2011 1 Sistema Opera2vo A. Ferrari Definizione (da Wikipedia) Il sistema opera2vo, abbreviato in SO (in inglese OS, "opera2ng system") è un insieme di componen2 soIware, che garan2sce l'opera2vità di base di un calcolatore, coordinando e gestendo le risorse hardware, le periferiche, le risorse soIware (processi) e facendo da interfaccia con l'utente È la "base" per i soIware applica2vi , che dovranno essere progePa2 e realizza2 in modo da essere riconosciu2 e supporta2 da quel par2colare sistema opera2vo. Es. su un computer con CPU intel facciamo “girare” SW per Windows o per Linux o per MAC OS X (a seconda del SO installato) Assieme al processore, con cui è strePamente legato, cos2tuisce la piaPaforma del sistema di elaborazione. Applica2on Program Interface (API) Il Sistema Opera2vo espone una API che tradizionalmente assume la forma di una libreria di funzioni speciali (systemcall, chiamate di sistema) L’API di Windows è nota come WINAPI L’interfaccia di riferimento per il mondo Linux è denominata POSIX Mol2 programmatori non u2lizzano direPamente le API, i linguaggi di programmazione “nascondono” l’interazione col SO. Es. printf del linguaggio C o cout del C++ vengono trasformate dal compilatore in chiamate alle API del SO Come sono scria i SO Data la strePa dipendenza dall’HW alcune par2 del SO sono in linguaggio macchina. Tradizionalmente la maggior parte del SW che compone un SO è scriPa in C. Es. Windows, Linux “stra2” firmware Il firmware è un programma integrato direPamente in un componente elePronico nel senso più vasto del termine (integra2, schede eleProniche, periferiche). Lo scopo del programma è quello di avviare il componente stesso e consen2rgli di interagire con altri componen2 tramite l'implementazione di protocolli di comunicazione o interfacce di programmazione. Il termine deriva dall'unione di "firm" (azienda) e "ware" (componente), indica che il programma non è immediatamente modificabile dall'utente finale, ovvero risiede stabilmente nell'hardware integrato in esso, e che si traPa del punto di incontro fra componen2 logiche e fisiche, ossia fra hardware e soIware. Il firmware forse più conosciuto è quello della scheda madre, chiamato comunemente BIOS e responsabile del correPo avvio del computer.

Transcript of 01-Sistema Operativo new.pptx [Sola lettura] Opera… · 18/09/2011 3 Un’esempio’di’Swdi...

Page 1: 01-Sistema Operativo new.pptx [Sola lettura] Opera… · 18/09/2011 3 Un’esempio’di’Swdi virtualizzazione:’VirtualBox’ • VirtualBox’è’un’soIware’di’virtualizzazione’commerciale’

18/09/2011  

1  

Sistema  Opera2vo  

A.  Ferrari  

Definizione  (da  Wikipedia)  

•  Il  sistema  opera2vo,  abbreviato  in  SO  (in  inglese  OS,  "opera2ng  system")  è  un  insieme  di  componen2  soIware,  che  garan2sce  l'opera2vità  di  base  di  un  calcolatore,  coordinando  e  gestendo    –  le  risorse  hardware,    –  le  periferiche,    –  le  risorse  soIware  (processi)    –  e  facendo  da  interfaccia  con  l'utente  

•  È  la  "base"  per  i  soIware  applica2vi  ,  che  dovranno  essere  progePa2  e  realizza2  in  modo  da  essere  riconosciu2  e  supporta2  da  quel  par2colare  sistema  opera2vo.    –  Es.  su  un  computer  con  CPU  intel  facciamo  “girare”  SW  per  Windows  o  

per  Linux  o  per  MAC  OS  X  (a  seconda  del  SO  installato)  •  Assieme  al  processore,  con  cui  è  strePamente  legato,  cos2tuisce  la  

piaPaforma  del  sistema  di  elaborazione.  

Applica2on  Program  Interface  (API)  

•  Il  Sistema  Opera2vo  espone  una  API  che  tradizionalmente  assume  la  forma  di  una  libreria  di  funzioni  speciali  (system-­‐call,  chiamate  di  sistema)  –  L’API  di  Windows  è  nota  come  WINAPI  –  L’interfaccia  di  riferimento  per  il  mondo  Linux  è  denominata  POSIX  

•  Mol2  programmatori  non  u2lizzano  direPamente  le  API,  i  linguaggi  di  programmazione  “nascondono”  l’interazione  col  SO.  –  Es.  printf  del  linguaggio  C  o  cout  del  C++  vengono  trasformate  dal  compilatore  in  chiamate  alle  API  del  SO  

Come  sono  scria  i  SO  

•  Data  la  strePa  dipendenza  dall’HW  alcune  par2  del  SO  sono  in  linguaggio  macchina.  

•  Tradizionalmente  la  maggior  parte  del  SW  che  compone  un  SO  è  scriPa  in  C.  – Es.  Windows,  Linux  

“stra2”   firmware  •  Il  firmware  è  un  programma  integrato  direPamente  in  un  componente  

elePronico  nel  senso  più  vasto  del  termine  (integra2,  schede  eleProniche,  periferiche).    

•  Lo  scopo  del  programma  è  quello  di  avviare  il  componente  stesso  e  consen2rgli  di  interagire  con  altri  componen2  tramite  l'implementazione  di  protocolli  di  comunicazione  o  interfacce  di  programmazione.  

•  Il  termine  deriva  dall'unione  di  "firm"  (azienda)  e  "ware"  (componente),  indica  che  il  programma  non  è  immediatamente  modificabile  dall'utente  finale,  ovvero  risiede  stabilmente  nell'hardware  integrato  in  esso,  e  che  si  traPa  del  punto  di  incontro  fra  componen2  logiche  e  fisiche,  ossia  fra  hardware  e  soIware.  

•  Il  firmware  forse  più  conosciuto  è  quello  della  scheda  madre,  chiamato  comunemente  BIOS  e  responsabile  del  correPo  avvio  del  computer.  

Page 2: 01-Sistema Operativo new.pptx [Sola lettura] Opera… · 18/09/2011 3 Un’esempio’di’Swdi virtualizzazione:’VirtualBox’ • VirtualBox’è’un’soIware’di’virtualizzazione’commerciale’

18/09/2011  

2  

Boot  

•  Il  sistema  opera2vo  viene  caricato  nella  memoria  RAM  all’accensione  della  macchina  (programma  di  boot)  e  rimane  aavo  fino  allo  spegnimento.  

CaraPeris2che  

•  Il  sistema  opera2vo:  – è  un  insieme  di  moduli  soIware  – controlla  le  risorse  hardware  del  sistema  – mePe  a  disposizione  dell’utente  una  macchina  virtuale,  in  grado  di  eseguire  comandi  da2  dall’utente,  u2lizzando  la  macchina  “reale”.  

–  la  macchina  virtuale  nasconde  tua  i  dePagli  hardware  che  sarebbero  troppo  complica2  da  ges2re  per  la  maggior  parte  degli  uten2  

StruPura  a  “cipolla”   Gli  stra2  della  “cipolla”  

•  Ogni  strato  (livello)  cos2tuisce  una  macchina  virtuale:  – usa  le  funzionalità  di  quello  soPostante  –  fornisce  servizi  al  livello  che  segue  nella  gerarchia  – ges2sce  delle  risorse  mediante  poli2che  invisibili  ai  livelli  superiori  (struPura  modulare  del  Sistema  Opera2vo)  

Gerarchia  di  Macchine  virtuali  •  Chi  scrive  un  sistema  opera2vo  vede  il  sistema  come  un  

insieme  di  risorse  fisiche  da  comandare  direPamente  •  Chi  progePa  un  ambiente  di  programmazione  vede  la  

macchina  come  l’insieme  delle  funzioni  messe  a  disposizione  dal  sistema  opera2vo  

•  Il  programmatore  usa  un  linguaggio  ad  alto  livello  per  realizzare  un  programma  applica2vo  e  vede  l’elaboratore  come  l’insieme  delle  funzionalità  messe  a  disposizione  dall’ambiente  di  programmazione  

•  per  l’u2lizzatore  di  un  programma  applica2vo  il  sistema  appare  virtualmente  come  l’insieme  dei  comandi  che  può  fornire  alla  macchina  per  soddisfare  le  sue  esigenze  

SW  di  virtualizzazione  

•  Da  non  confondere  con  il  concePo  esposto  in  precedenza  di  “macchine  virtuali”  sono  i  SW  di  virtualizzazione  (chiama2  anche  ques2  macchine  virtuali”)  

•  Sono  applicazioni  installate  in  un  sistema  opera2vo  host  in  grado  di  “eseguire”  altri  sistemi  opera2vi  guest.  

Page 3: 01-Sistema Operativo new.pptx [Sola lettura] Opera… · 18/09/2011 3 Un’esempio’di’Swdi virtualizzazione:’VirtualBox’ • VirtualBox’è’un’soIware’di’virtualizzazione’commerciale’

18/09/2011  

3  

Un  esempio  di  Sw  di  virtualizzazione:  VirtualBox  

•  VirtualBox  è  un  soIware  di  virtualizzazione  commerciale  proprietario  (con  una  versione  ridoPa  distribuita  secondo  i  termini  della  GNU  General  Public  License)  per  architePura  x86  che  supporta  Windows,  GNU/Linux  e  Mac  OS  X  come  sistemi  opera2vi  host,  ed  è  in  grado  di  eseguire  Windows,  GNU/Linux,  OS/2  Warp,  OpenBSD  e  FreeBSD  come  sistemi  opera2vi  guest.  

•  Il  12  febbraio  2008  Sun  Microsystems  ha  acquistato  Innotek  GmbH,  l'azienda  tedesca  sviluppatrice  di  VirtualBox.  

•  Il  27  gennaio  2010  è  stata  perfezionata  l'acquisizione  di  Sun  da  parte  di  Oracle  Corpora2on.  

Linux  (host)    Windows  (guest)  

Classificazione  dei  SO  

 Sistem

i  Ope

ra2vi    

 Proprietari  

Aper2  

 Open  Source    

Sistemi  proprietari  •  Ogni  azienda  produPrice  di  piaPaforme  hardware  o  produPrice  di  programmi  applica2vi  comunque  interessate  a  distribuire  il  proprio  prodoPo  ha  creato  spesso  un  sistema  opera2vo  proprio,  spesso  non  trasportabile  su  altre  macchine.    

•  TuPo  ciò  per  tutelare  e  garan2re  la  vendita  delle  proprie  piaPaforme  hardware  o  soIware,  ma  di  faPo  impedendo  sia  la  standardizzazione  sia  la  diffusione  di  modelli  opera2vi  condivisibili.  

•  I  SO  per  mainframe  di  solito  sono  sistemi  proprietari  

Sistemi  aper2  

•  La  casa  produPrice  del  SO  distribuisce  documentazione  (API  Applica2ons  Program  Interface)  aPa  a  favorire  la  scriPura  di  applica2vi  sw  da  parte  di  terze  par2  (la  prima  parte  è  il  costruPore  dell’hardware,  la  seconda  parte  è  il  costruPore  del  sistema  opera2vo)  e,  di  faPo,  base  essenziale  per  uno  sviluppo  orizzontale  del  mercato  del  sw.  

•  MS-­‐DOS,  Windows,  Mac  OSX,  iOS  …  

Sistemi  Open  Source  

•  Sistemi  opera2vi  per  cui  la  distribuzione  commerciale  è  svincolata  da  cos2  e  il  cui  codice  sorgente  è  disponibile  ai  programmatori.  

•  Linux,  FreeDOS  …  

Page 4: 01-Sistema Operativo new.pptx [Sola lettura] Opera… · 18/09/2011 3 Un’esempio’di’Swdi virtualizzazione:’VirtualBox’ • VirtualBox’è’un’soIware’di’virtualizzazione’commerciale’

18/09/2011  

4  

Uten2  e  livelli  

•  L’utente  finale  del  sistema  interagisce  solo  con  il  livello  più  esterno  della  gerarchia  

•  E’  ignaro  di  tua  i  dePagli  delle  operazioni  svolte  dai  livelli  inferiori  

Interprete  dei  comandi  

•  Le  richieste  dell'utente  al  Sistema  Opera2vo  sono  faPe    –  digitando  dei  comandi  nelle  interfacce  a  caraPere  (a  riga  di  comando)  (CLI,  Command  Line  Interface)  

–  o  selezionando  oggea  con  il  mouse  nelle  interfacce  grafiche  (Graphic  User  Interface)  

•  Le  richieste  sono  intercePate  dall'interprete  dei  comandi  (shell),  il  quale  aava  i  moduli  programma  che  agiscono  nei  componen2  del  nucleo  (kernel).    

•  Ques2  aavano  i  disposi2vi  hardware  quali  il  processore,  la  memoria,  i  controller  di  I/O,  ecc.,  che  svolgono  la  richiesta  dell'utente.  

Command  Line  Interface  (shell  testuali)   GUI,  Graphic  User  Interface  

WIMP  

•  La  maggior  parte  delle  interfacce  grafiche  sono  di  2po  WIMP  (Windows,  Icons,  Menus,  Poin2ng  device)  

•  La  metafora  più  u2lizzata  nei  personal  computer,  oggi,  è  quella  della  “scrivania”  (in  inglese,  desktop).  

•  Dalla  sua  introduzione  ad  oggi  sono  state  introdoPe  interfacce  alterna2ve,  allo  scopo  di  superarne  le  limitazioni,  ma  ancora  senza  successo.  

Xerox  Star  •  La  worksta2on  dello  Xerox  Star  è  

stata  il  primo  computer  commercializzato  della  storia  ad  essere  dotato  di  interfaccia  grafica  di  2po  WIMP.  

•  Lo  Xerox  Star,  è  un  sistema  informa2co  della  Xerox  Corpora2on  commercializzato  a  par2re  dal  27  aprile  1981  e  cos2tuito  da  una  serie  di  worksta2on  collegate  fra  loro  tramite  LAN.  

•  Lo  Xerox  Star  per  la  prima  volta  proponeva,  in  alterna2va  alla  mul2utenza  del  minicomputer  una  serie  di  computer  monouten2  collega2  tramite  LAN.  

Page 5: 01-Sistema Operativo new.pptx [Sola lettura] Opera… · 18/09/2011 3 Un’esempio’di’Swdi virtualizzazione:’VirtualBox’ • VirtualBox’è’un’soIware’di’virtualizzazione’commerciale’

18/09/2011  

5  

MicrosoI  BOB  •  hPp://www.youtube.com/watch?v=ZegWedG-­‐jk4  •  MicrosoI  Bob  era  un  prodoPo  di  MicrosoI,  rilasciato  nel  marzo  

1995,  progePato  per  diventare  un'interfaccia  alterna2va  al  desktop  di  MicrosoI  Windows  3.1  e  95,  in  sos2tuzione  del  Program  Manager  e  dell'Explorer.  

•  Il  soIware  si  basava  sulla  rappresentazione  di  un  ambiente  casalingo,  che  doveva  essere  più  semplice  da  comprendere  per  l'utente.    

•  La  schermata  iniziale  ha  una  porta  per  effePuare  il  login,  un  saloPo  come  ambiente  principale  e  un  assistente  (il  cane  Rover)    

•  Le  varie  applicazioni  sono  rappresentate  tramite  delle  metafore:  il  calendario,  la  rubrica  degli  indirizzi  ...    

•  Non  ebbe  successo  nelle  vendite,  ed  infaa  è  generalmente  considerato  il  prodoPo  meno  riuscito  di  MicrosoI.  

MicrosoI  BOB  (1995)  

X  Windows  •  X  Window  System  è  un  gestore  grafico  molto  diffuso,  standard  de  facto  

per  mol2  sistemi  Unix-­‐like.    •  X  fornisce  l'ambiente  e  i  componen2  di  base  per  le  interfacce  grafiche,  il  

disegno  e  lo  spostamento  delle  finestre  sullo  schermo  e  l'interazione  con  periferiche  d'input  quali  il  mouse  e  la  tas2era.  X  non  ges2sce  invece  l'interfaccia  grafica  utente  o  lo  s2le  grafico  delle  applicazioni  che  vengono  ges2te  dall'ambiente  desktop  scelto  dall'utente  e  in  uso  sul  computer.  

•  Un'altra  caraPeris2ca  molto  importante  è  la  trasparenza  di  rete:  la  macchina  dove  girano  i  programmi  (client)  non  deve  essere  necessariamente  la  macchina  locale  (display  server).  Questo  permePe  anche  di  visualizzare  sullo  stesso  display  applicazioni  che  vengono  eseguite  su  diversi  host,  oppure  che  su  un  host  vengano  eseguite  applicazioni  la  cui  interfaccia  grafica  finisce  su  diversi  display.  

•  X  è  stato  creato  dal  MIT  nel  1984.    

GNOME  •  GNOME  (GNU  Network  Object  Model  Environment)  è  un  desktop  environment  creato  nell'agosto  del  1997,  con  l'obieavo  di  fornire  un  ambiente  di  sviluppo  e  desktop  libero  per  il  sistema  opera2vo  GNU/Linux.  Grazie  a  questo  e  ai  risulta2  raggiun2,  è  presto  stato  riconosciuto  come  il  desktop  environment  ufficiale  del  progePo  GNU.  

•  APualmente  GNOME  è  l'ambiente  grafico  predefinito  di  molte  distribuzioni  Linux,  tra  le  quali  Debian  e  Fedora.  

KDE  •  KDE  (K  Desktop  Environment)  è  un  ambiente  desktop  

grafico  per  postazioni  di  lavoro  Unix.  •  È  basato  sulle  librerie  Qt  di  Qt  SoIware  e  funziona  sulla  

maggior  parte  dei  sistemi  opera2vi  di  2po  Unix,  come  GNU/Linux,  distribuzioni  BSD  ed  esistono  anche  delle  versioni  funzionan2  su  MicrosoI  Windows  e  su  Mac  OS  X  che  sfruPano  il  layer  di  portabilità  del  toolkit  Qt  nell'aPuale  versione  4.  L'ul2ma  versione  disponibile  è  la  4.9  (rilasciata  il  1  agosto  2012)  ed  è  stato  tradoPo  in  più  di  sessanta  lingue.  

•  KDE  viene  concepito  come  un  Desktop  Environment  orientato  prevalentemente  agli  uten2  medio-­‐avanza2,  per  via  della  vasta  configurabilità  dell'ambiente  e  dei  suoi  programmi.  

Funzioni  •  Il  gestore  dei  processi  (nucleo)  ges2sce  l’esecuzione  dei  programmi  da  parte  dell’unità  di  elaborazione  

•  Il  gestore  della  memoria    alloca  la  memoria  e  la  par2ziona  tra  i  vari  programmi  

•  I  driver  sono  responsabili  delle  operazioni  di  ingresso/uscita  che  coinvolgono  le  periferiche  

•  Il  file  system  è  responsabile  della  ges2one  dei  file  in  memoria  di  massa  

•  L’interprete  comandi  consente  all’utente  di  aavare  i  programmi  

Page 6: 01-Sistema Operativo new.pptx [Sola lettura] Opera… · 18/09/2011 3 Un’esempio’di’Swdi virtualizzazione:’VirtualBox’ • VirtualBox’è’un’soIware’di’virtualizzazione’commerciale’

18/09/2011  

6  

Monoutente  o  mul2utente  

•  Il  Sistema  Opera2vo    deve  garan2re  che  ogni  utente  avverta  la  macchina  come  dedicata  

SO  monopragramma2  o  mul2programma2  

•  Monoprogramma8:  in  grado  di  mandare  in  esecuzione  un  solo  processo  alla  volta  su  un  sistema  in  cui  un  solo  utente  può  agire.  –  Sono  oramai  scomparsi,  pur  avendo  rappresentato  una  rivoluzione  sostanziale  per  l’epoca,  come  MsDos  e  MaC  OS.    

•  Mul8programma8:  possono  ges2re  più  processi  contemporaneamente,  per  i  quali  alternano  un  preciso  quanto  di  tempo  di  esecuzione  di  CPU,  mantenendo  traccia  di  differen2  sessioni  per  ogni  utente,  potendo  disporre  di  memoria  centrale  virtuale  e  quindi  teoricamente  infinita.  

I  primi  Sistemi  Opera2vi  

•  I  primi  sistemi  opera2vi  sono  sta2  progePa2  negli  anni  ’50  per  i  calcolatori  allora  disponibili.    

•  Consistevano  in  poche  cen2naia  di  istruzioni  per  il  caricamento  del  programma  in  memoria  centrale  e  per  la  produzione,  su  un  disposi2vo  di  output,  dei  risulta2  dell’elaborazione.  

•  L’interfaccia  era  quella  comune  allora  –  interruPori  e  spie  luminose.  

•  I  comandi  venivano  impar22  in  codice  binario.  

Pannello  di  controllo  

Nascita  di  UNIX  

•  Anni  ’60,  alla  AT&T  nasce  UNIX,  capos2pite  di  una  numerosa  e  varia  famiglia  di  sistemi  opera2vi.    

•  Anni  ’70,  iniziano  a  diffondersi  i  primi  micro  computer.  

•  Anni  ‘80,  a  SeaPle  venne  sviluppato  il  sistema  opera2vo  QDOS  (Quick  and  Dirty  Opera2ng  System).  

DOS  

•  Dopo  pochi  mesi,  un’altra  diPa  di  SeaPle,  la  MicrosoI  di  Bill  Gates,  ne  acquista  i  diria  per  rivendere  il  DOS  ad  un  cliente  importante.  

•  Il  cliente  è  l’IBM,  che  nel  1981  lancerà  il  primo  PC,  dando  il  via  alla  rivoluzione  dei  personal  computer.  

Page 7: 01-Sistema Operativo new.pptx [Sola lettura] Opera… · 18/09/2011 3 Un’esempio’di’Swdi virtualizzazione:’VirtualBox’ • VirtualBox’è’un’soIware’di’virtualizzazione’commerciale’

18/09/2011  

7  

Win  e  Mac  

•  1984,  lancio  dell’Apple  Macintosh,  e  del  suo  sistema  opera2vo  a  interfaccia  grafica,  il  System  1.0    

•  hPp://it.wikipedia.org/wiki/Storia_del_Mac_OS#Pre-­‐System_6    

•  L’anno  successivo,  il  1985,  la  MicrosoI  lancia  la  prima  versione  di  Windows.  

•  hPp://it.wikipedia.org/wiki/Windows#Storia_di_MicrosoI_Windows    

Linux  

•  Nel  1991  uno  studente  finlandese,  Linus  Torvalds,  sviluppò  il  kernel  per  un  sistema  opera2vo  basato  su  una  variante  di  UNIX.  

•  Lo  distribuì  in  rete  secondo  la  GNU  General  Public  License,  una  licenza  che  ne  consen2va  l’uso,  la  redistribuzione  e  la  modifica  (a  certe  condizioni).  

•  Iniziò  a  ricevere  da  subito  contribu2  da  altri  sviluppatori.  

Linux  e  soIware  libero  •  Nasceva  così  Linux,  una  

delle  varian2  UNIX  oggi  più  diffuse.  Il  kernel  di  Linux  è  con2nuamente  aggiornato,  e  disponibile  anche  gratuitamente.  

•  Uno  dei  pun2  di  forza  di  questo  sistema  è  la  comunità  che  lo  supporta,  e  la  filosofia  su  cui  si  basa,  quella  del  soIware  libero.  

Elemen2  2pici  di  un  SO  

•  Gli  elemen2  chiave  che  caraPerizzano  un  SO  sono  tradizionalmente  individua2  nel  modo  in  cui  lo  stesso  ges2sce  e  organizza  i  suoi  cos2tuen2  principali:  

•  •  La  ges2one  dei  Processi;  •  •  La  ges2one  della  Memoria  Principale;  •  •  La  ges2one  dei  Disposi2vi;  •  •  La  ges2one  delle  Memorie  di  Massa;  

Kernel  (nucleo)  di  un  SO  

Ges2one  dei  processi  

Ges2one  della  memoria  principale  

Ges2one  dei  disposi2vi  

Ges2one  della  memoria  di  massa  

Kernel  •  Kernel  monoli8ci,  che  implementano  direPamente  una  completa  astrazione  dell'hardware  soPostante.  –  Unix,  Linux  

•  Microkernel,  che  forniscono  un  insieme  ristrePo  e  semplice  di  astrazione  dell'hardware  e  usano  soIware  (chiama2  device  driver  o  server)  per  fornire  maggiori  funzionalità.  

•  Kernel  ibridi  (o  microkernel  modifica2),  che  si  differenziano  dai  microkernel  puri  per  l'implementazione  di  alcune  funzioni  aggiun2ve  al  fine  di  incrementare  le  prestazioni.  – Windows,  Mac  OS  X  

Page 8: 01-Sistema Operativo new.pptx [Sola lettura] Opera… · 18/09/2011 3 Un’esempio’di’Swdi virtualizzazione:’VirtualBox’ • VirtualBox’è’un’soIware’di’virtualizzazione’commerciale’

18/09/2011  

8  

Ges2one  dei  processi  •  Nei  sistemi  mul2programma2  più  programmi  in  esecuzione  contemporaneamente  (processi)  consentono  all’utente  di  u2lizzare  più  applicazioni  nello  stesso  tempo  e  alla  macchina  di  distribuire  il  carico  computazionale  con  estrema  efficacia,  per  esempio  sulle  operazioni  di  Input/Output  verso  i  disposi2vi.  

•  Il  SO  alterna  sulla  CPU  differen2  processi  (schedulazione)per  tempi  molto  ridoa  (2me-­‐sharing),  rendendo  l’esecuzione  dei  programmi  contemporanea  agli  occhi  degli  uten2.    

Ges2one  della  memoria  

•  La  mul2programmazione  impone  che  la  memoria  sia  sempre  maggiore,  in  modo  da  contenere  sempre  più  processi  in  2me-­‐sharing.  

•  Per  risolvere  il  problema  della  dimensione  della  memoria  i  SO  simulano  la  memoria  mancante  sulla  memoria  di  massa  (es.  disco  fisso),  cosicché  l’ampiezza  della  memoria  è  sempre  sufficiente.    

•  L’insieme  delle  tecniche  che  consentono  di  simulare  la  memoria  su  disco  viene  dePa  memoria  virtuale.  

Ges2one  dei  disposi2vi  

•  La  ges2one  dei  disposi2vi  o  dell’Input/Output  è,  da  sempre,  la  parte  più  cri2ca  di  ogni  sistema  opera2vo.  

•  La  ragione  riguarda  la  necessità  commerciale  di  avere  più  produPori  di  periferiche  (terze  par2)  spesso  diversi  dai  produPori  di  calcolatori  e  dai  produPori  del  SO.    

•  Ciò  significa  che  par2  consisten2  del  SO  devono  essere  integrate  con  programmi  scria  da  terze  par2  (driver).  

Ges2one  della  memoria  di  massa  •  La  ges2one  delle  memorie  di  massa  viene  oPenuta  da  un  

SO  adoPando  una  o  più  struPure  da2  denominate  File  System.  

•  I  da2  residen2  fisicamente  sulle  memorie  secondarie  sono  organizza2  in  sePori,  a  loro  volta  componen2  di  elemen2  logici  denomina2  files.  

•  Una  seconda  astrazione  serve  per  organizzare  i  files  tra  di  loro,  tramite  directory  per  cos2tuire  un  cosiddePo  file  system  gerarchico  organizzato  ad  albero.    

•  Tipici  elemen2  di  una  organizzazione  ad  albero  è  la  presenza  di  una  root  directory  (directory  radice),  di  nomi  comple2  di  files  (pathname,  percorso  più  nome  logico)  e  di  directory  corrente.  

Shell  •  La  Shell  consente  all'utente  di  accedere  inizialmente  al  sistema  tramite  un  meccanismo  di  auten2cazione  (login),  o  di  interrompere  l’aavità  del  sistema  impostandone  la  terminazione  (logoff  e/o  shutdown).  

•  La  shell  definisce  l'interfaccia  principale  tra  l’utente  e  il  sistema  opera2vo.  

•  L'interfaccia  a  caraPeri  realizzata  da  quasi  tua  i  SO  è  dePo  prompt  della  shell,  ed  essa  possiede  come  disposi2vi  standard  di  input  la  console  (tas2era)  e  standard  di  output  lo  schermo  (monitor).  

•  L’  “interprete  dei  comandi”  è  un  processo  del  SO  che  interpreta  le  chiamate  al  sistema  da  parte  dell’utente  

Strumen2  di  calcolo  

Appendice  

Page 9: 01-Sistema Operativo new.pptx [Sola lettura] Opera… · 18/09/2011 3 Un’esempio’di’Swdi virtualizzazione:’VirtualBox’ • VirtualBox’è’un’soIware’di’virtualizzazione’commerciale’

18/09/2011  

9  

Supercalcolatori  •  Un  esempio  Bull  Tera-­‐10  •  Costo  50  milioni  di  euro    •  Formato  da  270  scaffalature  per  circui2  alte  ciascuna  2.5  metri  •  540  unità  di  calcolo  dotate  di  16  processori  ciascuna  •  800  metri  quadri  di  superficie  •  Necessita  di  2  megawaP  di  elePricità  per  l'alimentazione  e  di  

altrePan2  per  il  raffreddamento.    •  Può  compiere  diecimila  miliardi  di  operazioni  al  secondo  (10  

teraflop)  •  Memoria  30  terabyte  •  Nel  2017andrà  in  pensione  e  verrà  sos2tuito  da  Tera-­‐100,  dieci  

volte  più  potente.    

Mainframe  

•  Decine  di  Mips  (milioni  di  istruzioni  per  secondo)  

•  Memoria  di  cen2naia  di  milioni  di  byte  

•  Costo  di  miliardi  di  lire  •  Necessità  di  locali  

par2colari  e  di  operatori  •  Possibilità  di  

collegamento  con  un  cen2naio  di  terminali  

Minicomputer  

•  1965  Digital  PDP  8  'economico'  

•  Decine  di  terminali  •  Decine  di  milioni  di  byte  di  memoria  

•  Costo  di  cen2naia  di  milioni  di  lire  

•  Non  necessario  un  operatore  ed  un  locale  specifico  

Minicomputer  

•  Worksta2on  (postazione  di  lavoro)  

•  Si  intende  un  elaboratore  con  un  solo  posto  di  lavoro  con  potenza  superiore  a  quella  di  un  normale  Personal  Computer  

•  Applicazioni  industriali,  tecniche,  grafiche  

Personal  computer  •  Avvento  del  

microprocessore  •  Singolo  posto  di  lavoro  •  Decine  di  migliaia  (poi  

milioni)  di  byte  di  memoria  

•  Cen2naia  di  migliaia  (poi  milioni)  di  operazioni  per  secondo  

•  Home  Computer,  Personal  Computer,  Desktop,  Laptop,  Palm  …  

Tipologie  di  personal  computer  •  Desktop  –  Computer  da  scrivania.  Personal  computer  non  porta2li.    –  Il  desktop  è  caraPerizzato  da  una  notevole  espandibilità  e  modularità  (si  possono  aggiungere  altri  componen2)  e  da  prestazioni  quasi  sempre  superiori  rispePo  al  computer  porta2le.  

•  Laptop  (computer  porta2le,  notebook)  –  Di  solito  il  porta2le  è  alimentato  da  una  baPeria  ricaricabile  che  ne  permePe  l'u2lizzo  dove  non  è  possibile  usare  altre  fon2  elePriche.  

•  Palmtop  (Palm)  –  Un  computer  palmare  spesso  indicato  in  lingua  inglese  con  l'acronimo  PDA  (Personal  Digital  Assistant)  

Page 10: 01-Sistema Operativo new.pptx [Sola lettura] Opera… · 18/09/2011 3 Un’esempio’di’Swdi virtualizzazione:’VirtualBox’ • VirtualBox’è’un’soIware’di’virtualizzazione’commerciale’

18/09/2011  

10  

Sintesi