La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Process synchronization

Presentazioni simili


Presentazione sul tema: "Process synchronization"— Transcript della presentazione:

1 Process synchronization
Operating System Lab 1 – Info B Marco D. Santambrogio – Riccardo Cattaneo – Ver. aggiornata al 12 Ottobre 2013 © 2005 William Fornaciari

2 Obiettivi Imparare ad usare l’ambiente di sviluppo
Cosa è e come funziona un compilatore Sistemazione degli ambienti di sviluppo Comandi base da linea di comando Esercitarsi sui costrutti visti a lezione Inserimento dati da tastiera Controllo dei dati Uso delle funzioni

3 Lab 1: Agenda Informazioni sui laboratori
Benvenuti nel fantastico mondo del C Esercizi Lab1

4 Lab 1: Agenda Informazioni sui laboratori
Benvenuti nel fantastico mondo del C Esercizi Lab1

5 Calendario dei Labs 15 Ottobre 2013, 10am-12pm, @ LM1
Installation Party: strumenti di sviluppo per il corso di Info B 22 Ottobre 2013, LM1 C: Strutture di controllo e cicli 29 Ottobre 2013, LM1 C: array e matrici 12 Novembre 2013, LM1 C: tipi di dato e strutture

6 Calendario dei Labs 10 Dicembre 2013, 12pm-2pm, @ LM1
MATLAB: Ambienti di sviluppo e primi codici 7 Gennaio 2014, LM1 MATLAB: strutture di controllo, tipi di dato strutturato, e vettori 14 Gennaio 2014, LM1 MATLAB: funzioni ricorsive 21 Gennaio 2014, LM1 MATLAB: funzioni ricorsive, funzioni di ordine superiore, grafici 2D e 3D

7 Struttura Tolte le slide di “contesto” su
Obiettivi Elenco esercizi Approccio dritto al sodo, niente "fronzoli": Introduzione all'uso di un editor di testo e di una shell Non useremo un IDE (e.g., code::blocks, eclipse, ...) È una proposta, ci sono molti modi diversi di ottenere gli stessi risultati Per info, fare riferimento al sito del corso: Home: Calendario:

8 Lab 1: Agenda Informazioni sui laboratori
Benvenuti nel fantastico mondo del C Ambiente di sviluppo Un primo programma Esercizi Lab1

9 Ambiente di sviluppo Useremo un ambiente basato su distribuzioni Linux: Sulle macchine del lab, CentOS Sui vostri portatili… Per sviluppare del codice C, è sufficiente avere: Un editor di testo, magari con syntax highlighting (e.g., geany, gedit) - Un compilatore (e.g., gcc)

10 Ambiente – CentOS o VM Editor: gedit Shell: bash

11 Come si lanciano…

12 Struttura di un programma C
parte dichiarativa globale inclusione librerie / per poter invocare funzioni utili (i/o, ...) / dichiarazione di variabili globali e funzioni int main ( ) { dichiarazione di variabili locali istruzione 1; / tutti i tipi di operazioni, e cioè: / istruzione 2; / istr. di assegnamento / istruzione 3; / istr. di input / output / istruzione 4; / istr. di controllo (condizionali, cicli) / ... istruzione N; } parte dichiarativa locale parte esecutiva Ogni programma C deve contenere un modulo int main() {...}

13 Il primo programma: ciao mondo

14 Tutorial: bash e gcc Ecco alcuni comandi utili per utilizzare la shell bash: $ pwd - (Print Working Directory) visualizza la directory corrente $ ls - elenca i file presenti nella cartella corrente $ cd CARTELLA - cambia la cartella corrente a CARTELLA $ ./PROG - esegue il programma specificato (se è nella cartella corrente) Questi pochi comandi sono sufficienti per individuare ed eseguire un programma Per compilare un sorgente, abbiamo usato il comando gcc gcc FILE.c -o PROG Questo comando traduce il codice sorgente presente in FILE.c e lo salva nel file eseguibile PROG

15 HowTo: compilare ed eseguire
Per poter eseguire il nostro programma, bisogna tradurlo in codice macchina Questa operazione viene eseguita dal compilatore (e.g., gcc) Scritto e salvato il file sorgente (e.g., sul Desktop, nel file primo.c), Dobbiamo compilare ed eseguire un programma utilizzando una shell (e.g., bash) $ cd Desktop $ gcc primo.c –o exe $ ./exe

16 Lab 1: Agenda Informazioni sui laboratori
Benvenuti nel fantastico mondo del C Esercizi Lab1

17 Exe 1: Stampa a video Scrivere un programma in C che visuallizzi a video la seguente scritta: INFOB /2014 Laboratorio 1 Studente: Nome Cognome Matricola: #mat

18 Exe 2: Trova errori Il seguente programma non funziona…

19 Exe 3: Mostra caratteri Si scriva un programma che richieda l’inserimento di un carattere e lo mostri a video, con anche la sua codifica ASCII

20 Exe 4: Gestione errori sull’input
Si scriva un programma in C che ammete l’inserimento da tastiera solo di numeri dispari e compresi tra 1 e 7

21 Exe 5: Inserimento dati Si scriva un “convertitore” di unità dal sistema SI al US customary units Ci interessano solo le seguenti conversioni piedi in metri (1ft= m) pound in Kg (1lb = g) yard in metri (1yd = m)

22 Fine…


Scaricare ppt "Process synchronization"

Presentazioni simili


Annunci Google