Sistemi Operativi 1. Mattia Monga. a.a. 2008/09

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Sistemi Operativi 1. Mattia Monga. a.a. 2008/09"

Transcript

1 1 Mattia Dip. di Informatica e Comunicazione Universita degli Studi di Milano, Italia mattia.monga@unimi.it a.a. 2008/09 1 c 2009 M.. Creative Commons Attribuzione-Condividi allo stesso modo 2.5 Italia License. Immagini tratte da [?] e da Wikipedia. 1

2 254 Lezione XIII: La gestione delle interruzioni in

3 255

4 256 Caricamento iniziale

5 257 Cosa c'e nella boot image

6 258 Cosa c'e nella memoria

7 259 Setup iniziale Inzialmente le strutture dati piu importanti di cui occorre fare il setup sono il processore ne ha bisogno per risolvere gli indirizzi in modalita protetta IDT il processore ne ha bisogno per rispondere alle interruzioni (sincrone e asincrone)

8 260

9 261 Segment descriptor Vedi par di \Intel Manual 3A" 1 / kernel/type.h / 2 struct segdesc s f / segment descriptor for protect 3 u16 t limit low; 4 u16 t base low; 5 u8 t base middle; 6 u8 t access; / jpjdlj1jxjejrjaj / 7 u8 t granularity; / jgjxj0jajlimtj / 8 u8 t base high; 9 g; 1 / kernel/protect.c / 2 struct segdesc s gdt[ SIZE];

10 Inizializzazione 1 / kernel/protect.c prot init() / 2 struct desctableptr s f 3 char limit[sizeof(u16 t)]; 4 char base[sizeof(u32 t)]; 5 g dtp; 6 #dene vir2phys(vir) (kinfo.data base + (vir bytes) (vir)) 7 8 / Build gdt and idt pointers in where the BIOS expects them. / 9 dtp= (struct desctableptr s ) &gdt[ INDEX]; 10 (u16 t ) dtp >limit = (sizeof gdt) 1; 11 (u32 t ) dtp >base = vir2phys(gdt); dtp= (struct desctableptr s ) &gdt[idt INDEX]; 14 (u16 t ) dtp >limit = (sizeof idt) 1; 15 (u32 t ) dtp >base = vir2phys(idt); / Build segment descriptors for tasks and interrupt handlers. / 18 init codeseg(&gdt[cs INDEX], kinfo.code base, kinfo.code size, INTR PRIVILEGE); 19 init dataseg(&gdt[ds INDEX], kinfo.data base, kinfo.data size, INTR PRIVILEGE); 20 init dataseg(&gdt[es INDEX], 0L, 0, TASK PRIVILEGE); 262

11 Note Vengono utilizzati 3 livelli di privilegio (su 4) INTR PRIVILEGE kernel mode TASK PRIVILEGE \driver" mode, permesso I/O USER PRIVILEGE user mode kinfo e una struttura dati globale 1 / include/minix/type.h / 2 typedef unsigned long phys bytes; 3 typedef unsigned int vir bytes; 4 struct kinfo f 5 phys bytes code base; / base of kernel code / 6 phys bytes code size; 7 phys bytes data base; / base of kernel data / 8 phys bytes data size; 9 vir bytes proc addr; / virtual address of process table / 10 phys bytes kmem base; / kernel memory layout (/dev/kmem) / 11 phys bytes kmem size; 12 phys bytes bootdev base;/ boot device from boot image (/dev/boot) / 13 phys bytes bootdev size; 14 phys bytes ramdev base;/ boot device from boot image (/dev/boot) / 15 phys bytes ramdev size; 16 phys bytes params base;/ parameters passed by boot monitor / 17 phys bytes params size; 18 int nr procs; / number of user processes / 19 int nr tasks; / number of kernel tasks / 20 char release[6]; / kernel release number / 21 char version[6]; / kernel version number / 22 g; 263

12 Il kernel 1 ; mpx386.s 2 : ; this is the entry point for the kernel 3 jmp over ags ; skip over the next few bytes 4.data2 CLICK SHIFT ; for the monitor: memory granularity 5 ags: 6.data2 0x01FD ; boot monitor ags: 7 nop ; extra byte to sync up disassembler 8 over ags: 9 ; call cstart ; cstart(cs, ds, mds, parmo, parmlen) 11 add esp, ; Reload gdtr, idtr and the segment registers to global descriptor table set 14 ; up by prot init() called by cstart lgdt ( gdt+ SELECTOR) 17 lidt ( gdt+idt SELECTOR) jmpf CS SELECTOR:csinit 20 csinit: 264

13 Setup del kernel 1 void cstart(cs, ds, mds, parmo, parmsize) 2 U16 t cs, ds;/ kernel code and data segment / 3 U16 t mds; / monitor data segment / 4 U16 t parmo, parmsize;/ boot parameters oset and length / 5 f 6 / Perform system initializations prior to calling main(). Most settings are 7 determined with help of the environment strings passed by ' loader. 8 / 9 extern int etext, end; / Record where the kernel and the monitor are. / 12 kinfo.code base = seg2phys(cs); / get the base addr of seg / 13 kinfo.code size = (phys bytes) &etext; / size of code segment / 14 kinfo.data base = seg2phys(ds); 15 kinfo.data size = (phys bytes) &end; / size of data segment / / Initialize protected mode descriptors. / 18 prot init(); 265

14 266 Boot parameters Sono ssati tramite il boot monitor rootdev=904 ramimagedev=904 ramsize=0 processor=686 bus=at video=vga chrome=color memory=800:92540,100000:3df0000 label=at controller=c0 image=boot/image bootdelay=3000

15 Seguire il usso con QEMU e GDB 1 Lanciare QEMU con l'opzione -s che attiva il debugging esterno (via rete, porta TCP 1234) 2 Al momento del menu premere ESC per accedere al boot monitor 3 Aumentare il boot delay con bootdelay = 5000 per avere il tempo di bloccare QEMU e attivare il boot 4 Accedere alla console di controllo di QEMU (Ctrl-Alt-2) e fare stop 5 Attivare GDB e specicare il target esterno con target remote localhost: Comandi utili (stessa sintassi in GDB e QEMU console) x/10i 0x800 disassembla 10 istruzioni all'indirizzo 0x800 b *0x807 mette un break point all'indirizzo 0x807 info registers visualizza il contenuto dei registri si step instruction (solo GDB) 267

Sistemi Operativi. Bruschi Martignoni Monga. La gestione. MINIX Architettura I device driver Block device. Memory driver Implementazione

Sistemi Operativi. Bruschi Martignoni Monga. La gestione. MINIX Architettura I device driver Block device. Memory driver Implementazione 1 Mattia Lezione XXVII: Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia mattia.monga@unimi.it a.a. 2008/09 1 c 2009 M.. Creative Commons Attribuzione-Condividi allo stesso

Dettagli

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

Sistemi Operativi 1. Mattia Monga. 11 aprile 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 delle 11 aprile 2008 1 c 2008 M. Monga. Creative Commons Attribuzione-Condividi allo stesso modo 2.5

Dettagli

Sistemi x86 CALCOLATORI ELETTRONICI LM

Sistemi x86 CALCOLATORI ELETTRONICI LM Sistemi x86 CALCOLATORI ELETTRONICI LM 1 Registri x86 31 15 8 7 AH AX AL EAX 31 IP BH BX BL EBX CH CX DH DX CL DL ECX EDX 31 FLAGS EF SI ESI DI EDI BP EBP 15 8 7 SP CS SS DS ESP Sono presenti anche i registri

Dettagli

Sistemi Operativi. Introduzione all architettura IA-32 Lez. 16. Corso: Sistemi Operativi Danilo Bruschi A.A. 2010/2011

Sistemi Operativi. Introduzione all architettura IA-32 Lez. 16. Corso: Sistemi Operativi Danilo Bruschi A.A. 2010/2011 Sistemi Operativi Introduzione all architettura IA-32 Lez. 16 1 Microprocessori Intel Nel 1979 Intel introduce la famiglia dei microprocessore 8086 8086, 8087, 8088, e 80186 Processori a 16-bit con registri

Dettagli

La gestione dei processi in Minix

La gestione dei processi in Minix La gestione dei processi in Minix Sistemi Operativi Lez. 28 Scheduling Round robin su 16 code di priorità Quando un processo viene bloccato senza aver esaurito il suo quanto di tempo, una volta risvegliato,

Dettagli

Sistemi Operativi. Introduzione all architettura IA-32 Lez. 15. Corso: Sistemi Operativi Danilo Bruschi A.A. 2014/2015

Sistemi Operativi. Introduzione all architettura IA-32 Lez. 15. Corso: Sistemi Operativi Danilo Bruschi A.A. 2014/2015 Sistemi Operativi Introduzione all architettura IA-32 Lez. 15 1 Microprocessori Intel Nel 1979 Intel introduce la famiglia dei microprocessore 8086 8086, 8087, 8088, e 80186 Processori a 16-bit con registri

Dettagli

Sistemi Operativi. Lezione 13 Il context switch in MINIX. Corso: Sistemi Operativi Danilo Bruschi A.A. 2009/2010

Sistemi Operativi. Lezione 13 Il context switch in MINIX. Corso: Sistemi Operativi Danilo Bruschi A.A. 2009/2010 Sistemi Operativi Lezione 13 Il context switch in MINIX Context switch Possiamo ora predisporre una routine per il context switch tra processi, che possiamo supporre sia risvegliata da un interrupt di

Dettagli

Sistemi Operativi. Bruschi Martignoni Monga. Send/Receive mini send Enqueue e dequeue mini receive mini notify. System call in MINIX

Sistemi Operativi. Bruschi Martignoni Monga. Send/Receive mini send Enqueue e dequeue mini receive mini notify. System call in MINIX 1 Mattia Lezione XIX: Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia mattia.monga@unimi.it a.a. 2008/09 1 c 2009 M.. Creative Commons Attribuzione-Condividi allo stesso modo

Dettagli

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

Sistemi Operativi 1. Mattia Monga. a.a. 2008/09. 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. 2008/09 1 c 2009 M.. Creative Commons Attribuzione-Condividi allo stesso modo 2.5 Italia

Dettagli

strutturare dati e codice

strutturare dati e codice Puntatori e passaggio parametri strutturare dati e codice Tipo di dati int * Pi ; Op. dereferenziazione j = *Pi ; Op. indirizzo Pi = &i ; By value int f(int i) ; a = f(b) ; By address int f(int * Pi) ;

Dettagli

Blocchi funzione: FbModbusAsciiMs

Blocchi funzione: FbModbusAsciiMs Pagina 1 di 6 ELSIST Srl, www.elsist.it Blocchi funzione MNL041Q000 FbModbusAsciiMs Questo blocco funzione permette lo scambio di dati tra due sistemi, uno master ed uno slave, utilizzando una connessione

Dettagli

Hardware di un Computer

Hardware di un Computer Hardware di un Computer Monitor Mouse Tastiera Printer Disk CPU Graphics Adapter USB Controller Parallel Port Disk Controller BUS Memoria RAM Memoria ROM (BIOS) DMA CPU esegue istruzioni, effettua calcoli,

Dettagli

Sistemi Operativi 1. Mattia Monga. a.a. 2016/17. Dip. di Informatica Università degli Studi di Milano, Italia

Sistemi Operativi 1. Mattia Monga. a.a. 2016/17. Dip. di Informatica Università degli Studi di Milano, Italia 1 Mattia Monga Dip. di Informatica Università degli Studi di Milano, Italia mattia.monga@unimi.it a.a. 2016/17 1 cba 2008 17 M. Monga. Creative Commons Attribuzione Condividi allo stesso modo 4.0 Internazionale.

Dettagli

Sistemi Operativi. Bruschi Monga Re. Memorie di massa. Dischi virtuali Esercizio. Sistemi Operativi. Bruschi Monga Re.

Sistemi Operativi. Bruschi Monga Re. Memorie di massa. Dischi virtuali Esercizio. Sistemi Operativi. Bruschi Monga Re. 1 Mattia Monga Dip. di Informatica Università degli Studi di Milano, Italia mattia.monga@unimi.it Lezione XV: Memoria di a.a. 2016/17 1 cba 2008 17 M. Monga. Creative Commons Attribuzione Condividi allo

Dettagli

Gestione dei file. File di testo e binari

Gestione dei file. File di testo e binari Gestione dei file Un file e definito come un oggetto, presente nel file system, costituito da una sequenza continua di bytes Un file, per poter essere utilizzato, deve essere aperto Successivamente e possibile

Dettagli

Sicurezza dei sistemi e delle reti 1

Sicurezza dei sistemi e delle reti 1 Sicurezza dei sistemi e delle 1 Mattia Dip. di Informatica Università degli Studi di Milano, Italia mattia.monga@unimi.it a.a. 2015/16 1 cba 2011 15 M.. Creative Commons Attribuzione Condividi allo stesso

Dettagli

Contenuti: 1. Moduli LINUX

Contenuti: 1. Moduli LINUX Sistemi Operativi III Corso di Laurea in Ingegneria Informatica Facolta di Ingegneria, Universita La Sapienza Docente: Francesco Quaglia Contenuti: 1. Moduli LINUX Concetti di base sui moduli un modulo

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

Contenuti: 1. Strumenti per il debugging nel Kernel LINUX: printk() e panic()

Contenuti: 1. Strumenti per il debugging nel Kernel LINUX: printk() e panic() Sistemi Operativi III Corso di Laurea in Ingegneria Informatica Facolta di Ingegneria, Universita La Sapienza Docente: Francesco Quaglia Contenuti: 1. Strumenti per il debugging nel Kernel LINUX: printk()

Dettagli

Architettura x86 a 64 bit

Architettura x86 a 64 bit Architettura x86 a 64 bit Ovvero come l architettura x86 a 32 bit è stata portata a 64 bit 1 Per cominciare Contenuto Storia L architettura a 32 bit L architettura a 64 bit Avvertenza Per abitudine ci

Dettagli

Desiderata: memoria capiente e veloce. Connessioni tra livelli di memoria. Memoria cache, struttura. Tecniche impiegate. Ad ogni accesso alla memoria

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

Dettagli

Introduzione a GCC: GNU Compiler Collection

Introduzione a GCC: GNU Compiler Collection Introduzione a GCC: GNU Compiler Collection Caratteristiche di GCC Compilatore multipiattaforma modulare Disponibile per tutti i principali sistemi operativi Può produrre programmi per la maggior parte

Dettagli

Sistemi Operativi. Bruschi Martignoni Monga. Altre periferiche fondamentali Hard disk Terminale. Sistemi Operativi. Bruschi Martignoni Monga

Sistemi Operativi. Bruschi Martignoni Monga. Altre periferiche fondamentali Hard disk Terminale. Sistemi Operativi. Bruschi Martignoni Monga 1 Mattia Lezione XXIX: Dip. di Informatica e Comunicazione Università degli Studi di Milano, Italia mattia.monga@unimi.it a.a. 2008/09 1 c 2009 M.. Creative Commons Attribuzione-Condividi allo stesso modo

Dettagli

Sicurezza delle reti. Monga. Tunnel. Sicurezza delle reti. Monga

Sicurezza delle reti. Monga. Tunnel. Sicurezza delle reti. Monga Sicurezza dei sistemi e delle 1 Mattia Dip. di Informatica Università degli Studi di Milano, Italia mattia.monga@unimi.it Lezione XIX: Virtual Private Network a.a. 2015/16 1 cba 2011 15 M.. Creative Commons

Dettagli

Sistema di protezione (2) Protezione (1)

Sistema di protezione (2) Protezione (1) Sistema di protezione (1) Sistema di protezione (2) Sistema di protezione (3) - Un processo potrebbe tentare di modificare il programma o i dati di un altro processo o di parte del S.O. stesso. - Protezione:

Dettagli

Sistema di protezione (1)

Sistema di protezione (1) Sistema di protezione (1) - 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

Dettagli

Introduzione ai Device Drivers in Linux. E.Mumolo, DEEI mumolo@units.it

Introduzione ai Device Drivers in Linux. E.Mumolo, DEEI mumolo@units.it Introduzione ai Device Drivers in Linux E.Mumolo, DEEI mumolo@units.it 1 Device Drivers Moduli software che gestiscono le periferiche attraverso il file system Tutte le periferiche sono viste come file

Dettagli

Corso di Fondamenti di Informatica Il sistema dei tipi in C++

Corso di Fondamenti di Informatica Il sistema dei tipi in C++ Corso di Fondamenti di Informatica Il sistema dei tipi in C++ Anno Accademico Francesco Tortorella Struttura di un programma C++ // Programma semplice in C++ #include int main() { cout

Dettagli

Cisco Internetwork Operating System. Introduzione

Cisco Internetwork Operating System. Introduzione Cisco Internetwork Operating System Introduzione IOS e CLI IOS: marchio registrato, nome del sistema operativo presente sulla maggior parte dei router Cisco; presente anche su alcuni switch e su routing

Dettagli

Elettronica dei Sistemi Programmabili A.A. 2013-2014. Microcontrollori. Introduzione allo sviluppo di progetti

Elettronica dei Sistemi Programmabili A.A. 2013-2014. Microcontrollori. Introduzione allo sviluppo di progetti Elettronica dei Sistemi Programmabili A.A. 2013-2014 Microcontrollori Introduzione allo sviluppo di progetti Premessa Qualunque sistema basato su microcontrollore deve eseguire un codice memorizzato in

Dettagli

Sicurezza delle reti 1

Sicurezza delle reti 1 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

Sistema Operativo di un Router (IOS Software)

Sistema Operativo di un Router (IOS Software) - Laboratorio di Servizi di Telecomunicazione Sistema Operativo di un Router (IOS Software) Slide tratte da Cisco Press CCNA Instructor s Manual ed elaborate dall Ing. Francesco Immè IOS Un router o uno

Dettagli

Architettura x86 a 64 bit

Architettura x86 a 64 bit Architettura x86 a 64 bit Ovvero come l architettura x86 a 32 bit è stata portata a 64 bit 1 Per cominciare Contenuto Storia L architettura a 32 bit L architettura a 64 bit Avvertenza Per abitudine ci

Dettagli

CCTV DIVISION. Guida Alla Lettura del Numero Seriale, Codice Prodotto, Versione Firmware, Versione Software, Codice Libretto

CCTV DIVISION. Guida Alla Lettura del Numero Seriale, Codice Prodotto, Versione Firmware, Versione Software, Codice Libretto CCTV DIVISION Guida Alla Lettura del Numero Seriale, Codice Prodotto, Versione Firmware, Versione Software, Codice Libretto How to Get Serial Number, Firmware Version, Product Code, Software Version, User

Dettagli

SOLAB2 : MIT JOS lab 1 booting a PC

SOLAB2 : MIT JOS lab 1 booting a PC PARTE 1 re@di.unimi.it Operazioni preliminari I cd /mnt sudo mkdir joslabs sudo chown -R user joslabs sudo chgrp -R user joslabs sudo mount /dev/sda1 /mnt/joslabs cd joslabs cd lab cd conf vi env.mk SOLAB2

Dettagli

Struttura dei Sistemi di Calcolo

Struttura dei Sistemi di Calcolo Università di Udine Facoltà di Scienze MM.FF.NN. A.A. 2009-2010 Copyright c 2000 04 Marino Miculan (miculan@dimi.uniud.it) La copia letterale e la distribuzione di questa presentazione nella sua integrità

Dettagli

Sistema di protezione

Sistema 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

Dettagli

Interazione con il DOS e il BIOS

Interazione con il DOS e il BIOS Interazione con il DOS e il BIOS ARGOMENTI PRESENTATI IN QUESTI LUCIDI Routine di BIOS e DOS Due modalità diverse di restituire il controllo al DOS L interazione con le routine del DOS: l interrupt 21H

Dettagli

I/O in Minix3. Sistemi Operativi Lez. 15

I/O in Minix3. Sistemi Operativi Lez. 15 I/O in Minix3 Sistemi Operativi Lez. 15 Architettura di riferimento Device Driver Per ogni classe di dispositivo di I/O (HD, floppy, RAM disk) esiste un apposito driver che condivide un insieme di routine

Dettagli

Schemi di paginazione nell architettura 86 (32 e 64 bit)

Schemi di paginazione nell architettura 86 (32 e 64 bit) Paginazione X86 1 Schemi di paginazione nell architettura 86 (32 e 64 bit) Questo documento mette insieme figure dai manuali Intel che illustrano gli aspetti salienti della gestione della memoria nell

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

Esercitazione 8 Eccezioni & Interruzioni in MIPS 32 Claudia Raibulet raibulet@disco.unimib.it Eccezioni Le eccezioni = variazioni delle condizioni normali di funzionamento della CPU Conseguenze delle eccezioni

Dettagli

Assembler di Spim. Assembler di SPIM. Struttura di un programma assembler. Direttive

Assembler di Spim. Assembler di SPIM. Struttura di un programma assembler. Direttive Assembler di Spim Assembler di SPIM Il programma è organizzato in linee Ogni linea può contenere un commento che parte dal carattere # e si estende fino alla fine della linea Ogni linea che non sia bianca

Dettagli

Architetture dei Calcolatori (Lettere. Installazione di SPIM. Interfaccia Grafica

Architetture dei Calcolatori (Lettere. Installazione di SPIM. Interfaccia Grafica SPIM Architetture dei Calcolatori (Lettere A-I) SPIM Ing.. Francesco Lo Presti Simulatore che esegue programmi assembler per architetture RISC MIPS R2000/R3000 Legge programmi in assembler MIPS e li traduce

Dettagli

Sistemi Operativi 1. Mattia Monga. a.a. 2012/13. Dip. di Informatica Università degli Studi di Milano, Italia

Sistemi Operativi 1. Mattia Monga. a.a. 2012/13. Dip. di Informatica Università degli Studi di Milano, Italia 1 Mattia Dip. di Informatica Università degli Studi di Milano, Italia mattia.monga@unimi.it a.a. 2012/13 1 cba 2011 13 M.. Creative Commons Attribuzione-Condividi allo stesso modo 3.0 Italia License. http://creativecommons.org/licenses/by-sa/3.0/it/.

Dettagli

Linux Native Boot Process

Linux Native Boot Process by Salvatore D'Angelo Table of contents 1 Introduzione... 2 2 Alcuni concetti di base: modalità reale e protetta...2 3 Software di test...6 4 Boot process step 0: stampa di un messaggio di boot...6 5 Boot

Dettagli

Le operazioni di allocazione e deallocazione sono a carico del sistema.

Le operazioni di allocazione e deallocazione sono a carico del sistema. Allocazione della memoria In C++ è possibile creare (allocare) variabili in maniera statica o dinamica. Nell allocazione statica una variabile esiste ed è utilizzabile dal momento della sua dichiarazione

Dettagli

ERRORI GENERATI DAL BIOS IN FASE DI AVVIO. Di Abe Wayer

ERRORI GENERATI DAL BIOS IN FASE DI AVVIO. Di Abe Wayer ERRORI GENERATI DAL BIOS IN FASE DI AVVIO Di Abe Wayer XX Generalmente associati alla scheda madre 101 Main system board interrupt failure Scheda madre con circuiti alterati. Probabilmente la scheda è

Dettagli

Esercizi per il recupero del debito formativo:

Esercizi per il recupero del debito formativo: ANNO SCOLASTICO 2005/2006 CLASSE 4 ISC Esercizi per il recupero del debito formativo: Facendo esclusivamente uso delle istruzioni del linguaggio macchina mnemonico del microprocessore INTEL 8086 viste

Dettagli

Sistemi Operativi. Esercitazione 2 Compilazione, Makefile e Processi

Sistemi Operativi. Esercitazione 2 Compilazione, Makefile e Processi Sistemi Operativi Esercitazione 2 Compilazione, Makefile e Processi Percorso Compilazione programmi in c Makefiles Processi definizione gestione creazione Compilazione di programmi in C Compilazione e

Dettagli

Sistemi Operativi (Laboratorio)

Sistemi Operativi (Laboratorio) Sistemi Operativi (Laboratorio) Lorenzo Martignoni Dipartimento di Informatica e Comunicazione Università degli Studi di Milano, Italia lorenzo@security.dico.unimi.it a.a. 2008/09 Bruschi Martignoni Monga

Dettagli

Strutture di controllo del flusso di esecuzione in assembler. MC68000: Status Register

Strutture di controllo del flusso di esecuzione in assembler. MC68000: Status Register Corso di Calcolatori Elettronici I A.A. 2010-2011 Strutture di controllo del flusso di esecuzione in assembler Lezione 25 Prof. Roberto Canonico Università degli Studi di Napoli Federico II Facoltà di

Dettagli

Guida all utilizzo del modulo MPI BrainChild

Guida all utilizzo del modulo MPI BrainChild Document version: 1.0 easitec S.r.l. Viale Martiri della Benedicta, 102 15069 Serravalle Scrivia (AL) - Italy Phone +39.0143.686023 - Fax +39.0143.634777 info@easitec.it - www.easitec.it Revision History

Dettagli

Compito di Fondamenti di Informatica

Compito di Fondamenti di Informatica Compito di Fondamenti di Informatica In un magazzino viene utilizzato un archivio informatico, nel quale vengono memorizzate le informazioni relative ai prodotti contenuti nel magazzino e che ne permette

Dettagli

Modello dei processi. Riedizione delle slide della Prof. Di Stefano

Modello 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

Dettagli

8 volume VII os32. 107.10 Riferimenti... 66

8 volume VII os32. 107.10 Riferimenti... 66 TXT HTM PDF pdf P1 P2 P3 P4 7 Capitolo 107 Primi passi verso un sistema per hardware x86-32 107.1 Privilegi dei segmenti...................................................... 9 107.1.1 DPL, CPL e RPL...................................................9

Dettagli

Interrupt-Driven I/O Gli Interrupts sono segnali hardware: - generati da device periferici es. fine di un operazione di I/O -oppure generati dalla CPU, a fronte di eccezioni i es. divisione per zero, stack

Dettagli

Assembly. Modello x86

Assembly. Modello x86 Assembly Modello x86 1 Il microprocessore Un MICROPROCESSORE è un circuito integrato dotato di una struttura circuitale in grado di attuare un prefissato SET di ISTRUZIONI 2 Caratteristiche del microprocessore

Dettagli

CREAZIONE PROCESSI IN UNIX 20

CREAZIONE PROCESSI IN UNIX 20 CREAZIONE PROCESSI IN UNIX 20 STRUTTURE DATI PER PROCESSI Un processo puo' essere in escuzione in 2 modi: kernel e utente. Un processo ha almeno 3 regioni: codice, dati e stack Lo stack è allocato dinamicamente.

Dettagli

Collegamento di processori PLC-5 e SLC tramite rete DH+ Utilizzando processori SLC 5/04

Collegamento di processori PLC-5 e SLC tramite rete DH+ Utilizzando processori SLC 5/04 Guida di riferimento Collegamento di processori PLC-5 e SLC tramite rete DH+ Utilizzando processori SLC 5/04 Questo documento mette insieme la documentazione disponibile di PLC e SLC per mostrarvi come

Dettagli

Una prima applicazione in C per l utilizzo delle socket

Una prima applicazione in C per l utilizzo delle socket Una prima applicazione in C per l utilizzo delle socket Richiamo sulle socket Socket in Windows (WinSock) Differenze tra sistemi operativi D. Gendarmi Socket API API: Application Programming Interface

Dettagli

Introduzione alle classi 2

Introduzione alle classi 2 Introduzione alle classi 2 Corso di Programmazione 3 - Ingegneria dell Informazione e dell Organizzazione 31 ottobre, 2001 Gino Perna Utilizzo di una classe in C++ UN ESEMPIO DI CLASSE: LO STACK Supponiamo

Dettagli

Modi di esecuzione user / kernel

Modi di esecuzione user / kernel Corso di Gestione eccezioni nel MIPS Interruzioni Anno Accademico 2006/2007 Francesco Tortorella Modi di esecuzione user / kernel Due modi di esecuzione: User kernel Per ognuno dei due modi di esecuzione

Dettagli

ITALIANO - WINDOWS XP

ITALIANO - WINDOWS XP ITALIANO - WINDOWS XP Inserire il cavo AP160UIR nella porta USB del computer. Verrà rilevato il nuovo hardware Seguire i passi dell installazione guidata di Windows, selezionando: Installa da un elenco

Dettagli

Programmazione ad Oggetti. Java Parte II

Programmazione ad Oggetti. Java Parte II Programmazione ad Oggetti Java Parte II Overview Caratteristiche lessicali Il primo programma Java 1 Commenti /* Commento tradizionale, eventualmente su più linee, non nidificato */ // Commento su di una

Dettagli

Processi in Linux. Igino Corona igino.corona@diee.unica.it. 20 Ottobre 2009

Processi in Linux. Igino Corona igino.corona@diee.unica.it. 20 Ottobre 2009 Sistemi Operativi Processi in Linux Igino Corona igino.corona@diee.unica.it 20 Ottobre 2009 Contenuti della lezione Come funzionano i programmi in Linux? Schema base di esecuzione di un programma Modalità

Dettagli

Università di Ferrara Facoltà di Ingegneria. Esercitazioni di FONDAMENTI DI INFORMATICA MODULO B

Università di Ferrara Facoltà di Ingegneria. Esercitazioni di FONDAMENTI DI INFORMATICA MODULO B Università di Ferrara Facoltà di Ingegneria Esercitazioni di FONDAMENTI DI INFORMATICA MODULO B Tommaso Berlose: Giuseppe Cota: (Riccardo Zese: tommaso.berlose@student.unife.it giuseppe.cota@unife.it riccardo.zese@unife.it)

Dettagli

Lo sniffer. questo sconosciuto! Corso di Reti di Calcolatori Architetture e Servizi A.A. 2010/11. Introduzione allo sniffing TCP

Lo sniffer. questo sconosciuto! Corso di Reti di Calcolatori Architetture e Servizi A.A. 2010/11. Introduzione allo sniffing TCP Corso di Reti di Calcolatori Architetture e Servizi A.A. 2010/11 Lo sniffer questo sconosciuto! Introduzione allo sniffing TCP Ing. Fabio Clarizia Ing. Luca Greco Outline Analisi dei segmenti TCP inviati

Dettagli

Sicurezza delle reti 1

Sicurezza delle reti 1 1 Mattia Dip. di Informatica Università degli Studi di Milano, Italia mattia.monga@unimi.it a.a. 2012/13 1 cba 2011 13 M.. Creative Commons Attribuzione-Condividi allo stesso modo 3.0 Italia License. http://creativecommons.org/licenses/by-sa/3.0/it/.

Dettagli

PROCEDURA PER L INSTALLAZIONE DEL CLIENT AFS PER

PROCEDURA PER L INSTALLAZIONE DEL CLIENT AFS PER Centro Elaborazione Dati INFO PROCEDURA PER L INSTALLAZIONE DEL CLIENT AFS PER WINDOWS 1) Assicurarsi di avere una utenza AFS; in caso contrario rivolgersi ad INFO, compilando l apposita richiesta attraverso

Dettagli

Corso di programmazione Arduino DI MALVEZZI DAVIDE

Corso di programmazione Arduino DI MALVEZZI DAVIDE Corso di programmazione Arduino DI MALVEZZI DAVIDE Argomenti Pin digitali e pin analogici Gestione di timer e bottoni Utilizzo della porta seriale Oggetto String Controllo di schermi LCD Utilizzo dell

Dettagli

Cognome: Nome: Matricola: Sistemi Operativi A.A , prova scritta del 25 settembre 2008.

Cognome: Nome: Matricola: Sistemi Operativi A.A , prova scritta del 25 settembre 2008. ognome: Nome: Matricola: Sistemi Operativi A.A. 2007-2008, prova scritta del 25 settembre 2008. Usa questa pagina per la brutta, staccala, non consegnarla. Sistemi Operativi A.A. 2007-2008, prova scritta

Dettagli

Antifork Research, Inc. HACKERS RESEARCH VIRTUAL LAB. Shellcode Advanced. Angelo Dell'Aera <buffer@antifork.org> Security Date 2004 Ancona 29/04/2004

Antifork Research, Inc. HACKERS RESEARCH VIRTUAL LAB. Shellcode Advanced. Angelo Dell'Aera <buffer@antifork.org> Security Date 2004 Ancona 29/04/2004 Antifork Research, Inc. HACKERS RESEARCH VIRTUAL LAB Shellcode Advanced Angelo Dell'Aera Security Date 2004 Ancona 29/04/2004 Esplorare mondi nuovi... In questa presentrazione analizzeremo

Dettagli

Socket. Nei sistemi operativi moderni i servizi disponibili in rete si basano principalmente sul modello client/server.

Socket. Nei sistemi operativi moderni i servizi disponibili in rete si basano principalmente sul modello client/server. Socket Nei sistemi operativi moderni i servizi disponibili in rete si basano principalmente sul modello client/server. Tale architettura consente ai sistemi di condividere risorse e cooperare per il raggiungimento

Dettagli

Sistemi Operativi I & II. Argomenti del corso. Il Laboratorio di Sistemi Operativi. Questa lezione. Matteo Vaccari <vaccari@pobox.

Sistemi Operativi I & II. Argomenti del corso. Il Laboratorio di Sistemi Operativi. Questa lezione. Matteo Vaccari <vaccari@pobox. Sistemi Operativi I & II Argomenti del corso Matteo Vaccari http://matteo.vaccari.name/so/ Testo: Modern Operating Systems di Andrew Tanenbaum, Prentice-Hall Ed. it: Moderni Sistemi

Dettagli

Sicurezza delle reti. Monga. Polimorfismo degli attacchi. Generatori di signature Hamsa. Cifratura. Sicurezza delle reti. Monga.

Sicurezza delle reti. Monga. Polimorfismo degli attacchi. Generatori di signature Hamsa. Cifratura. Sicurezza delle reti. Monga. Sicurezza dei sistemi e delle 1 Mattia Lezione XI: Dip. di Informatica Università degli Studi di Milano, Italia mattia.monga@unimi.it a.a. 2015/16 1 cba 2011 15 M.. Creative Commons Attribuzione Condividi

Dettagli

Capitolo 6 - Array. Copyright by Deitel & Associates, Inc. and Pearson Education Inc. All Rights Reserved.

Capitolo 6 - Array. Copyright by Deitel & Associates, Inc. and Pearson Education Inc. All Rights Reserved. 1 Capitolo 6 - Array Array Array Gruppo di locazioni di memoria consecutive Stesso nome e tipo Per riferirsi a un elemento, specificare Nome dell array Posizione Formato: arrayname[ position number ] Primo

Dettagli

Il livello trasporto: Introduzione e protocollo UDP

Il livello trasporto: Introduzione e protocollo UDP Corso di Laurea in Ingegneria Informatica Corso di Reti di Calcolatori a.a. 2009/10 Roberto Canonico (roberto.canonico@unina.it) Antonio Pescapè (pescape@unina.it) Il livello trasporto: Introduzione e

Dettagli

Sistemi Operativi 1. Mattia Monga. a.a. 2013/14. Dip. di Informatica Università degli Studi di Milano, Italia mattia.monga@unimi.it.

Sistemi Operativi 1. Mattia Monga. a.a. 2013/14. Dip. di Informatica Università degli Studi di Milano, Italia mattia.monga@unimi.it. 1 Mattia Monga Dip. di Informatica Università degli Studi di Milano, Italia mattia.monga@unimi.it a.a. 2013/14 1 cba 2008 14 M. Monga. Creative Commons Attribuzione Condividi allo stesso modo 4.0 Internazionale.

Dettagli

Antonio Cianfrani. Fondamenti di Reti - Prof. Marco Listanti - A.A. 2010/2011. INFOCOM Dept

Antonio Cianfrani. Fondamenti di Reti - Prof. Marco Listanti - A.A. 2010/2011. INFOCOM Dept Antonio Cianfrani Laboratorio Fondamenti di Reti 1. Introduzione ai Router IP Funzioni svolte dai Router I router operano allo strato 3 della pila protocollare OSI Individuano il cammino dei pacchetti

Dettagli

RTAI e scheduling. Andrea Sambi

RTAI e scheduling. Andrea Sambi RTAI e scheduling Andrea Sambi Scheduling Linux Due politiche di scheduling priority-driven possibili. FIFO priorità uguali Processo 1 iniziato Processo 1: iterazione 1 Processo 1: iterazione 2 Processo

Dettagli

Laboratorio di Amministrazione di Sistema (CT0157) parte A : domande a risposta multipla

Laboratorio di Amministrazione di Sistema (CT0157) parte A : domande a risposta multipla Laboratorio di Amministrazione di Sistema (CT0157) parte A : domande a risposta multipla 1. Which are three reasons a company may choose Linux over Windows as an operating system? (Choose three.)? a) It

Dettagli

Laboratorio di Programmazione in Rete

Laboratorio di Programmazione in Rete Laboratorio di Programmazione in Rete a.a. 2005/2006 http://www.di.uniba.it/~lisi/courses/prog-rete/prog-rete0506.htm dott.ssa Francesca A. Lisi lisi@di.uniba.it Orario di ricevimento: mercoledì ore 10-12

Dettagli

Messaggi in Minix. Sistemi operativi Lez. 10. Corso: Sistemi Operativi Danilo Bruschi A.A. 2006/2007

Messaggi in Minix. Sistemi operativi Lez. 10. Corso: Sistemi Operativi Danilo Bruschi A.A. 2006/2007 Messaggi in Minix Sistemi operativi Lez. 10 1 Comunicare in Minix I processi in Minix comunicano tra di loro attraverso scambio di messaggi I processi possono comunicare solo con processi al proprio livello

Dettagli

Organizzazione di un SO monolitico

Organizzazione di un SO monolitico Organizzazione di un SO monolitico Applicazioni Interprete di comandi (shell) Interfaccia grafica (desktop) Gestore del Gestore delle processore / Gestore della periferiche/ Scheduler(s) memoria dispositivi

Dettagli

Virtualizzazione di macchine Linux tramite XEN

Virtualizzazione di macchine Linux tramite XEN 26 Novembre 2005 Struttura Introduzione alla virtualizzazione Cos è la virtualizzazione La virtualizzazione è un processo di astrazione in cui alcune risorse a livello più basso vengono presentate in maniera

Dettagli

Debug di un programma

Debug di un programma Debug di un programma Col termine Debug si intende una fase di sviluppo del software, nella quale si cerca di eliminare gli errori dal programma Due tipi di errori: Errori sintattici, rilevati sempre dal

Dettagli

Downloading and Installing Software Socio TIS

Downloading and Installing Software Socio TIS Object: Downloading and Installing Software Socio TIS compiler: L.D. Date Revision Note April 17 th 2013 --- For SO XP; Win 7 / Vista step Operation: Image A1 Open RUN by clicking the Start button, and

Dettagli

Sicurezza dei sistemi e delle reti 1

Sicurezza dei sistemi e delle reti 1 Sicurezza dei sistemi e delle 1 Mattia Dip. di Informatica Università degli Studi di Milano, Italia mattia.monga@unimi.it a.a. 2015/16 1 cba 2011 15 M.. Creative Commons Attribuzione Condividi allo stesso

Dettagli

Informatica 1 Tipi e dichiarazioni in C++ C++ - Tipi e dichiarazioni 1

Informatica 1 Tipi e dichiarazioni in C++ C++ - Tipi e dichiarazioni 1 Informatica 1 Tipi e dichiarazioni in C++ C++ - Tipi e dichiarazioni 1 Cosa è il C++ E un linguaggio di programmazione derivato dal C Può essere usato per modificare il SO Unix e i suoi derivati (Linux)

Dettagli

Il sistema delle interruzioni nel processore MC68000 (cenni)

Il sistema delle interruzioni nel processore MC68000 (cenni) Corso di Calcolatori Elettronici I A.A. 2011-2012 Il sistema delle interruzioni nel processore MC68000 (cenni) Lezione 33 Prof. Antonio Pescapè Università degli Studi di Napoli Federico II Facoltà di Ingegneria

Dettagli

Sistemi Operativi III Corso di Laurea in Ingegneria Informatica Facolta di Ingegneria, Universita La Sapienza Docente: Francesco Quaglia

Sistemi Operativi III Corso di Laurea in Ingegneria Informatica Facolta di Ingegneria, Universita La Sapienza Docente: Francesco Quaglia Sistemi Operativi III Corso di Laurea in Ingegneria Informatica Facolta di Ingegneria, Universita La Sapienza Docente: Francesco Quaglia Contenuti: 1. Indirizzamento e modelli di protezione del codice

Dettagli

Corso di Fondamenti di Informatica

Corso di Fondamenti di Informatica Corso di Fondamenti di Informatica Introduzione alla programmazione in C++ 1 Un introduzione Che cosa è il C++? La programmazione procedurale La programmazione orientata agli oggetti La programmazione

Dettagli

Controllo di processi

Controllo di processi Controllo di processi Ogni processo del sistema ha un PID (Process Identity Number). Ogni processo può generare nuovi processi (figli). La radice della gerarchia di processi è il processo init con PID=1.

Dettagli

Sistemi Operativi: Introduzione

Sistemi Operativi: Introduzione Dove necessario, ti indicherò le sezioni corrispondenti nelle dispense Sistemi Operativi: Introduzione Amos Brocco, Ricercatore, DTI / ISIN 5 luglio 2012 Basato su: [STA08] Operating Systems: Internals

Dettagli

Approfondimenti. Contenuti

Approfondimenti. Contenuti Approfondimenti dott. Stefano D. Fratepietro steve@stevelab.net C I R S F I D Università degli studi di Bologna stevelab.net Creative Commons license Stefano Fratepietro - www.stevelab.net 1 Contenuti

Dettagli

Manuale utente. Quinx Box serie 200/300/400. Ethernet RS232 - TCP/IP converter

Manuale utente. Quinx Box serie 200/300/400. Ethernet RS232 - TCP/IP converter Manuale utente Quinx Box serie 200/300/400 Ethernet RS232 - TCP/IP converter A cura di: ICG Holding srl Div. Time & Access Via Leonardo da Vinci 45/47 20020 Lainate (MI) Nr. rif. Q 200 001 Versione 1.10.97

Dettagli

Struttura di un sistema operativo. Struttura dei Sistemi Operativi. Servizi per l utente generico. Servizi per l utente generico

Struttura di un sistema operativo. Struttura dei Sistemi Operativi. Servizi per l utente generico. Servizi per l utente generico Impossibile visualizzare l'immagine. Struttura di un sistema operativo Struttura dei Sistemi Operativi Servizi di un sistema operativo Interfaccia Utente Capitolo 2 -- Silberschatz Chiamate di sistema

Dettagli

Memoria virtuale e Sistema operativo. In riferimento all architettura x86 e al sistema operativo Linux

Memoria virtuale e Sistema operativo. In riferimento all architettura x86 e al sistema operativo Linux Memoria virtuale e Sistema operativo In riferimento all architettura x86 e al sistema operativo Linux 1 Premessa Questa NON è una lezione di un corso di Sistemi Operativi, né tantomeno di Linux Lo scopo

Dettagli