ACQUISIZIONE ED ANALISI INVESTIGATIVE E FORENSI DELLE MEMORIE DI DISPOSITIVI EMBEDDED

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "ACQUISIZIONE ED ANALISI INVESTIGATIVE E FORENSI DELLE MEMORIE DI DISPOSITIVI EMBEDDED"

Transcript

1 UNIVERSITA DEGLI STUDI DI MILANO FACOLTA DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA IN INFORMATICA ACQUISIZIONE ED ANALISI INVESTIGATIVE E FORENSI DELLE MEMORIE DI DISPOSITIVI EMBEDDED Relatore: Prof. Mattia Monga Correlatore esterno: Magg. CC Ing. Marco Mattiucci Tesi di Laurea di: Vincenzo Scognamiglio Matr Anno Accademico

2 INDICE INTRODUZIONE 1 MICROSOFT WINDOWS EMBEDDED CE 1.1 PANORAMICA DEL SISTEMA OPERATIVO 1.2 ARCHITETTURA DEL SISTEMA OPERATIVO WINDOWS CE OPERAZIONI IN MODALITA KERNEL 1.4 ARCHITETTURA DI MEMORIA 1.5 SPAZIO DI INDIRIZZAMENTO VIRTUALE PER LE APPLICAZIONI 1.6 OEMADDRESSTABLE 1.7 TIPOLOGIE DI UTILIZZO DELLA MEMORIA STACK STATIC DATA BLOCK MEMORY MAPPED FILE 1.8 INTERRUPT

3 2 ANALISI DELLA MEMORIA 2.1 PREMESSA 2.2 TECNICHE DI ACQUISIZIONE 2.3 METODOLOGIA DI ESTRAZIONE 2.4 TECNICHE DI ANALISI 2.5 ESTRAZIONE DEI FILE DEL SISTEMA OPERATIVO 2.6 ANALISI DEI FILE ESTRATTI 3 OCCULTAMENTO DI DATI IN UN DISPOSITIVO WINCE 3.1 PREMESSA 3.2 MODALITA DI OCCULTAMENTO 3.3 RECUPERO DI DATI OCCULTATI 3.4 IL FALSO PROBLEMA DELLE COLLISIONI 4 CONCLUSIONI 5 RINGRAZIAMENTI 6 BIBLIOGRAFIA

4 INTRODUZIONE L aumento dei crimini compiuti per mezzo di un sistema informatico, della diffusione dei dispositivi digitali dotati di memoria e perciò in grado di conservare tracce attinenti a fatti illeciti, ha fatto nascere l esigenza dell analisi delle memorie di tali dispositivi al fine di estrarne il contenuto da utilizzare in procedimenti giudiziari. La Digital Forensics [1], ultima nata fra le scienze forensi, si occupa dell analisi del contenuto della memoria studiando l'individuazione, la conservazione, la protezione, l'estrazione, la documentazione e ogni altra forma di trattamento del dato informatico estratto da un qualsiasi dispositivo digitale acquisito come fonte di prova da valutare in sede di dibattimento. L Embedded System Forensics [2] si occupa in particolare di svolgere indagini tecniche su sistemi elettronici dedicati (embedded) ad una specifica applicazione illecita (es. controlli elettronici dei giochi elettronici illegali, inneschi, sistemi elettronici modificati al fine di svolgere particolari attività criminali, skimmer per la clonazione di carte di credito, ecc.). Il mondo dei "sistemi embedded" è piuttosto variegato, poco ordinato e senza standard; molti di loro addirittura si basano su realizzazioni di natura artigianale, prive di documentazione e con una progettazione ridotta al minimo. La moderna tecnologia ha portato ad una sempre crescente diffusione di dispositivi digitali dedicati alle più svariate funzioni. Nonostante la varietà di tali sistemi si possono riconoscere le seguenti categorie come target principali nelle indagini: - sistemi d'ufficio (segreterie telefoniche, fax, fotocopiatrici, stampanti); - sistemi di interconnessione (Hub, switcher, router, gateway); - sistemi "handheld"(palmtop); - sistemi "spia" (dispositivi impiegati per varie rilevazioni ambientali audio, video e dati) - sistemi di clonazione (sistemi atti a svolgere clonazioni di plastic-card, siano esse smart dotate di chip o semplicemente magnetiche o ottiche); - sistemi di videosorveglianza; - sistemi GPS; - sistemi militari (sistemi di rilevazione, comando e controllo militari).

5 Nell ambito della Digital Forensics, assumono notevole importanza le tecniche di acquisizione [3] volte alla salvaguardia dei dati di interesse presenti sui supporti di archiviazione. A garanzia di inalterabilità di questi ultimi, si utilizzano accorgimenti specifici volti a garantire e provare l'esatta corrispondenza dei contenuti in qualsiasi momento dell'analisi. Le suddette procedure hanno assunto infatti maggiore rilevanza legale con l approvazione della Legge 18 marzo 2008, n. 48, che recepisce la Convenzione del Consiglio d'europa sulla criminalità informatica. Essa, tra l altro, apporta alcune significative modifiche al Codice di Procedura Penale [4] in materia di conservazione e non alterazione della fonte di prova informatica: CAPO III: MODIFICHE AL CODICE DI PROCEDURA PENALE E AL CODICE DI CUI AL DECRETO LEGISLATIVO 30 GIUGNO 2003, N. 196 Art. 8. (Modifiche al titolo III del libro terzo del codice di procedura penale) 1. All articolo 244, comma 2, secondo periodo, del codice di procedura penale sono aggiunte, in fine, le seguenti parole: «, anche in relazione a sistemi informatici o telematici, adottando misure tecniche dirette ad assicurare la conservazione dei dati originali e ad impedirne l alterazione». 2. All articolo 247 del codice di procedura penale, dopo il comma 1 e` inserito il seguente: «1-bis. Quando vi e` fondato motivo di ritenere che dati, informazioni, programmi informatici o tracce comunque pertinenti al reato si trovino in un sistema informatico o telematico, ancorché protetto da misure di sicurezza, ne e` disposta la perquisizione, adottando misure tecniche dirette ad assicurare la conservazione dei dati originali e ad impedirne l alterazione». Nel caso dell analisi forense di dispositivi embedded, non è a tutt oggi possibile effettuare l acquisizione della memoria (RAM e/o ROM) senza alterarne il contenuto, operazione che in termini giuridici, a norma dell art. 360 del Codice di Procedura Penale, si tramuta in un accertamento tecnico non ripetibile.

6 Nel corso del procedimento penale è frequente che la parte pubblica (pubblico ministero e polizia giudiziaria) e/o le parti private (difensore dell'indagato, della persona offesa, ecc.) debbano avvalersi di strumentazione tecnico-scientifica e dell'ausilio di esperti di determinati settori, per acquisire dati di cognizione necessari per l'esercizio delle funzioni loro assegnate dal codice di rito. Analoga esigenza può avvertire il giudice laddove, tanto nella fase preliminare quanto in quella del giudizio, abbia bisogno di acquisire conoscenze che presuppongono specifiche competenze di natura tecnico-scientifica. Gli accertamenti tecnici, indipendentemente dall'accesso in determinati luoghi, possono essere ripetibili o non ripetibili. Per "ripetibile", si intende che l'analisi forense in questione non sia invasiva e che quindi non comprometta lo stato dell'informazione contenuta, mentre nella seconda ipotesi l'accertamento deve essere fatto in presenza della parte offesa e del suo difensore in quanto l'accertamento della cosa non può essere rifatto in un momento successivo sulla stessa fonte di prova. La tesi illustra lo stato dell'arte per ciò che riguarda le tecniche e le diverse metodologie per l'acquisizione e l'analisi delle memorie contenute nei sistemi embedded, in ambiente Windows CE 6.0 per valutarne l'utilizzabilità in contesti investigativi. Attraverso la sperimentazione su di un dispositivo di navigazione veicolare marca TOMSTAR modello 5006 con sistema operativo Windows CE v. 6.0, ne sono state illustrate le problematiche ponendo particolare attenzione, ai fini forensi, all'analisi delle aree di memoria in cui potrebbe essere possibile occultare dei dati, con l'obiettivo di effettuare il loro recupero.

7 Capitolo 1 MICROSOFT WINDOWS EMBEDDED CE 1.1 PANORAMICA DEL SISTEMA OPERATIVO Windows CE (Compact Edition) [5,6,7,8,9] è un sistema operativo sviluppato da Microsoft, a partire dal 1996, per dispositivi portatili (PDA, Palmari, Pocket PC), Smartphone e sistemi embedded. Il termine "Windows CE" è in realtà il nome con il quale viene indicata la piattaforma generale di sviluppo di questo sistema operativo. Essendo "Windows CE" sufficientemente modulare e flessibile, sono state sviluppate a seconda dei dispositivi utilizzati, delle specifiche versioni. I dispositivi dove normalmente viene utilizzatio tale sistema operativo sono equipaggiati con processori x86, MIPS, ARM, Hitachi SuperH, oppure Intel XScale. Inoltre le diverse versioni di sistema operativo prendono il nome commerciale di "MS Handheld 3.0" (e 3.1), "MS Handheld 2000", "Microsoft Pocket PC 2000" (e 2002), "MS Smartphone 2002", "MS Windows Mobile 2003" (e 2003 Second Edition), "MS Windows Mobile 5.0" (e 6.0), "Microsoft Auto". Negli ultimi 10 anni, Windows Embedded CE [10] si è evoluto da nuovo prodotto a soluzione affermata nel settore dei sistemi operativi Embedded. Nell'arco di questo periodo, Microsoft ha migliorato quasi tutte le caratteristiche di Windows CE, ad eccezione del modo in cui viene gestita la memoria. Sebbene Windows CE sia sempre stato un sistema operativo moderno e multitasking, con supporto della memoria virtuale, presentava tuttavia alcune gravi limitazioni per i sistemi con un elevato utilizzo della memoria e del codice, come i set-top box e le piattaforme Windows Mobile. Nello specifico, tali limitazioni sono costituite dal limite di 32 processi simultanei e da quello di 32 MB relativo allo spazio virtuale per le applicazioni. Nessuno di questi due limiti rappresentava un problema quando Windows CE è stato inizialmente introdotto, né costituisce un problema in molti sistemi Embedded attuali. Il problema viene invece riscontrato nei sistemi

8 con un elevato utilizzo di elementi multimediali, che eseguono pertanto Windows Media Player, nei sistemi che necessitano di ingenti quantità di codice del sistema e delle applicazioni, come Windows Mobile e nei sistemi con tendenza a creare numerosi processi di dimensioni ridotte, come alcuni sistemi di controllo dei processi. 1.2 ARCHITETTURA DEL SISTEMA OPERATIVO WINDOWS CE 6.0 Windows CE 6.0 è un sistema operativo modulare e multi-thread ed è stato progettato per essere configurabile. L'uso di processi per la distribuzione di Application Programming Interface (API) del sistema ha consentito di filtrare le richieste relative a ROM e RAM [11,12,13] in base alla quantità di sistema operativo [14] necessaria per un determinato dispositivo. Ad esempio, è possibile che un dispositivo sia configurato per l'esecuzione con un solo processo API, il kernel di sistema (nk.exe). Per altri dispositivi che necessitano del supporto GUI, sarà invece necessario eseguire anche il processo GUI (gwes.exe). Innovazione principale è stata la rimozione delle limitazioni sul numero totale di processi (32) e lo spazio di indirizzi virtuale ridotto (32MB) di precedenti generazioni di kernel di Windows CE. Nell'ultima decade si sono verificati molti cambiamenti dallo sviluppo del primo kernel. I dispositivi attuali dispongono di un hardware con capacità maggiori: CPU più veloci, maggiore memoria, uno schermo LCD e molto altro. Con CE 6.0, le API del sistema sono state estrapolate dai processi in modalità utente e sono state inserite in DLL in modalità kernel. Le Api di sistema sono messe a disposizione delle applicazioni dalla libreria coredll.dll che è collegata a tutti i moduli eseguibili del sistema operativo. I moduli del kernel sono collegati ad una versione di coredll.dll dedicata al kernel e denominata k.coredll.dll. Se un modulo è collegato a coredll.dll ed è caricato nel kernel, tutte le chiamate di coredll.dll sono automaticamente reindirizzate a k.coredll.dll. Oltre alla API di sistema il sistema operativo offre applicazioni API simili alle win32api. Lo sviluppatore può accedere alle funzionalità

9 applicate attraverso diverse librerie quali Wininet.dll, Winsock.dll, Msxml.dll, and Winhttp.dll etc L architettura di sitema include i componenti illustrati in figura 1.1. WIN32 CE API Wininet.dll, Winsock.dll, Msxml.dll, and Winhttp.dll Fig. 1.1: Architettura del sistema operativo. Inoltre, il codice OEM è stato separato dal codice del sistema operativo. In passato, un progettista hardware creava una serie di routine di basso livello, denominata OAL (OEM Adaptation Layer) e tale componente veniva collegato in modo statico al kernel del sistema operativo. L'OAL e il kernel erano considerati un unico eseguibile, nk.exe. In CE 6.0, questi due componenti vengono ora generati in due moduli separati: il kernel (kernel.dll) e OAL (OEM

10 Adaptation Layer) (nk.exe). Nella figura 1.2 si riepilogano le modifiche tra Windows CE 5.0 e CE 6.0. Processo di Windows CE 5.0 nk.exe (OAL + kernel) DLL di Windows Embedded CE 6.0 nk.exe (OAL) kernel.dll (kernel) Descrizione Il codice OEM è stato diviso dal codice kernel CE a partire da CE 6.0 filesys.exe filesys.dll Database di proprietà, file system e registro device.exe device.dll Gestisce i driver di periferica in modalità kernel device.exe udevice.exe Nuovo in CE 6.0, un processo separato per gestire i driver di periferica in modalità utente gwes.exe gwes.dll Sottosistema di eventi con finestre e grafico services.exe servicesd.exe Processo host per servizi del sistema services.exe services.exe Interfaccia della riga comandi per la configurazione di servizi Fig. 1.2: Differenze fra i moduli principali di Windows Embedded CE 5.0 e CE OPERAZIONI IN MODALITA KERNEL Per eseguire Windows CE, una CPU deve supportare due livelli di privilegi. Il livello superiore viene indicato come modalità kernel; il livello inferiore come modalità utente. Qualsiasi memoria allocata per il codice o per i dati viene assegnata a una di queste due modalità. L'inserimento di codice in modalità utente consente un'esecuzione più solida e sicura dell'ambiente complessivo. Tuttavia, la combinazione di un codice in modalità kernel e in modalità utente è generalmente più lenta rispetto all'esecuzione del sistema interamente in modalità kernel. La struttura del kernel viene rappresentata in figura 1.3.

11 Fig. 1.3: Il Kernel di WinCE 6.0 In versioni precedenti, era possibile configurare Windows CE per tutte le attività in modalità kernel o per operazioni in modalità mista utilizzando sia la modalità kernel che la modalità utente. Con CE 6.0, l'unica modalità operativa mista è supportata caricando in memoria tutte le operazioni in modalità utente e tutti i componenti OS in modalità kernel. Alcuni componenti dispongono di entrambe le modalità, illustrate in figura 1.4. Componente Modalità utente Modalità kernel Libreria di sistema centrale coredll.dll k.coredll.dll Supporti del driver di periferica ceddk.dll k.ceddk.dll Fornitore credenziali credsrv.dll k.credsvr.dll API di supporto della rete IP iphlpapi.dll k.kphlpapi.dll Timer multimediale mmtimer.dll k.mmtimer.dll Supporti di processo, thread e memoria toolhelp.dll k.toolhelp.dll Socket Windows ws2.dll k.ws2.dll Interfaccia del provider di servizi dei socket Windows wspm.dll k.wspm.dll Fig. 1.4: Librerie di sistema in modalità utente e in modalità Kernel

12 1.4 ARCHITETTURA DI MEMORIA Il nuovo kernel offre un'architettura di memoria completamente nuova, che elimina i precedenti limiti su processi e dimensione dello spazio di indirizzi disponibili. I precedenti kernel supportavano un massimo di 32 processi, ognuno dei quali occupava il proprio slot. In WinCE 6.0 il limite sul numero di processi è stato aumentato a Questo è un valore massimo teorico, basato su un limite della memoria di handle del kernel. WinCE 6.0 supporta un massimo di 64K di handle di kernel e un processo richiede un minimo di due handle: uno per il processo stesso e l'altro per il thread del processo. Il valore massimo pratico è inferiore poiché altri tipi di oggetti kernel occupano spazio nella tabella di handle del kernel. Ogni singolo processo dispone di un suo spazio di indirizzi privato nella memoria virtuale di 2GB. Questo rende lo spazio di indirizzi dei processi di WinCE 6.0 molto simile a quello delle versioni desktop di Windows tra cui Windows XP. Per una completa comprensione dei miglioramenti apportati nel nuovo kernel, può rivelarsi utile esaminare l'architettura utilizzata in Windows CE 5.0 perché più semplice e perché, ai fini del lavoro, non presenta differenze sostanziali con Win CE 6.0. Nella figura 1.5 è illustrato lo spazio di indirizzamento virtuale unificato di Windows CE 5.0. Come in Windows XP e Windows Embedded CE 6.0, i 2 GB superiori dello spazio di indirizzamento sono riservati al sistema. La metà inferiore dello spazio di indirizzamento è divisa in più aree. La maggior parte di quest'area, corrispondente quasi a metà dello spazio, è definita area di memoria estesa e viene utilizzata per allocare blocchi estesi dello spazio di memoria in genere utilizzati per file mappati alla memoria. Nella figura 1.5 è illustrato lo spazio di indirizzamento virtuale unificato di Windows CE 5.0.

13 Fig. 1.5: Spazio di indirizzamento virtuale unificato di Windows CE 5.0 Sotto l'area di memoria estesa si trova l'insieme dei 31 "slot di processo" contenenti le immagini degli indirizzi virtuali per i processi attualmente in esecuzione. Sotto gli slot di processo, all'estremità inferiore dello spazio di memoria, si trova un'area di 64 MB che include, più precisamente nei 32 MB inferiori dell'area, lo slot di processo che replica il processo contenente il thread attualmente in esecuzione. Questa "architettura a slot" impone sia il limite di 32 processi che quello di 32 MB per la memoria virtuale in Windows CE 5.0. Il numero limitato di slot (31) supporta di conseguenza un numero limitato di processi simultanei. Gli slot di processo diventano 32 processi aggiungendo il processo del kernel, collocato nei 2 GB superiori dello spazio di indirizzamento. Nella figura 1.6 è riportata un'espansione dei 64 MB inferiori dello spazio per i processi delle versioni precedenti di Windows CE. I 32 MB inferiori dello spazio dei processi costituiscono lo spazio replicato dallo slot del processo in cui viene eseguito il thread attualmente in esecuzione. I 32 MB superiori di questo spazio vengono utilizzati per caricare il

14 codice e la memoria di sola lettura per le librerie di collegamento dinamico (DLL) presenti nella ROM. I 32 MB superiori, denominati "slot 1", sono condivisi da tutte le applicazioni in esecuzione. Fig. 1.6: Espansione dei 64 MB inferiori dello spazio per i processi delle versioni precedenti di Windows CE Il limite di 32 MB per lo spazio virtuale è determinato dalle dimensioni di ciascuno slot di processo. A causa dello spazio di indirizzamento singolo, l'incremento dello spazio virtuale per processo ridurrebbe il numero totale di slot e pertanto il numero di processi simultanei. In queste circostanze, il compromesso di 32 processi e 32 MB per processo è risultato, almeno in passato, appropriato. In Windows Embedded CE 6.0, con la nuova progettazione, ogni processo in esecuzione ottiene una sua copia completa dei 2 GB inferiori dello spazio di indirizzamento. Nonostante

15 questo spazio di 2 GB si presenti a prima vista identico al layout delle versioni precedenti, lo spazio di indirizzamento per le applicazioni viene utilizzato diversamente. La nuova architettura apporta modifiche principalmente sui driver di periferica, senza influenzare le applicazioni preesistenti poiché la memoria viene allocata utilizzando le stesse API di allocazione e i dati vengono memorizzati utilizzando puntatori di memoria virtuale da 32- bit. Nel caso di applicazioni per cui è necessario allocare blocchi di memoria superiori ai 10MB, esse vengono soddisfatte con una chiamata a VirtualAlloc. La funzione VirtualAlloc, insieme ad altre funzioni utilizzate per gestire la memoria virtuale, sono descritte in figura 1.7. Funzione VirtualSetAttributesEx VirtualProtectEx VirtualQueryEx VirtualAlloc VirtualFree VirtualProtect VirtualQuery VirtualAllocEx VirtualFreeEx VirtualCopyEx VirtualAllocCopyEx Scopo Abilita la modifica degli attributi di memoria a livello di pagina. Accessibile solo in kernel mode. Configura la protezione dell accesso alla regione della pagina nello spazio di indirizzo di uno specifico processo. Fornisce informazioni sullo spazio di indirizzo di uno specifico processo. Occupa la regione di pagina nello spazio di indirizzo di un processo chiamato. Libera la regione di pagina nello spazio di indirizzo di un processo chiamato. Configura la protezione dell accesso alla regione della pagina nello spazio di indirizzo di un processo chiamato. Fornisce informazioni sullo spazio di indirizzo di un processo chiamato. Occupa la regione di pagina nello spazio di indirizzo di uno specifico processo; la memoria allocata è inizializzata a zero. Libera la regione di pagina nello spazio di indirizzo di uno specifico processo. Mappatura dinamica dell indirizzamento virtuale verso quello fisico creando una nuova voce nella page table. Esecuzione seguente le funzioni di VirtualAllocEx e VirtualFreeEx. E accessibile solo in kernel mode. Fig. 1.7: Funzioni utilizzate per gestire la memoria virtuale.

16 1.5 SPAZIO DI INDIRIZZAMENTO VIRTUALE PER LE APPLICAZIONI La memoria virtuale di Windows CE si divide in: - LIBERA quando la memoria non è allocata o utilizzata dal sistema; - RISERVATA quando viene riservata della memoria, ma non è ancora stata mappata verso indirizzi fisici. - OCCUPATA quando la memoria viene riservata dal sistema ed è stata mappata verso indirizzi fisici. WinCE 6.0 occupa pagine di memoria virtuale su richiesta, il che singifica che il processo di occupazione di una pagina di memoria viene ritardato il più possibile: se, per esempio, alloca uno Stack o un Heap, la memoria virtuale viene riservata, non occupata. Quando il thread di un applicazione attiva cerca di accedere ad un indirizzo riservato, si verifica un page fault, l esecuzione del thread è sospesa, il kernel processa il page fault, vengono occupate le pagine necessarie e vengono corrette le code tables, dopodichè vengono riattivate le operazioni del thread. Quindi, il processo di indirizzamento della memoria è completamente trasparente all applicazione. L elemento chiave dell architettura è l abilità di mappare indirizzi virtuali verso indirizzi fisici. WinCE fornisce due tipi di mappatura virtuale verso fisico : statica e dinamica. La mappatura statica viene determinata in una particolare struttura denominata OEMAddressTable. La figura 1.8 illustra un esempio di mappatura statica

17 Fig. 1.8: Esempio di mappatura statica dalla memoria fisica a quella virtuale Una caratteristica della mappatura statica della memoria virtuale è che essa è sempre disponibile al contrario della memoria mappata in modo dinamico. Perciò il Kernel ha accesso garantito alla memoria virtuale mappata in modo statico, cosa che è richiesta per l inizializzazione del kernel e per processare le eccezioni come il page fault. La necessità di abilitare l accesso alla memoria per il kernel produce una richiesta per cui l intera ROM/RAM del dispositivo può essere mappata in modo statico inclusa la memoria del device utilizzata per processare le interrupt service routines (ISRs) che sono processate nel contesto delle eccezioni del kernel. Windows CE 6.0 supporta la mappatura statica di due regioni di memoria virtuale, ognuna della dimensione di 512 MB. I 512 MB inferiori (0x x9FFF FFFF) della memoria virtuale sono mappati alla memoria fisica tramite la cache, non utilizzata per i 512 MB superiori (0xA xB ). La mappatura statica della memoria virtuale è una buona dimostrazione di come l architettura della memoria virtuale abbia due differenti indirizzi di memoria virtuale con differenti proprietà di accesso mappate alla medesima memoria fisica.

18 L accesso alla memoria virtuale nella regione (0x x9FFF FFFF) non comporta necessariamente un accesso alla memoria fisica poiché il valore può essere letto dalla cache, mentre l accesso alla memoria virtuale nella regione (0xA xB ) produce sempre un accesso alla memoria fisica. La figura 1.9 illustra la mappatura dello spazio della memoria virtuale. Fig. 1.9: Mappatura dello spazio di memoria virtuale di Windows Embedded CE 6.0 Lo spazio di indirizzamento del kernel occupa i 2GB superiori ed è il medesimo per tutti i processi di sistema. Lo spazio utente occupa i 2GB inferiori ed è unico per ogni processo. Il kernel mappa l indirizzo di ogni processo designato in questo spazio di indirizzamento ogni qualvolta avviene un passaggio tra i processi. In ogni momento, è attivo un unico processo che occupa il suo spazio di indirizzamento; esso non può accedere allo spazio di indirizzo di un

19 altro processo o avere accesso allo spazio di memoria del kernel, mentre il kernel ha accesso all intero spazio di indirizzamento ed ha accesso ad ogni indirizzo di memoria raggiungibile. Si esaminerà ora in dettaglio la mappa della memoria virtuale analizzandone l allocazione nello spazio di indirizzamento virtuale del kernel, come illustrato nella figura Fig. 1.10: Mappa dello spazio di indirizzamento virtuale del kernel kernel. La figura 1.11 illustra una descrizione dettagliata dell allocazione di memoria virtuale del

20 Regione di memoria Dimensione Descrizione 0x x9FFFFFFF 512 MB Indirizzi di memoria virtuale mappati in modo statico non ottenuti tramite cache. 0xA xBFFF FFFF 512 MB Indirizzi di memoria virtuale mappati in modo statico non ottenuti tramite cache. 0xC xC7FF FFFF 128 MB Mappatura delle DLL eseguite in loco (XIP) caricate dal kernel, i server e i drive del kernel. 0xC xCFFFFFFF 128 MB Object store per il file system RAM, i database CEDB e i registri di sistema. 0xD xDFFFFFFF 256 MB Memoria virtuale del kernel utilizzata per tutti i moduli di kernel di sistema. 0xE xEFFFFFFF 256 MB Memoria virtuale del kernel, se supportata dal processore. 0xF xFFFFFFFF 256 MB Cattura le chiamate di sistema e include le pagine dati del kernel. Fig.1.11: Allocazione della memoria virtuale del kernel La figura 1.12 mostra la mappa dello spazio di indirizzamento virtuale utente. Fig. 1.12: Mappa dello spazio di indirizzamento virtuale utente

21 La figura 1.13 illustra la descrizione dettagliata della distribuzione della memoria virtuale utente. Regione di memoria Dimensione Descrizione 0x x KB Dati kernel utente. Il processo utente ha accesso in sola lettura. 0x x3FFFFFFF 1 GB 64 KB Contiene lo spazio del processo del codice eseguibile, la memoria virtuale, heap e stack. L allocazione della memoria virtuale inizia immediatamente dopo il codice eseguibile e procede dal basso verso l alto. 0x x5FFFFFFF 512 MB Contiene le DLL, i codice e i dati con allocazione di memoria dal basso verso l alto. Le librerie utilizzate nei diversi processi sono caricate utilizzando lo stesso indirizzo. Allo stesso tempo, le pagine di codice si riferiscono alle medesime pagine fisiche e le pagine di dati riportano a differenti pagine fisiche per i diversi processi. 0x x6FFFFFFF 256 MB Regioni di memoria dei file immagazzinati in memoria. 0x x7FEFFFFF 255 MB Zona condivisa da kernel e processi. Il kernel, i processi e i driver possono allocare e scrivere memoria in questa regione. Il processo utente può accedere in sola lettura. Esso permette di ricevere dati dal kernel senza effettuare una chiamata al kernel di sistema. 0x7FF x7FFFFFFF 1 MB Area non visibile. Agisce come buffer fra lo spazio utente e lo spazio kernel. Fig. 1.13: Descrizione dettagliata della distribuzione della memoria virtuale utente

22 1.6 OEMADDRESSTABLE Windows CE utilizza la tecnica della paginazione per creare spazi di memoria virtuale utilizzando blocchi di memoria fisica. Ogni processo possiede una page table per definire gli indirizzi di memoria validi e per mapparli nella memoria fisica. In Windows CE la page table è denominata OEMAddressTable. Questa tabella contiene i collegamenti tra gli indirizzi fisici e quelli virtuali. Il layout della tabella è molto semplice, ogni riga crea un collegamento fra l indirizzo virtuale e quello fisico; come esempio si riporta la seguente porzione di page table: DCD 0x , 0xA , 64 ; MAINSTONEII: SDRAM (64MB). DCD 0x , 0x5C000000, 1 ; BULVERDE: Internal SRAM (64KB bank 0). DCD 0x , 0x , 1 ; BULVERDE: Internal memory PM registers. DCD 0x , 0x4C000000, 1 ; BULVERDE: USB host controller. Nella prima riga i 64 MB di ram dell indirizzo fisico 0xA sono mappati all indirizzo virtuale 0x Poiché 64MB in esadecimale si traducono con 0x questo significa che l offset definito da 0xA xA è mappato all indirizzo relativo all offset 0x x TIPOLOGIE DI UTILIZZO DELLA MEMORIA STACK Lo stack è un tipo di memoria utilizzato per immagazzinare variabili locali nelle funzioni, indirizzi di ritorno delle funzioni e lo stato del processore durante la gestione delle eccezioni. In Windows Embedded CE 6.0, per ogni thread di sistema viene creato uno stack. La sua dimensione è limitata a 64KB, dei quali 8KB sono riservati al controllo dello stack overflow, per cui la sua dimensione effettiva è di 56KB.

23 STATIC DATA BLOCK Lo static data block contiene stringhe, buffer ed altri valori statici cui fanno riferimento le applicazioni durante la loro esecuzione. Windows Embedded CE 6.0 ne alloca due sezioni, una per i dati in lettura/scrittura ed una per quelli in sola lettura MEMORY MAPPED FILE Sono file mappati negli indirizzi di memoria virtuale. Il sistema operativo permette la creazione di memory mapped file di due tipi: gli unnamed memory file e i named memorymapped file, che possono essere utilizzati da un diverso processo con la richiesta di un file con lo stesso nome, ciò permette a differenti processi di interagire fra loro. Le principali API utilizzate dai memory-mapped file vengono descritte nella figura Funzione CreateFile CreateFileForMapping CreateFileMapping Scopo Crea e apre un file che può essere usato per il memory mapping. Restituisce un puntatore. Crea e apre un file che può essere usato per il memory mapping. Restituisce un puntatore. Crea un named o un unnamed memory-mapped file basati su un altro file o sulla RAM. Restituisce sempre un puntatore al memorymapped file. Fig. 1.14: Principali funzioni utilizzate dai memory-mapped file.

24 1.8 INTERRUPT Un interrupt è un segnale asincrono quando indica il 'bisogno di attenzione' da parte di una periferica finalizzata ad una particolare richiesta di servizio; è un evento sincrono quando consente l'interruzione di un processo qualora si verifichino determinate condizioni, oppure più in generale una particolare richiesta al sistema operativo da parte di un processo in esecuzione. Una richiesta hardware di interrupt (IRQ) è un collegamento fisico attraverso il quale un device invia un segnale di interrupt ad un microprocessore. Un interrupt di sistema (SYSINTR) è una mappatura dell IRQ per il quale è responsabile un OEM Adaptation Layer (OAL). In Windows Embedded CE, il processo di interrupt si divide in due parti: interrupt service routine (ISR) e interrupt service thread (IST). Ogni IRQ è associato ad un ISR. Molte sorgenti di interrupt possono essere associate ad un unico ISR. Se viene sollevato un interrupt, il kernel effettua una chiamata alla corrispondente routine di ISR. Quando l esecuzione dell ISR è completa, la routine restituisce un identificatore logico di SYSINTR. Il kernel controlla l identificatore logico dell interrupt e ne fa partire l evento associato Lo scheduler pianifica l esecuzione dell IST in attesa dell evento come mostrato in figura Fig. 1.15: Gestione dell interrupt.

La genealogia di Windows. Windows NT e Windows 95/98. Dimensioni del codice. Parte IX. Windows

La genealogia di Windows. Windows NT e Windows 95/98. Dimensioni del codice. Parte IX. Windows La genealogia di Windows Parte IX Windows Sistemi Operativi - prof. Silvio Salza - a.a. 2008-2009 IX - 1 DOS: sistema operativo monoutente Windows 3.1 interfaccia a finestre che gira su DOS Windows 95/98

Dettagli

Parte IX. Windows. Sistemi Operativi - prof. Silvio Salza - a.a. 2008-2009 IX - 1

Parte IX. Windows. Sistemi Operativi - prof. Silvio Salza - a.a. 2008-2009 IX - 1 Parte IX Windows Sistemi Operativi - prof. Silvio Salza - a.a. 2008-2009 IX - 1 La genealogia di Windows DOS: sistema operativo monoutente Windows 3.1 interfaccia a finestre che gira su DOS Windows 95/98

Dettagli

HARDWARE. Relazione di Informatica

HARDWARE. Relazione di Informatica Michele Venditti 2 D 05/12/11 Relazione di Informatica HARDWARE Con Hardware s intende l insieme delle parti solide o ( materiali ) del computer, per esempio : monitor, tastiera, mouse, scheda madre. -

Dettagli

CAPITOLO 5 - Sistemi Operativi Moderni

CAPITOLO 5 - Sistemi Operativi Moderni CAPITOLO 5 - Sistemi Operativi Moderni PRESENTAZIONE DI INSIEME Vedremo ora come si è evoluta nel tempo la struttura di un sistema operativo, per passare dalle vecchie strutture di tipo normalmente modulari,

Dettagli

Input/Output. Moduli di Input/ Output. gestiscono quantità di dati differenti a velocità diverse in formati diversi. n Grande varietà di periferiche

Input/Output. Moduli di Input/ Output. gestiscono quantità di dati differenti a velocità diverse in formati diversi. n Grande varietà di periferiche Input/Output n Grande varietà di periferiche gestiscono quantità di dati differenti a velocità diverse in formati diversi n Tutti più lenti della CPU e della RAM n Necessità di avere moduli di I/O Moduli

Dettagli

03 L architettura del computer e la CPU (parte 2) Dott.ssa Ramona Congiu

03 L architettura del computer e la CPU (parte 2) Dott.ssa Ramona Congiu 03 L architettura del computer e la CPU (parte 2) Dott.ssa Ramona Congiu 1 Anatomia del computer Dott.ssa Ramona Congiu 2 L Unità centrale 3 Anatomia del computer 4 La scheda madre All interno del computer

Dettagli

Tesina per l esame di Sistemi Operativi a cura di Giuseppe Montano. Prof. Aldo Franco Dragoni

Tesina per l esame di Sistemi Operativi a cura di Giuseppe Montano. Prof. Aldo Franco Dragoni Sistemi operativi real time basati su Linux: gestione delle risorse e dei processi. Tesina per l esame di Sistemi Operativi a cura di. Prof. Aldo Franco Dragoni Corso di laurea in Ingegneria Informatica

Dettagli

Elementi hardware di un personal computer desktop 2012

Elementi hardware di un personal computer desktop 2012 IIS Bonfantini Novara -Laboratorio di informatica 2012 Pagina 1 PERSONAL COMPUTER I personal computer sono quelli usati per lavoro d'ufficio o in ambito domestico da un solo utente per volta. Un ulteriore

Dettagli

MACCHINA DI VON NEUMANN

MACCHINA DI VON NEUMANN I seguenti appunti non hanno la pretesa di essere esaustivi, ma hanno l unico scopo di illustrare in modo schematico i concetti necessari allo sviluppo del programma di Informatica della 1D del Liceo Scientifico

Dettagli

Le Memorie interne: RAM, ROM, cache. Appunti per la cl. IV sez. D a cura del prof. Ing. Mario Catalano

Le Memorie interne: RAM, ROM, cache. Appunti per la cl. IV sez. D a cura del prof. Ing. Mario Catalano Le Memorie interne: RAM, ROM, cache Appunti per la cl. IV sez. D a cura del prof. Ing. Mario Catalano 1 Le memorie Cosa vorremmo : una memoria veloce abbastanza grande da contenere tutti i dati e i programmi

Dettagli

La qualità di una memoria dipende da vari parametri: Modo di accesso: tecnica utilizzata per accedere al dato (casuale, sequenziale)

La qualità di una memoria dipende da vari parametri: Modo di accesso: tecnica utilizzata per accedere al dato (casuale, sequenziale) Tipologie di memoria: Elettroniche Magnetiche Ottiche La qualità di una memoria dipende da vari parametri: Modo di accesso: tecnica utilizzata per accedere al dato (casuale, sequenziale) Tempo di accesso:

Dettagli

L architettura del calcolatore (Terza parte)

L architettura del calcolatore (Terza parte) L architettura del calcolatore (Terza parte) Ingegneria Meccanica e dei Materiali Università degli Studi di Brescia Prof. Massimiliano Giacomin I dispositivi periferici periferia parte centrale sottosistema

Dettagli

Corso di Sistemi di Elaborazione delle informazioni

Corso di Sistemi di Elaborazione delle informazioni Corso di Sistemi di Elaborazione delle informazioni Sistemi Operativi a.a. 2010/2011 Francesco Fontanella Il Sistema Operativo Sistema Operativo 2 Il Sistema Operativo Il Sistema Operativo è uno strato

Dettagli

Corso: Informatica+ Andrea Cremonini. Lezione del 20/10/2014

Corso: Informatica+ Andrea Cremonini. Lezione del 20/10/2014 Corso: Informatica+ Andrea Cremonini Lezione del 20/10/2014 1 Cosa è un computer? Un elaboratore di dati e immagini Uno smartphone Il decoder di Sky Una console di gioco siamo circondati! andrea.cremon

Dettagli

Il sistema di I/O. Hardware di I/O Interfacce di I/O Software di I/O. Introduzione

Il sistema di I/O. Hardware di I/O Interfacce di I/O Software di I/O. Introduzione Il sistema di I/O Hardware di I/O Interfacce di I/O Software di I/O Introduzione 1 Sotto-sistema di I/O Insieme di metodi per controllare i dispositivi di I/O Obiettivo: Fornire ai processi utente un interfaccia

Dettagli

NetComp quick reference. 1. NETCOMP...2 2. Supporto Windows CE...3 3. UPDATE SISTEMA...8. 3.1 Update Bootloader/Image...8

NetComp quick reference. 1. NETCOMP...2 2. Supporto Windows CE...3 3. UPDATE SISTEMA...8. 3.1 Update Bootloader/Image...8 MNL139A000 NetComp quick reference ELSIST S.r.l. Sistemi in elettronica Via G. Brodolini, 15 (Z.I.) 15033 CASALE M.TO ITALY Internet: http://www.elsist.it Email: elsist@elsist.it TEL. (39)-0142-451987

Dettagli

SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI

SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI Prof. Andrea Borghesan venus.unive.it/borg borg@unive.it Ricevimento: martedì, 12.00-13.00. Dip. Di Matematica Modalità esame: scritto + tesina facoltativa 1

Dettagli

Parte 3. Sistemi Operativi. Sistema operativo. Il sistema operativo (Operating System - OS): offre le operazioni base necessarie per:

Parte 3. Sistemi Operativi. Sistema operativo. Il sistema operativo (Operating System - OS): offre le operazioni base necessarie per: Parte 3 Sistemi Operativi Sistema operativo Il sistema operativo (Operating System - OS): offre le operazioni base necessarie per: l uso efficace del computer mediante funzionalità che non sono fornite

Dettagli

Introduzione alle tecnologie informatiche. Strumenti mentali per il futuro

Introduzione alle tecnologie informatiche. Strumenti mentali per il futuro Introduzione alle tecnologie informatiche Strumenti mentali per il futuro Panoramica Affronteremo i seguenti argomenti. I vari tipi di computer e il loro uso Il funzionamento dei computer Il futuro delle

Dettagli

In un modello a strati il SO si pone come un guscio (shell) tra la macchina reale (HW) e le applicazioni 1 :

In un modello a strati il SO si pone come un guscio (shell) tra la macchina reale (HW) e le applicazioni 1 : Un Sistema Operativo è un insieme complesso di programmi che, interagendo tra loro, devono svolgere una serie di funzioni per gestire il comportamento del computer e per agire come intermediario consentendo

Dettagli

Lezione E5. Sistemi embedded e real-time

Lezione E5. Sistemi embedded e real-time Lezione E5 sistema bare-metal Sistemi embedded e real-time 25 ottobre 2012 Dipartimento di Ingegneria Civile e Ingegneria Informatica Università degli Studi di Roma Tor Vergata SERT 13 E5.1 Di cosa parliamo

Dettagli

Marco Cesati Dipartimento di Ingegneria Civile e Ingegneria Informatica Università degli Studi di Roma Tor Vergata

Marco Cesati Dipartimento di Ingegneria Civile e Ingegneria Informatica Università degli Studi di Roma Tor Vergata Lezione E4 sistema bare-metal Sistemi operativi open-source, embedded e real-time 22 ottobre 2013 Dipartimento di Ingegneria Civile e Ingegneria Informatica Università degli Studi di Roma Tor Vergata SOSERT

Dettagli

Server e Gateway VSoIP Pro

Server e Gateway VSoIP Pro IP video Server e Gateway VSoIP Pro Software VSoIP Server 3.2 14/12/2012- G215/2/I Caratteristiche principali VSoIP 3.2 Suite è il sistema di gestione video GANZ per reti Ethernet basato su una reale topologia

Dettagli

Calcolo numerico e programmazione. Sistemi operativi

Calcolo numerico e programmazione. Sistemi operativi Calcolo numerico e programmazione Sistemi operativi Tullio Facchinetti 25 maggio 2012 13:47 http://robot.unipv.it/toolleeo Sistemi operativi insieme di programmi che rendono

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

Implementazione del File System

Implementazione del File System Implementazione del file system Implementazione del File System Struttura del file system. Realizzazione del file system. Implementazione delle directory. Metodi di allocazione. Gestione dello spazio libero.

Dettagli

Il sistema di elaborazione

Il sistema di elaborazione Il sistema di elaborazione Hardware e software Hardware e software Un sistema di elaborazione è formato da: parti hardware: componenti fisiche parti software: componenti logiche i dati da trattare le correlazioni

Dettagli

Elementi di Informatica e Programmazione

Elementi di Informatica e Programmazione Elementi di Informatica e Programmazione Il Sistema Operativo Corsi di Laurea in: Ingegneria Civile Ingegneria per l Ambiente e il Territorio Università degli Studi di Brescia Docente: Daniela Fogli Cos

Dettagli

Architettura del Personal Computer AUGUSTO GROSSI

Architettura del Personal Computer AUGUSTO GROSSI Il CASE o CABINET è il contenitore in cui vengono montati la scheda scheda madre, uno o più dischi rigidi, la scheda video, la scheda audio e tutti gli altri dispositivi hardware necessari per il funzionamento.

Dettagli

Capitolo 2 -- Silberschatz

Capitolo 2 -- Silberschatz Struttura dei Sistemi Operativi Capitolo 2 -- Silberschatz Struttura di un sistema operativo Servizi di un sistema operativo Interfaccia Utente Chiamate di sistema Tipi di chiamate Programma di sistema

Dettagli

Il sistema operativo

Il sistema operativo Il sistema operativo Percorso di Preparazione agli Studi di Ingegneria Università degli Studi di Brescia Docente: Massimiliano Giacomin Cos è un Sistema Operativo? Per capirlo, immaginiamo inizialmente

Dettagli

Corso di Sistemi di Elaborazione delle informazioni

Corso di Sistemi di Elaborazione delle informazioni Corso di Sistemi di Elaborazione delle informazioni Sistemi Operativi Francesco Fontanella Complessità del Software Software applicativo Software di sistema Sistema Operativo Hardware 2 La struttura del

Dettagli

DATA: 21-09-08 CLASSE: V a EL. TITOLO: ELABORAZIONE DEL SISTEMA OPERATIVO PER mp0

DATA: 21-09-08 CLASSE: V a EL. TITOLO: ELABORAZIONE DEL SISTEMA OPERATIVO PER mp0 DATA: 21-09-08 CLASSE: V a EL. TITOLO: ELABORAZIONE DEL SISTEMA OPERATIVO PER mp0 nelle lezioni precedenti abbiamo preso in esame tutte le caratteristiche e le funzionalità del microprocessore didattico

Dettagli

Corso di Sistemi di Elaborazione A.A. 2008/2009

Corso di Sistemi di Elaborazione A.A. 2008/2009 Università di Ferrara Facoltà di Ingegneria Docente: Ing. Massimiliano Ruggeri Mail: m.ruggeri@imamoter.cnr.it mruggeri@ing.unife.it Tel. 0532/735631 Corso di Sistemi di Elaborazione A.A. 2008/2009 Durata:

Dettagli

Informatica - A.A. 2010/11

Informatica - A.A. 2010/11 Ripasso lezione precedente Facoltà di Medicina Veterinaria Corso di laurea in Tutela e benessere animale Corso Integrato: Matematica, Statistica e Informatica Modulo: Informatica Esercizio: Convertire

Dettagli

Concetti base del computer

Concetti base del computer Concetti base del computer Test VERO o FALSO (se FALSO giustifica la risposta) 1) La memoria centrale è costituita dal disco fisso VERO/FALSO 2) Allo spegnimento del PC la RAM perde il suo contenuto VERO/FALSO

Dettagli

Lezione 2 Principi Fondamentali di SO Interrupt e Caching. Sommario

Lezione 2 Principi Fondamentali di SO Interrupt e Caching. Sommario Lezione 2 Principi Fondamentali di SO Interrupt e Caching Sommario Operazioni di un SO: principi fondamentali Una visione schematica di un calcolatore Interazione tra SO, Computer e Programmi Utente 1

Dettagli

GUIDA ALL INSTALLAZIONE DELOS SYSTEMS 4.02.28

GUIDA ALL INSTALLAZIONE DELOS SYSTEMS 4.02.28 GUIDA ALL INSTALLAZIONE DELOS SYSTEMS 4.02.28 Requisiti minimi (sistema operativo hardware).... pag. 1 Procedura di disinstallazione e installazione del software Delos Systems 4.02.28.. pag. 2 Salvare

Dettagli

Sistemi Operativi STRUTTURA DEI SISTEMI OPERATIVI 3.1. Sistemi Operativi. D. Talia - UNICAL

Sistemi Operativi STRUTTURA DEI SISTEMI OPERATIVI 3.1. Sistemi Operativi. D. Talia - UNICAL 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

Architettura di un PC

Architettura di un PC Architettura di un PC Hardware Insieme di circuiti elettronici ed elettromeccanici che costituiscono un calcolatore Architettura Combinazione delle funzionalità operative delle singole unità hardware del

Dettagli

Il Computer. Per capire che cosa è il computer, occorre partire dal concetto di:

Il Computer. Per capire che cosa è il computer, occorre partire dal concetto di: Il Computer Cos'è il computer? Per capire che cosa è il computer, occorre partire dal concetto di: INFORMATICA = INFORmazione automatica E' la scienza che si occupa del trattamento automatico delle informazioni.

Dettagli

Sistemi Operativi (modulo di Informatica II) Sottosistema di I/O

Sistemi Operativi (modulo di Informatica II) Sottosistema di I/O Sistemi Operativi (modulo di Informatica II) Sottosistema di I/O Patrizia Scandurra Università degli Studi di Bergamo a.a. 2009-10 Sommario L hardware di I/O Struttura Interazione tra computer e controllori

Dettagli

Installazione e caratteristiche generali 1

Installazione e caratteristiche generali 1 Installazione e caratteristiche generali 1 Installazione di SIGLA SIGLA viene fornito su un CDROM contenente la procedura d installazione. La procedura può essere installata eseguendo il programma SIGLASetup.exe

Dettagli

Sistemi embedded un dispositivo incapsulato progettato per una determinata applicazione

Sistemi embedded un dispositivo incapsulato progettato per una determinata applicazione Sistemi embedded esistono molte definizioni nessuna universalmente riconosciuta. In generale con sistema embedded si intende un dispositivo incapsulato all'interno del sistema da controllare progettato

Dettagli

Il sistema di elaborazione Hardware e software

Il sistema di elaborazione Hardware e software Il sistema di elaborazione Hardware e software A. Lorenzi M. Govoni TECNOLOGIE INFORMATICHE. Release 2.0 Atlas Hardware e software Un sistema di elaborazione è formato da: parti hardware: componenti fisiche

Dettagli

INTRODUZIONE AI SISTEMI OPERATIVI

INTRODUZIONE AI SISTEMI OPERATIVI INTRODUZIONE AI SISTEMI OPERATIVI Il sistema operativo è il software che permette l esecuzione di programmi applicativi e lo sviluppo di nuovi programmi. CARATTERISTICHE Gestisce le risorse hardware e

Dettagli

Termini che è necessario capire:

Termini che è necessario capire: Per iniziare 1........................................ Termini che è necessario capire: Hardware Software Information Technology (IT) Mainframe Laptop computer Unità centrale di elaborazione (CPU) Hard

Dettagli

Strutture dei Sistemi Operativi

Strutture dei Sistemi Operativi Strutture dei Sistemi Operativi Componenti di sistema Servizi del sistema operativo Chiamate di sistema Programmi di sistema Struttura del sistema Macchine virtuali Progetto e implementazione di sistemi

Dettagli

Evoluzione dei sistemi operativi (5) Evoluzione dei sistemi operativi (4) Classificazione dei sistemi operativi

Evoluzione dei sistemi operativi (5) Evoluzione dei sistemi operativi (4) Classificazione dei sistemi operativi Evoluzione dei sistemi operativi (4) Sistemi multiprogrammati! più programmi sono caricati in contemporaneamente, e l elaborazione passa periodicamente dall uno all altro Evoluzione dei sistemi operativi

Dettagli

Elementi di Informatica 6 Aprile 2009

Elementi di Informatica 6 Aprile 2009 Elementi di Informatica 6 Aprile 2009 Corsi di Laurea in Ingegneria Ambientale e Ingegneria Civile Anno A.A. 2007/2008 In un PC, cosa rappresenta il bus? a. Un driver che serve alle applicazioni del sistema

Dettagli

MONIA MONTANARI. Appunti di Trattamento Testi. Capitolo 1 Il Computer

MONIA MONTANARI. Appunti di Trattamento Testi. Capitolo 1 Il Computer MONIA MONTANARI Appunti di Trattamento Testi Capitolo 1 Il Computer 1. Introduzione La parola informatica indica la scienza che rileva ed elabora l informazione, infatti : Informatica Informazione Automatica

Dettagli

Tecnologie dell Informazione e della Comunicazione (TIC) IPSIA San Benedetto del Tronto (AP)

Tecnologie dell Informazione e della Comunicazione (TIC) IPSIA San Benedetto del Tronto (AP) Le diverse componenti HARDWARE, pur opportunamente connesse ed alimentate dalla corrette elettrica, non sono in grado, di per sé, di elaborare, trasformare e trasmettere le informazioni. Per il funzionamento

Dettagli

Architettura di un computer

Architettura di un computer Architettura di un computer Modulo di Informatica Dott.sa Sara Zuppiroli A.A. 2012-2013 Modulo di Informatica () Architettura A.A. 2012-2013 1 / 36 La tecnologia Cerchiamo di capire alcuni concetti su

Dettagli

Architettura di un sistema di calcolo

Architettura di un sistema di calcolo Richiami sulla struttura dei sistemi di calcolo Gestione delle Interruzioni Gestione della comunicazione fra processore e dispositivi periferici Gerarchia di memoria Protezione. 2.1 Architettura di un

Dettagli

FileMaker 12. Guida ODBC e JDBC

FileMaker 12. Guida ODBC e JDBC FileMaker 12 Guida ODBC e JDBC 2004 2012 FileMaker, Inc. Tutti i diritti riservati. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 FileMaker e Bento sono marchi di FileMaker, Inc.

Dettagli

Sistemi Operativi. Funzioni e strategie di progettazione: dai kernel monolitici alle macchine virtuali

Sistemi Operativi. Funzioni e strategie di progettazione: dai kernel monolitici alle macchine virtuali Modulo di Sistemi Operativi per il corso di Master RISS: Ricerca e Innovazione nelle Scienze della Salute Unisa, 17-26 Luglio 2012 Sistemi Operativi Funzioni e strategie di progettazione: dai kernel monolitici

Dettagli

Fondamenti di Informatica

Fondamenti di Informatica Fondamenti di Informatica Il software Dipartimento di Ingegneria dell Informazione Universitàdegli Studi di Parma SOFTWARE I componenti fisici del calcolatore (unità centrale e periferiche) costituiscono

Dettagli

SISTEMI E DISPOSITIVI EMBEDDED

SISTEMI E DISPOSITIVI EMBEDDED SISTEMI E DISPOSITIVI EMBEDDED SISTEMI E DISPOSITIVI EMBEDDED Fasar Elettronica propone un innovativa e performante famiglia di prodotti per l'ambiente embedded, che comprende sistemi completi e singoli

Dettagli

Sistemi Operativi per Sistemi di Elaborazione Ubiqui

Sistemi Operativi per Sistemi di Elaborazione Ubiqui Griglie e Sistemi di Elaborazione Ubiqui Sistemi Operativi per Sistemi di Elaborazione Ubiqui Griglie e Sistemi Ubiqui - D. Talia - UNICAL 1 Sistemi Operativi per Ubiquitous Computing Palm OS Symbian OS

Dettagli

Architettura dei sistemi x86 Interfacce I/O

Architettura dei sistemi x86 Interfacce I/O I.I.S. Benvenuto Cellini Corso di formazione tecnica Architettura dei sistemi x86 Interfacce I/O Prof. Alessandro Pinto v.2009 Bus ISA (Industry Standard Architecture ) (1981 metà anni 90) Bus di interconnessione

Dettagli

Capitolo 11 -- Silberschatz

Capitolo 11 -- Silberschatz Implementazione del File System Capitolo 11 -- Silberschatz Implementazione del File System File system: Definizione dell aspetto del sistema agli occhi dell utente Algoritmi e strutture dati che permettono

Dettagli

Parte VI SISTEMI OPERATIVI

Parte VI SISTEMI OPERATIVI Parte VI SISTEMI OPERATIVI Sistema Operativo Ogni computer ha un sistema operativo necessario per eseguire gli altri programmi Il sistema operativo, fra l altro, è responsabile di riconoscere i comandi

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

Corso base per l uso del computer. Corso organizzato da:

Corso base per l uso del computer. Corso organizzato da: Corso base per l uso del computer Corso organizzato da: S Programma del Corso Ing. Roberto Aiello www.robertoaiello.net info@robertoaiello.net +39 334.95.75.404 S S Informatica S Cos è un Computer Il personal

Dettagli

La Memoria d Uso. La Memoria d Uso

La Memoria d Uso. La Memoria d Uso Fondamenti dell Informatica A.A. 2000-2001 La Memoria d Uso Prof. Vincenzo Auletta 1 Fondamenti dell Informatica A.A. 2000-2001 Memorie di Massa Processore CU e ALU Memorie di massa esterne La Memoria

Dettagli

USO OTTIMALE DI ACTIVE DIRECTORY DI WINDOWS 2000

USO OTTIMALE DI ACTIVE DIRECTORY DI WINDOWS 2000 VERITAS StorageCentral 1 USO OTTIMALE DI ACTIVE DIRECTORY DI WINDOWS 2000 1. Panoramica di StorageCentral...3 2. StorageCentral riduce il costo totale di proprietà per lo storage di Windows...3 3. Panoramica

Dettagli

Con questo termine si individuano tutti i componenti fisici dei sistemi informatici. Tutto quello che si può toccare è hardware.

Con questo termine si individuano tutti i componenti fisici dei sistemi informatici. Tutto quello che si può toccare è hardware. 2008-10-28 - pagina 1 di 7 Informatica (Informazione Automatica) memorizzare elaborazione trasmissione (telematica) Complessità operazione testo audio immagini video realtà virtuale memorizzare 1 10 100

Dettagli

INTERFACCIA UTENTE----------------------------------------------------------------------------------------------------

INTERFACCIA UTENTE---------------------------------------------------------------------------------------------------- IL FILE SYSTEM PROF. ANTONIO TUFANO Indice 1 FILE SYSTEM ------------------------------------------------------------------------------------------------------------------ 3 1.1. CARATTERISTICHE E STORIA

Dettagli

UNIVERSITA DEGLI STUDI DI L AQUILAL FACOLTA DI INGEGNERIA Applicazioni per dispositivi mobili: gli strumenti di sviluppo di Flash Lite. Diego Vasarelli Indice degli argomenti trattati. Introduzione agli

Dettagli

Adattatore terminale PCI ISDN ACCURA. Guida all installazione

Adattatore terminale PCI ISDN ACCURA. Guida all installazione Adattatore terminale PCI ISDN ACCURA Guida all installazione Guida all installazione della scheda ISDN Informazioni di conformità Dichiarazione di conformità Il produttore dichiara sotto la propria responsabilità

Dettagli

Aggiornamento Software e Firmware nuova release Datalogger

Aggiornamento Software e Firmware nuova release Datalogger Aggiornamento Software e Firmware nuova release Datalogger SISGEO ha recentemente rilasciato una nuova versione del software Smart Manager Suite che viene fornito con la nuova release dei Datalogger portatili

Dettagli

Sistemi operativi e Microsoft Windows

Sistemi operativi e Microsoft Windows Sistemi operativi e Microsoft Windows Sistemi operativi e Microsoft Windows...1 Definizioni di carattere generale...2 Interfaccia...2 Interfaccia Utente...2 Sistema operativo...2 CPU (Central Processing

Dettagli

82.BTCF BLUETOOTH CARD ADAPTER

82.BTCF BLUETOOTH CARD ADAPTER LIFE ELECTRONICS S.p.A. MANUALE D USO 82.BTCF BLUETOOTH CARD ADAPTER INFORMAZIONI GENERALI La tecnologia wireless Bluetooth elimina totalmente l uso di cavi per la connessione a qualunque dispositivo portatile

Dettagli

CORSO DI LAUREA IN SCIENZE ERBORISTICHE E DEI PRODOTTI NUTRACEUTICI

CORSO DI LAUREA IN SCIENZE ERBORISTICHE E DEI PRODOTTI NUTRACEUTICI CORSO DI LAUREA IN SCIENZE ERBORISTICHE E DEI PRODOTTI NUTRACEUTICI Informatica con esercitazioni Prof. Onofrio Greco Modulo 1 Concetti di base dell ICT Modulo 2 Uso del Computer e Gestione dei File Modulo

Dettagli

Informatica di Base - 6 c.f.u.

Informatica di Base - 6 c.f.u. Università degli Studi di Palermo Dipartimento di Ingegneria Informatica Informatica di Base - 6 c.f.u. Anno Accademico 2007/2008 Docente: ing. Salvatore Sorce Architettura dei calcolatori I parte Introduzione,

Dettagli

Lezione 11. Sistemi operativi. Marco Cesati System Programming Research Group Università degli Studi di Roma Tor Vergata.

Lezione 11. Sistemi operativi. Marco Cesati System Programming Research Group Università degli Studi di Roma Tor Vergata. Lezione 11 system Sistemi operativi 12 maggio 2015 System Programming Research Group Università degli Studi di Roma Tor Vergata SO 15 11.1 Di cosa parliamo in questa lezione? L interfaccia : system 1 Il

Dettagli

Per aprire Calcolatrice, fare clic sul pulsante Start, scegliere Tutti i programmi, Accessori e quindi Calcolatrice.

Per aprire Calcolatrice, fare clic sul pulsante Start, scegliere Tutti i programmi, Accessori e quindi Calcolatrice. LA CALCOLATRICE La Calcolatrice consente di eseguire addizioni, sottrazioni, moltiplicazioni e divisioni. Dispone inoltre delle funzionalità avanzate delle calcolatrici scientifiche e statistiche. È possibile

Dettagli

Il Sistema Operativo. C. Marrocco. Università degli Studi di Cassino

Il Sistema Operativo. C. Marrocco. Università degli Studi di Cassino Il Sistema Operativo Il Sistema Operativo è uno strato software che: opera direttamente sull hardware; isola dai dettagli dell architettura hardware; fornisce un insieme di funzionalità di alto livello.

Dettagli

Introduzione ai sistemi operativi

Introduzione ai sistemi operativi FONDAMENTI DI INFORMATICA Ing. Davide PIERATTONI Facoltà di Ingegneria Università degli Studi di Udine Introduzione ai sistemi operativi 1 Nota di Copyright Questo insieme di trasparenze (detto nel seguito

Dettagli

Informatica per l Ingegneria Industriale. Introduzione ai calcolatori

Informatica per l Ingegneria Industriale. Introduzione ai calcolatori Informatica per l Ingegneria Industriale Introduzione ai calcolatori Gualtiero Volpe gualtiero.volpe@unige.it 1. Struttura del calcolatore 1 Che cosa è un computer? A prescindere dalle dimensioni e dal

Dettagli

Il Personal Computer

Il Personal Computer Il Personal Computer 18 Hardware 1 Hardware: componenti fisiche dell elaboratore; la forma e le prestazioni dell hardware variano in funzione del tipo di elaboratore Principali componenti hardware: unità

Dettagli

Sistemi Operativi. Struttura astratta della memoria. Gerarchia dei dispositivi di. Memoria centrale. Memoria secondaria (di massa)

Sistemi Operativi. Struttura astratta della memoria. Gerarchia dei dispositivi di. Memoria centrale. Memoria secondaria (di massa) Struttura astratta della memoria Memoria centrale il solo dispositivo di memoria al quale la CPU puo accedere direttamente Memoria secondaria (di massa) Estensione della memoria centrale che fornisce grande

Dettagli

Touch screen, mille dati con un dito

Touch screen, mille dati con un dito DD 1050 Terminale di pesatura Serie Diade Touch screen, mille dati con un dito Strumenti e Tecnologie per Pesare Terminale di pesatura Serie Diade DD 1050 DIADE in matematica indica la combinazione di

Dettagli

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

Sistemi Operativi I Corso di Laurea in Ingegneria Informatica Facolta di Ingegneria, Universita La Sapienza Docente: Francesco Quaglia Sistemi Operativi I Corso di Laurea in Ingegneria Informatica Facolta di Ingegneria, Universita La Sapienza Docente: Francesco Quaglia Introduzione: 1. Principi di base dei sistemi operativi 2. Sistemi

Dettagli

Processi. Laboratorio Software 2008-2009 C. Brandolese

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

Dettagli

AXO. Operativi. Architettura dei Calcolatori e Sistemi. memoria virtuale

AXO. Operativi. Architettura dei Calcolatori e Sistemi. memoria virtuale AXO Architettura dei Calcolatori e Sistemi Operativi memoria virtuale concetto di memoria virtuale Separare il concetto di: spazio di indirizzamento di un programma eseguibile e dimensione effettiva della

Dettagli

Tecniche Automatiche di Acquisizione Dati

Tecniche Automatiche di Acquisizione Dati Tecniche Automatiche di Acquisizione Dati Sistemi operativi Fabio Garufi - TAADF 2005-2006 1 Cosa sono i sistemi operativi I sistemi operativi sono dei programmi software che svolgono le funzioni di interfaccia

Dettagli

Guida introduttiva. Fiery Network Controller per DocuColor 240/250

Guida introduttiva. Fiery Network Controller per DocuColor 240/250 Fiery Network Controller per DocuColor 240/250 Guida introduttiva In questo documento, ogni riferimento a DocuColor 242/252/260 rimanda a DocuColor 240/250. 2007 Electronics for Imaging, Inc. Per questo

Dettagli

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2013-14. Pietro Frasca.

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2013-14. Pietro Frasca. Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2013-14 Pietro Frasca Lezione 3 Martedì 15-10-2013 1 Struttura ed organizzazione software dei sistemi

Dettagli

Fondamenti di informatica: un po di storia

Fondamenti di informatica: un po di storia Fondamenti di informatica: un po di storia L idea di utilizzare dispositivi meccanici per effettuare in modo automatico calcoli risale al 600 (Pascal, Leibniz) Nell ottocento vengono realizzati i primi

Dettagli

Dispensa di Fondamenti di Informatica. Architettura di un calcolatore

Dispensa di Fondamenti di Informatica. Architettura di un calcolatore Dispensa di Fondamenti di Informatica Architettura di un calcolatore Hardware e software La prima decomposizione di un calcolatore è relativa ai seguenti macro-componenti hardware la struttura fisica del

Dettagli

PC Crash Course: OBIETTIVI

PC Crash Course: OBIETTIVI PC Crash Course: OBIETTIVI 1. PC: uno strumento 2. Microsoft Windows XP: alcuni concetti chiave della interfaccia grafica 3. File System: file, direttori, link, 4. Il prompt dei comandi 5. Un occhiata

Dettagli

Prefazione. Contenuti

Prefazione. Contenuti Prefazione Il sistema operativo costituisce uno dei componenti fondamentali di ogni sistema di elaborazione, in particolare è quello con cui l utente entra direttamente in contatto quando accede al sistema,

Dettagli

Organizzazione della memoria

Organizzazione della memoria Memorizzazione dati La fase di codifica permette di esprimere qualsiasi informazione (numeri, testo, immagini, ecc) come stringhe di bit: Es: di immagine 00001001100110010010001100110010011001010010100010

Dettagli

Corso di Informatica

Corso di Informatica CdLS in Odontoiatria e Protesi Dentarie Corso di Informatica Prof. Crescenzio Gallo crescenzio.gallo@unifg.it Funzioni dei Sistemi Operativi!2 Le funzioni principali del SO Gestire le risorse dell elaboratore

Dettagli

Informatica 1. 6 Sistemi operativi e software. ing. Luigi Puzone

Informatica 1. 6 Sistemi operativi e software. ing. Luigi Puzone Informatica 1 6 Sistemi operativi e software ing. Luigi Puzone Windows caratteristiche principali: Windows è un Sistema Operativo Con Interfaccia Grafica Multiutente Multitasking Multithreading Multiprocessing

Dettagli

Strutture dei sistemi operativi

Strutture dei sistemi operativi Contenuti della lezione di oggi Strutture dei sistemi operativi Descrizione dei servizi messi a disposizione dell utente dal SO Utente generico Programmatore Esame delle possibili strutture di un SO Monolitica

Dettagli

Xerox EX Print Server, Powered by Fiery per Xerox Color 800/1000 Press. Guida introduttiva

Xerox EX Print Server, Powered by Fiery per Xerox Color 800/1000 Press. Guida introduttiva Xerox EX Print Server, Powered by Fiery per Xerox Color 800/1000 Press Guida introduttiva 2011 Electronics For Imaging, Inc. Per questo prodotto, il trattamento delle informazioni contenute nella presente

Dettagli

Valutazione del sistema di storage EMC CLARiiON AX4

Valutazione del sistema di storage EMC CLARiiON AX4 Valutazione del sistema di storage EMC CLARiiON AX4 Relazione preparata sotto contratto con EMC Introduzione EMC Corporation ha incaricato Demartek di eseguire una valutazione pratica del nuovo sistema

Dettagli

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2015-16. Pietro Frasca.

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2015-16. Pietro Frasca. Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2015-16 Pietro Frasca Lezione 15 Martedì 24-11-2015 Struttura logica del sottosistema di I/O Processi

Dettagli