School / Prep
ENSEIRB-MATMECA
Internal code
EI7PG204
Description
This course introduces the concepts and techniques needed to program in a POSIX environment.
Outline
1. Concepts 2. Files: principles and the POSIX API 3. Processes and memory management: abstractions, memory management, process management 4. Signals: process monitoring, synchronization 5. Shared memory and synchronization: file-based, shared memory 6. Threads: definition and API 7. Concurrency: problem identification, software solutions, hardware solutions, deadlocks 8. Introduction to network programming
Skills
C2. Level 2C4. Level 2C5. Level 2
Teaching hours
- CMLectures9,33h
- TDTutorial20h
- TIIndividual work12h
Mandatory prerequisites
Knowledge of the C language
Syllabus
1. Concepts
2. Files: principles and posix API
3. Processes and memory management: abstractions, memory management, process management
4. Signals: process monitoring, synchronization
5. Shared memory and synchronization: file-based, shared memory
6. Threads: definition and API
7. Concurrency: problem identification, software solutions, hardware solutions, deadlocks
8. Introduction to network programming
Bibliography
Course notes are distributed at the beginning of the course.
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 | documents allowed without calculator |
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 | Machine work | 120 | 1 | documents allowed without calculator |