IGFE CSC 7001
Master of Science
This module aims at providing the fundamental knowledge in computer science, especially for operating system usage (mainly Unix) and programming development (using the C programming language). A special emphasis is made on algorithmic and data structures. At the end of the course, students are able to develop a large variety of software applications.
This module is divided into four courses:
- The course « Unix »: This course aims at presenting the goal of operating systems, and especially Unix. The first part of the teaching is mainly devoted to filesystem and process management. The second part focusses on script shells and the development of small Unix applications. During the last part, we introduce the LaTeX word processing suite and how to use makefiles;
- The course « C programming language »: The goal of this course is to introduce not only the C programming language but also the concepts associated to programming in a more general way. As a result, the first part of the teaching is devoted to the presentation of the compilation steps required to transform a human-readable program into an executable program. Then, the second part presents the different aspects of the C programming language (control instructions, functions, arrays, pointers, structures...);
- The course « Algorithmics »: This set of lectures presents first the different data structures a programmer may need to develop applications (like stacks, queues, lists, trees...) and second the most important algorithms (especially the use of recursion and sorting algorithms).
- The course "System programming" : The goal of this course is to study the system from the developer point of view, which includes process management, pipes, signals, IPC System V, systems calls and device drivers.
Unix, C programming language, Algorithmics
The final exam, that includes all three courses, will count for 100%. There is no extra credit or make-up work.