Linux/UNIX System Programming Essentials course outline
 
        - Course Introduction
- Fundamental Concepts
            
                - Error handling
- System data types
- Notes on code examples
 
- File I/O
            
                - File I/O overview
- open(), read(), write(), and close()
 
- Processes
            
                - Process IDs
- Process memory layout
- Command-line arguments
- The environment list
- The /procfilesystem
 
- Signals
            
                - Overview of signals
- Signal dispositions
- Useful signal-related functions
- Signal handlers
- Designing signal handlers
 
- Process Lifecycle
            
                - Creating a new process: fork()
- Process termination
- Monitoring child processes
- Orphans and zombies
- The SIGCHLDsignal
- Executing programs: execve()
 
- System Call Tracing with strace (*)
            
                - Getting started
- Tracing child processes
- Filtering strace output
 
    (*) Topics marked with an asterisk will be covered subject to time
    constraints.
Return to the course overview