OPERATING SYSTEMS AND SYSTEM PROGRAMMING PRACTICE
MAURIZIO ANGELO BONUCCELLI
Academic year2016/17
CourseCOMPUTER SCIENCE
Code277AA
Credits12
PeriodSemester 2
LanguageItalian
Modules | Area | Type | Hours | Teacher(s) |
LABORATORIO | INF/01 | LABORATORI | 48 | |
SISTEMI OPERATIVI | INF/01 | LEZIONI | 48 | MAURIZIO ANGELO BONUCCELLI unimap |
|
Programma non disponibile nella lingua selezionata
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:
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