Scheda programma d'esame
OPERATING SYSTEMS AND SYSTEM PROGRAMMING PRACTICE
MAURIZIO ANGELO BONUCCELLI
Academic year2016/17
CourseCOMPUTER SCIENCE
Code277AA
Credits12
PeriodSemester 2
LanguageItalian

ModulesAreaTypeHoursTeacher(s)
LABORATORIOINF/01LABORATORI48
GIUSEPPE PRENCIPE unimap
SISTEMI OPERATIVIINF/01LEZIONI48
MAURIZIO ANGELO BONUCCELLI unimap
Programma non disponibile nella lingua selezionata
Learning outcomes
Knowledge
The student who successfully completes the course will demonstrate a solid knowledge of the fundamental concepts related to the operating systems and of the aspects related to their implementation. Furthermore, the student will have the ability to write concurrent programs that use system calls for the interaction with the devices and with the operating system.
Assessment criteria of knowledge
- The student will be assessed on his/her demonstrated ability to discuss the main course contents using the appropriate terminology. - During the written and oral exam the student must be able to demonstrate his/her knowledge of the course material and be able to solve exercises and to discuss the reading matter thoughtfully and with propriety of expression. - The student must demonstrate the ability to put into practice and to execute, with critical awareness, the activities illustrated or carried out under the guidance of the teacher during the laboratory.

Methods:

  • Final oral exam
  • Final written exam
  • Laboratory report

Further information:
Students must produce a working project as result of the laboratories. The weighting of the different parts of the exam is: - project (50%) - final written and oral exam (50%)

Teaching methods

Delivery: face to face

Learning activities:

  • attending lectures
  • individual study
  • Laboratory work
  • Practical

Attendance: Not mandatory

Teaching methods:

  • Lectures
  • project work

Syllabus
The course is organized in two moduli: one theoretical (named Operating Systems), and one practical (named laboratory). The Operating Systems module introduces the main concepts of operating systems and discusses their implementation in real systems. Specific topics covered are concurrency and the management of processor, memory and device management, the file system and the case studies of Unix/Linux and Windows. The module of laboratory gives a broad view of standard tools for sequential C programs addressing debugging, testing, compiling, making libraries, using makefiles to manage large programs. Precisely, the module presents the Bash shell scripting language and develop simple scripts for routine tasks. In the last part of the course we present Posix programming and develop a small client-server system using Posix threads.
Bibliography
T. Anderson, M. Dahlin : "Operating Systems: principles and practice", Recursive Books Ltd, 2013 Marc J. Rochkind. Advanced UNIX Programming 2nd Edition, Addison-Wesley Professional Computing Series, 2004.
Updated: 14/11/2016 17:27