Francesco MOSCATO | SYSTEM PROGRAMMING
Francesco MOSCATO SYSTEM PROGRAMMING
cod. 0622700083
SYSTEM PROGRAMMING
0622700083 | |
DIPARTIMENTO DI INGEGNERIA DELL'INFORMAZIONE ED ELETTRICA E MATEMATICA APPLICATA | |
CORSO DI LAUREA MAGISTRALE | |
INGEGNERIA INFORMATICA | |
2020/2021 |
OBBLIGATORIO | |
ANNO CORSO 1 | |
ANNO ORDINAMENTO 2017 | |
SECONDO SEMESTRE |
SSD | CFU | ORE | ATTIVITÀ | |
---|---|---|---|---|
ING-INF/05 | 3 | 24 | LEZIONE | |
ING-INF/05 | 3 | 24 | ESERCITAZIONE | |
ING-INF/05 | 3 | 24 | LABORATORIO |
Obiettivi | |
---|---|
PROGETTAZIONE E IMPLEMENTAZIONE DI APPLICAZIONI DI SISTEMA, CHE SI INTERFACCIANO A BASSO LIVELLO CON IL SISTEMA OPERATIVO, E DI DRIVER PER LE PERIFERICHE. CONOSCENZE E COMPRENSIONE CONOSCENZA DELL’ARCHITETTURA DI UN SISTEMA OPERATIVO E DELLE SYSTEM CALL. GESTIONE DI THREAD E PROCESSI. SINCRONIZZAZIONE E INTER-PROCESS COMMUNICATION. GESTIONE DELLA MEMORIA VIRTUALE. CREAZIONE E GESTIONE DI KERNEL MODULES. DRIVER DI PERIFERICHE A CARATTERI E A BLOCCHI. ALLOCAZIONE DI RISORSE PER LE PERIFERICHE (PORTE I/O, MEMORIA, CANALI DMA, IRQ) CON DIVERSI TIPI DI BUS. CASE STUDIES DI DRIVER A CARATTERI E A BLOCCHI. CAPACITÀ DI APPLICARE CONOSCENZE E COMPRENSIONE CAPACITÀ DI REALIZZARE UNA APPLICAZIONE DI SISTEMA E UN DRIVER PER LE PERIFERICHE. |
Prerequisiti | |
---|---|
PER IL PROFICUO RAGGIUNGIMENTO DEGLI OBIETTIVI PREFISSATI È RICHIESTA LA CONOSCENZA DEI CONTENUTI DEL CORSO DI SISTEMI OPERATIVI E UNA APPROFONDITA CONOSCENZA DEL LINGUAGGIO C. |
Contenuti | |
---|---|
OVERVIEW OF SYSTEM PROGRAMMING (2/0/0) UNIX SYSTEM OVERVIEW, UNIX SYSTEM STANDARDIZATION AND IMPLEMENTATIONS, LINUX. BASIC I/O OPERATIONS (4/2/0) FILE I/O OVERVIEW, FILE DESCRIPTORS, FILE ACCESS PERMISSIONS, FILE SYSTEMS, FILE I/O BUFFERING, INODES, FILES AND DIRECTORY MANAGEMENT. PROCESSES AND PROGRAMS (4/2/0) SYSTEM CALLS FOR PROCESS MANAGEMENT, USER AND GROUPS, SCHEDULING POLICIES MEMORY MANAGEMENT (4/2/0) DYNAMIC MEMORY ALLOCATION, VIRTUAL MEMORY THREADS (6/4/0) MULTI THREADING APPLICATIONS, SYNCHRONISATION, PTHREADS SIGNAL INTERFACE (4/2/0) INTER PROCESS COMMUNICATION (IPC) (6/4/2) PIPES, FIFO, SHARED MEMORY, SEMAPHORES, NETWORK IPC, SOCKETS KERNEL MODULES DESIGN AND DEVELOPMENT, DRIVERS DESIGN AND DEVELOPMENT (10/8/6) CHARACTER AND BLOCK DEVICE DRIVERS. ALLOCATION OF RESOURCES FOR PERIPHERALS (I / O PORTS, MEMORY, DMA CHANNELS, IRQ) WITH DIFFERENT TYPES OF BUSES. CASE STUDIES OF CHARACTER AND BLOCK DRIVERS. |
Metodi Didattici | |
---|---|
L'INSEGNAMENTO CONTEMPLA LEZIONI TEORICHE, ESERCITAZIONI IN AULA ED ESERCITAZIONI PRATICHE DI LABORATORIO. NELLE ESERCITAZIONI IN AULA VENGONO ASSEGNATI AGLI STUDENTI, SIA INDIVIDUALMENTE CHE DIVISI PER GRUPPI DI LAVORO, DEI PROGETTO DA SVILUPPARE UTILIZZANDO I CONTENUTI DELLINSEGNAMENTO. I PROGETTI SONO STRUMENTALI, OLTRE ALL’ACQUISIZIONE DELLE COMPETENZE E ABILITÀ SUI CONTENUTI DELLINSEGNAMENTO, ANCHE A SVILUPPARE E RAFFORZARE LE CAPACITÀ DI LAVORARE IN TEAM. PER POTER SOSTENERE LA VERIFICA FINALE DEL PROFITTO E CONSEGUIRE I CFU RELATIVI ALLATTIVITÀ FORMATIVA, LO STUDENTE DOVRÀ AVERE FREQUENTATO ALMENO IL 70% DELLE ORE PREVISTE DI ATTIVITÀ DIDATTICA ASSISTITA. |
Verifica dell'apprendimento | |
---|---|
LA PROVA DI ESAME È FINALIZZATA A VALUTARE NEL SUO COMPLESSO: LA CONOSCENZA E LA CAPACITÀ DI COMPRENSIONE DEI CONCETTI PRESENTATI AL CORSO; LA CAPACITÀ DI APPLICARE TALI CONOSCENZE PER LA RISOLUZIONE DI PROBLEMI DI PROGRAMMAZIONE DI SISTEMA; L’AUTONOMIA DI GIUDIZIO, LE ABILITÀ COMUNICATIVE E LA CAPACITÀ DI APPRENDERE. LA PROVA SI ARTICOLA IN DUE FASI: UNA PRIMA CONSISTE IN UN COLLOQUIO ORALE E NELLA DISCUSSIONE DEI MID TERM PROJECTS SVOLTI INDIVIDUALMENTE DURANTE IL CORSO.UNA SECONDA FASE PREVEDE LA REALIZZAZIONE DI UN FINAL TERM PROJECT: GLI STUDENTI, DIVISI IN TEAM, DEVONO REALIZZARE UN SISTEMA FINALIZZATO AD UNA COMPETIZIONE TRA I VARI TEAM. SONO OGGETTO DI VALUTAZIONE LE SCELTE PROGETTUALI E METODOLOGICHE EFFETTUATE, INSIEME CON IL RISULTATO OTTENUTO DAL TEAM DURANTE LA COMPETIZIONE.LO SCOPO E’ QUELLO DI VALUTARE LE CONOSCENZE E LE CAPACITÀ DI COMPRENSIONE ACQUISITE, LA CAPACITÀ DI APPLICARE LE CONOSCENZE, L’AUTONOMIA DI GIUDIZIO E LA CAPACITÀ DI LAVORARE IN GRUPPO. NELLA VALUTAZIONE FINALE, ESPRESSA IN TRENTESIMI, LA VALUTAZIONE DEI MID TERM PROJECTS E DEL COLLOQUIO ORALE PESERÀ PER IL 40%, MENTRE IL FINAL TERM PROJECT PESERÀ PER IL 60%. LA LODE POTRÀ ESSERE ATTRIBUITA AGLI STUDENTI CHE DIMOSTRINO DI SAPER APPLICARE LE CONOSCENZE ACQUISITE CON AUTONOMIA ANCHE IN CONTESTI DIVERSI DA QUELLI PROPOSTI NEL CORSO |
Testi | |
---|---|
- LINUX SYSTEM PROGRAMMING: TALKING DIRECTLY TO THE KERNEL AND C LIBRARY, ROBERT LOVE, 2013 - ADVANCED PROGRAMMING IN THE UNIX ENVIRONMENT, STEVENS, W. RICHARD, 2013 - THE LINUX PROGRAMMING INTERFACE: A LINUX AND UNIX SYSTEM PROGRAMMING, MICHAEL KERRISK, 2010 |
Altre Informazioni | |
---|---|
Il corso è tenuto in lingua inglese. |
BETA VERSION Fonte dati ESSE3 [Ultima Sincronizzazione: 2022-05-23]