Il sistema FreeBSD (UNIX) Breve Storia. Storia delle Versioni di UNIX

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Il sistema FreeBSD (UNIX) Breve Storia. Storia delle Versioni di UNIX"

Transcript

1 Il sistema FreeBSD (UNIX) Breve storia Principi di progettazione Interfaccia del programmatore Interfaccia utente Gestione dei processi Gestione della memoria File System Sistema di Inpput/Output Comunicazione tra processi A.1 Breve Storia Sviluppato per la prima volta nel 1969 da Ken Thompson e Dennis Ritchie ai Bell Laboratories; include caratteristiche di altri sistemi operativi, in particolare MULTICS. La terza versione fu scritta in C, che fu sviluppato appositamente per supportare UNIX. L Università della California a Berkeley (Berkeley Software Distributions) ha sviluppato la propria versione. 4BSD UNIX è stato finanziato da DARPA per sviluppare un sistema UNIX standard per uso governativo. Sviluppato per il VAX, 4.3BSD è una delle versioni più imprtanti, ed è stata portata su molte piattaforme. Diversi progetti di standardizzazione cercano di consolidare le varianti di UNIX allo scopo di fornire una unica interfaccia al programmatore. A.2 Storia delle Versioni di UNIX A.3 1

2 Primi vantaggi di UNIX Scritto in un linguaggio ad alto livello. Distribuito in formato sorgente. Fornisce potenti primitive di sistema operativo su piattoforme poco costose. Progettazione di piccole dimensioni, modulare e pulita. A.4 Principi di progettazione di UNIX Progettato per essere un sistema time-sharing. Possiede una semplice interfaccia utente standard (shell) che può essere sostituita con altre. Il File system ha una struttura di directory ad albero multilivello. I File sono visti dal sistema come sequenze non strutturate di bytes. Supporta la multiprogrammazione (processi multipli); un processo può facilmente generarne altri. L interattività del sistema è stata la principale priorità degli sviluppatori, per fornire gli strumenti adatti allo sviluppo di programmi. A.5 L interfaccia del programmatore Come la maggior parte dei sistemi, UNIX consiste di due parti separate: Kernel: ogni cosa al di sotto delle system-call e al di sopra dell hardware della macchina. Fornisce il file system, la gestione della CPU, la gestione della memoria, e altre funzioni del sistema operativo attraverso le system calls. Programmi di sistema: usano le system call del kernel per fornire funzioni utili, quali la compilazione e la manipolazione di file. A.6 2

3 4.4BSD Struttura a livelli A.7 System Calls Le System calls definiscono l interfaccia del programmatore verso UNIX L insieme dei programmi di sistema definisce l interfaccia utente. Le due interfacce definiscono il contesto che il kernel deve supportare. Tre categorie principali di system calls in UNIX. Gestione di File (le stesse supportano la gestione dei dispositivi) Controllo dei Processi Gestione delle informazioni sul sistema A.8 Gestione dei file Un file è una sequenza di bytes; il kernel non impone alcuna struttura ai files. I Files sono organizzati in una struttura di directory ad albero. Le Directories sono files che contengono informazioni su come trovare altri files. Path name: identifica un file specificando un cammino attraverso la struttura di directory. path names assoluti iniziano alla radice del file system path names relativi iniziano dalla directory corrente System calls per la gestione di base dei files: create, open, read, write, close, unlink, trunc. A.9 3

4 Struttura di directory tipica di UNIX A.10 Controllo dei Processi Un processo è un programma in esecuzione. I Processi sono idetificati da un identificare numerico, un intero. Le system calls per il controllo dei processi sono fork crea un nuovo processo execve è usata dopo una fork per caricare un programma ed eseguirlo exit termina l esecuzione di un processo Un processo può attendere (wait) che un processo figlio termini; wait restituisce l identificatore (process id) del processo terminato cosicchè il padre sa quale figlio termina. wait3 permette al padre di ottenere informazioni di prestazioni del figlio Un processo figlio che termina rimane in uno stato defunct fino a quando il padre non termina o ne richiede lo stato A.11 System call per il controllo dei processi A.12 4

5 Controllo dei processi I Processi comunicano tramite pipes: code di bytes tra due processi alle quali si accede come ad un file. Tutti i processi utenti discendono da un unico processo originale, init. init esegue un processo getty che inizializza il terminale e richiede all utente di autenticarsi (tramite login e password). Un processo login viene attivato e l utente accede al sistema, dal quale è identificato da uno user identifier Inoltre, login genera un processo che esegue la shell, la quale a sua volta genera i sottoprocessi con i comandi dell utente A.13 Controllo dei processi setuid: schema che permette a certi processi di avere più privilegi del normale, pur essendo eseguibili dagli utenti normali. setuid bit associa un effective user identifier del processo all utente proprietario del file, aggiungendone i privilegi e lascia inalterato il real user identifier. A.14 Segnali Meccanismo per gestire eventi simile a interrupt software. Il segnale interrupt, SIGINT, è usato per bloccare un comando prima che termini l esecuzione (in genere, prodotto dai tasti ctrl-c). L uso dei segnali va oltre la semplice gestione di eventi. Sono usati per avviare e interrompere processi su richiesta Il seganle SIGWINCH informa un processo che la finestra nella quale l output di un processo è visualizzato ha cambiato dimensioni. Consegna di dati urgenti derivanti da connessioni di rete. A.15 5

6 Interfaccia utente Programmeri e utenti utilizzano principalmente programmi di sistema già esistenti: le necessarie system calls sono incorporate nel programma e l utente può non esserne a conoscenza. I più comuni programmi di sistema sono orientati alla gestione dei files e delle directory. Directory: mkdir, rmdir, cd, pwd File: ls, cp, mv, rm Altri programmi sono gli editor (e.g., emacs, vi) i formattatori di testo (e.g., troff, LaTEX), programmi per la gestione del sistema (e.g., tar, passwd, netconfig). A.16 Shell e Comandi Shell il proceso utenete che esegue i programmi (anche chiamata interprete dei comandi). Si chiama shell (conchiglia), perché racchiude il kernel. La shell utilizza un prompt per indicare che è pronta ad accettare un comando dall utente. Un tipico comando è la richiesta di eseguire un programma eseguibile. La shell si occupa di ricercare il comando nella gerarchia di directory (attraverso un search path) lo carica e lo esegue. In genere, le directories /bin e /usr/bin sono quasi sempre nel search path. A.17 Shell e Comandi Un search path tipico su un sistema BSD è il seguente: (./home/prof/avi/bin /usr/local/bin /usr/ucb/bin/usr/bin ) In genere, è memorizzato in una variabile PATH che può essere modificata dall utente La shell suspende la propria esecuzione finché il comando non termina (esecuzione in foreground). Un comando può anche eseguire in background: shell e comando eseguono in parallelo A.18 6

7 Standard I/O Ad ogni processo vengono associati tre descrittori di file standard per le operazioni di I/O: standard input il programma legge ciò che lútente scrive standard output il programma invia le risposte allo schermo dell utente standard error per inviare messaggi di errore La maggior parte dei programmi può accettare input da o mandare l utput su un file. La shell usa una semplice sintassi per indicare se l input o l output avvengono da/su file I/O redirection. A.19 Standard I/O Redirection Comandi Significato % ls > filea invia l output di ls sul file filea % pr < filea > fileb prende l input da filea e manda output a fileb % lpr < fileb prende l input da fileb %% make program > & errs manda sia standard output che standard error nel file errs A.20 Pipelines, Filtri, e Shell Scripts Si possono unire singoli comandi tramite una barra verticale ( ) per dire alla shell di passare l output di un comando come input al comando successivo % ls pr lpr Filtro un comando come pr che passa il proprio input in output eseguendo qualche elaborazione su di esso. Scrivere una nuova shell con una diversa sintassi e semantica dei comandi cambierebbe la visione del sistema da parte dell utente, ma non cambia il kernel o l interfaccia per il programmatore. Il sistema X Window è la base delle interfacce grafiche di UNIX. A.21 7

8 Process Management Representation of processes is a major design problem for operating system. UNIX is distinct from other systems in that multiple processes can be created and manipulated with ease. These processes are represented in UNIX by various control blocks. Control blocks associated with a process are stored in the kernel. Information in these control blocks is used by the kernel for process control and CPU scheduling. A.22 8

Un Sistema Operativo multiuser-multitask UNIX

Un Sistema Operativo multiuser-multitask UNIX Un Sistema Operativo multiuser-multitask UNIX I lucidi che seguono sono stati prodotti sulla base dei seguenti riferimenti: lucidi del corso di Architettura degli Elaboratori Dip. Informatica dell Università

Dettagli

Lezione 1: Introduzione alla Shell di Unix

Lezione 1: Introduzione alla Shell di Unix Lezione 1: Introduzione alla Shell di Unix Laboratorio di Elementi di Architettura e Sistemi Operativi 5 Marzo 2013 Chi è UNIX? UNIX è il nome di una famiglia di sistemi operativi, con diverse implementazioni

Dettagli

LINUX: struttura generale

LINUX: struttura generale LINUX: struttura generale User Interface The layers of a UNIX system. 1 Processi in LINUX Ogni processo nasce con un solo thread Un processo gira in modalità utente; quando effettua una system call passa

Dettagli

14 - INTRODUZIONE AL SISTEMA OPERATIVO LINUX

14 - INTRODUZIONE AL SISTEMA OPERATIVO LINUX LABORATORIO DI PROGRAMMAZIONE Corso di laurea in matematica 14 - INTRODUZIONE AL SISTEMA OPERATIVO LINUX Marco Lapegna Dipartimento di Matematica e Applicazioni Universita degli Studi di Napoli Federico

Dettagli

File System Unix. Generalità

File System Unix. Generalità File System Unix Generalità File System: Caratteristiche Struttura gerarchica Files senza struttura (byte strems) Protezione da accessi non autorizzati Semplicità di struttura "On a UNIX system, everything

Dettagli

Esame Laboratorio di Sistemi Operativi Cognome Nome Mat.

Esame 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

Dettagli

Introduzione al sistema operativo Linux Un po di storia

Introduzione al sistema operativo Linux Un po di storia Introduzione al sistema operativo Linux Un po di storia Negli anni sessanta i computer, oltre ad essere grandi come frigoriferi, avevano il problema di avere un sistema operativo che variava, in genere,

Dettagli

Introduzione al sistema Linux

Introduzione al sistema Linux Introduzione al sistema Linux Stazioni di lavoro: PC con sistema operativo Linux Connessione al sistema Username : cognome1 Password : FirstLogin (cambiate la password con yppasswd appena possibile) Linux:

Dettagli

Comandi principali di Linux (1)

Comandi principali di Linux (1) Laboratorio I Comandi principali di Linux (1) Sintassi: [comando] [opzioni] [argomenti] ls mostra il contenuto di una director l versione lunga a mostra anche i files nascosti che iniziano con. t presenta

Dettagli

System call per la gestione di processi

System 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:

Dettagli

System call per la gestione di processi

System 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:

Dettagli

Lab. di Sistemi Operativi - Lezione in aula - a.a. 2012/2013

Lab. 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

Dettagli

Dipartimento di Giurisprudenza Prof. Michele Perilli Conoscenze Informatiche

Dipartimento di Giurisprudenza Prof. Michele Perilli Conoscenze Informatiche Dipartimento di Giurisprudenza Prof. Michele Perilli Conoscenze Informatiche michele.perilli@unifg.it mlperilli@gmail.com Sistema Operativo: funzionalità Gestire le risorse della macchina (CPU, memoria,

Dettagli

Simulazione esame Laboratorio di Sistemi Operativi Cognome Nome Mat.

Simulazione esame 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

Dettagli

System Calls per la Gestione dei Processi

System 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()

Dettagli

Processi. Esecuzione di programmi. Multi-tasking. Processo = programma in esecuzione

Processi. 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

Dettagli

Pag. 1. Il Nucleo del sistema operativo (la gestione dei processi)

Pag. 1. Il Nucleo del sistema operativo (la gestione dei processi) shell Programmi utente Modo utente Il Nucleo del sistema operativo (la gestione dei processi) Interfaccia delle chiamate di sistema File system Gestione processi Device driver Gestione memoria HARDWARE

Dettagli

Laboratorio di Sistemi Operativi primavera 2009

Laboratorio di Sistemi Operativi primavera 2009 primavera 2009 Forme di comunicazione tra processi La comunicazione tra processi può avvenire: Le pipe Passando dei files aperti tramite fork Attraverso il filesystem Utilizzando le pipes Utilizzando le

Dettagli

Esame Laboratorio di Sistemi Operativi Cognome Nome Mat.

Esame 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:

Dettagli

Cos'è Linux. Un sistema operativo : un insieme di programmi necessari per il funzionamento del computer e per il funzionamento di altri programmi.

Cos'è Linux. Un sistema operativo : un insieme di programmi necessari per il funzionamento del computer e per il funzionamento di altri programmi. Cos'è Linux Un sistema operativo : un insieme di programmi necessari per il funzionamento del computer e per il funzionamento di altri programmi. Unix gratuito : una implementazione gratuita di Unix per

Dettagli

Gestione dei processi nel sistema operativo Unix

Gestione 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

Dettagli

Corso di Informatica

Corso di Informatica Corso di Informatica Modulo L2 4-1 Prerequisiti Concetto di firmware Struttura di base di un sistema operativo Uso pratico elementare di un sistema operativo 2 1 Introduzione In questa Unità vediamo più

Dettagli

Sistemi Operativi e Sperimentazioni. Cristina Baroglio ufficio

Sistemi Operativi e Sperimentazioni. Cristina Baroglio ufficio Sistemi Operativi e Sperimentazioni Cristina Baroglio ufficio 32 011 6706703 baroglio@di.unito.it Informazioni varie Ricevimento: martedì 14:00 16:00 Materiale: http://www.di.unito.it/~baroglio/didattica.html

Dettagli

Struttura dei Sistemi Operativi

Struttura dei Sistemi Operativi STRUTTURA DEI SISTEMI OPERATIVI 3.1 Struttura dei Componenti Servizi di un sistema operativo System Call Programmi di sistema Struttura del sistema operativo Macchine virtuali Progettazione e Realizzazione

Dettagli

Il Sistema Operativo

Il Sistema Operativo Il Sistema Operativo Il sistema operativo Con il termine sistema operativo si intende l insieme di programmi e librerie che opera direttamente sulla macchina fisica mascherandone le caratteristiche specifiche

Dettagli

Laboratorio di Sistemi Operativi Marzo-Giugno 2008 Matricole congrue 0 mod 3

Laboratorio di Sistemi Operativi Marzo-Giugno 2008 Matricole congrue 0 mod 3 Marzo-Giugno 2008 Matricole congrue 0 mod 3 IPC: pipe e FIFO (1) Forme di comunicazione tra processi La comunicazione tra processi può avvenire: Passando dei files aperti tramite fork Attraverso il filesystem

Dettagli

Richiami sui Concetti Fondamentali dei Processi

Richiami sui Concetti Fondamentali dei Processi Processi Processi 1 Richiami sui Concetti Fondamentali dei Processi Processi 2 Definizione Nell ambito dei sistemi operativi esistono diverse definizioni di processo, ad es. un programma in esecuzione

Dettagli

File System I parte. File System

File System I parte. File System File System I parte File System Dati e Programmi sono organizzati mediante una struttura di files e directories: file: collezione di dati directory: collezione di file o di directory Il file system possiede

Dettagli

Introduzione a Linux. Storia di UNIX

Introduzione a Linux. Storia di UNIX SISTEMI OPERATIVI Introduzione a Linux Storia di UNIX» 1969 - UNIX nasce come proge=o di ricerca presso i laboratori Bell della AT&T.» 1976 - UNIX viene distribuito gratuitamente si diffonde nelle Università

Dettagli

Il Sistema Operativo

Il Sistema Operativo Corso di Alfabetizzazione Informatica 2003/2004 Il Sistema Operativo Modello di von Neumann Bus di sistema CPU Memoria Centrale Memoria di Massa Interfaccia Periferica 1 Interfaccia Periferica 2 Il computer

Dettagli

Sistemi Operativi e Sperimentazioni

Sistemi Operativi e Sperimentazioni Introduzione D.McIlroy Pipe B. Kernighan Ideatori del ling. C Sistemi Operativi e Sperimentazioni Cristina Baroglio ufficio 32 011-6706703 baroglio@di.unito.it AWK egrep A. Aho Nome originale: Unics Anno

Dettagli

La Shell di Unix. l utente impartisce i comandi al sistema digitandoli ad un apposito prompt;

La Shell di Unix. l utente impartisce i comandi al sistema digitandoli ad un apposito prompt; La Shell di Unix La parte del sistema operativo Unix dedita alla gestione dell interazione con l utente è la shell, ovvero, un interfaccia a carattere: l utente impartisce i comandi al sistema digitandoli

Dettagli

Il sistema operativo

Il 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

Dettagli

Linguistica Computazionale: esercitazioni

Linguistica Computazionale: esercitazioni Esercitazione 1 Felice Dell'Orletta ItaliaNLP Lab (www.italianlp.it) presso Istituto di Linguistica Computazionale A. Zampolli CNR felice.dellorletta@ilc.cnr.it 24 settembre 2014 Linguistica Computazionale:

Dettagli

Componenti di un sistema operativo

Componenti di un sistema operativo Componenti di un sistema operativo Dipartimento di Informatica Università di Verona, Italy Componenti di un S.O. Gestione dei processi Gestione della memoria primaria Gestione della memoria secondaria

Dettagli

BREVISSIMA GUIDA AL SISTEMA UNIX / LINUX

BREVISSIMA GUIDA AL SISTEMA UNIX / LINUX BREVISSIMA GUIDA AL SISTEMA UNIX / LINUX 1. DEFINIZIONI sistema operativo (SO): Software che gestisce le risorse del computer (filesystem e periferiche) filesystem: Insieme dei supporti di memorizzazione.

Dettagli

Università 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 Pietro Frasca. Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2016-17 Pietro Frasca Lezione 23 Martedì 17-01-2017 Il file system Il file system si basa sulle astrazioni

Dettagli

Informatica Generale 07 - Sistemi Operativi:Gestione dei processi

Informatica 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

Dettagli

Sistemi operativi. Motivazione. Tipi di software. Sistemi operativi. Un sistema operativo (SO) e un insieme di programmi che gestiscono le funzioni

Sistemi operativi. Motivazione. Tipi di software. Sistemi operativi. Un sistema operativo (SO) e un insieme di programmi che gestiscono le funzioni Motivazione Sistemi operativi Molte attivita in parallelo su un singolo calcolatore Es.: stampa di un documento e scrittura di un altro Il sistema operativo serve a coordinare queste attivita e far comunicare

Dettagli

Il software di sistema

Il software di sistema Il software di sistema Il software in un calcolatore è organizzato in due parti distinte: Il Software di Sistema o Sistema Operativo, che comprende una serie di programmi atti a gestire le risorse fisiche

Dettagli

Sistema Operativo. (hardware e software) della della macchina

Sistema Operativo. (hardware e software) della della macchina Sistema Operativo Senza Sistema Operativo (SO) un computer è solo un macchinario inutile... Il SO rende possibile la gestione, elaborazione e immagazinamento dell informazione. Il Il SO SO è il il software

Dettagli

Sistemi Operativi: Concetti Introduttivi

Sistemi Operativi: Concetti Introduttivi Sistemi Operativi: Concetti Introduttivi 1.1 Principali funzioni di un Sistema Operativo 1.2 Cenni Storici 1.3 Classificazione dei Sistemi Operativi 1.4 Struttura dei Sistemi Operativi 1.5 Processi e gestione

Dettagli

Università 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 Pietro Frasca. Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2017-18 Pietro Frasca Lezione 9 Giovedì 2-11-2017 Comunicazione con pipe Oltre che con la memoria condivisa

Dettagli

Processi - II. Franco Maria Nardini

Processi - II. Franco Maria Nardini Processi - II Franco Maria Nardini Processi Programmi in esecuzione in memoria sono chiamati processi. Caricati in memoria da una delle sei funzioni exec(3). Ogni processo ha un identificatore univoco

Dettagli

Introduzione all'uso del sistema operativo Ubuntu

Introduzione all'uso del sistema operativo Ubuntu Introduzione all'uso del sistema operativo Ubuntu Aprire un Terminal. Osservare il prompt dei comandi Una shell è pronta ad interpretare ed eseguire i vostri comandi consentendovi di accedere ai servizi

Dettagli

SISTEMI OPERATIVI. Processi in Linux. Giorgio Giacinto Sistemi Operativi

SISTEMI 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

Dettagli

IL SISTEMA OPERATIVO IL SISTEMA OPERATIVO

IL SISTEMA OPERATIVO IL SISTEMA OPERATIVO IL SISTEMA OPERATIVO Insieme di programmi che opera al di sopra della macchina fisica, mascherandone le caratteristiche e fornendo agli utenti funzionalità di alto livello. PROGRAMMI UTENTE INTERPRETE

Dettagli

Sistemi Operativi. Lezione 4 I processi: implementazioni

Sistemi Operativi. Lezione 4 I processi: implementazioni Lezione 4 I processi: implementazioni UNIX Creazione di un processo Assegna al processo un identificatore univoco Alloca spazio per il processo Inizializza il PCB Predisponi gli opportuni agganci con strutture

Dettagli

Sommario. Processi e Programmi. Che cosa e un Processo? Lezione 5 Processi e Threads

Sommario. 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

Dettagli

Sistema operativo e processi. Il Sistema Operativo ed i Processi. Il sistema operativo. Il sistema operativo

Sistema operativo e processi. Il Sistema Operativo ed i Processi. Il sistema operativo. Il sistema operativo Il Sistema Operativo ed i Processi Giuseppe Pozzi Impianti di Elaborazione Facoltà di Ingegneria di Como Politecnico di Milano giuseppe.pozzi@polimi.it - versione del 22 ottobre 2003 - Sistema operativo

Dettagli

I Sistemi Operativi. Introduzione ai Sistemi Operativi (parte A) Stefano Quer Dipartimento di Automatica e Informatica Politecnico di Torino

I Sistemi Operativi. Introduzione ai Sistemi Operativi (parte A) Stefano Quer Dipartimento di Automatica e Informatica Politecnico di Torino I Sistemi Operativi Introduzione ai Sistemi Operativi (parte A) Stefano Quer Dipartimento di Automatica e Informatica Politecnico di Torino 2 Componenti di un sistema di elaborazione Hardware Fornisce

Dettagli

SOFTWARE. Programmi e dati che indicano al computer come svolgere un determinato compito

SOFTWARE. Programmi e dati che indicano al computer come svolgere un determinato compito SOFTWARE MODULO 3 SOFTWARE Programmi e dati che indicano al computer come svolgere un determinato compito Programma: sequenza di istruzioni, scritte in un determinato linguaggio, con le quali si fa eseguire

Dettagli

Come si accede a BASH Tasti utili: Ctrl-Alt-F1, Ctrl-Alt-F7. Il Primo comando : exit (CASE SENSITIVE!!) Si può uscire con CTRL-D

Come si accede a BASH Tasti utili: Ctrl-Alt-F1, Ctrl-Alt-F7. Il Primo comando : exit (CASE SENSITIVE!!) Si può uscire con CTRL-D Come si accede a BASH Tasti utili: Ctrl-Alt-F1, Ctrl-Alt-F7 Il Primo comando : exit (CASE SENSITIVE!!) Si può uscire con CTRL-D Il secondo comando: ls Opzioni: ls l, ls a, ls R ls --full-time Parametri:

Dettagli

Il Sistema Operativo Ripasso

Il 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

Dettagli

Il sistema operativo

Il sistema operativo Il sistema operativo Il sistema operativo E uno strato software che opera direttamente sull hardware Isola gli utenti dai dettagli dell hardware Mono-utente o multi-utente E organizzato a strati: Architettura

Dettagli

Il comando make. Per produrre un eseguibile da un programma C sono necessari tre passi compiuti dai seguenti moduli:

Il 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

Dettagli

Corso di Laboratorio di Sistemi Operativi

Corso di Laboratorio di Sistemi Operativi Corso di Laboratorio di Sistemi Operativi Lezione 4 Alessandro Dal Palù email: alessandro.dalpalu@unipr.it web: www.unipr.it/~dalpalu Approfondimento su make http://http://capone.mtsu.edu/csdept/facilitiesandresources/make.htm

Dettagli

LABORATORIO DI SISTEMI OPERATIVI

LABORATORIO 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

Dettagli

Gestione dei processi

Gestione 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)

Dettagli

Corso di Informatica

Corso 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

I Processi. Il Concetto di Processo

I Processi. Il Concetto di Processo I Processi 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 eseguite

Dettagli

Introduzione a Unix/Bash. Insieme minimo di strumenti per interagire con la shell Bash, compilare ed eseguire

Introduzione a Unix/Bash. Insieme minimo di strumenti per interagire con la shell Bash, compilare ed eseguire Introduzione a Unix/Bash Insieme minimo di strumenti per interagire con la shell Bash, compilare ed eseguire Sistema operativo e shell Il sistema operativo è un programma che Fa da intermediario fra le

Dettagli

Sistemi Operativi 1. Lezione III: Concetti fondamentali. Mattia Monga. 7 marzo 2008

Sistemi 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

Dettagli

Sistemi Operativi 1. Mattia Monga. 7 marzo Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia

Sistemi 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

Dettagli

Sistema Operativo (Software di base)

Sistema Operativo (Software di base) Il Software Il software del PC Il computer ha grandi potenzialità ma non può funzionare senza il software. Il software essenziale per fare funzionare il PC può essere diviso nelle seguenti componenti:

Dettagli

2. Nucleo del sistema operativo (la gestione dei processi)

2. 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

Dettagli

Processi. Capitolo 3 -- Silberschatz

Processi. 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,

Dettagli

Laboratorio 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 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

Dettagli

Corso di Informatica Modulo T3 1-Nucleo e processi

Corso di Informatica Modulo T3 1-Nucleo e processi Corso di Informatica Modulo T3 1-Nucleo e processi 1 Prerequisiti Concetto stack Programmazione elementare Struttura elementare del computer Concetto intuitivo di sottoprogramma 2 1 Introduzione Vediamo

Dettagli

Sistemi Operativi 1. Lezione IV: Processi e thread. Mattia Monga. 11 marzo 2008

Sistemi 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

Dettagli

Prof. G. Ascia. Sistema Operativo

Prof. 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

Dettagli

Interfaccia. Due sono i tipi di interfaccia più diffusi per interagire con un computer:

Interfaccia. Due sono i tipi di interfaccia più diffusi per interagire con un computer: Interfaccia Due sono i tipi di interfaccia più diffusi per interagire con un computer: Interfacce a caratteri, anche dette a riga di comando (CLI, command line interfaces) Interfacce grafiche (GUI, graphical

Dettagli

Sistemi Operativi. Lezione 3 Processi e Thread

Sistemi 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

Dettagli

Prima Esercitazione. Unix e GNU/Linux. Fork. Stefano Monti Eugenio Magistretti

Prima Esercitazione. Unix e GNU/Linux. Fork. Stefano Monti Eugenio Magistretti Prima Esercitazione Fork Eugenio Magistretti emagistretti@deis.unibo.it Stefano Monti smonti@deis.unibo.it Unix e GNU/Linux Unix: sviluppato negli anni '60-'70 presso Bell Labs di AT&T, attualmente sotto

Dettagli

IL SISTEMA OPERATIVO IL SISTEMA OPERATIVO

IL SISTEMA OPERATIVO IL SISTEMA OPERATIVO IL SISTEMA OPERATIVO Insieme di programmi che opera al di sopra della macchina fisica, mascherandone le caratteristiche e fornendo agli utenti funzionalità di alto livello. PROGRAMMI UTENTE INTERPRETE

Dettagli

Sistemi Operativi 1. Mattia Monga. 11 marzo Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia

Sistemi 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

Dettagli

IL SISTEMA OPERATIVO

IL SISTEMA OPERATIVO IL SISTEMA OPERATIVO Insieme di programmi che opera al di sopra della macchina fisica, mascherandone le caratteristiche e fornendo agli utenti funzionalità di alto livello. PROGRAMMI UTENTE INTERPRETE

Dettagli

Sperimentazioni di Fisica I mod A. Introduzione a Linux

Sperimentazioni di Fisica I mod A. Introduzione a Linux Sperimentazioni di Fisica I mod A. Introduzione a Linux Copia delle slide e materiale integrativo: Moodle Sito del docente: http://progetti.dfa.unipd.it/galfor/ TEACHING Login 1) Usate i vostri username

Dettagli

Processi - II. Franco Maria Nardini

Processi - II. Franco Maria Nardini Processi - II Franco Maria Nardini Memory Layout un programma C è composto dalle seguenti parti: text segments: sono le istruzioni che la CPU esegue. è condiviso in memoria (una sola copia). è read-only.

Dettagli

Corso Linux Base. 2. Uso del Sistema

Corso Linux Base. 2. Uso del Sistema Corso Linux Base 2. Uso del Sistema Logging In (1) Una volta partito il sistema l utente esegue la procedura di Login. Se si è installato un ambiente grafico di desktop, la procedura è gestita dall ambiente

Dettagli

Definizioni iniziali. Sistemi Operativi. Tipi di software. Sistema Operativo. Programma: una sequenza di istruzioni elementari

Definizioni iniziali. Sistemi Operativi. Tipi di software. Sistema Operativo. Programma: una sequenza di istruzioni elementari Definizioni iniziali Sistemi Operativi Programma: una sequenza di istruzioni elementari Processo: un programma in esecuzione Software: insieme dei programmi 2 / 32 Tipi di software Sistema Operativo Base:

Dettagli

Sistemi Operativi. Definizioni iniziali

Sistemi Operativi. Definizioni iniziali Sistemi Operativi Definizioni iniziali Programma: una sequenza di istruzioni elementari Processo: un programma in esecuzione Software: insieme dei programmi 2 / 32 Tipi di software Base: lavora sull hardware

Dettagli

Struttura dei Sistemi di Calcolo

Struttura dei Sistemi di Calcolo Struttura dei Sistemi di Calcolo Operazioni dei sistemi di calcolo Struttura dell I/O Struttura della memoria Gerarchia delle memorie Protezione hardware Invocazione del Sistema Operativo 1 Architettura

Dettagli

Introduzione ai sistemi UNIX/Linux

Introduzione ai sistemi UNIX/Linux Introduzione ai sistemi UNIX/Linux Corso di laurea specialistica in Ingegneria Elettronica Domenico De Guglielmo E-mail: domenicodegu@virgilio.it Telefono: 050 2217 468 Pervasive Computing & Networking

Dettagli

Introduzione ai sistemi UNIX/Linux

Introduzione ai sistemi UNIX/Linux Introduzione ai sistemi UNIX/Linux Corso di laurea magistrale in Ingegneria Elettronica Ing. Simone Brienza E-mail: simone.brienza@for.unipi.it Pervasive Computing & Networking Lab () http://www.perlab.it

Dettagli

Concetto 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 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

Dettagli

Input/Output (Cap. 7, Stallings)

Input/Output (Cap. 7, Stallings) Input/Output (Cap. 7, Stallings) Grande varietà di periferiche gestiscono quantità di dati differenti a velocità diverse in formati diversi Tutti più lenti della CPU e della RAM Necessità di avere moduli

Dettagli

Nozioni Base di Linux

Nozioni Base di Linux Nozioni Base di Linux Shahram Rahatlou http://www.roma1.infn.it/people/rahatlou/labcalc/ Laboratorio di Calcolo Lezione 2 Hardware Sistema Operativo Software Routine e programmi di base per interagire

Dettagli

Università 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 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

Dettagli

Introduzione alla programmazione nella shell di Unix 10 Maggio 2005

Introduzione alla programmazione nella shell di Unix 10 Maggio 2005 Introduzione alla programmazione nella shell di Unix 10 Maggio 2005 1 Page 1 Shell e programmazione La shell di UNIX definisce un vero e proprio linguaggio di programmazione, le cui caratteristiche principali

Dettagli

Sistemi Operativi FILE SYSTEM : INTERFACCIA. D. Talia - UNICAL. Sistemi Operativi 8.1

Sistemi Operativi FILE SYSTEM : INTERFACCIA. D. Talia - UNICAL. Sistemi Operativi 8.1 FILE SYSTEM : INTERFACCIA 8.1 Interfaccia del File System Concetto di File Metodi di Accesso Struttura delle Directory Montaggio del File System Condivisione di File Protezione 8.2 Concetto di File File

Dettagli

Sistemi Operativi e informatica 1

Sistemi Operativi e informatica 1 1 Dip. Scienze dell Informatica Università degli Studi di Milano, Italia marchi@dsi.unimi.it a.a. 2011/12 1 c 2010-2012 M.Monga R.Paleari M.. Creative Commons Attribuzione-Condividi allo stesso modo 2.5

Dettagli

I Processi nel SO UNIX

I 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

Dettagli

Sistemi Operativi 1. Mattia Monga. a.a. 2010/11. Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia

Sistemi Operativi 1. Mattia Monga. a.a. 2010/11. Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia 1 Mattia Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia mattia.monga@unimi.it a.a. 2010/11 1 c 2011 M.. Creative Commons Attribuzione-Condividi allo stesso modo 2.5 Italia

Dettagli