1 Cenni di gestione della memoria Unix-Linux. 2 Organizzazione della Memoria Spazio logico dei processi A e B e memoria fisica Condivisione dell’area.

Slides:



Advertisements
Presentazioni simili
Memoria Virtuale in Linux
Advertisements

Gestione della Memoria
PROCESS MANAGEMENT: STRUTTURE DATI
Gestione della memoria
Strutture dati In linguaggio C. Strutture Spesso gli algoritmi lavorano su insiemi di dati eterogenei Per esempio, per descrivere le caratteristiche di.
TECNICA DELLE PARTIZIONI RILOCABILI
Programmazione con socket
Gestione della Memoria
1 Informatica Generale Susanna Pelagatti Ricevimento: Mercoledì ore presso Dipartimento di Informatica, Via Buonarroti,
1 Classi di memorizzazione. 2 Definiscono le regole di visibilità delle variabili e delle funzioni quando il programma è diviso su più file Stabiliscono.
Lez. 131 Universita' di Ferrara Facolta' di Scienze Matematiche, Fisiche e Naturali Laurea Specialistica in Informatica Algoritmi Avanzati Rappresentazione.
1 System Call per Comunicazione tra Processi Pipe.
Mappare file in memoria
Realizzazione del file system
Memoria virtuale Memoria virtuale – separazione della memoria logica dell’utente dalla memoria fisica. Solo alcune parti di un programma devono trovarsi.
Gestione della memoria
Anno accademico Le classi di memorizzazione.
Realizzazione del file system
Programmazione Procedurale in Linguaggio C++
Caratteri e stringhe di caratteri
Corso di Fondamenti di programmazione a.a.2009/2010
Prof.ssa Chiara Petrioli -- Fondamenti di programmazione, a.a. 2009/2010 Corso di Fondamenti di programmazione a.a. 2009/2010 Prof.ssa Chiara Petrioli.
Prof.ssa Chiara Petrioli -- corso di programmazione 1, a.a. 2006/2007 Corso di Programmazione 1 a.a.2006/2007 Prof.ssa Chiara Petrioli Corso di Laurea.
Laboratorio di Linguaggi lezione VIII Marco Tarini Università dellInsubria Facoltà di Scienze Matematiche, Fisiche e Naturali di Varese Corso di Laurea.
Laboratorio di Linguaggi P R I M O C O M P I T I N O Marco Tarini Università dellInsubria Facoltà di Scienze Matematiche, Fisiche e Naturali di Varese.
I Thread.
memoria gestita staticamente:
Organizzazione della Memoria (Unix) Text contiene le istruzioni in linguaggio macchina del codice eseguibile, può essere condiviso in caso di processi.
Corso di Laurea in Ingegneria Informatica Laboratorio di Sistemi Operativi II anno, III periodo 2 crediti 13 ore di lezione 16 ore di esercitazione.
Sistemi Operativi GESTIONE DELLA MEMORIA CENTRALE.
1 File System ed Input/Output UNIX Implementazione del File System Caratteristiche del File System Unix/Linux System Call relative al File System Linput/output.
1 LINUX: struttura generale The layers of a UNIX system. User Interface.
Esercizi FUNZIONI Passaggio di parametri per valore, variabili e tipi locali e globali, prototipo.
La Programmazione Ricorsiva
Modulo 13: System call relative al File System
Fondamenti di informatica Linguaggio C Main Program: Architettura di un PC Diagrammi di flusso Linguaggio C.
La Gestione della Memoria
void binario(int n); …………………
Creazione progetto in C++/DEV
Prof.ssa Chiara Petrioli -- Fondamenti di programmazione, a.a. 2009/2010 Corso di Fondamenti di programmazione a.a. 2009/2010 Prof.ssa Chiara Petrioli.
Laboratorio di Linguaggi lezione VII: variabili Globali e Locali Marco Tarini Università dellInsubria Facoltà di Scienze Matematiche, Fisiche e Naturali.
Passaggio di parametri per indirizzo
Programmazione in linguaggio C
T. MottaGenerazione e terminazione processi1 Creazione e terminazione dei processi Tommaso Motta
Prof.ssa Chiara Petrioli -- corso di programmazione 1, a.a. 2006/2007 Corso di Programmazione 1 a.a.2006/2007 Prof.ssa Chiara Petrioli Corso di Laurea.
Vettori, indirizzi e puntatori Finora abbiamo usato gli indirizzi nel chiamare  la funzione scanf()  le altre funzioni per riferimento Tuttavia la vera.
1 Gestione della Memoria. 2 Idealmente la memoria dovrebbe essere –grande –veloce –non volatile Gerarchia di memorie –Disco: capiente, lento, non volatile.
1 Il file system di Unix Caratteristiche generali dei FS comunemente usati da Unix/Linux.
Foglio 1 Di cosa si occupa il gestore della memoria?
Fondamenti di Informatica 2 Ingegneria Informatica Docente: Giovanni Macchia a.a
1 SC che operano su processi Getpid, fork, exec, wait, waitpid, exit, dup, dup2.
Programmazione in Java
Gestione della Memoria. Scenario 1 o più CPU Un certo quantitativo di memoria Una memoria di massa.
1 Il linguaggio C Precisazioni sull’esperienza in laboratorio.
1 Chiamate di sistema Introduzione Errori : perror() Chiamate che lavorano su file.
1 File System ed Input/Output UNIX Caratteristiche del FS Unix Implementazione Il file system di Linux Organizzazione dell’ I/O.
Gestione della Memoria
1 Gestione della Memoria Capitolo Introduzione alla gestione della memoria 4.2 Swapping 4.3 Memoria virtuale 4.4 Implementazione 4.5 Algoritmi di.
1 Gestione della Memoria Capitolo Introduzione alla gestione della memoria 4.2 Swapping 4.3 Memoria virtuale 4.4 Implementazione 4.5 Algoritmi di.
1 Gestione della Memoria Capitolo Introduzione alla gestione della memoria 4.2 Swapping 4.3 Memoria virtuale 4.4 Implementazione 4.5 Algoritmi di.
1 Gestione della Memoria Capitolo Introduzione alla gestione della memoria 4.2 Swapping 4.3 Memoria virtuale 4.4 Implementazione 4.5 Algoritmi di.
Gestione della Memoria
Sistemi di elaborazione dell’informazione Modulo 4 - Tecniche di programmazione distribuita Unità didattica 1 -Socket library Ernesto Damiani Lezione 4.
1 System Call che operano su processi Getpid, fork, exec, wait, waitpid, exit, dup, dup2.
1 1. Introduzione alla gestione della memoria 2. Swapping 3. Memoria virtuale 4. Implementazione 5. Algoritmi di sostituzione Gestione della Memoria.
1 Laboratorio di Programmazione di Sistema - C Susanna Pelagatti Ricevimento: Me ,
Laboratorio di Linguaggi... altre D O M A N D E ! Marco Tarini Università dell’Insubria Facoltà di Scienze Matematiche, Fisiche e Naturali di Varese Corso.
Stringhe Una stringa è un vettore di char con un carattere costante \0 che indica la fine della stringa il terminatore rende differenti gli array di char.
10. Programmazione Ricorsiva Ing. Simona Colucci Informatica - CDL in Ingegneria Industriale- A.A
Compitino di Sistemi Operativi corsi A -C 19 Maggio 2003.
Transcript della presentazione:

1 Cenni di gestione della memoria Unix-Linux

2 Organizzazione della Memoria Spazio logico dei processi A e B e memoria fisica Condivisione dell’area testo Process A Process B

3 Condivisione di File Two processes can share a mapped file. Un file mappato simultaneamente in due processi

4 System Call per la Gestione della Memoria s è un codice di errore a e addr sono indirizzi di memoria len è una lunghezza prot controlla la protezione flags bit vari fd è un descrittore di file offset è un offset all’interno di un file

5 Esempio di file mappato in memoria #include int main (void) { int fd; char *mem; int bytes_in_page; /* size pagina */ bytes_in_page = getpagesize(); fd = open(”nomeFile",O_RDWR); mem = mmap (0,bytes_in_page, \ PROT_READ | PROT_WRITE,MAP_SHARED,fd,0); strcpy(mem,”una stringa"); printf("%s\n", mem); … return 0; }

6 Paginazione in UNIX The core map in 4BSD. paginazione su domanda core map ha un elemento per ogni pagina fisica

7 Algoritmo di Sostituzione in UNIX (BSD) Eseguito dal page daemon Cerca di mantenere almeno lotsfree pagine libere Usa l’algoritmo Two-handed clock Una variante dell’algoritmo Clock Con allocazione globale Se non è possibile mantenere lotsfree pagine libere si fa lo swapping di qualche processo Si fa lo swap-out di processi idle da più tempo e in alternativa di processi grossi Swap-in se ci sono pagine libere a sufficienza Il processo viene scelto in base a vari parametri

8 Paginazione in Linux (1) Linux usa tabella delle pagine a tre livelli

9 Paginazione in Linux (2) Operation of the buddy algorithm. Algoritmo Buddy