Sistemi embedded un dispositivo incapsulato progettato per una determinata applicazione



Documenti analoghi
Il computer: primi elementi

Il Software. Il software del PC. Il BIOS

SquashFS, AuFS ed i segreti delle distribuzioni live

Architettura di un sistema operativo

Software relazione. Software di base Software applicativo. Hardware. Bios. Sistema operativo. Programmi applicativi

Organizzazione della memoria

Due laboratori scolastici rimessi a nuovo

Installazione LINUX 10.0

Software di sistema e software applicativo. I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche

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

Acronis Universal Restore

Il Sistema Operativo. Di cosa parleremo? Come si esegue un programma. La nozione di processo. Il sistema operativo

Prototipazione GNU/Linux-Arduino

Elettronica dei Sistemi Programmabili

Introduzione alla Virtualizzazione

Il Software e Il Sistema Operativo. Prof. Francesco Accarino IIS Altiero Spinelli A.S. 09/10

LLinux nelle Console da gioco

Esame di INFORMATICA

Corso di Informatica

Il Sistema Operativo (1)

Approccio stratificato

Piano Nazionale di Formazione degli Insegnanti sulle Tecnologie dell'informazione e della Comunicazione. Percorso Formativo C1.

I.S.I.S. J.M.Keynes. Castel Maggiore (BO) Progetto TSERVER. Il software libero per il riutilizzo di hardware obsoleto. S cuol a Bologna

Struttura del calcolatore

Architettura dei computer

CORSO PER L USO DEL COMPUTER

Architettura del Personal Computer AUGUSTO GROSSI

Seminari Acmesystems. NerInformatica. Relatore : Luciano Neri. Ingegnere libero professionista Ordine degli Ingegneri di Vicenza

Sistema di Gestione dei Contenuti Multimediali

Con il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione.

Premessa Le indicazioni seguenti sono parzialmente tratte da Wikipedia ( e da un tutorial di Pierlauro Sciarelli su comefare.

Sistema Operativo di un Router (IOS Software)

Calcolatori Elettronici A a.a. 2008/2009

INFORMATICA. Il Sistema Operativo. di Roberta Molinari

Servizio Monitoraggio Energia via Web. CEAM CWS32-H01 Professional Web Platform

Gerarchia delle memorie

Memoria secondaria. Architettura dell elaboratore. Memoria secondaria. Memoria secondaria. Memoria secondaria

HARDWARE. Relazione di Informatica

Il software impiegato su un computer si distingue in: Sistema Operativo Compilatori per produrre programmi

Indice degli argomenti del s.o. Software. Software. Buona lezione a tutti!! SISTEMI OPERATIVI

Il Sistema Operativo. Introduzione di programmi di utilità. Elementi di Informatica Docente: Giorgio Fumera

Sistemi Operativi MECCANISMI E POLITICHE DI PROTEZIONE. D. Talia - UNICAL. Sistemi Operativi 13.1

MECCANISMI E POLITICHE DI PROTEZIONE 13.1

Informatica - A.A. 2010/11

Hardware di un Computer

Lezione 4 La Struttura dei Sistemi Operativi. Introduzione

IRSplit. Istruzioni d uso 07/10-01 PC

Considerazioni sui server

Virtualizzazione VirtualBox su Host Windows

MODULO 02. Iniziamo a usare il computer

Linux Embedded un pinguino piccolo così

PROGRAMMA DEL CORSO AMMINISTRATORE DI SISTEMI LINUX

L HARDWARE parte 1 ICTECFOP@GMAIL.COM

Architetture Applicative

Introduzione ai Sistemi Operativi

Il Personal Computer

Concetti fondamentali della Tecnologia Dell informazione Parte prima

La memoria centrale (RAM)

Applicazione di algoritmi di routing dinamico su reti wireless in ambiente portuale

Installare GNU/Linux

Introduzione alle tecnologie informatiche. Strumenti mentali per il futuro

Software di base. Corso di Fondamenti di Informatica

Come valutare e scegliere un Sistema Operativo Embedded

I Sistemi Operativi. Installazione Ubuntu Linux su Macchina Virtuale

C. P. U. MEMORIA CENTRALE

Materiali per il modulo 1 ECDL. Autore: M. Lanino

Corso base GNU/Linux Latina Linux Group. Sito web: Mailing list:

PARTE 4 La Macchina Software

Il Sistema Operativo

Versione 2.0. Manuale d uso. Software per la gestione. degli applicativi Bticino. TiManager 03/07-01 PC

Il SOFTWARE DI BASE (o SOFTWARE DI SISTEMA)

Il Sistema Operativo: il File System

CONTROLLO NUMERICO Z32

VIRTUALIZZAZIONE. Docente: Marco Sechi Modulo 1

Memoria Secondaria o di Massa

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

Linux nel calcolo distribuito

L informatica INTRODUZIONE. L informatica. Tassonomia: criteri. È la disciplina scientifica che studia

ASPETTI GENERALI DI LINUX. Parte 2 Struttura interna del sistema LINUX

Sistema Operativo. Fondamenti di Informatica 1. Il Sistema Operativo

Linux Virtuale Linux Virtuale

Laboratorio di Informatica

Virtualizzazione di macchine Linux tramite XEN

Sistemi Operativi IMPLEMENTAZIONE DEL FILE SYSTEM. D. Talia - UNICAL. Sistemi Operativi 9.1

Software Open Source per sistemi embedded

DiFarm evolution. Convegno Rimini, Novembre 2006

Architetture software. Virtualizzazione

TERM TALK. software per la raccolta dati

Network Monitoring. Introduzione all attività di Network Monitoring introduzione a Nagios come motore ideale

Collegamento al sistema

VIRTUALIZZAZIONE LUG - CREMONA. Linux Day - 25 Ottobre 2008

Kartè VISION Il Digital signage cambia volto

Portable Ubuntu for Windows mini howto (diavoleria argentina)

Gestore di Memoria. Gestire le richieste di risorse di memoria Liberare le risorse non più utilizzate. Gestire la memoria virtuale (swap su disco)

Hardware delle reti LAN

Ubuntu e la sua Installazione

Linux lo installo a 32 o 64 bit? (teoria e pratica)

Il sistema di elaborazione Hardware e software

Informatica 1 Lezione 1

Puppy Linux (Precise) Live da CD o da USB (Si può usare su PC con 256 MB di RAM)

Transcript:

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 per una determinata applicazione supportato da una piattaforma hardware su misura

caratteristiche di un sistema embedded sistemi privi di interazione umana capaci di resistere ad eventi dannosi, a vibrazioni e shock ripartire in modo autonomo possibilmente di dimensioni ridotte raggiungibile tramite un qualche tipo di connessione deve avere risorse necessarie per l'esecuzione dei processi indispensabili al suo funzionamento spesso con vincoli temporali (sistema real-time)

Cosa intendiamo noi per sistema embedded è essenzialmente un sistema a microprocessore come un PC ma dedicato a svolgere un particolare compito ha risorse e dispositivi strettamente necessari hardware dedicato frequenze di CPU inferiori basso consumo poca memoria (anche di massa)

piattaforme per i sistemi embedded Una varietà molto più ampia di quella presente nel campo dei PC desktop processori Intel x86, Power PC, ARM, MIPS System on Chip, FPGA standard industriali come il PC104 interfacce utente (display LCD,led..)

Sistemi operativi? No grazie un S.O richiede più risorse computazionali vincoli di specifica da rispettare sistemi non molto complessi che non necessitano di concorrenza gestione in tempo reale

Sistemi operativi? Sí grazie supporto per il multi-threading e multi-processing supporto protocolli di comunicazione, memorie di massa tempo di sviluppo minore librerie grafiche, tools di sviluppo, debugging porting verso altre piattaforme hardware

Sistemi proprietari o open source? reale natura real-time fortemente ottimizzati per il software e hardware embedded molti sistemi sviluppati in casa configurabili su misura codice aperto... a costo zero

Perché un sistema embedded Fasti ovvero un nuovo modo di progettare sistema integrato per rivelatori astronomici dividere il sistema in moduli con compiti specifici utilizzare dispositivi di tipo commerciale usare standard industriali come bus ISA, PCI, interfacce seriali etc progettare dispositivi come concetti senza dipendere da un componente specifico

ASPETTI HARDWARE FASTI-NICS piattaforma Intel (ASUS) processore Celeron II (Coopermine) 800MHz 512 MB RAM assenza di drive mobili disco allo stato solido (Flash disk 256 MB) scheda di acquisione PCI DIO32HS 6533 FASTI-GIANO PC104 (PFM 620S) processore Intel Celeron 400 MHZ 512 MB RAM disco allo stato solido memoria Compact Flash 1GB scheda di acquisizione custom ISA

Aspetti Software: perché Linux perché no? non abbiamo vincoli operativi particolari possiamo trarre vantaggio da un SO buone prestazioni su hardware a basso costo flessibile, robusto supporto per molti dispositivi personalizzazione a basso livello del codice separazione spazio utente e spazio kernel vasta disponibilità di applicativi e librerie scalabilità su piattaforme diverse sistema standard per cui le conoscenze possono essere usate anche in ambito embedded

Di cosa abbiamo bisogno... un host di sviluppo nell'architettura piu' conveniente un prototipo di host target (embedded) toolchain: insieme di eseguibili, librerie e compilatore per lo sviluppo del sistema bootloader per il target host un boot a doppio passo con il kernel caricato da un supporto esterno un kernel con la configurazione adeguata per il target libreria C per i due sistemi compilatore cross per l'host un root filesystem con i programmi e librerie fondamentali per il target (sistema base) un intero set delle librerie per le applicazioni per i due host La fase di test viene effettuata sul sistema host

Il processo di boot Se non diversamente configurato initrd viene decompresso e caricato in RAM il kernel lo monta come filesystem di root ed esegue lo script linuxrc. Quest'ultimo esegue tipicamente il pivot_root (cambio del filesystem di root) e passa il controllo a init da dove il run del sistema vero e proprio prosegue. La maggior parte dei sistemi embedded prosegue semplicemente in RAM il proprio lavoro.

Sistema embedded per Nics sistema di sviluppo (HD da 850 MB) con tre partizioni + disco flash sistema di boot in due fasi (initrd) creazione del file ramdisk.img.gz e initrd.gz installazione Slackware minimale > ramdisk.gz initrd di 4 MB con root fs minimale e applicativi delle binutils compilati staticamente Il disco flash al termine del boot non e' montato e il sistema lavora completamente in RAM Il disco allo stato solido mantiene le informazioni persistenti: aggiornamenti del kernel aggiornamenti del root filesystem informazioni di configurazione dati di lavoro

Sistema embedded per Giano distribuzione SLAX (nata come LiveCD) installata sul disco CF è una collezione di moduli che sono archivi compressi caricati a run time come fs read only di tipo Squashfs Al boot i moduli selezionati sono aggiunti ad un filesystem di tipo Unionfs per fornire una vista unificata del filesystem. il ramo ad alta priorità di unionfs è un fs tmpfs la modularità dà origine a profili diversi di installazione

boot della SLAX carica l'immagine initrd ed esegue linuxrc che: monta tmpfs su /memory e crea /memory/changes monta unionfs su /union con il solo ramo rw /memory/changes rilevamento dell'hardware e caricamento dei moduli dal disco i moduli montati in /memory/images sono aggiunti all'unione in modalità ro viene eseguito pivot_root e /union diventa il nuovo root fs. La root originale viene mossa in /mnt/live viene eseguito /sbin/init con l'opzione di boot copy2ram i moduli al boot sono copiati in ram il disco CF viene smontato al termine del boot il sistema è tutto in ram la CF contiene il kernel, initrd i moduli la configurazione

UNIONFS UnionFS e' un filesystem Linux che simula l'unione di più filesystem sottostanti, mantenendone la semantica Unix sovrappone in modo trasparente file e cartelle di filesystem separati, detti branch (rami), per formare un singolo filesystem coerente. I vari rami possono essere filesystem ro o rw il filesystem UnionFS appare scrivibile: utile nei LiveCD Quando si aggiungono i rami, bisogna specificare la priorità viene visto solo il file nel ramo a priorità maggiore Le operazioni di scrittura in unionfs sono redirette verso uno specifico filesystem scrivibile