Università di Pisa - Dipartimento di Ingegneria dell'Informazione

Ingegneria delle Telecomunicazioni

Fondamenti di Informatica e Calcolatori - modulo Calcolatori (3 CFU)


Fondamenti di Informatica e Calcolatori - modulo Calcolatori (3 CFU)

Mario G. Cimino, Dipartimento di Ingegneria dell'Informazione

Registro delle lezioni


Testi di riferimento

Programma dettagliato (con indicazione dei paragrafi dei testi)

Presentazione del corso. Ispezione, a scopo dimostrativo, dei componenti principali di un calcolatore. Elementi architetturali di base (B.2): Struttura (B.2.1), Organizzazione (B.2.1.1). Elementi architetturali di base (B.2): La memoria (B.2.2), La codifica dei dati e delle istruzioni (B.2.3), Codifica delle istruzioni (B.2.3.1), Sequenze di istruzioni in memoria (B.2.3.2), Sequenzializzazione delle istruzioni (B.2.3.3), La CPU (B.2.4). Richiami di architetture dei sistemi di elaborazione (A.1.3), Il processore (A.1.3.1), La memoria (A.1.3.2), Dispositivi di ingresso/uscita (A.1.3.3), Meccanismo di interruzione (A.1.3.4), Accessi diretti alla memoria - DMA (A.1.3.5), meccanismi di protezione (A.1.3.6). Sistemi operativi. Concetti introduttivi. Principali funzioni di un sistema operativo (A.1.1 e sottoparagrafi), Multiprogrammazione (A.1.2.3), Multitasking (A.1.2.3). Time-sharing (A.1.2.4). Sistemi in tempo reale (A.1.2.5). Gestione dei processi (A.2). Definizione di processo (A.2.1). Stati di un processo (A.2.2). Descrittore di un processo (A.2.3). Code di processi (A.2.4). Cambio di contesto (A.2.5). Scheduling (A.2.9 senza i sottoparagrafi). Semafori (A.3.4). Soluzione al problema della mutua esclusione (A.3.4.1). Soluzione al problema della comunicazione (A.3.4.2). Algoritmo First-Come-First-Served - FCFS (A.2.9.1). Shortest-Job-First - SJF (A.2.9.2). Shortest-Remaining-Time -First - SRTF (A.2.9.3). Round-Robin - RR (A.2.9.4). Schedulazione "a code multiple" (A.2.9.6). Schedulazione di sistemi in tempo reale (A.2.9.7). Schedulazione di sistemi in tempo reale (A.2.9.7). Processi Leggeri - Thread (A.2.10). Gestione della memoria (A.4.1 senza sottoparagrafi). La memoria virtuale (A.4.2.1). Rilocazione statica e dinamica. Memory management unit (A.4.2.2). Tecniche di gestione della memoria (4.3). Memoria partizionata (A.4.3.1). Memoria segmentata (A.4.3.2). Segmentazione a domanda (A.4.3.2). Memoria paginata (A.4.3.3). Paginazione a domanda (A.4.3.3). Rimpiazzamento delle pagine (A.4.3.3). Gestione delle periferiche (I/O). Concetti generali (A.5.1). Organizzazione logica del sottosistema di I/O (A.5.2). Livello indipendente dai dispositivi (A.5.2.1). Livello dipendente dai dispositivi (A.5.2.2). Gestione di un dispositivo a controllo di programma (A.5.3.2). Gestione di un dispositivo a interruzione (A.5.3.3). Gestione di un dispositivo in DMA (A.5.3.4). Gestione e organizzazione dei dischi (A.5.4, A.5.4.1, A.5.4.2). Dischi RAID (A.5.4.3). Il file system. Organizzazione del file system (A.6.1). Il file (A.6.2.1). Il direttorio (A.6.2.2). Gestione della struttura logica del file system (A.6.2.3). Strutture dati e operazioni per l’accesso ai file (A.6.3.1). Metodi di accesso (A.6.3.2). Accesso sequenziale. Accesso diretto. Organizzazione fisica (A.6.4). Tecniche di allocazione dei file (A.6.4.1). Allocazione contigua. Allocazione a lista concatenata. Allocazione a indice. Protezione e sicurezza. Modelli, politiche e meccanismi di protezione (A.7.1). Domini di protezione (A.7.2). Il Modello matrice degli accessi (A.7.3). Sistema di sicurezza multilivello (A.7.5). Basi di calcolo fidate (A.7.7). Laboratorio sul linguaggio di comandi (shell) in Windows (C). Posizionamento in una directory (cd). Pulizia dello schermo (cls). Directory corrente (.) e superiore (..). Creazione di una nuova directory (md). Cancellazione di file (del) e directory (rd). Visualizzazione del contenuto di una directory (dir). Visualizzazione del contenuto di un file (type). Copia/spostamento di file (copy, move). Input/output dei comandi: echo, redirezione in riscrittura (>) e in append (>>) su file, variabili di ingresso (%1). Programmazione Shell: file batch (.bat), commento (rem), variabili: assegnazione (set) e lettura (%...%). Comando "if" per il controllo del flusso di esecuzione e comparazione tra valori (==). Il comando "if..else" e la condizione "exist". Il comando "for" e la lettura da file. Chiamata di file batch (call). Comando di selezione da una lista (choice). Il salto incondizionato (goto). Cicli for annidati. Colore del testo e dello sfondo (color). Comando di attesa (timeout). Comandi di controllo della protezione: icacls e takeown. Elenco dei processi attivi (tasklist), terminazione di un processo (taskkill).

visit counter