libspicboard-doc
Disclaimer
Diese Seite ist alles an Support, das wir fürs Programmieren von Zuhause oder auf dem eigenen Rechner anbieten. Wenn es nicht klappt, geht bitte in die CIP-Pools.
Mittels Virtuellen Maschine (VM)
Grundlagen
Mittels einer Virtuellen Maschine (VM) kann ein Gastbetriebssystem (z.B. Debian Linux) auf eurem PC/Notebook (Host) gestartet werden – auf dem ihr ein gänzlich anderes Betriebssystem (z.B. Windows) verwendet. Bei der Vollvirtualisierung wird auch die Hardware wegabstrahiert, so kann der Inhalt des virtuellen Bildschirms in einem Fenster (mit beliebiger Größe) angezeigt werden und die gesamte virtuelle Festplatte ist im Host nur eine einzige Datei. Zugriff auf externe Geräte kann bei Bedarf erlaubt werden, z.B. auf USB, weitere Zusätze erlauben dynamische Anpassung der Fenster/Bildschirmgröße oder den nahtlosen Übergang der Maus zwischen Gast und Host. Durch hardwareunterstützte Virtualisierung ist meist kein Performanceunterschied zwischen Gast und Host erkennbar. Nach der Installation der Virtualisierungssoftware können beliebige VMs hinzugefügt und wieder gelöscht werden, ohne das dies (abgesehen vom Speicherplatz) Auswirkungen auf das Host-System hat.
Voraussetzung
Für die Ausführung der VM wird eine 64-bit Architektur (AMD64/x86_64) mit Virtualisierungsunterstützung benötigt. Dies muss ggf. im BIOS aktiviert werden, gängige Bezeichnungen dafür sind "Virtualization Technology", "VT-x" oder "AMD-V" (nähere Details im Handbuch zu eurem PC).
Um unter Windows zu prüfen, ob die Unterstützung aktiviert ist, könnt ihr den Task-Manager starten (z.B. durch Rechtsklick auf die Taskleiste), in der erweiterten Ansicht auf den Tabulator Leistung wechseln und dort CPU anwählen – im Hauptfenster ist nun der Zustand im Eintrag Virtualisierung ersichtlich

Außerdem darf kein weiterer Hypervisor (wie z.B. Hyper-V) zeitgleich laufen, dieser muss dann deaktivert werden.
Installation
Für die Entwicklung von zu Hause gibt es eine Virtuelle Maschine mit der SPiC-IDE und einer dem CIP ähnlichen Umgebung (Debian 10). Dafür muss auf eurem Rechner VirtualBox (ab Version 6.1) zusammen mit dem Extension Pack installiert werden, abhängig von eurem Betriebssystem:
- Windows: Download VirtualBox-6.1.32 und Extension Pack
- MacOS X: Download VirtualBox-6.1.32 und Extension Pack
- Linux: Paketquellen nach Distribution sowie das zur entsprechenden Version passende Extension Pack.
Nach der Installation von VirtualBox und dem Extension Pack muss die VM heruntergeladen werden:
In VirtualBox kann die VM über Datei / Appliance importieren... geladen werden.
Verwendung
Der Benutzer lautet i4spic
und das Passwort ist immer i4spic
.
Ähnlich dem CIP kann mit der Windows-Taste dann SPiC-IDE oder ein Klick auf das Icon unten die SPiC-IDE gestartet werden.
Die IDE fragt nach einem login, das ist Deine idm-Kennung.
Danach, fragt die IDE nach einem Verzeichnis, das dann automatisch lokal angelegt wird und Dein Projekt-Repo aus dem CIP dort synchronisiert.
Hier kannst Du einfach irgendwas eingeben, z. B. spic
.
Final fragt das Programm noch nach Deinem CIP-Passwort.
Theoretisch kannst Du nun Deine Hausaufgabe hier programmieren und auch abgeben.
Um Deine Abgabe außerhalb des CIP zu prüfen, kannst du ssh DEINE_KENNUNG@cipterm0.cs.fau.de /proj/i4spic/bin/show-submission
in einem Terminal ausführen.
Zusätzlich gibt es den Startmenüeintrag SPiC-IDE (remote CIP), welcher bei bestehender Internetverbindung euer SPiC Benutzerverzeichnis im CIP (entsprechenden Benutzernamen und Passwort verwenden) mit der VM verknüpft. Hier könnt ihr dann Abgaben tätigen.
- Note
- Bei Abbruch der Internetverbindungen können ungespeicherte Daten verloren gehen. Versucht entweder regelmäßig zu speichern oder entwickelt lokal und kopiert die Datei dann in den CIP – dies ist auch über den Editor möglich, da beide Projektverzeichnisse angezeigt werden.
Entfernter Zugriff auf den CIP mittels Xpra
Es ist auch möglich, mittels Xpra eine Bildschirmübertragung aus dem CIP zu starten: Der Editor wird dabei auf einem Rechner im CIP ausgeführt, die Bildschirmausgabe an euren PC übertragen und eure Eingaben werden wieder an den entsprechenden Rechner zurückgeschickt und verarbeitet.
Ein per USB angeschlossenes Hardware SPiCboard könnt ihr über Xpra nicht programmieren.
- Note
- Diese Möglichkeit sollte nur bei unlösbaren Problemen mit der VM verwendet werden. Da die komplette Ausgabe übertragen werden muss, ist es merklich langsamer als die VM, verbraucht mehr Bandbreite und zudem ist eine permanente Internetverbindungen zwingend notwendig – bei einem Abbruch werden alle ungespeicherte Daten verloren gehen.
Native Anwendung
Für fortgeschrittene Benutzer ist es auch möglich statt der Webanwendung einen Xpra-Client zu installieren. Für die Verbindung muss Xpra
über die Kommandozeile gestartet werden, mit dem Parameter start ssh:BENUTZER@RECHNER.cip.cs.fau.de
wird mittels Secure Shell eine Xpra Session gestartet (wobei der CIP Nutzer und ein Host wie cip6a0
entsprechend verwendet werden müssen) und mit –exit-with-children –start-child="/proj/i4spic/bin/editor"
die SPiC IDE gestartet.
Unter Windows wäre der Befehl entsprechend:
Xpra.exe start ssh:uj66o --exit-with-children --start-child="/proj/i4spic/bin/editor" jab@ cip6c 0.ci p.cs. fau. de
Weitere Möglichkeiten
Nachfolgende Anleitungen sollen motivierten und fachlich versierte Studierenden dabei helfen, das SPiCboard zu Hause anzuschließen und eigenständig zu entwickeln, gerne auch über den Umfang der Lehrveranstaltung hinaus. Dies erfordert allerdings ein gewisses Maß an Eigenständigkeit: Die erste Anlaufstelle sollten die Referenzen sein, welche sowohl auf umfangreiche Nachschlagewerke als auch empfehlenswerte Tutorials für Einsteiger verweisen. Die Verwendung von Suchmaschinen und einschlägige Frage-und-Antwort-Plattform zum Thema Softwareentwicklungen sollten ebenfalls vor dem Tutor besucht werden.