Search for contacts, projects,
courses and publications

Systems Programming

People

Carzaniga A.

Course director

Jepsen T.

Assistant

Description

A "system" integrates functionalities and devices at different levels. Examples are information systems consisting of databases and processing modules, a distributed storage system consisting of networked redundant storage devices, an operating system that manages heterogeneous computing resources, and a robotic system made of physical devices, embedded sensors and controllers, as well as complex processing modules. The most common system programming language is C. This course is a practice-oriented introduction to programming in C and C++. The focus is on features of the language and libraries that are particularly useful in programming systems. This includes the memory model, input/output, the network programming interface and other system calls, the organization of a large system programs, including the relevant language features and the build process, symbols and their relations to compilation units and the linker, and an introduction to symbolic debugging.

 

REFERENCES

  • Textbook (optional): "The C Programming Language", Second Edition. By Brian W. Kernighan and Dennis M. Ritchie. Prentice Hall, Inc., 1988.
  • Frequently Asked Questions on C programming. (http://www.c-faq.com/)
  • C reference documentation from cppreference.com. (http://en.cppreference.com/w/c)
  • C++ reference documentation from cppreference.com. (http://en.cppreference.com/w/cpp)

Education