Advanced Linux Programming

This hands-on course is a follow on course to the Linux systems administration course



Référence de la formation

KLI003

Niveau

Intermediate

Nombre de jours

5 Days

Prix

2.526,00 € HT

Lieu de la formation

V: v-learning, virtual class



Pre-requis

C programming knowledge. An advantage to introduction To Linux orLinux Fundamentals or equivalent. Linux systems administration. Somebasic experience in using Linux, Unix or another operating system.

Public

Linux systems programmers. The course is intended for programmers who are familiar with the C programming language and at least one other operating system.

Objectifs de la formation

This hands-on course is a follow on course to the Linux systems administration course.
The course covers technical in-depth topics including system programming, file systems, signals, processes, pipes, threads, timers, input-output, sockets, the kernel and scripting.

Contenu du cours

Table 1: KLI003 - Course Contents
Chapter Description
Linux/Unix Overview • History and philosophy of Unix/Linux and Open Source
• System architecture: from user interface to hardware
• Getting around: shell basics
• Overview: strace-ing “Hello World”
System Programming • Anatomy of a system call: uname()
• /proc – your window to the kernel
File Systems • Overview of common file systems: ext2/3, nfs, reiserfs, xfs, vfat
• Kernel file system architecture, from block devices to files & directories
• File related system calls: stat, access, open, close, read, write
• Exercise
• More file related system calls: readv, writev
• Exercise
Using Signals • Overview of signals
• Typical usage
• Gotcha’s – traps and pitfalls
• Exercise
Processes • What is a process
• Process environment
• Working with processes: fork, exec* and wait*
• Exercise
Pipes and IPC - inter-process communication • Pipe and dup2, popen and pclose system calls
• FIFOs (named pipes)
• Shared memory
• Sockets
• Semaphores
• Exercise
Threads • Time, gettimeofday system calls
• Alarm, setitimer
• Nanosleep
• Exercise
Timers • Using the Unix clock
• Internal clocks
Socket programming • TCP/IP overview
• The socket API
• Datagram v.s. connection-oriented sockets
• Typical client/server examples
I/0 • File locking with fcntl
• Asynchronous I/O via select
• Exercise
The kernel • The kernel boot process
• Building the kernel
• An overview of module programming
• Exercise
Scripting • Overview
• Variables
• Functions
• Examples
• Exercise
The End • Summary
• Q&A
• Evaluation

Dates


19 Oct 2020 au 23 Oct 2020


NOTE :
ATTENTION CETTE FORMATION EST SUR MESURE
CE COURS EST REALISABLE TOUTE L'ANNEE AVEC UN MINIMUM DE 5 PARTICIPANTS


Des questions ?

+33 (0) 950 20 91 64


Inscription ou Demande de devis