Alessia SAGGESE | SYSTEM PROGRAMMING
Alessia SAGGESE SYSTEM PROGRAMMING
cod. 0622700083
SYSTEM PROGRAMMING
0622700083 | |
DIPARTIMENTO DI INGEGNERIA DELL'INFORMAZIONE ED ELETTRICA E MATEMATICA APPLICATA | |
EQF7 | |
COMPUTER ENGINEERING | |
2020/2021 |
OBBLIGATORIO | |
YEAR OF COURSE 1 | |
YEAR OF DIDACTIC SYSTEM 2017 | |
SECONDO SEMESTRE |
SSD | CFU | HOURS | ACTIVITY | |
---|---|---|---|---|
ING-INF/05 | 3 | 24 | LESSONS | |
ING-INF/05 | 3 | 24 | EXERCISES | |
ING-INF/05 | 3 | 24 | LAB |
Objectives | |
---|---|
DESIGN AND IMPLEMENTATION OF SYSTEM APPLICATIONS, WHICH INTERFACE AT LOW LEVEL WITH THE OPERATING SYSTEM, AND DRIVERS FOR PERIPHERALS. KNOWLEDGE AND UNDERSTANDING KNOWLEDGE OF THE ARCHITECTURE OF AN OPERATING SYSTEM AND SYSTEM CALLS. THREAD AND PROCESS MANAGEMENT. SYNCHRONIZATION AND INTER-PROCESS COMMUNICATION. VIRTUAL MEMORY MANAGEMENT. CREATION AND MANAGEMENT OF KERNEL MODULES. 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. ABILITY TO APPLY KNOWLEDGE AND UNDERSTANDING ABILITY TO BUILD A SYSTEM APPLICATION AND A DEVICE DRIVER. |
Prerequisites | |
---|---|
IN ORDER TO ACHIEVE THE GOALS OF THE COURSE, THE KNOWLEDGE OF THE CONTENTS OF THE OPERATING SYSTEM COURSE AND A DEEP KNOWLEDGE OF THE C PROGRAMMING LANGUAGE IS REQUIRED. |
Contents | |
---|---|
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. |
Teaching Methods | |
---|---|
THE COURSE CONTAINS THEORETICAL LECTURES, IN-CLASS EXERCITATIONS AND PRACTICAL LABORATORY EXERCITATIONS. DURING THE IN-CLASS EXERCITATIONS THE STUDENTS ARE DIVIDED IN TEAMS AND ARE ASSIGNED SOME PROJECT-WORKS TO BE DEVELOPED ALONG THE DURATION OF THE COURSE. THE PROJECTS INCLUDE ALL THE CONTENTS OF THE COURSE AND IS ESSENTIAL BOTH FOR THE ACQUISITION OF THE RELATIVE ABILITIES AND COMPETENCES, AND FOR DEVELOPING AND REINFORCING THE ABILITY TO WORK IN A TEAM. IN ORDER TO PARTICIPATE TO THE FINAL ASSESSMENT AND TO GAIN THE CREDITS CORRESPONDING TO THE COURSE, THE STUDENT MUST HAVE ATTENDED AT LEAST 70% OF THE HOURS OF ASSISTED TEACHING ACTIVITIES. |
Verification of learning | |
---|---|
THE EXAM AIMS AT EVALUATING, AS A WHOLE: THE KNOWLEDGE AND UNDERSTANDING OF THE CONCEPTS PRESENTED IN THE COURSE, THE ABILITY TO APPLY THAT KNOWLEDGE TO SOLVE PROGRAMMING PROBLEMS REQUIRING THE USE OF ARTIFICIAL VISION TECHNIQUES; INDEPENDENCE OF JUDGMENT, COMMUNICATION SKILLS AND THE ABILITY TO LEARN. THE EXAM INCLUDES TWO STEPS: THE FIRST ONE CONSISTS IN AN ORAL EXAMINATIONS AND IN THE DISCUSSION OF MID TERM PROJECTS REALIZED DURING THE COURSES. THE SECOND STEP CONSISTS IS BASED ON THE REALIZATION OF A FINAL TERM PROJECT: THE STUDENTS, PARTITIONED INTO TEAMS, ARE REQUIRED TO REALIZE A SYSTEM, FINALIZED TO A COMPETITION AMONG THE TEAMS, DESIGNING AND METHODOLOGICAL CONTRIBUTIONS OF THE STUDENTS, TOGETHER WITH THE SCORE ACHIEVED DURING THE COMPETITION, ARE CONSIDERED FOR THE EVALUATION. THE AIM IS TO ASSESS THE ACQUIRED KNOWLEDGE AND ABILITY TO UNDERSTANDING, THE ABILITY TO LEARN, THE ABILITY TO APPLY KNOWLEDGE, THE INDEPENDENCE OF JUDGMENT, THE ABILITY TO WORK IN A TEAM. IN THE FINAL EVALUATION, EXPRESSED IN THIRTIETHS, THE EVALUATION OF THE INTERVIEW AND OF THE MID TERM PROJECTS WORK WILL ACCOUNT FOR 40% WHILE THE FINAL TERM PROJECT WILL ACCOUNT FOR 60%. THE CUM LAUDE MAY BE GIVEN TO STUDENTS WHO DEMONSTRATE THAT THEY CAN APPLY THE KNOWLEDGE AUTONOMOUSLY EVEN IN CONTEXTS OTHER THAN THOSE PROPOSED IN THE COURSE |
Texts | |
---|---|
- 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 |
More Information | |
---|---|
Course language is English. |
BETA VERSION Data source ESSE3 [Ultima Sincronizzazione: 2022-05-23]