Embedded Computing 1 (Deutsch)

Lehrinhalte

  • Linux: (Bourne Again) Shell – Bash

  • Linux: Systemkonzepte und Diagnose

    • Prozesse und Adressräume

    • File System

    • Permissions

    • Netzwerk

    • Hardware/Geräte

    • Realtime

  • C/C++ Entwicklung

    • Cross Development

    • C++ Basics: Klassen, Konstruktoren und Destruktoren, Smart Pointer, Containertemplates

  • Python

    • Basics: Variablen, Datentypen, Control Flow

    • Modularisierung: Funktionen, Module, Packages

    • Auszüge aus der Python Standard Library

  • Laborübungen: Embedded Development mit Linux

Lernergebnisse der LV

Die Absolventinnen und Absolventen

  • Kennen Linux als Entwicklungsplatform

  • Kennen Linux als Zielplattform, indem sie die dortigen Betriebssystemkonzepte verinnerlichen

  • Können sich mit der Commandline (Shell) auf einem Linux-System zurechtfinden

  • Kennen die Eckpfeiler von Cross-Development

  • Können unter Linux Hardware ansteuern

  • Kennen die grundlegenden Merkmale von C++

  • Können in Python nichttriviale Programme schreiben

Empfohlene oder verpflichtende Fachliteratur und andere Lernressourcen bzw. –instrumente

  • Michael Kerrisk: The Linux Programming Interface: A Linux and UNIX System Programming Handbook

  • Jonathan Corbet, Allessandro Rubini, Greg Kroah-Hartman: Linux Device Drivers

  • W.Richard Stevens, Stephen A Rago: Advanced Programming in the UNIX Environment

  • David M. Beazley, Brian K. Jones: Python Cookbook: Recipes for Mastering Python 3

  • Mark Lutz: Learning Python: Powerful Object-Oriented Programming

  • Luciano Ramalho: Fluent Python: Clear, Concise, and Effective Programming

Art der Vermittlung

Integrierte Lehrveranstaltung, Übungsanteil 50%

Voraussetzungen und Begleitbedingungen

  • Informatik und Programmieren 1

  • Informatik und Programmieren 2

  • Embedded Systems

Prüfungsmethode und Beurteilungskriterien

  • Einzelprüfung (schriftlich) über den Inhalt der Vorlesung

  • Laborübungen