Embedded Computing 1 (Deutsch)
==============================

.. contents::
   :local:


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