Operating Systems Principles SS2006: Difference between revisions

From
Jump to navigation Jump to search
No edit summary
No edit summary
Line 28: Line 28:


= Aufgaben =
= Aufgaben =

== 1. Aufgabe ==
== 1. Aufgabe ==


* Beschaffen Sie siche die Kernel-Quellen und übersetzen/installieren sie diese auf dem Ihnen zugeordneten System. Der Abschnitt "Administratives" beschreibt, wie sie auf das System zugreifen können. Die Zugangsdaten werden im ersten Praktikum vergeben.
* Implementieren Sie ein Modul sarlkm.ko, welches ein Pseudo-File /proc/sarlkm bereitstellt nachdem es geladen wurde. Das File soll Folgendes enthalten:
<Prompt><Praktikumsgruppe>, <Anzahl Sekunden seit Systemstart>
* Implementieren Sie einen System-Call, der den Prompt der vorangegangenen Teilaufgabe setzen kann und den Wert des alten Prompts zurückliefert. Schreiben Sie ein Programm, das über die Kommandozeile die Parameter entgegennimmt und den soeben implementierten System-Call durchführt.

== 2. Aufgabe ==

Implementieren Sie eine einfache Shell mit folgender Funktionalität:
* Bereitstellen einer Kommandozeile und Ausführen eines Programms mit Kommandozeilenparametern. Als Prompt soll das aktuelle Arbeitsverzeichnis angezeigt werden (relativ zum Einstiegspunkt).
prompt> prog args
* Ausführen eines Programms im Hintergrund mit Rückgabe der Prozess-ID im Erfolgsfall.
prompt> prog args
[pid]
* Warten auf Hintergrundprozesse.
prompt> wait [pid]
* Wechseln des Arbeitsverzeichnisses.
prompt> cd dir


= Links =
= Links =

Revision as of 06:13, 18 April 2006

Administratives

Für die Durchführung des Praktikums wird vom Lehrstuhl für jede Gruppe eine virtuelle Maschine mit SuSE Linux 9.3 zur Verfügung gestellt. Passwörter für den Zugang gibt es in der ersten Woche in der Vorlesung bzw. der Praktikumsveranstaltung.

SSH-Zugang

Für die Arbeiten in der Shell ist jede VM mit einem SSH-Zugang ausgestattet. Der SSH-Dienst ist je nach Gruppe unter einem anderen Port und nur von innerhalb des Uni-Netzes zu erreichen. Der Port leitet sich von der Gruppennummer wie folgt ab: 22xx, wobei xx für die Nummer der Gruppe steht, also Port 2201 für die Gruppe osp01, 2202 für Gruppe osp02 usw.

Gruppe osp01 kann sich also innerhalb der Uni so einloggen:

$ ssh sarprk -p 2201 -l root

VMware-Consolen-Zugang

Falls es nötig sein sollte die VM neu zu starten, andere Kernel zu testen o.ä., besteht die Möglichkeit sich per VMware-Console mit dem Server zu verbinden. Dafür braucht man die VMware-Console von hier:

  • Für Linux (RPM)
  • Für Linux (tar.gz)
  • Für Windows

Nach der Installation kann man sich mit folgenden Daten verbinden:
Host name: sarprk.informatik.hu-berlin.de
User name: ospxx
Passwort: (wie erhalten)

Datensicherung

Wir führen keine Sicherung der VMs oder der beinhalteten Daten durch - hierfür sind die Studenten selbst verantwortlich!


Aufgaben

1. Aufgabe

  • Beschaffen Sie siche die Kernel-Quellen und übersetzen/installieren sie diese auf dem Ihnen zugeordneten System. Der Abschnitt "Administratives" beschreibt, wie sie auf das System zugreifen können. Die Zugangsdaten werden im ersten Praktikum vergeben.
  • Implementieren Sie ein Modul sarlkm.ko, welches ein Pseudo-File /proc/sarlkm bereitstellt nachdem es geladen wurde. Das File soll Folgendes enthalten:
<Prompt><Praktikumsgruppe>, <Anzahl Sekunden seit Systemstart>
  • Implementieren Sie einen System-Call, der den Prompt der vorangegangenen Teilaufgabe setzen kann und den Wert des alten Prompts zurückliefert. Schreiben Sie ein Programm, das über die Kommandozeile die Parameter entgegennimmt und den soeben implementierten System-Call durchführt.

2. Aufgabe

Implementieren Sie eine einfache Shell mit folgender Funktionalität:

  • Bereitstellen einer Kommandozeile und Ausführen eines Programms mit Kommandozeilenparametern. Als Prompt soll das aktuelle Arbeitsverzeichnis angezeigt werden (relativ zum Einstiegspunkt).
prompt> prog args
  • Ausführen eines Programms im Hintergrund mit Rückgabe der Prozess-ID im Erfolgsfall.
prompt> prog args
[pid]
  • Warten auf Hintergrundprozesse.
prompt> wait [pid]
  • Wechseln des Arbeitsverzeichnisses.
prompt> cd dir

Links