School / Prep
ENSEIRB-MATMECA
Internal code
ETE7-IFON1
Description
This course focuses on the effective use of the programming tools available in a UNIX-type operating system. While knowledge of the mechanisms implemented is essential, it is also necessary to be able to use the tools which are in fact the concrete expression of these concepts. The System Programming course therefore focuses on showing students how to explicitly use system functionalities in programs.
Teaching hours
- CIIntegrated courses11h
- TIIndividual work11h
- PRACTICAL WORKPractical work16h
Mandatory prerequisites
- Using a UNIX system
- Programming in C language
Syllabus
Topics will include
1- The file system (implementation principles and interface)
2- Processes:
- Creation
- Synchronization
- Collection
3- Inter-process communications:
- Communication tubes
- Shared memory
4- Signals
5- Threads
6- Inter-batch synchronization tools
- Semaphores
- Locks
- Condition variables and monitors
- Synchronization barriers
Further information
Bibliography
Support de cours distribué en début de cours
Méthodologie de la programmation en langage C, Achille Braquelaire, Masson
Programmation du système UNIX, M.BACH, Dunod
Programmtion sous Unix, JM Rifflet, Ediscience
Communication sous Unix, JM Rifflet, Ediscience
Assessment of knowledge
Initial assessment / Main session - Tests
Type of assessment | Type of test | Duration (in minutes) | Number of tests | Test coefficient | Eliminatory mark in the test | Remarks |
---|---|---|---|---|---|---|
Final inspection | Written | 120 | 1 | 0.66 | Without document Without calculator | |
Continuous control | Active Participation | 0.33 |
Second chance / Catch-up session - Tests
Type of assessment | Type of test | Duration (in minutes) | Number of tests | Test coefficient | Eliminatory mark in the test | Remarks |
---|---|---|---|---|---|---|
Final test | Proctored homework | 90 | 1 | 0.66 | without document without calculator | |
Continuous control | Active Participation | 0.33 |