Kurs om

Systemprogrammering med Modern C++

Kurs om hur du programmerar i Modern C++ med Linux API och lär dig kombinera låg-nivå med hög-nivå

Hur omvandlar man en signal till en exception? Hur skapar man en process och fyller den med ny programkod. Vilka olika sätt att kommunicera mellan processer finns det? Hur fixar man memory-mapped I/O?

Dessa och en lång rad andra frågeställningar besvarar vi i denna mycket uppskattade kurs.

Snabbfakta

Namn
Systemprogrammering med Modern C++
Ämne
C++ och C
URI
cxx/cxx-systems-programming
Längd
3 dagar
Nivå
Advanced
Målgrupp
Rutinerade C++ programmerare
Förkunskaper
Kunna programmera i C++
Programvara & Verktyg
  • GNU C++ Compiler, version 10 or later
  • JetBrains CLion
  • Ubuntu Linux

Kursdatum

Här ser du vilka kursdatum som är tillgängliga. Klicka på en av datumknapparna för att anmäla dig till ett kurstillfälle. På kursen pratar läraren svenska, medan vårt kursmaterial alltid är författat på engelska.

Missa inte vår samfaktureringsrabatt! Är ni fler personer från samma företag/organisation som går på samma kurs, rabatteras tillkommande personer med 50% . Ni anmäler er till kursen en och en, men uppger samma företag, så ordnar vi resten. Samtliga deltagare från samma företag ingår på samma faktura, den första till fullt pris och resterande till rabatterat pris.

Kurs i Klassrum

Du sitter bekvämt i ett av våra klassrum, vilka finns centralt placerade i Stockholms innerstad.

I priset ingår tryckt kursmaterial (och som PDF), samt kaffe/te med smörgås på förmiddagen och kaffe/te med bulle på eftermiddagen.

Pris: 20 000 kr + moms

Kurs via Zoom

Du sitter bekvämt framför datorn och deltar i kursen via internet. Vi använder programvaran Zoom för alla våra fjärrkurser.

I priset ingår kursmaterial som PDF.

Pris: 15 000 kr + moms

Kurs hos Er

Om ni är tre eller fler personer från samma företag eller organisation, kan ni beställa en företagsanpassad kurs. Då håller vi kursen på ett datum som passar er. Antingen på plats i era lokaler eller som en fjärrkurs. Vi kan också hålla den muntliga framställningen på engelska. Klicka på knappen nedan för att be om en offert.

Detta får du lära dig

Här är ett sammandrag i punktform av vad du får lära dig på kursen. Eftersom kursmaterialet är författat på engelska, så återger vi sammandraget också på engelska.

  • How the address space for a process is organized and why this is interesting
  • How function calls are made and how you can use that insight
  • How to track library calls and system calls, respectively
  • The special file system / proc
  • Asynchronous I / O and memory mapped I / O
  • Signal handling
  • Process management with fork (), exec () and wait ()
  • Communication with pipe & fifo
  • POSIX message queues
  • POSIX shared memory segments
  • POSIX semaphores
  • TCP stream sockets

Kursinnehåll

Eftersom kursmaterialet är författat på engelska, så återger vi innehållet också på engelska.

SECTION: Application

Understanding the concept of a Linux application

The Process Concept

Virtual Address Space Organization

Compilation and Linking

Understanding Function Calls

Library and System Calls

Memory Management

Creating Processes

SECTION: Input / Output

Different forms of performing I/O

File Systems

The /proc file system

Regular I/O

Advanced I/O

SECTION: Inter-process Communication (IPC)

Different forms of interchanging data between processes.

Signals

Channels

Message Queues

Shared Memory

Semaphores

TCP Sockets