30h Th, 25h Pr, 40h Proj.
Number of credits
Language(s) of instruction
Organisation and examination
Teaching in the first semester, review in January
Units courses prerequisite and corequisite
Prerequisite or corequisite units are presented within each program
Learning unit contents
Detailed study of a processor and of an assembly language. Introduction to systems programmning and to processes; virtual memory. Concurrent programming and interprocess communication. Processor implementaton techniques: pipe-lines, cache memory, ...
Learning outcomes of the learning unit
At the end of this course, the student will have a concrete knowledge of the design of a processor and of how it operates, will understand the mechanisms used in operating system kernels, and will master the basic techniques used in parallel programming.
Prerequisite knowledge and skills
Basic knowledge of digital circuits, famliliarity with programming.
Planned learning activities and teaching methods
Lectures are given, in English. The problem sessions cover the design of a microcode based processor, assembly language programming, programming in C, and concurrent programming using the Linux system. The course also includes programming assignments (assembler and concurrent programming in C).
Mode of delivery (face-to-face ; distance-learning)
1st quadrimester - face-to-face
Recommended or required readings
Reference text; notes and transparencies available from the course web page.
Assessment methods and criteria
Grading of programming assignments (30%), written exam (no oral exam).
Further information can be found on the course web page: http://www.montefiore.ulg.ac.be/~pw/cours/struct.html