Die SCSI2Pi-Host-Dienste

Die Host-Dienste sind ein besonderes SCSI-Gerät, das Teile der SCSI2Pi-Funktionalität per SCSI bereitstellt. Das heißt, dass jeder verbundene Computer SCSI2Pi zu einem gewissen Grad steuern kann. Zusätzlich bieten die Host-Dienste ein Echtzeituhr-Interface.
Für den Atari gibt es eine Reihe von Client-Tools, die sich der Host-Dienste bedienen. Aber diese Dienste sind nicht Atari-spezifisch und lassen sich mit jedem Computer nutzen sofern die erforderlichen SCSI-Aufrufe auf der Client-Seite implementiert sind. Was also benötigt wird ist eine Art Treiber für SCSI2Pi, ähnlich wie Treiber für Festplatten oder den DaynaPort-Netzwerk-Adapter benötigt werden. Für den Atari stellen die Client-Tools diesen Treiber dar.
Sie können das Host-Dienste-Gerät mit der PiSCSI-Weboberfläche, der SCSI-Control-App oder auf der Kommandozeile anlegen:

>s2p -i 6 services

Bei der Nutzung einer LUN (Untergerät) belegen die Host-Dienste nicht einmal eine eigene SCSI-ID:

>s2p -i 0 hard_drive_image.hds -i 0:1 services

In diesem Beispiel teilen sich die Host-Dienste eine SCSI-ID mit einer Festplatte. Die Festplatte ist LUN 0, die Host-Dienste belegen LUN 1.

Der Pi als Echtzeit-Uhr

Die SCSI2Pi-Host-Dienste stellen eigenen SCSI-Mode-Pages bereit, mit denen Clients das aktuelle Datum und die Uhrzeit abfragen können, inklusive Sommerzeit-Unterstützung. Die SCSI2Pi-Quelltexte (host_services.cpp und host_services.h liefern Details zur Nutzung dieser Uhr.

Herunterfahren oder Neustarten von SCSI2PI oder dem Pi

Ein SCSI-Kommando kann SCSI2Pi herunterfahren oder den Pi herunterfahren bzw. neu starten. Dies ist insbesondere dann nützlich, wenn der Pi durch den Computer mit Strom versorgt wird, und Sie sicherstellen wollen, dass SCSI2Pi und der Pi ordentlich heruntergefahren werden, bevor der Computer ausgeschaltet wird. Beim Herunterfahren von SCSI2Pi werden die Caches aller Geräte automatisch gesichert.

SCSI2Pi mit dem verbundenen Computer verwalten

Das s2pctl Kommandozeilen-Tool, die PiSCSI-Weboberfläche und die SCSI-Control-App nutzen das SCSI2Pi Remote-Interface. Mit diesem Interface, das eine Netzwerkverbindung zum Pi voraussetzt, lassen sich Teile der SCSI2Pi-Funktionalität steuern. Sie können beispielsweise Geräte hinzufügen/entfernen, den Log-Level ändern, Medien auswerfen und vieles mehr. Als Faustregel gilt, dass alles was die SCSI-Control-App bietet auch mit diesem Interface gesteuert werden kann.
Der mit dem PiSCSI-Board verbundene Computer kann dieselbe Funktionalität nutzen, indem er SCSI-Kommandos an SCSI2Pi sendet, ohne dass eine Netzwerk-Verbindung benötigt wird. Das Gerät, das diese Kommandos empfängt und ausführt, ist das Host-Dienste-Gerät (SCHS). Jeder Computer kann SCSI2Pi mit SCSI-Kommandos steuern, wobei die Client-Tools für den Atari bereits einige Beispielanwendungen enthalten, wie das Setzen des Log-Levels.
Die Quelltexte der Host-Dienste enthalten weitere Informationen.