Richiami sui Concetti Fondamentali dei Processi
|
|
- Dino Olivieri
- 5 anni fa
- Visualizzazioni
Transcript
1 Processi Processi 1 Richiami sui Concetti Fondamentali dei Processi Processi 2
2 Definizione Nell ambito dei sistemi operativi esistono diverse definizioni di processo, ad es. un programma in esecuzione un attività asincrona l entità a cui sono assegnati i processori ciò che è manifestato dall esistenza di un blocco di controllo di processo nel sistema operativo... Processi 3 Stati di un Processo Un processo in un dato istante può trovarsi in uno e uno solo dei seguenti stati: Ready, Running, Blocked. Processi 4
3 Stati di un Processo Ready Dispatch Blocked Running Timerrunout Wakeup Blocked Processi 5 Process Control Block (PCB) Il PCB è una struttura dati che per ogni processo contiene informazioni quali: Identificatore unico (PID); Stato corrente; Priorità; Puntatori alla memoria del processo; Puntatori alle risorse allocate al processo; Processi 6
4 Operazioni sui Processi Creazione, che a sua volta richiede che venga assegnato un nome venga inserito nella lista dei processi conosciuti venga assegnata una priorità iniziale venga creato il PCB vengano allocate le risorse iniziali Distruzione Sospensione Ripresa Cambiamento della priorità Blocco Risveglio Assegnazione della CPU al processo Processi 7 Interruzioni (Interrupt) Un Interrupt è un evento che modifica la sequenza con cui il processore esegue le istruzioni Quando si verifica un interrupt, il sistema operativo: Acquisisce il controllo Salva lo stato del processo interrotto Analizza l interrupt e passa il controllo alla routine che lo può gestire adeguatamente Processi 8
5 Tipi di Interrupt Supervisor Call (SVC): è eseguito da un processo che si trova nello stato di running e che richiede un servizio di sistema (ad es. operazioni di I/O, maggiore memoria, operazioni su altri processi, ) Interrupt di I/O : è eseguito da un dispositivo hardware di input o output, quando, ad es., è finita un operazione di I/O, quando si è verificato un errore, quando un dispositivo periferico è pronto, Interrupt Esterno: è causato da eventi esterni, come ad es. la fine di un time slice, l interruzione richiesta dall utente, Processi 9 Tipi di Interrupt Restart Interrupt: avviene quando l utente o un altro processore (in un sistema multiprocessor) richiede che il processo ricominci la propria esecuzione Program Check Interrupt: è causato da errori nell esecuzione del processo Machine Check Interrupt: è causato da errori hardware Processi 10
6 Processi in Foreground e in Background Normalmente, i processi vengono eseguiti in Foreground, cioè vengono eseguiti in modo tale che: siano lanciati dagli utenti on-line durante la loro esecuzione non è possibile lanciare altri processi ricevano input dallo standard input producano l output sullo standard output Processi 11 Processi in Foreground e in Background Sia UNIX che LINUX permettono anche di eseguire processi in Background, cioè processi tali che durante la loro esecuzione è possibile lanciare altri processi I processi in background possono essere eseguiti anche se l utente si scollega dal sistema e conclude la sessione di lavoro Processi 12
7 Operazioni sui Processi Processi 13 Creazione I processi sono creati con la primitiva di sistema fork L effetto è la duplicazione del processo corrente (processo padre) in due processi indipendenti: il padre e il processo figlio I due processi condividono le risorse precedentemente assegnate al processo padre, ad eccezione della memoria. La chiamata alla primitiva fork restituisce al processo padre il valore dell identificatore del processo figlio e al processo figlio il valore 0 Processi 14
8 Creazione Esempio: #include <sys/types.h> #include <unistd.h> pid_t child_pid; child_pid = fork(); if(child_pid == -1) { ERROR; } else if(child_pid == 0) { do_child(); } else { do_parent(); } Processi 15 Esecuzione La primitiva fork permette di creare il processo ma non permette l esecuzione Per eseguire un processo precedentemente creato è necessario invocare la primitiva execl Processi 16
9 Esecuzione Esempio: child_pid = fork(); if(child_pid == -1) ERROR; if(child_pid == 0) { // Child executes a new program image execl("/bin/view", "view", "/etc/hosts"); ERROR; } else { // Parent waits for child to finish int status; while(wait(&status)!= child_pid); } Processi 17 Informazioni sui Processi in Esecuzione Il comando ps permette di ottenere informazioni relative ai processi in esecuzione, e precisamente, restituisce: PID TTY (codice di identificazione del terminale da cui è stato creato il processo) STAT (stato del processo) TIME COMMAND (riga di comando con cui è stato fatto partire il processo) Processi 18
10 Informazioni sui Processi in Esecuzione Le opzioni con cui si può eseguire il comando ps sono: -a mostra anche i processi degli altri utenti -x mostra anche i processi non gestiti da un terminale Processi 19 Terminazione Per terminare l esecuzione di un processo esiste la funzione exit. La sintassi è exit (int status) dove status permette al processo terminato di comunicare al padre informazioni relative al suo stato di terminazione Tra gli effetti della exit si ha la chiusura di tutti i file aperti purché non condivisi Processi 20
11 Distruzione La distruzione di un processo avviene mediante il comando kill La sintassi è la seguente kill 9 pid Dove 9 indica la chiusura del processo identificato da PID e di tutti i processi figlio Processi 21 Sincronizzazione La sincronizzazione tra processi avviene mediante la primitiva wait che permette di porre un processo in stato di attesa fino al verificarsi di un certo evento (un esempio è stato visto precedentemente) Processi 22
12 Sospensione di un Processo Per sospendere l esecuzione di un processo è sufficiente premere i tasti CTRL Z Come effetto il sistema congela l esecuzione del processo. Il processo riprende ad essere eseguito quando viene invocato il comando %PID dove PID è l identificatore del processo Processi 23 Esecuzione di un Processo in Background Ogni processo può essere eseguito in background. A tale scopo è sufficiente aggiungere il suffisso & alla stringa di comando Ad esempio, fornendo la stringa di comando cat file_name1 file_name2 > file_name3.ext & il sistema risponde mostrando l identificatore del processo, e quindi esegue la concatenazione dei due file file_name1 e file_name2, producendo l output nel file file_name3 Durante l esecuzione del processo è possibile eseguire ulteriori processi Processi 24
13 Esecuzione di un Processo in Background Per eseguire un processo in background permettendo all utente di scollegarsi è sufficiente il comando nohup premesso al comando che invoca il processo Ad esempio la linea di comando nohup cat file1 file2 > file3.ext & ha lo stesso effetto visto precedentemente, con l unica differenza che se l utente si scollega prima della fine del processo, questi continua la propria esecuzione. Processi 25 Esecuzione di un Processo in Background Per portare in foreground un processo precedentemente lanciato in background è sufficiente usare il comando fg PID dove PID è l identificatore del processo Processi 26
14 Esecuzione di un Processo in Background Per portare in background un processo precedentemente lanciato in foreground si svolge la seguente procedura CTRL Z bg PID dove PID è l identificatore del processo Processi 27
Struttura interna del sistema operativo Linux
Struttura interna del sistema operativo Linux 5. I device driver A cura di: Anna Antola Giuseppe Pozzi DEI, Politecnico di Milano anna.antola/giuseppe.pozzi@polimi.it -versione del 30 marzo 2004-1-04.-04
DettagliSistemi Operativi 1. Lezione IV: Processi e thread. Mattia Monga. 11 marzo 2008
1 Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia mattia.monga@unimi.it 11 marzo 2008 1 c 2008 M. Monga. Creative Commons Attribuzione-Condividi allo stesso modo 2.5 Italia
DettagliSistemi Operativi 1. Mattia Monga. 11 marzo Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia
1 Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia mattia.monga@unimi.it e 11 marzo 2008 1 c 2008 M. Monga. Creative Commons Attribuzione-Condividi allo stesso modo 2.5 Italia
DettagliLABORATORIO DI SISTEMI OPERATIVI
LABORATORIO DI SISTEMI OPERATIVI Corso di Laurea Triennale in Ingegneria Informatica A.A. 2018/2019 Guglielmo Cola Email: g.cola@iet.unipi.it Web: iet.unipi.it/g.cola Processi in Unix/Linux caratteristiche
DettagliSystem call per la gestione di processi
System call per la gestione di processi Chiamate di sistema per creazione di processi: fork() sostituzione di codice e dati: exec...() terminazione: exit() sospensione in attesa della terminazione di figli:
DettagliSystem call per la gestione di processi
System call per la gestione di processi Chiamate di sistema per creazione di processi: fork() sostituzione di codice e dati: exec...() terminazione: exit() sospensione in attesa della terminazione di figli:
DettagliConcetto di Processo Scheduling dei Processi Operazioni sui Processi Processi cooperanti Comunicazione tra processi
Concetto di Processo Scheduling dei Processi Operazioni sui Processi Processi cooperanti Comunicazione tra processi 3.3 Silberschatz, Galvin and Gagne 2005 1 Un SO esegue diversi tipi di programmi Sistema
Dettagli5. I device driver. Device driver - gestori delle periferiche. Struttura interna del sistema operativo Linux. Tipi di periferiche. Tipi di periferiche
Device driver - gestori delle periferiche Struttura interna del sistema operativo Linux Sono moduli software che realizzano l interfacciamento e la gestione dei dispositivi periferici Interagiscono con
DettagliSistemi Operativi. Lezione 3 Processi e Thread
Lezione 3 Processi e Thread Introduzione Sino ai sistemi batch la CPU di un sistema svolgeva un attività, la portava a termine e solo allora avviava un altra attività Con l avvento della multiprogrammazione
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
DettagliUniversità di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A Pietro Frasca.
Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2016-17 Pietro Frasca Lezione 5 Martedì 25-10-2016 Definizione di processo Esiste una distinzione concettuale
DettagliControllo dei Processi 1
Controllo dei Processi 1 I processi Nei sistemi Unix/Linux ogni processo ne può generare altri. Il processo che li genera è detto processo padre (parent process), mentre i processi generati sono detti
DettagliUniversità di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A Pietro Frasca.
Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2017-18 Pietro Frasca Lezione 6 Martedì 24-10-2017 1 Sostituzione del codice Tipicamente, dopo una
DettagliSystem Calls per la Gestione dei Processi
System Calls per la Gestione dei Processi Domenico Cotroneo Dipartimento di Informatica e Sistemistica Università degli Studi di Napoli Federico II Roadmap Process Context Identificativi getpid() getppid()
DettagliI Processi nel Sistema Operativo Unix. Gerarchie di processi Unix. Stati di un processo Unix. Stati di un processo Unix.
I Processi nel Sistema Operativo Unix Processi Unix Unix è un sistema operativo multiprogrammato a divisione di tempo: l unità di computazione è il processo. Caratteristiche del processo Unix: processo
DettagliUniversità di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A Pietro Frasca.
Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2018-2019 Pietro Frasca Lezione 5 Martedì 16-10-2018 Operazioni sui processi Nella maggior parte dei
DettagliSISTEMI OPERATIVI. Processi in Linux. Giorgio Giacinto Sistemi Operativi
SISTEMI OPERATIVI Processi in Linux 2 Creazione di processi concorrenti» La creazione di un processo figlio consente di far eseguire alcune funzionalità del programma in modo concorrente» Opzione 1 il
DettagliSistemi Operativi Teledidattico
Sistemi Operativi Teledidattico Anno 2002 3a esercitazione 5/10/2002 Paolo Torroni processi fork (creazione di un figlio) exec (sostituzione di codice del programma in esecuzione) wait (attesa della terminazione
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
DettagliBootstrap. Bootstrap. Shutdown. Struttura di un SO. Elementi principali di un SO:
Bootstrap Bootstrap All accensione di un calcolatore vengono attivati programmi di diagnostica scritti nella ROM (Read Only Memory) che verificano l assenza di guasti Poi viene attivato il programma di
DettagliI THREAD O PROCESSI LEGGERI
I THREAD O PROCESSI Processi (pesanti): LEGGERI entità autonome con poche risorse condivise (si prestano poco alla scrittura di applicazioni fortemente cooperanti) Ogni processo può essere visto come Immagine
DettagliLab. di Sistemi Operativi - Lezione in aula - a.a. 2012/2013
Lab. di Sistemi Operativi - Lezione in aula - a.a. 2012/2013 Processi bash 1 Sommario I processi Comando ps (process status) Terminazione di un processo CTRL-C Kill Controllo dei processi Processi in background
DettagliInformatica Generale 07 - Sistemi Operativi:Gestione dei processi
Informatica Generale 07 - Sistemi Operativi:Gestione dei processi Cosa vedremo: Esecuzione di un programma Concetto di processo Interruzioni Sistemi monotasking e multitasking Time-sharing Tabella dei
DettagliGestione dei Processi
Gestione dei Processi Informatica B Che cosa è un processo per il SO? Processo programma! Rappresenta un istanza di un programma composta da: codice eseguibile (il programma stesso) dati del programma
DettagliProf. G. Ascia. Sistema Operativo
Sistema Operativo In parte tratto dal capitoli 13 del libro Mandrioli, Ceri, Sbattella, Cremonesi, Cugola, "Informatica: arte e mestiere",3a ed., McGraw-Hill Fondamenti di Informatica 1 Il Sistema Operativo
Dettaglieseguire comandi dati dall'utente, utilizzando una macchina reale, di livello inferiore,
La programmazione di sistema Introduzione ai sistemi operativi multiprocesso Primitive per la gestione dei processi http://home.dei.polimi.it/silvano/acso.htm Il sistema ste operativo Il Sistema Operativo
DettagliLABORATORIO DI SISTEMI OPERATIVI
LABORATORIO DI SISTEMI OPERATIVI Corso di Laurea Triennale in Ingegneria Informatica A.A. 2018/2019 Guglielmo Cola Email: g.cola@iet.unipi.it Web: iet.unipi.it/g.cola Processi in Unix/Linux (parte II)
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
DettagliProcessi. Descrittore di Processo (PCB) Context Switch Primitive per la creazione e terminazione dei processi. Il descrittore di processo (PCB)
Processi Descrittore di Processo (PCB) Context Switch Primitive per la creazione e terminazione dei processi 1 Il descrittore di processo (PCB) Il S.O. gestisce i processi associando a ciascuno di essi
DettagliCAP9. Device drivers
Struttura interna del sistema operativo Linux CAP9. Device drivers Device drivers Gestori di periferiche Sono moduli software che realizzano l interfacciamento e la gestione dei dispositivi periferici
DettagliSistemi Operativi 1. Lezione III: Concetti fondamentali. Mattia Monga. 7 marzo 2008
1 Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia mattia.monga@unimi.it 7 marzo 2008 1 c 2008 M. Monga. Creative Commons Attribuzione-Condividi allo stesso modo 2.5 Italia
DettagliSistemi Operativi 1. Mattia Monga. 7 marzo Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia
1 Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia mattia.monga@unimi.it 7 marzo 2008 1 c 2008 M. Monga. Creative Commons Attribuzione-Condividi allo stesso modo 2.5 Italia
DettagliProcessi. Esecuzione di programmi. Multi-tasking. Processo = programma in esecuzione
Processi Esecuzione di programmi Processo = programma in esecuzione Ogni processo è identificato da un numero intero, detto PID (process identifier) Ogni processo ha un contesto (tutte le info. nec. per
DettagliProcessi. Introduzione. Effective user/group id. Fork
Introduzione Processi = entità attiva 1. esiste per un certo lasso di tempo 2. utilizza risorse Ogni processo ha un identificatore intero (PID: process identifier) Tutti i processi UNIX hanno un genitore
DettagliInformatica II Sistemi Operativi DIGIP - a.a. 2015/16
DIPARTIMENTO DI INFORMATICA Alberto Ceselli (alberto.ceselli@unimi.it) Informatica II Sistemi Operativi DIGIP - a.a. 2015/16 Sistemi Operativi (modulo di Informatica II) I processi Patrizia Scandurra Università
DettagliLa creazione di un nuovo processo in UNIX
La creazione di un nuovo processo in UNIX #include int fork(void); Viene creato un nuovo processo (figlio) identico (stesso codice, area dati copiata) al processo (padre) che ha invocato la
DettagliIntroduzione. P4 termina prima di P3, P2 e P3 prima di P1 P1 P2 P3 P4 P1 P1 P2 P3 P4. Padre. P1,..., P4 sono processi. Figlio
Processi Introduzione Processo = entità attiva 1. esiste per un certo lasso di tempo 2. utilizza risorse Ogni processo ha un identificatore intero (PID: process identifier) Tutti i processi UNIX hanno
DettagliIl Sistema Operativo Processi e Risorse
ISTITUTO TECNICO SECONDO BIENNIO GIORGIO PORCU www.thegiorgio.it Sommario Processi Evoluzione dei Processi Modello a Processi Interrupt Context Switching Risorse Risorsa, Classe, Istanza, Molteplicità
DettagliUniversità di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A Pietro Frasca.
Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2014-15 Pietro Frasca Lezione 20 Martedì 16-12-2014 1 System call per la gestione dei processi Creazione
DettagliI Processi nel SO UNIX
I Processi nel SO UNIX 1 Processi UNIX UNIX è un sistema operativo multiprogrammato a divisione di tempo: unità di computazione è il processo Caratteristiche del processo UNIX: processo pesante con codice
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
DettagliLezione 5 in laboratorio processi, stringhe
Lezione 5 in laboratorio processi, stringhe hic sunt canes stercore Montecodruzzo for cane in 'pastore maremmano' 'rottweiler' 'pittbull' do kill - 9 ${cane}; Ciola Araldi NOTA BENE: A questo punto abbiamo
DettagliIl processo figlio : utilizza lo stesso codice che sta eseguendo il padre ;
La creazione di un nuovo processo in UNIX int fork(void); Viene creato un nuovo processo (figlio) identico (stesso codice, area dati copiata) al processo (padre) che ha invocato la fork Solo il valore
Dettagliil Nucleo e la gestione dei processi
il Nucleo e la gestione dei processi 1. Programmi, processi e risorse Differenza fra programmi e processi Il Programma rappresenta la descrizione del procedimento logico (algoritmo) che deve essere eseguito
DettagliIl sistema operativo
Il sistema operativo Vito Perrone Corso di Informatica A per Gestionali Indice Architettura Gestione dei processi Gestione della memoria centrale Driver Gestione dei file 2 1 Il sistema operativo E uno
DettagliII parte: Gestione dei Processi. 3. Processi. 3.1 Concetto di Processo
1 II parte: Gestione dei Processi processi (cap. 3) Thread (cap. 4) Scheduling della CPU (cap. 5) Sincronizzazione fra processi (cap. 6) Deadlock (stallo dei processi) (cap. 7) 3. Processi 2 Il processo
Dettagli2. Teoria. [7 punti] La comunicazione tra processi nel sistema UNIX.
1. Unix [12 punti] Prova Scritta di Recupero del 5 Aprile 2004 Si scriva un programma C che utilizzi le system call di UNIX e che realizzi un comando UNIX avente la seguente sintassi: esame fsize fin fout
DettagliIntroduzione al Multithreading
Introduzione al Multithreading Claudia Calidonna Istituto di di Cibernetica C.N.R. Argomenti principali Parleremo di : Processi & Threads Operazioni sui threads ed eventuali confronti tra operazioni sui
DettagliSistemi Operativi Anno Accademico 2011/2012. Segnali: Interrupt software per la gestione di eventi asincroni
Anno Accademico 2011/2012 Segnali: Interrupt software per la gestione di eventi asincroni Concetto di segnale Un segnale è un interrupt software Un segnale può essere generato da un processo utente o dal
DettagliUniversità degli Studi di Cagliari Corso di Laurea Specialistica in Ingegneria Elettronica. SISTEMI OPERATIVI A.A. 2004/2005 Docente: Giorgio Giacinto
Università degli Studi di Cagliari Corso di Laurea Specialistica in Ingegneria Elettronica SISTEMI OPERATIVI A.A. 2004/2005 Docente: Giorgio Giacinto fork() & exec() Roberto Perdisci A.A. 2004/2005 1 Dettagli
DettagliSistemi Operativi. Marzo-Giugno 2011 matricole congrue 0 mod 3. Controllo dei processi - I
Marzo-Giugno 2011 matricole congrue 0 mod 3 Controllo dei processi - I Controllo dei processi Creazione di nuovi processi Esecuzione di programmi Processo di terminazione Altro 2 1 Identificatori di processi
DettagliTEORIA DEI SISTEMI OPERATIVI. Sistemi monoprogrammatie multiprogrammati
TEORIA DEI SISTEMI OPERATIVI Sistemi monoprogrammatie multiprogrammati 1 STRUTTURA DEL SISTEMA OPERATIVO UTENTE La struttura di un sistema operativo è di tipo gerarchico: i programmi che lo compongono
DettagliGestione dei processi
FONDAMENTI DI INFORMATICA Prof. PIER LUCA MONTESSORO Facoltà di Ingegneria Università degli Studi di Udine Gestione dei processi 2000 Pier Luca Montessoro (si veda la nota di copyright alla slide n. 2)
DettagliUniversità di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A Pietro Frasca.
Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2017-18 Pietro Frasca Lezione 5 Martedì 17-10-2017 Descrittore del processo (PCB) Ogni processo è rappresentato
Dettagli2. Nucleo del sistema operativo (la gestione dei processi)
Architettura del sistema operativo Struttura interna del sistema operativo Linux shell Programmi utente Modo utente 2. Nucleo del sistema operativo (la gestione dei processi) - 31 marzo 2008 - Interfaccia
DettagliProcessi. Capitolo 3 -- Silberschatz
Processi Capitolo 3 -- Silberschatz Concetto di processo Un programma può corrispondere a diversi processi Si pensi a un insieme di utenti che utilizzano uno stesso editor in relazione a file diversi Quindi,
DettagliI Processi nel SO UNIX
I Processi nel SO UNIX 1 Processi UNIX UNIX è un sistema operativo multiprogrammato a divisione di tempo: unità di computazione è il processo Caratteristiche del processo UNIX: processo pesante con codice
DettagliCORSO DI SISTEMI OPERATIVI A - ESERCITAZIONE 4
UNIVERSITÀ DEGLI STUDI DI PARMA Facoltà di Ingegneria Corso di Laurea in Ingegneria Elettronica e delle Telecomunicazioni a.a. 2005-2006 CORSO DI SISTEMI OPERATIVI A - ESERCITAZIONE 4 1 Funzioni per il
DettagliI Processi nel Sistema Operativo Unix
I Processi nel Sistema Operativo Unix Processi Unix Unix è un sistema operativo multiprogrammato a divisione di tempo: l unità di computazione è il processo. Caratteristiche del processo Unix: processo
DettagliProcessi Concetti di base. Esecuzione parallela e sequenziale Il concetto di processo Gestione dei processi
Processi Concetti di base Esecuzione parallela e sequenziale Il concetto di processo Gestione dei processi Esecuzione sequenziale I sistemi di calcolo più semplici consentono unicamente l'esecuzione sequenziale
DettagliIl Sistema Operativo Ripasso
ISTITUTO TECNICO SECONDO BIENNIO GIORGIO PORCU www.thegiorgio.it Sommario Concetti di base Sistema Operativo Risorse Funzioni e Struttura Bootstrap, Kernel, Shell Gestione dei Processi Processo e PCB Algoritmi
DettagliSystem Call EXEC EXEC P P. fork exec(new_prog) fork. sono_il_padre = fork(); if (!sono_il_padre) {
System Call EXEC EXEC L effetto delle system call della famiglia exec consiste nel mandare in esecuzione: (1) un programma contenuto in un file eseguibile oppure un (2) interprete di programmi P fork P
DettagliLABORATORIO DI SISTEMI OPERATIVI
LABORATORIO DI SISTEMI OPERATIVI Corso di Laurea Triennale in Ingegneria Informatica A.A. 2018/2019 Guglielmo Cola Email: g.cola@iet.unipi.it Web: iet.unipi.it/g.cola Processi in Unix/Linux (parte III)
DettagliCorso di Informatica
Corso di Informatica Modulo T5 B1-Programmazione multithreading 1 Prerequisiti Schedulazione Attesa indefinita Lo stallo Tecnica round-robin 2 1 Introduzione La programmazione concorrente consente di chiedere
DettagliDiplomi Universitari Teledidattici. Sistemi Operativi
Compito di esonero del 3 luglio 1996 1. Si illustri brevemente il concetto di short term scheduling e si discutano i principali algoritmi usati per l assegnazione della CPU. Si prenda inoltre in considerazione
DettagliLaboratorio di Sistemi Operativi
primavera 2009 Controllo dei processi (2) Funzioni wait e waitpid quando un processo termina il kernel manda al padre il segnale SIGCHLD il padre può ignorare il segnale (default) oppure lanciare una funzione
DettagliSistemi Operativi. Lezione 3 Processi e Thread
Sistemi Operativi Lezione 3 Processi e Thread Introduzione Sino ai sistemi batch, di prima generazione, la CPU di un sistema svolgeva un attività, la portava a termine e solo allora avviava un altra attività
DettagliSignalling (IPC) Signalling (segnalazione)
Signalling (IPC) Signalling (segnalazione) è un particolare tipo di Inter-Process Communications che permettere di sincronizzare dei processi spedendo e ricevendo dei messaggi minimali che informano dell'accadimento
DettagliSeconda Esercitazione. Gestione di processi in Unix Primitive Fork, Wait, Exec
Seconda Esercitazione Gestione di processi in Unix Primitive Fork, Wait, Exec System call fondamentali fork exit wait exec Generazione di un processo figlio, che condivide il codice con il padre e possiede
DettagliGestione dei processi
Corso di Sistemi Operativi I/II Introduzione a Linux Gestione dei processi Ruggero Donida Labati Dipartimento di Informatica via Bramante 65, 26013 Crema (CR), Italy http://homes.di.unimi.it/donida ruggero.donida@unimi.it
DettagliEsercitazione 11. Esercitazione di riepilogo
Esercitazione 11 Esercitazione di riepilogo Agenda Esercizio 1 - Monitor java Gestione della pista di un aereoporto Esercizio 2 Programma C di sistema Gestione e monitoraggio dell esecuzione del programma
DettagliSistemi Operativi (modulo di Informatica II) I processi
Sistemi Operativi (modulo di Informatica II) I processi Patrizia Scandurra Università degli Studi di Bergamo a.a. 2008-09 Sommario Il concetto di processo Schedulazione dei processi Operazioni sui processi
DettagliIl problema dello I/O e gli Interrupt. Appunti di Sistemi per la cl. 4 sez. D A cura del prof. Ing. Mario Catalano
Il problema dello I/O e gli Interrupt Appunti di Sistemi per la cl. 4 sez. D A cura del prof. Ing. Mario Catalano Il Calcolatore e le periferiche Periferica Decodifica Indirizzi Circuiti di Controllo Registri
DettagliSISTEMI&OPERATIVI& AA&2013&0&2014& Processi( in(linux( Giorgio&Giacinto&2013& Sistemi&Opera?vi&
SISTEMI&OPERATIVI& AA&2013&0&2014& Processi( in(linux( ( 2& Creazione(di(processi( concorren2(» La&creazione&di&un&processo&figlio&consente&di& far&eseguire&alcune&funzionalità&del&programma& in&modo&concorrente&»
DettagliFunzioni, Stack e Visibilità delle Variabili in C
Funzioni, Stack e Visibilità delle Variabili in C Programmazione I e Laboratorio Corso di Laurea in Informatica A.A. 2016/2017 Calendario delle lezioni Lez. 1 Lez. 2 Lez. 3 Lez. 4 Lez. 5 Lez. 6 Lez. 7
DettagliÎ Modello ad Ambiente Locale P1 P1. File System P2 P2 P3 P3. Processi in UNIX. Modello di Processo in UNIX
Processi in UNIX Spazio di sistema (residente) Modello di Processo in UNIX 1 Tabella dei processi i PROCESS CODE Tabella dei codici Tabella dei file APERTI OPEN FILE ACTIVE FILE Tabella dei file ATTIVI
DettagliProcessi in UNIX. Spazio di sistema (residente) Tabella dei. file APERTI OPEN FILE. Tabella dei codici
Processi in UNIX Spazio di sistema (residente) 1 i Tabella dei processi CODE Tabella dei file APERTI ACTIVE FILE PROCESS Tabella dei codici OPEN FILE Tabella dei file ATTIVI Spazio di utente (swappable)
DettagliTerza Esercitazione. Gestione di segnali in Unix Primitive signal e kill!
Terza Esercitazione Gestione di segnali in Unix Primitive signal e kill! Primitive fondamentali signal kill pause alarm sleep Imposta la reazione del processo all eventuale ricezione di un segnale (può
DettagliI segnali. First the signals described in the original POSIX standard.
I segnali Prof.ssa Sara Michelangeli I segnali sono interruzioni inviate ai processi dal kernel, da un altro processo utente, oppure da un processo a se' stesso. Possono essere utilizzati dal sistema operativo
DettagliIl comando make. Per produrre un eseguibile da un programma C sono necessari tre passi compiuti dai seguenti moduli:
Il comando make Sviluppando programmi complessi, si è spesso portati a suddividere il codice sorgente in diversi file. La fase di compilazione quindi richiede maggior tempo, anche se le modifiche apportate
DettagliProcessi. Laboratorio Software 2008-2009 C. Brandolese
Processi Laboratorio Software 2008-2009 Introduzione I calcolatori svolgono operazioni simultaneamente Esempio Compilazione di un programma Invio di un file ad una stampante Visualizzazione di una pagina
DettagliLaboratorio di Sistemi Operativi Marzo-Giugno 2008 matricole congrue 0 mod 3
Marzo-Giugno 2008 matricole congrue 0 mod 3 Controllo dei processi - I Controllo dei processi Creazione di nuovi processi Esecuzione di programmi Processo di terminazione Altro 2 1 Identificatori di processi
DettagliGestione dei processi nel sistema operativo Unix
Gestione dei processi nel sistema operativo Unix (Bach: the Design of the Unix Operating System (cap: 6, 7, 8) 1 Argomenti Processi Strutture dati associate ai processi boot, init, shell Process Scheduling
DettagliEsercizio sulla gestione di processi in Unix!
! Esercizio sulla gestione di processi in Unix! 1 Esercizio Si vuole realizzare un programma C che abbia la seguente interfaccia:./launch_commands Il programma deve richiedere all utente: un numero N (pari
DettagliProcessi. Concetto di processo. Scheduling dei processi. Operazioni sui processi. Stati dei processi. Esempio in Unix
Processi Concetto di processo Scheduling dei processi Operazioni sui processi Stati dei processi Esempio in Unix 1 Concorrenza Un sistema operativo consiste in un gran numero di attività che vengono eseguite
DettagliProcessi. Concorrenza. Processi e programmi. 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
DettagliLaboratorio di sistemi operativi A.A. 2010/2011 Gruppo 2 Gennaro Oliva Processi
Laboratorio di sistemi operativi A.A. 2010/2011 Gruppo 2 Gennaro Oliva Processi Processo L'istanza di un programma in esecuzione in ambiente UNIX viene detta processo Ogni programma può generare diversi
DettagliEsame Laboratorio di Sistemi Operativi Cognome Nome Mat.
Il compito è costituito da domande chiuse, domande aperte ed esercizi. Non è consentito l uso di libri, manuali, appunti., etc. Tempo massimo 2 ore. Domande chiuse: ogni domanda corrisponde ad un punteggio
DettagliTECN.PROG.SIST.INF. - Politiche di schedulazione del processore. Roberta Gerboni
Roberta Gerboni 1 Gli stati di un processo Gli stati possibili nei quali si può trovare un processo sono: Hold (parcheggio): il programma (chiamato job) è stato proposto al sistema e attende di essere
DettagliLe Interruzioni. Ciclo del processore
Le Interruzioni Ciclo del processore L esecuzione di una istruzione avviene attraverso alcune fasi: Fetch L istruzione da eseguire viene prelevata dalla memoria e trasferita all interno della CPU Decode
Dettagli2. Tipi di periferiche e classificazione dei gestori
9. I GESTORI DI PERIFERICHE 1. Introduzione I gestori di periferiche (device drivers) sono dei componenti il cui funzionamento, a differenza di quello del file system, è fortemente intrecciato con quello
Dettagli1. PARALLELISMO E PROCESSI. 1.1 La necessità del parallelismo
1. PARALLELISMO E PROCESSI 1.1 La necessità del parallelismo Un programma eseguibile, generato ad esempio da un programma C, è rigorosamente sequenziale, nel senso che viene eseguito una istruzione alla
DettagliCAPITOLO 11 GESTIONE DEI PROCESSI
CAPITOLO 11 GESTIONE DEI PROCESSI THREAD, SMP, MICROKERNEL In questo capitolo si affrontano tre nuovi concetti dei Sistemi Operativi Moderni: sono il concetto di thread, di Simmetric Multiprocessing e
DettagliTHREAD, SMP, MICROKERNEL
CAPITOLO 12 THREAD THREAD, SMP, MICROKERNEL In questo capitolo si affrontano tre nuovi concetti dei Sistemi Operativi Moderni: sono il concetto di thread, di Simmetric Multiprocessing e di Microkernel.
DettagliSistemi Operativi e Laboratorio, Prova del 10/4/2018 compito B
Nome: Cognome: Matricola: corso: fila: posto: sercizio 1 (5 punti) Un sistema con 5 processi (A,, C,, ) e risorse dei tipi R1, R2, R3, R4, rispettivamente di molteplicità [7, 7, 3, 6], utilizza l algoritmo
DettagliAddendum alle chiamate di sistema per la gestione processi. E Mumolo
Addendum alle chiamate di sistema per la gestione processi E Mumolo Definiamo un processo proc.c che scrive l'argomento passato in linea: void main(int argc, char *argv[]){ printf("sono il processo %s\n",
Dettaglisono forniti di un sistema operativo più o meno complesso; i programmi d utente (o programmi del sistema, ma lo fanno attraverso il sistema
Principi di architetture dei calcolatori: elementi di sistemi operativi Mariagiovanna Sami Il sistema operativo Sistema Operativo (OS, Operating System): ) è il software che controlla l esecuzione dei
DettagliCorso di Informatica
Corso di Informatica Modulo T2 1-Concetti fondamentali 1 Prerequisiti Hardware e software Uso pratico elementare di un sistema operativo Software di base e software applicativo 2 1 Introduzione Iniziamo
Dettagli