Memory management 49
|
|
- Nicolina Marchese
- 6 anni fa
- Visualizzazioni
Transcript
1 Memory management 49
2 Immagine di un processo L immagine di memoria di un processo è organizzata in tre regioni: E rientrante, e può essere condiviso fra più processi Stack Dati Testo Ogni regione è uno spazio di indirizzamento autonomo 3
3 Cosa genera il compilatore C Block Started by Symbol
4 "! #%$&('*)+!-,/.0,1324,657$8*8:9 Editor Sis.Op. A - UNIX - Strumenti di sviluppo 1
5 Formato di un eseguibile Un eseguibile è costituito da un insieme di header e un insieme di sezioni, contenenti codice o dati: Main header, con magic number Header della Sezione 1 Header della Sezione 2 Sezione 1 Sezione 2 5
6 Strutture dati per la gestione dei processi Priorità Ready Q Process Table Stack Dati Testo Lista dei processi che hanno priorità 0 Processo U-Area Text Table 9
7 Gestione della memoria I processi Unix lavorano su uno spazio di indirizzamento virtuale (Es. 0,..., su indirizzi i i a 32 bit); Ogni processo ha uno spazio indirizzi separato per i segmenti Text, Data e Stack; Le dimensioni di Stack e Data possono cambiare durante l esecuzione; Gli indirizzi di Data crescono a partire dalla parte bassa degli indirizzi virtuali (0..); Gli indirizzi dello Stack crescono a partire dalla parte alta degli indirizzi virtuali ( ); 42
8
9 Gestione della memoria Il sistema operativo Unix è pensato per essere indipendente dalla macchina -> Lo schema di gestione della memoria varia tra piattaforme. Prime versioni : partizionamento variabili senza memoria virtuale. Attuali: memoria virtuale paginata (on demand). Due schemi separati per la gestione della memoria: - Paging system: realizza la memoria virtuale, allocando ai processi i frame (pagine fisiche) della memoria principale ed anche i buffer del disco alle pagine di memoria virtuale. - Allocatore di memoria per il Kernel: alloca memoria per i buffer, le primitive di comunicazione, gli streams del Kernel etc. 47
10 Configurazione della memoria fisica P.S.: se la pagina è di 1K e il descrittore della core map è di 16byte, la core map (1 desc. per pagina) occupa meno del 2% della memoria. 48
11 Spazio fisico e logico 47
12 Strutture dati Un processo in memoria (ready-to-run) necessita solo delle seguenti strutture dati: - User-area, o U-area; - Tabelle delle pagine (una per i segmenti Data/Text, una per i segmenti U-Area/Stack). Le pagine di Data, Text e Stack sono portate in memoria dinamicamente via paginazione. i U-area (tutte le pagine) e Tabelle delle Pagine sono portate in memoria dinamicamente via swapping. Ogni volta sono attive: la tabella delle pagine del Kernel (in memoria residente; entries contigue; mappa Data e Stack del Kernel; le pagine del Kernel in memoria non residente sono marcate non-swappabili) e quelle del processo in esecuzione (mappate in entries non necessariamente contigue della tabella del Kernel;le pagine del processo sono quasi sempre marcate come swappabili). 43
13 Strutture Dati (in BSD 4.4) FIG 1: Kernel address space maps FIG 2: Generic user process address space maps 43
14 machine-independent virtual address space structures that describe the use of a range of addresses kernel text, initialized data, uninitialized data, and initially allocated data structures reside in the range Information machine dependent/independent Describe process address space malloc arena To avoid intermixing of unrelated allocations within an address range kernel I/O staging area network buffer arena
15 Executable file Text area Initialized data of the program that follows the program text in the file uninitialized data stack areas
16 Paginazione e Swapping La memoria principale viene gestita da due demoni: - Swapper (processo 0) che si occupa di rimuovere processi dalla memoria/riportarli in memoria da disco; User-area e Tabelle delle pagine sono portate dinamicamente in memoria/disco dal processo Swapper. - Pagedaemon o Demone di Pagina (processo 2) che si occupa del rimpiazzamento delle pagine; Le pagine di Text, Data e Stack sono portate dinamicamente in memoria/disco, una alla volta quando servono (cioè a seguito di un page fault) /quando vengono rimpiazzate dal processo Pagedaemon. 50
17 Swapper PageDaemon
18 Paginazione e Swapping I due demoni lavorano sulla base di alcuni parametri di sistema: - Lotsfree: indica il numero minimo di frame per evitare l intervento del Pagedaemon; - Minfree: indica il numero minimo di frame per evitare l intervento dello Swapper; - Desfree: numero di frame liberi desiderabile per un buon funzionamento del sistema; La relazione tra i parametri è: Minfree < Desfree < Lotsfree. 51
19 Paginazione e Swapping Un processo può richiedere memoria nei seguenti casi: 1. Al momento della creazione tramite fork (allocazione di memoria per i segmenti Data e Stack); 2. Chiamata della funzione di sistema malloc (estende il segmento Data); 3. Lo stack cresce oltre le dimensioni prefissate del segmento Stack; 4. Si accede in scrittura ad una pagina condivisa tra due processi e gestita il metodo copy-on-write ; 5. Può essere necessario caricare memoria ad un processo che era swapped da troppo tempo. 46
20 Strutture dati del kernel (Paging System) Page Table: due per ogni processo (una per i segmenti Data/Text, una per i segmenti U-Area/Stack). Una entry descrive una pagina virtuale. Disk Block Descriptor: ad ogni pagina del processo con bit di validità 0 è associata una entry di questa tabella. Una entry descrive la copia su disco della pagina virtuale. Core map (Frame Data Table): una entry descrive e un frame della memoria fisica. La tabella ha come indici i numeri di frame. Swap-use Table: una per ogni dispositivo su cui si trasferiscono i processi. Una entry descrive una pagina swappata sul ldispositivo ii associato alla tabella. 47
21 Numero del page frame Age Copy on Write Modify Reference Valid Protection Bit (a) Entry della tabella delle pagine N dispositivo di swap Numero di blocco del dispositivo Tipo di memorizzazione (b) Descrittore del blocco disco Stato della pgina Contatore ai riferimenti Dispositivo logico Numero di blocco Puntatore pfdata (c) Entry della tavola dei dati del frame Contatore di riferimenti Numero di unità disco/pagina (d) Entry della Swap-use table
22 Entry della Page Table Numero di page frame Si riferisce ai frame della memoria reale. Age Indica per quanto tempo la pagina è rimasta in memoria senza che il processo facesse riferimento ad essa. La lunghezza e I contenuti di questo campo dipendono dal processore. Copy on write E porto a 1 quando più di un processo condivide una pagina. Se uno dei processi scrive nella pagina, deve essere fatta una copia della pagina per tutti gli altri processi che la condividono. Questo consente di rimandare l operazione di copiatura finchè è necessaria ed evitarla quando non è necessaria. Modify Indica se la pagina è stata modificata. Reference indica se ci sono stati riferimenti alla pagina. Questo bit è posto 0 quando la pagina è caricata per la prima volta in memoria e può essere periodicamente reimpostato a 0 dall algoritmo di page replacement. Valid Indica la presenza della pagina nella memoria principale. Protect Indica se l operazione di scrittura è consentita.
23 Descrittore del blocco disco Numero del dispositivo di Swap Numero di dispositivo logico del dispositivo di memoria secondaria che contiene la pagina corrispondente. Questo consente di utilizzare più di un dispositivo per memorizzare pagine trasferite su disco. Numero del blocco del dispositivo Locazione del blocco che contiene la pagina sul dispositivo. Tipo di memorizzazione La memorizzazione può essere un unità di swap o un file eseguibile. Nell ultimo caso c è indicazione sulla necessità di pulire la memoria virtuale prima di allocarla.
24 Entry della Frame Data Table Stato della pagina Indica se questo frame è disponibile in memoria oppure ha una pagina ad esso associata. In quest ultimo caso lo stato della pagina è specificato: sul device di swap, nel file eseguibile o DMA in corso Contatore si riferimenti Numero dei processi che fanno riferimento alla pagina. Dispositivo logico Disposirivo logico che contiene una copia della pagina. Numero di blocco Locazione del blocco che contiene la copia della pagina sul dispositivo. Puntatore Pfdata Puntatore agli altri entry della pfdata table su una lista di pagine libere o su una coda hash di pagine.
25
26 Entry della Swap-user Table Contatore ai riferimenti Numero delle entry della page table che puntano ad una pagina nel dispositivo di swap. Numero di unità disco/pagina Identificatore di pagina sull unità di memoria.
27
28 Visione dinamica Quando un processo viene lanciato, molte pagine vengono precaricate e poste sulla free list (prepaging); Quando un processo termina, le sue pagine vengono rimesse sulla free list; Il sistema usa allocazione libera (quindi anche in celle non consecutive) per gestire la richiesta di pagine da parte di un processo; Se la free list scende sotto una certa soglia (parametro del kernel), il kernel si rifiuta di allocare nuove pagine di memoria; La free list viene anche utilizzata come memoria cache: le pagine richieste da un processo che risultano invalide vengono cercate sulla free list, prima di essere caricate da disco; Quando un processo termina, le sue pagine vengono messe sulla free list. 49
29 Algoritmo di Paginazione (1) Le pagine vengono allocate dalla lista libera con strategia copy-on-write ; La free list viene mantenuta piena entro un certo livello; Il demone delle pagine viene lanciato al tempo di boot e si attiva ad intervalli regolari (tipicamente i t 2 4 volte al secondo) o su richiesta del kernel; Quando viene risvegliato: Sia NFL il numero di frame liberi, - Se NFL lotsfree, torna inattivo; -Se NFL < lotsfree, inizia a scorrere le pagine cercando di spostare pagine su disco fino a che non ci sono lotsfree pagine libere; - La velocità di scansione cresce al diminuire di NFL; Il demone utilizza una politica di rimpiazzamento globale; 56
30 Algoritmo di Paginazione (2) Algoritmo di sostituzione delle pagine: variante dell algoritmo dell orologio (con due lancette invece che una). L algoritmo usa due puntatori (lancette) per scorrere la lista delle pagine allocate nella core map. While (NFL < lotsfree) - la prima lancetta azzera il reference bit R della pagina a cui punta; - la seconda sceglie la pagina vittima: if R = 0 (cio`e la pagina non è stata usata nel periodo trascorso tra il passaggio delle due lancette), questa è la pagina vittima if M=1, il frame viene salvato su disco; il frame viene aggiunto alla free-list; - Si fanno avanzare i due puntatori; 57
31 Algoritmo di Paginazione (3) La distanza tra i puntatori t (handspread) d) viene decisa al boot, per liberare frame abbastanza rapidamente: - Se le lancette sono vicine: solo le pagine realmente usate rimarranno in memoria; - Se le lancette sono distanti 359 = algoritmo dell orologio (la seconda passa dopo un giro); Possibile variante: - ulteriore parametro maxfree > lotsfree: quando il livello di pagine scende sotto lotsfree, il pagedaemon libera pagine fino a maxfree. (Permette di evitare una potenziale instabilità del CLOCK a due lancette). 58
32 Swapping (1) Lo Swapper (o schedulatore di medio termine), lanciato anch esso al tempo di boot), decide quale processo deve essere swappato su disco/riportato in memoria; Lo Swapper si sveglia ogni 1 2 secondi, e interviene solo se il sistema di paginazione è sovraccarico: - il numero di frame liberi è sotto la soglia minima ammissibile minfree; - il numero medio di frame liberi nell unità di tempo è minore di desfree. 59
33 Swapping (2) Regole di scelta del processo uscente Si cerca tra i processi in Asleep, senza considerare quelli in memoria da meno di 2 secondi; Se ce ne sono, si prende quello con il valore priorità+tempo di residenza in memoria più alto (nota: tempo CPU= tempo in memoria); Altrimenti, si cerca tra quelli in Ready, con lo stesso criterio; Per il processo selezionato: - i suoi segmenti Data e Stack (non il Text) vengono scaricati sul device di swap ed i frame vengono aggiunti alla free list; - nel PCB, viene messo lo stato Swapped e agganciato alla lista dei processi swappati; Si ripete fino a che sufficiente memoria viene liberata. 60
34 Stati di un processo Un processo non ha controllo sulle transizioni di stato; Un processo parte in esecuzione sempre in kernel mode, e subito transita in user mode; Un processo in esecuzione transita da user mode a kernel mode ogni volta che invoca una chiamata di sistema; Un processo può terminare volontariamente, ma anche involontaramente per effetto di eventi esterni (segnali). 29
35 Swapping (3) Regole di scelta del processo entrante cerca nella lista dei PCB dei processi swappati e ready, il processo swappato da più tempo, ma almeno 2 secondi (per evitare thrashing); se lo trova, determina se c è cè sufficiente memoria libera per la page table e la u-area (easy swap) oppure no (hard swap); se è un hard swap, libera memoria swappando qualche altro processo; carica le page table e la u-area in memoria e mette il processo in Ready-to-run in memory; Si ripete finché non ci sono processi da caricare. 61
36 Considerazioni Interazione tra scheduling a breve termine, a medio termine e paginazione: minore è la priorità, maggiore è la probabilità che il processo venga swappato; per ogni processo in esecuzione, la paginazione tende a mantenere in memoria il suo working set; quindi, processi che non sono idle tendono a stare in memoria, mentre si tende a swappare solo processi idle da molto tempo; nel complesso, il sistema massimizza l utilizzo della memoria e la multipro- grammazione, limitando il thrashing e garantendo l assenza di starvation per i processi swappati. 62
Memory management 49
Memory management 49 Gestione della memoria I processi Unix lavorano su uno spazio di indirizzamento virtuale (Es. 0,..., 2 32 1 su indirizzi i i a 32 bit); Ogni processo ha uno spazio indirizzi separato
DettagliModello della memoria in Unix. Unix: Gestione della Memoria. Gestione della memoria in UNIX - fondamenti. Gestione della memoria in UNIX - storia
Modello della memoria in Unix I processi Unix lavorano su uno spazio di indirizzamento virtuale Es. 0,..., 2 32 1 su indirizzi a 32bit Ogni processo ha uno spazio indirizzi separato per i segmenti text,
DettagliMemoria Virtuale. è la tecnica chge permette l esecuzione di processi che non sono completamente caricati in memoria principale
Memoria Virtuale 1 Memoria Virtuale Definizione è la tecnica chge permette l esecuzione di processi che non sono completamente caricati in memoria principale Considerazioni permette di eseguire in concorrenza
DettagliArchitettura degli elaboratori Docente:
Politecnico di Milano Il File System Architettura degli elaboratori Docente: Ouejdane Mejri mejri@elet.polimi.it Sommario File Attributi Operazioni Struttura Organizzazione Directory Protezione Il File
DettagliI processi Unix. Entry della tabella dei processi
I processi Unix Ciascun processo Unix può evolvere in stato utente o in stato kernel. Il passaggio dall uno all altro stato avviene mediante SVC. Poiché il processo può andare in attesa di un evento nell
DettagliSistemi Operativi Esercizi Gestione Memoria
Sistemi Operativi Esercizi Gestione Memoria Docente: Claudio E. Palazzi cpalazzi@math.unipd.it Crediti per queste slides ad A. Memo e T. Vardanega Sistemi Operativi - C. Palazzi 64 Esercizio 1 Dato un
DettagliSISTEMI OPERATIVI. Nucleo di un SO. Il Nucleo. Il nucleo di un SO Gestione delle interruzioni Sincronizzazione tra processi Dispatcher. 06.
SISTEMI OPERATIVI 06.a Il Nucleo Nucleo di un SO Il nucleo di un SO Gestione delle interruzioni Sincronizzazione tra processi Dispatcher 1 Architettura di base dei SO Due le strutture di riferimento: a
DettagliSistemi Operativi. Gianluca Della Vedova. Sistemi Operativi. Gianluca Della Vedova. Sistemi Operativi. Gianluca Della Vedova.
Programmi applicativi Un programma applicativo (o applicativo) è un eseguibile che può essere utilizzato dall utente e che ha funzionalità di alto livello (word processor, spreadsheet, DBMS) Univ. Milano-Bicocca
DettagliSommario. Processi e Programmi. Che cosa e un Processo? Lezione 5 Processi e Threads
Sommario Lezione 5 Processi e Threads Processi e Programmi Implementazione dei Processi Casi di Studio relativi a Processi Thread Casi di Studio relativi a Thread 5.2 Processi e Programmi Che cosa e un
Dettagli2. Nucleo del sistema operativo (la gestione dei processi)
Struttura interna del sistema operativo Linux 2. Nucleo del sistema operativo (la gestione dei processi) Architettura (struttura) del sistema operativo shell Programmi utente Modo utente Interfaccia delle
Dettagli9. Memoria Virtuale. 9. Memoria Virtuale. 9. Memoria Virtuale
1 (es. 1) Consideriamo un processo con m frame inizialmente uoti. La stringa di riferimento è lunga p e contiene riferimenti a n pagine dierse. Per un qualsiasi algoritmo di rimpiazzamento: a) qual è il
DettagliIl file system. Le caratteristiche di file, direttorio e partizione sono del tutto indipendenti dalla natura e dal tipo di dispositivo utilizzato.
Il File System Il file system È quella parte del Sistema Operativo che fornisce i meccanismi di accesso e memorizzazione delle informazioni (programmi e dati) allocate in memoria di massa. Realizza i concetti
DettagliEsame Laboratorio di Sistemi Operativi Cognome Nome Mat.
Esame Laboratorio di Sistemi Operativi 2-01-2008 Il compito è costituito da domande chiuse e domande aperte. Non è consentito l uso di libri, manuali, appunti., etc. Tempo massimo 1 ora. Domande chiuse:
DettagliLa gerarchia delle memorie
La gerarchia delle memorie Gestione della memoria Ogni processo, per avanzare necessità che il relativo programma risieda nella memoria centrale, Tale programma è costituito da memoria e dati. Lo spazio
DettagliDesiderata: memoria capiente e veloce. Connessioni tra livelli di memoria. Tecniche impiegate. Memoria cache, struttura. Metodo:
Connessioni tra livelli di memoria Tape Registers Cache Main memory Magnetic disk Optical disk (Architettura degli Elaboratori) Gerarchie di memorie 1 / 58 Metodo: Desiderata: memoria capiente e veloce
DettagliIl supporto al Sistema Operativo
Il supporto al Sistema Operativo Obiettivi e funzioni del S.O. Il Sistema Operativo è il software che controlla l esecuzione dei programmi e amministra le risorse del sistema. Ha due obiettivi principali:
DettagliIl Sistema Operativo fa parte del software di base; e` costituito da un insieme di programmi che interagiscono e cooperano per:
Il Sistema Operativo Il Sistema Operativo fa parte del software di base; e` costituito da un insieme di programmi che interagiscono e cooperano per: gestire efficientemente l'elaboratore e le sue periferiche,
DettagliMemoria virtuale e ottimizzazione
SISTEMI OPERATIVI 08.b Memoria virtuale e ottimizzazione Memoria virtuale e ottimizzazione Supporto fornito dall hardware MV con Paginazione (page table) MV con Segmentazione MV con Segmentazione e Paginazione
DettagliUniversità Ca' Foscari Venezia - Corso di Laurea in Informatica Sistemi Operativi prof. Augusto Celentano. Domande di riepilogo
Università Ca' Foscari Venezia - Corso di Laurea in Informatica Sistemi Operativi prof. Augusto Celentano Domande di riepilogo 1) Il descrittore di processo (Process Control Block) include al suo interno:
DettagliLa Gestione della Memoria
La Gestione della Memoria Gestione della Memoria Centrale A livello hardware: ogni sistema di elaborazione è equipaggiato con un unico spazio di memoria. Compiti del Sistema Operativo: allocare memoria
DettagliSISTEMI OPERATIVI. Gestione della memoria. Gestione della memoria. Partizionamento Paginazione Segmentazione Memoria virtuale. 08.
SISTEMI OPERATIVI 08.a Gestione della memoria Gestione della memoria Partizionamento Paginazione Segmentazione Memoria virtuale 1 Obiettivi La gestione della memoria (effettuata dal SO usando gli accorgimenti
DettagliIl Sottosistema di Memoria
Il Sottosistema di Memoria Calcolatori Elettronici 1 Memoria RAM RAM: Random Access Memory Tempi di accesso indipendenti dalla posizione Statica o Dinamica Valutata in termini di Dimensione (di solito
DettagliDesiderata: memoria capiente e veloce. Connessioni tra livelli di memoria. Memoria cache, struttura. Tecniche impiegate. Ad ogni accesso alla memoria
Connessioni tra livelli di memoria Tape Registers Cache Main memory Magnetic disk Optical disk (Architettura degli Elaboratori) Gerarchie di memorie / 58 Metodo: Desiderata: memoria capiente e veloce i
DettagliSISTEMI OPERATIVI. Gestione della memoria Domande di verifica. Luca Orrù Centro Multimediale Montiferru 18/06/2007
2007 SISTEMI OPERATIVI Gestione della memoria Domande di verifica Luca Orrù Centro Multimediale Montiferru 18/06/2007 Gestione della memoria 1. Si descriva il concetto di memoria virtuale (esame del 19-06-2006)
DettagliGestione della Memoria
Gestione della Memoria Multiprogrammazione e gestione memoria Obiettivo primario della multiprogrammazione è l uso efficiente delle risorse computazionali: Efficienza nell uso della CPU Velocità di risposta
DettagliSistemi Operativi II Corso di Laurea in Ingegneria Informatica Facolta di Ingegneria, Universita La Sapienza Docente: Francesco Quaglia
Sistemi Operativi II Corso di Laurea in Ingegneria Informatica Facolta di Ingegneria, Universita La Sapienza Docente: Francesco Quaglia Gestione della memoria: 1. Binding degli indirizzi. Partizionamento
DettagliGESTIONE DELLA MEMORIA CENTRALE
GESTIONE DELLA MEMORIA CENTRALE E MEMORIA VIRTUALE 7.1 Gestione della memoria Segmentazione Segmentazione con paginazione Memoria Virtuale Paginazione su richiesta Sostituzione delle pagine Trashing Esempi:
DettagliFILE E INDICI Architettura DBMS
FILE E INDICI Architettura DBMS Giorgio Giacinto 2010 Database 2 Dati su dispositivi di memorizzazione esterni! Dischi! si può leggere qualunque pagina a costo medio fisso! Nastri! si possono leggere le
DettagliProcedura operativa per la gestione della funzione di formazione classi prime
Procedura operativa per la gestione della funzione di formazione classi prime Questa funzione viene fornita allo scopo di effettuare la formazione delle classi prime nel rispetto dei parametri indicati
DettagliINFORMATICA GENERALE. Informatica Generale
INFORMATICA GENERALE a.a. 006/007 COGNOMI A-L Silvano Antonelli -Ricevimento : durante il corso: Martedì ore 5.0 presso Dipartimento di Informatica, Largo Pontecorvo Stanza 94 negli altri periodi: su appuntamento
DettagliLA MEMORIA NEL CALCOLATORE
Tipi di memorie (1) Rappresenta il supporto fisico, il dispositivo su cui sono immagazzinate le informazioni (dati e programmi) ROM (Read Only Memory) 1-2 MByte Cache 1 MByte di sola lettura contiene programmi
DettagliGestione della memoria
Memoria della stampante 1 La stampante viene fornita con almeno 64 MB di memoria. Per stabilire la quantità di memoria attualmente installata nella stampante, selezionare Stampa menu dal menu Utilità.
DettagliComponenti di Sistemi Operativi. System Call Programmi di sistema Componenti di un SO Servizi di SO
Componenti di so 1 Componenti di Sistemi Operativi System Call Programmi di sistema Componenti di un SO Servizi di SO 2 System Call Le system call forniscono l'interfaccia tra running program e SO Generalmente
DettagliARCHITETTURA DI UN SISTEMA DI ELABORAZIONE
ARCHITETTURA DI UN SISTEMA DI ELABORAZIONE Il computer o elaboratore è una macchina altamente organizzata capace di immagazzinare, elaborare e trasmettere dati con notevole precisione e rapidità. Schematicamente
DettagliSistemi Operativi: Prof.ssa A. Rescigno Anno Acc. 2008-2009. Esercitazione. Memoria virtuale
Sistemi Operativi: Prof.ssa A. Rescigno Anno Acc. 2008-2009 Esercitazione Università di Salerno Memoria virtuale 1. Si assuma che un processo abbia m frames (inizialmente tutti vuoti) a disposizione e
DettagliModello dei processi. Riedizione delle slide della Prof. Di Stefano
Modello dei processi Riedizione delle slide della Prof. Di Stefano 1 Processi Modello di Processi asincroni comunicanti Process Scheduling Operazioni sui Processi Cooperazione tra Processi Interprocess
DettagliLa memoria virtuale 9.2. Sistemi Operativi a.a. A.A. 2009-10 2013-2014
La Memoria Virtuale La memoria virtuale Background Paginazione su richiesta Copy on Write Sostituzione delle pagine Allocazione dei frame Thrashing File mappati in memoria Allocazione di memoria del kernel
DettagliLa gestione dell I/O (Cap. 5, Tanenbaum)
La gestione dell I/O (Cap. 5, Tanenbaum) Prestazioni e generalità Gestione software Supporti su disco Orologi Lezione Architettura degli Elaboratori - 1 - A. Sperduti Pagina 1 Prestazioni e generalità
DettagliMemoria Virtuale. è la tecnica chge permette l esecuzione di processi che non sono completamente caricati in memoria principale
Memoria Virtuale Memoria Virtuale Definizione è la tecnica chge permette l esecuzione di processi che non sono completamente caricati in memoria principale Considerazioni permette di eseguire in concorrenza
DettagliTrasparenze del Corso di Sistemi Operativi
Università di Udine Facoltà di Scienze MMFFNN Gestione della Memoria Laurea in Informatica AA 5/6 Fondamenti Associazione degli indirizzi alla memoria fisica Trasparenze del Corso di Sistemi Operativi
DettagliProcessi. Concorrenza. Processi e programmi
Concetto di processo Scheduling dei processi Operazioni sui processi Stati dei processi Esempio in Unix Processi Concorrenza Un sistema operativo consiste in un gran numero di attività che vengono eseguite
DettagliSistemi Operativi. Sistemi I/O SISTEMI DI INPUT/OUTPUT. Hardware di I/O. Interfaccia di I/O per le applicazioni. Sottosistema per l I/O del kernel
SISTEMI DI INPUT/OUTPUT 10.1 Sistemi I/O Hardware di I/O Interfaccia di I/O per le applicazioni Sottosistema per l I/O del kernel Trasformazione delle richieste di I/O Stream Prestazioni 10.2 I/O Hardware
DettagliCompilazione rapporto di Audit in remoto
Compilazione rapporto di Audit in remoto Installazione e configurazione CSI S.p.A. V.le Lombardia 20-20021 Bollate (MI) Tel. 02.383301 Fax 02.3503940 E-mail: info@csi-spa.com Rev. 2.1 16/11/09 Indice Indice...
DettagliCalcolatori Elettronici
Calcolatori Elettronici La memoria gerarchica La cache: come migliorare le prestazioni Ricapitolando (1) La memoria principale e la cache sono scomposte in blocchi di uguale dimensione L indirizzo del
DettagliSistemi Operativi GESTIONE DELLA MEMORIA CENTRALE. D. Talia - UNICAL. Sistemi Operativi 6.1
GESTIONE DELLA MEMORIA CENTRALE 6.1 Gestione della Memoria Background Spazio di indirizzi Swapping Allocazione Contigua Paginazione 6.2 Background Per essere eseguito un programma deve trovarsi (almeno
DettagliL accesso ai dispositivi esterni (tastiera, monitor, file,...) viene gestito mediante canali di comunicazione.
I file L accesso ai dispositivi esterni (tastiera, monitor, file,...) viene gestito mediante canali di comunicazione. I canali, sono delle strutture dati che contengono informazioni sul dispositivo fisico,
DettagliAXO - Architettura dei Calcolatori e Sistema Operativo. organizzazione strutturata dei calcolatori
AXO - Architettura dei Calcolatori e Sistema Operativo organizzazione strutturata dei calcolatori I livelli I calcolatori sono progettati come una serie di livelli ognuno dei quali si basa sui livelli
DettagliAXO. Operativi. Architettura dei Calcolatori e Sistemi. memoria virtuale
AXO Architettura dei Calcolatori e Sistemi Operativi memoria virtuale concetto di memoria virtuale Separare il concetto di: spazio di indirizzamento di un programma eseguibile e dimensione effettiva della
DettagliNote_Batch_Application 04/02/2011
Note Utente Batch Application Cielonext La Batch Application consente di eseguire lavori sottomessi consentendo agli utenti di procedere con altre operazioni senza dover attendere la conclusione dei suddetti
DettagliMemoria virtuale. Ivan Scagnetto. Università di Udine Facoltà di Scienze MM.FF.NN. A.A. 2007-2008
Università di Udine Facoltà di Scienze MM.FF.NN. A.A. 007-008 Copyright c 000 0 Marino Miculan (miculan@dimi.uniud.it) La copia letterale e la distribuzione di questa presentazione nella sua integrità
DettagliDiagrammi a blocchi 1
Diagrammi a blocchi 1 Sommario Diagrammi di flusso, o a blocchi. Analisi strutturata. Esercizi. 2 Diagrammi a blocchi È un linguaggio formale di tipo grafico per rappresentare gli algoritmi. Attraverso
DettagliMemoria. Sistemi Operativi Giuseppe Prencipe. Memoria virtuale. Gestione della memoria. Paginazione su richiesta. Paginazione su richiesta
Sistemi Operativi Giuseppe Prencipe Memoria Virtuale Memoria Abbiamo visto varie tecniche per gestire la memoria Permettono la presenza contemporanea di più processi in memoria La memoria virtuale è una
DettagliIl Sistema Operativo. C. Marrocco. Università degli Studi di Cassino
Il Sistema Operativo Il Sistema Operativo è uno strato software che: opera direttamente sull hardware; isola dai dettagli dell architettura hardware; fornisce un insieme di funzionalità di alto livello.
DettagliArchitettura dei calcolatori e Software di sistema
Università degli Studi di Palermo Dipartimento di Ingegneria Chimica, Gestionale, Informatica, Meccanica Lezioni di Informatica di Base per la Facoltà di Lettere e Filosofia Anno Accademico 2012/20103
DettagliSistemi Operativi II Corso di Laurea in Ingegneria Informatica
www.dis.uniroma1.it/~midlab Sistemi Operativi II Corso di Laurea in Ingegneria Informatica Prof. Roberto Baldoni Gestione della memoria Gestione della memoria: 1. Binding degli indirizzi 2. Partizionamento
DettagliIl Sottosistema di Memoria
Il Sottosistema di Memoria Classificazione delle memorie Funzionalità Memoria di sola lettura (ROM) Memoria di lettura/scrittura Tecnologia Memoria a semiconduttori Memoria magnetica Memoria ottica Modalità
DettagliIl Concetto di Processo
Processi e Thread Il Concetto di Processo Il processo è un programma in esecuzione. È l unità di esecuzione all interno del S.O. Solitamente, l esecuzione di un processo è sequenziale (le istruzioni vengono
DettagliSISTEMI OPERATIVI. La memoria virtuale. Prof. Luca Gherardi Prof.ssa Patrizia Scandurra (anni precedenti) (MODULO DI INFORMATICA II)
SISTEMI OPERATIVI (MODULO DI INFORMATICA II) La memoria virtuale Prof. Luca Gherardi Prof.ssa Patrizia Scandurra (anni precedenti) Università degli Studi di Bergamo a.a. 2012-13 Sommario La memoria virtuale
DettagliElementi base per la realizzazione dell unità di calcolo
Elementi base per la realizzazione dell unità di calcolo Memoria istruzioni elemento di stato dove le istruzioni vengono memorizzate e recuperate tramite un indirizzo. ind. istruzione Memoria istruzioni
Dettagli(1) (2) (3) (4) 11 nessuno/a 9 10. (1) (2) (3) (4) X è il minore tra A e B nessuno/a X è sempre uguale ad A X è il maggiore tra A e B
Compito: Domanda 1 Per l'algoritmo fornito di seguito, qual è il valore assunto dalla variabile contatore quando l'algoritmo termina: Passo 1 Poni il valore di contatore a 1 Passo 2 Ripeti i passi da 3
DettagliLa memoria principale
La memoria principale DRAM (Dynamic RAM) il contenuto viene memorizzato per pochissimo tempo per cui deve essere aggiornato centinaia di volte al secondo (FPM, EDO, SDRAM, RDRAM) SRAM (Static RAM) veloce
DettagliTesina per l esame di Sistemi Operativi a cura di Giuseppe Montano. Prof. Aldo Franco Dragoni
Sistemi operativi real time basati su Linux: gestione delle risorse e dei processi. Tesina per l esame di Sistemi Operativi a cura di. Prof. Aldo Franco Dragoni Corso di laurea in Ingegneria Informatica
DettagliLa memoria virtuale. La gerarchia di memorie. Indirizzo fisico. Memoria virtuale. Architetture Avanzate dei Calcolatori. Valeria Cardellini
La memoria Architetture Avanzate dei Calcolatori Valeria Cardellini Nelle lezioni precedenti { Memoria La gerarchia di memorie Registri Istruzioni, operandi L Cache Blocchi L2 Cache Blocchi Memoria Pagine
DettagliGestione dei processi. Marco Cesati. Schema della lezione. Blocco di controllo 2. Sezioni e segmenti. Gestione dei processi. Job.
Di cosa parliamo in questa lezione? Lezione 4 Cosa è un processo e come viene gestito dal SO 1 e job 2 Il blocco di controllo Sistemi operativi 3 Struttura di un file eseguibile 4 La schedulazione dei
DettagliInformatica 10. appunti dalla lezione del 16/11/2010
Informatica 10 appunti dalla lezione del 16/11/2010 Memorie Dispositivi in grado di conservare al loro interno informazione per un intervallo di tempo significativo RAM chiavetta USB Hard disk CD/DVD SD
DettagliIntroduzione alle macchine a stati (non definitivo)
Introduzione alle macchine a stati (non definitivo) - Introduzione Il modo migliore per affrontare un problema di automazione industriale (anche non particolarmente complesso) consiste nel dividerlo in
DettagliDescrivere le caratteristiche di un sistema operativo di tipo batch multiprogrammato
Introduzione ai sistemi operativi Descrivere le caratteristiche di un sistema operativo di tipo batch multiprogrammato Descrivere in modo chiaro la funzionalita del cambio di contesto e le azioni che vengono
DettagliSistemi Operativi GESTIONE DEI PROCESSI. D. Talia - UNICAL. Sistemi Operativi 4.1
GESTIONE DEI PROCESSI 4.1 Processi Concetto di Processo Scheduling di Processi Operazioni su Processi Processi Cooperanti Concetto di Thread Modelli Multithread I thread in diversi S.O. 4.2 Concetto di
DettagliLaboratorio di Architettura degli Elaboratori
Laboratorio di Architettura degli Elaboratori Dott. Massimo Tivoli Set di istruzioni del MIPS32: istruzioni aritmetiche e di trasferimento Istruzioni (Alcune) Categorie di istruzioni in MIPS Istruzioni
DettagliIL LAVORO DEI CITTADINI STRANIERI
IL LAVORO DEI CITTADINI STRANIERI Roma e provincia nel 2014 Indice I numeri più significativi... 2 Le conseguenze della Crisi economica... 3 Il contesto nazionale... 3 I numeri di Roma: la condizione occupazionale...
DettagliNome/cognome N. di matricola (10 cifre) Posizione: Riga Col
Nome/cognome N. di matricola (10 cifre) Posizione: Riga Col UNIVERSITA' DEGLI STUDI DI BOLOGNA - CORSO DI LAUREA IN INFORMATICA CORSO DI SISTEMI OPERATIVI - ANNO ACCADEMICO 2005/2006 CONCORRENZA - 18 Settembre
DettagliArchitettura di un calcolatore e linguaggio macchina. Primo modulo Tecniche della programmazione
Architettura di un calcolatore e linguaggio macchina Primo modulo Tecniche della programmazione CPU Central Processing Unit, processore Unita logica/aritmetica: elaborazione dati Unita di controllo: coordina
DettagliI dischi ottici. Istituzioni di Informatica -- Rossano Gaeta 43
I dischi ottici Le tecnologie dei dischi ottici sono completamente differenti e sono basate sull'uso di raggi laser Il raggio laser è un particolare tipo di raggio luminoso estremamente focalizzato che
DettagliStrutture di accesso ai dati: B + -tree
Strutture di accesso ai dati: B + -tree A L B E R T O B E L U S S I S E C O N D A P A R T E A N N O A C C A D E M I C O 2 0 0 9-2 0 0 Osservazione Quando l indice aumenta di dimensioni, non può risiedere
DettagliCAP. 6: Nucleo del sistema operativo (La gestione dei processi)
Struttura interna del sistema operativo Linux CAP. 6: Nucleo del sistema operativo (La gestione dei processi) Architettura del sistema operativo shell Programmi utente Modo utente Interfaccia delle chiamate
DettagliMemorie Caratteristiche principali
Memorie Caratteristiche principali Locazione: processore, interna (principale), esterna (secondaria) Capacità: dimensione parola, numero di parole Unità di trasferimento: parola, blocco Metodo di accesso:
DettagliPiattaforma CLiRe. Istruzioni per lo studente. v. 1.1 aggiornata al 23 maggio Centro Linguistico di Ateneo. Simone Torsani CLAT
Piattaforma CLiRe Istruzioni per lo studente v. 1.1 aggiornata al 23 maggio 2014 Simone Torsani CLAT 1 2 Sommario 1. Registrazione... 4 2. Accedere ai corsi... 6 3. Certificare la propria attività...11
DettagliPG5 Starter Training Applicazione File System Daniel Ernst EN02 2012-02-26 Stefano Peracchi IT01 2013-05-20
PG5 Starter Training Applicazione File System Daniel Ernst EN02 2012-02-26 Stefano Peracchi IT01 2013-05-20 Introduzione Materiale richiesto Notebook o computer Controllore PCD1 E Cavo USB Scheda «Training»
DettagliUso del pannello operatore
Questa sezione fornisce informazioni sul pannello operatore della stampante, sulla modifica delle impostazioni e sui menu del pannello operatore. È possibile modificare la maggior parte delle impostazioni
DettagliCon il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione.
Con il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione. Compito fondamentale di un S.O. è infatti la gestione dell
DettagliHEX Bin HEX Bin HEX Bin HEX Bin 0 0000 4 0100 8 1000 C 1100 1 0001 5 0101 9 1001 D 1101 2 0010 6 0110 A 1010 E 1110 3 0011 7 0111 B 1011 F 1111
Struttura interna del Sistema Operativo CAP. 7. La gestione della memoria virtuale Il concetto di memoria virtuale Il concetto di memoria virtuale nasce dalla necessità di separare il concetto di spazio
DettagliProcessi UNIX. I Processi nel SO UNIX. Gerarchie di processi UNIX. Modello di processo in UNIX
Processi UNIX I Processi nel SO UNIX UNIX è un sistema operativo multiprogrammato a divisione di tempo: unità di computazione è il processo Caratteristiche del processo UNIX: processo pesante con codice
DettagliInformatica Teorica. Macchine a registri
Informatica Teorica Macchine a registri 1 Macchine a registri RAM (Random Access Machine) astrazione ragionevole di un calcolatore nastro di ingresso nastro di uscita unità centrale in grado di eseguire
DettagliMemoria Virtuale. Lezione 29 Sistemi Operativi
Memoria Virtuale Lezione 29 Sistemi Operativi I Principi Abbiamo sinora assunto che durante l esecuzione di un programma, lo stesso debba risiedere completamente in MC Intorno alla metà degli anni 70 viene
DettagliUnità Didattica 3 Linguaggio C. Generalità sulle Funzioni. Variabili locali e globali. Passaggio di parametri per valore.
Unità Didattica 3 Linguaggio C Generalità sulle Funzioni. Variabili locali e globali. Passaggio di parametri per valore. Funzioni Generalizzazione del concetto di funzione algebrica: legge che associa
Dettagli1 Campionato Italiano di KUBB
1 Campionato Italiano di KUBB Settembre 2006 Regolamento ufficiale Squadre: Il primo campionato italiano coinvolgerà un massimo di 16 squadre. Incontri: Il torneo si svolgerà con incontri ad eliminazione
DettagliHeap e code di priorità
Heap e code di priorità Violetta Lonati Università degli studi di Milano Dipartimento di Scienze dell Informazione Laboratorio di algoritmi e strutture dati Corso di laurea in Informatica AA 2009/2010
DettagliEXCEL: FORMATTAZIONE E FORMULE
EXCEL: FORMATTAZIONE E FORMULE Test VERO o FALSO (se FALSO giustifica la risposta) 1) In excel il contenuto di una cella viene visualizzato nella barra di stato 2) In excel il simbolo = viene utilizzato
DettagliFondamenti VBA. Che cos è VBA
Fondamenti VBA Che cos è VBA VBA, Visual Basic for Application è un linguaggio di programmazione, inserito nelle applicazioni Office di Microsoft (Ms Word, Ms Excel, Ms PowerPoint, Visio). VBA è una implementazione
Dettagli12 Memoria secondaria
1 12 Memoria secondaria Struttura del disco Scheduling del disco Gestione del disco Gestione dell area di swap Memorie a stato solido 12.1 Struttura del disco 2 Un HD è composto da una serie di dischi
DettagliFasi (MIPS) Dove NPC è un registro temporaneo PC (program counter) è il registro IP (instruction pointer)
Fasi (MIPS) Fasi senza pipeline: IF (istruction fetch): IR Mem[PC] ; NPC PC + 4 ; Dove NPC è un registro temporaneo PC (program counter) è il registro IP (instruction pointer) Lezione Architettura degli
DettagliSistema di protezione
Sistema di protezione - Un processo potrebbe tentare di modificare il programma o i dati di un altro processo o di parte del S.O. stesso. - Protezione: politiche (cosa) e meccanismi (come) per controllare
DettagliFONDAMENTI DI INFORMATICA Lezione n. 11
FONDAMENTI DI INFORMATICA Lezione n. 11 ARCHITETTURA INTERNA ARCHITETTURA ESTERNA CODICE MACCHINA MODI DI INDIRIZZAMENTO ARCHITETTURE A PIU' INDIRIZZI In questa lezione verranno introdotti i concetti di
DettagliLezione 19 Memoria Virtuale
Lezione 9 Memoria Virtuale http://www.dii.unisi.it/~giorgi/didattica/arcal All figures from Computer Organization and Design: The Hardware/Software Approach, Second Edition, by David Patterson and John
DettagliMemoria Virtuale e I/O
Memoria Virtuale e I/O Paolo Baldan Baldan@dsi.unive.it Introduzione CPU - progettazione - prestazioni ideali Le prestazioni reali sono influenzate (pesantemente) da memoria e I/O. Memoria - gerarchie
DettagliGerarchie di memoria Memorie a componenti dinamici 1
Gerarchie di memoria Memorie a componenti dinamici 1 Denominate Dynamic RAM Memorizzazione su componenti capacitivi 1 transistor per bit (4-6 per Static RAM), dunque maggiore densità Richiede un ciclo
DettagliArchitettura degli Elaboratori. Classe 3 Prof.ssa Anselmo. Appello del 18 Febbraio Attenzione:
Cognome.. Nome.... Architettura degli Elaboratori Classe 3 Prof.ssa Anselmo Appello del 18 Febbraio 2015 Attenzione: Inserire i propri dati nell apposito spazio sottostante e in testa a questa pagina.
DettagliEsercitazione E1 Scheduling, deadlock, monitor
Esercitazione E1 Scheduling, deadlock, monitor Sistemi Operativi - prof. Silvio Salza - a.a. 2008-2009 E1-1 Scheduling I cinque processi A,B,C,D,E richieste di CPU si presentano nell ordine. Le loro richieste
DettagliGestione delle eccezioni in Java
Gestione delle eccezioni in Java Fondamenti di Informatica Ingegneria Gestionale Canale AL 1 Le eccezioni in Java Exception handling: insieme di costrutti e regole sintattiche e semantiche presenti nel
DettagliUn semplice commutatore a pacchetto
Realizzazione di commutatori a pacchetto: cosa c e dentro un router IP? Prof. Ing. Carla Raffaelli Un semplice commutatore a pacchetto Una workstation con schede di rete e software per ricevere pacchetti
Dettagli