Zunächst eine kurze Einleitung in das Gebiet Systemprogrammierung. Nun, Systemprogrammierung
beschäftigt sich mit etwas, was man auch als Softwaregetriebe eines Rechensystems bezeichnen
könnte. Wenn man mal Getriebe an sich halt nehmt, dann meint man damit eine Vorrichtung in Maschinen,
die Bewegungen überträgt und die Maschine funktionstüchtig halt macht. Nur in unserem
Fall wären die Vorrichtung die Systemprogramme, die Maschine um die es geht, ist das Rechensystem.
Und die Bewegungen, die zu übertragen wären, sind Prozesse, die innerhalb des Rechensystems
stattfinden sollen. Dieses Softwaregetriebe ist eine Infrastruktur und damit eigentlich ein
Unterbau als Voraussetzung für die Versorgung und die Nutzung des Rechners, der Rechnerhardware,
aber eben auch der verfügbaren Software auf einem Rechensystem. Die Systemprogrammierung
entwickelt systemnahe Software. Da geht es um Systemprogramme, die beispielsweise Teile
eines Betriebssystems sind oder eben mit dem Betriebssystem mehr oder weniger direkt interagieren,
aber eben auch eine Interaktion mit der Hardware durchführen. Bei Hardware meinen wir jetzt
hier etwas so was wie die Zentraleinheit, also die CPU, heute in Form sogenannter mehrkerniger
Prozessoren oder eben die Peripherie an solch einem Rechensystem, nämlich die Geräte
für die eine Ausgabe oder Geräte für die Steuerung und Regelung externer Prozesse. All diese Dinge
müssen betrieben werden. Diesen Betrieb leistet letztendlich eine Ansammlung von Systemprogrammen.
Eine zentrale Komponente dabei ist das Betriebssystem selbst. Das ist ein Bindeglied, was wir hier sehen,
die Systemsoftware als Bindeglied, die dann aber schon mal zwischen verschiedenen Stühlen sitzt.
Auf der einen Seite haben wir die Anwendungssoftware, die gilt es zu ermöglichen einerseits,
das heißt, das sind Programme zu entwickeln, die eine Anwendung ausmachen. Dann sollen diese
Anwendungsprogramme ablaufen und der Ablauf ist zu unterstützen und keinesfalls soll es so sein,
dass man praktisch diesem Anwendungszweck entgegenwirkt mit den Maßnahmen, die man praktisch
in Form der Systemsoftware getroffen hat. Andererseits haben wir Plattformen, Plattformsysteme,
auf denen diese Anwendungsprogramme ablaufen sollen. Diese Plattformen, also dieser Rechner,
Hardware etwa, sollte anwendungsspezifisch verfügbar gemacht werden und sie ist eben
insbesondere problemorientiert zu betreiben. Hin und wieder sind eben auch nachteilige
Eigenschaften dieser Plattformen zu kaschieren. Zumindest versucht man dies zu kaschieren,
sodass diese nachteiligen Eigenschaften sich nicht bis zur Anwendungsebene hindurchziehen werden.
In einem weiteren Sinne können wir die Systemprogrammierung und zumindest so wie wir
es in der Lehrveranstaltung betrachten werden, eben als Programmierwerkbank verstehen. Das heißt,
einen Arbeitstisch zu haben für die Entwicklung von Programmen und dann Werkzeuge nutzen können
und bereitstellen zu können, um diese Programme letztendlich auch entwickeln zu können und zum
Ablauf zu bringen. Der Arbeitstisch etwa wären Betriebssystemplattformen, die man geboten bekommt,
und die Werkzeuge wären sowas wie Compiler, Editore, die waren Bibliotheken, die eben auf
solch einem Rechensystem denn zur Verfügung gestellt werden, damit die Anwendungen halt
entsprechend ablaufen können. Nun diese Philosophie einer Programmier-Werkbank ist recht alt. Seit
über fünf Jahrzehnten wird sie durch Unix-artige Systeme betrieben. Unix ist heute allgegenwärtig,
kann man fast sagen, auch wenn wir meinen, mit Windows ein System vorzufinden, das wenig mit
Unix gemeinsam hat. Gleichwohl existieren die gleichen Ideen von Arbeitstischen und von Werkzeugen
auch auf Windows-Systemen. Erst recht ist sowas sichtbar, wenn wir Linux zum Beispiel als Grundlage
ein Teil von uns haben. Das ist ein sehr unix-nahes System oder auch Mac OS. In dem Sinne ist diese
Lehrveranstaltung Systemprogrammierung eben auch allgemein zu sehen, die bestimmten Prinzipien
einer sogenannten Programmierwerkbank folgt und wir das insbesondere in dem Übungsbereich,
in dem praktischen Bereich sehen werden.
Presenters
Zugänglich über
Offener Zugang
Dauer
00:05:24 Min
Aufnahmedatum
2020-04-20
Hochgeladen am
2020-04-20 19:06:16
Sprache
de-DE