Advanced SCSI Programming Interface

From Wikipedia (De) - Reading time: 4 min

ASPI (Advanced SCSI Programming Interface, sinngemäß Erweiterte SCSI-Programmierschnittstelle) ist eine Programmierschnittstelle für die einheitliche Ansteuerung von CD-ROM- bzw. DVD-Laufwerken, insbesondere Brennern unter den Betriebssystemen MS-DOS, Windows, OS/2 und Netware. Anders als der Name vermuten lässt, wird ASPI nicht nur für tatsächliche SCSI-Geräte, sondern auch für Geräte mit ATAPI-, USB- und FireWire-Anschlüssen eingesetzt, da diese ebenfalls das SCSI-Kommunikationsprotokoll einsetzen.

Eine ASPI-Manager genannte Software stellt eine Schnittstelle zwischen sogenannten ASPI-Modulen (Gerätetreiber bzw. Anwendungen mit direkter SCSI-Unterstützung), einem SCSI-Hostadapter (ugs. SCSI-Controller), sowie daran angeschlossenen SCSI-Geräten zur Verfügung. Diese Software ist spezifisch für einen Hostadapter und ein Betriebssystem geschrieben; sein Hauptzweck ist dabei, die Eigenheiten des Hostadapters zu abstrahieren und eine einheitliche Zugriffsmethode zur Verfügung zu stellen.

Unter DOS wird diese Schnittstelle schließlich von einem ASPI-fähigen Laufwerkstreiber verwendet, der dem Betriebssystem den Laufwerksinhalt bereitstellt.

Unter Windows 9x und Windows NT ist der ASPI-Manager hingegen universell und stützt sich auf die bereits vom Betriebssystem bereitgestellten Gerätetreiber. Daher konzentrieren sich die Fähigkeiten des ASPI-Managers hier weniger auf eine ggf. bereits hergestellte SCSI-Verbindung, sondern auf das Senden von standardisierten SCSI-Kommandos an z. B. auch ATAPI-Geräte (SCSI-Pass-Through-Funktionalität), wie sie vor allem Brennprogramme benötigen, und das Erkennen dazu befähigter Geräte.

ASPI wurde etwa 1990 von Adaptec entwickelt, einem damals führenden Hersteller von SCSI-Hostadaptern. Vorbild war das im Jahr 1983 von Douglas Goodall erdachte Treibermodell für SCSI-Geräte an Ampro-Computern, das von einem eingeweihten Ampro-Mitarbeiter übernommen wurde, als er zu Adaptec wechselte.[1] Anfänglich wurden die Betriebssysteme DOS, Windows 3.x, OS/2 und Netware unterstützt. Ursprünglich konnten nur SCSI-Geräte angesprochen werden; mit der steigenden Verbreitung von CD-Brennern Mitte der 1990er-Jahre folgte Unterstützung für ATAPI-Geräte, da die bisher verwendete Schnittstelle noch keine Schreibzugriffe auf CDs vorsah. Die Hersteller von SCSI-Hostadaptern (zum Beispiel BusLogic, DPT, AMI, Future Domain, DTC) lieferten zusammen mit ihrer Hardware eigene ASPI-Manager aus,[2] womit sich ein softwareseitiger Standard etablierte.

Adaptec lieferte auch universelle DOS-Treiber für SCSI-Festplatten (ASPIDISK.SYS) und CD-ROM-Laufwerke (ASPICD.SYS). Für den Lesezugriff auf CD-/DVD-ROM-Laufwerke unter Windows 3.x reicht ein unter DOS installiertes Laufwerk aus, der Windows-3.x-Treiber (WNASPI.DLL) ist nur für Windows-Brennprogramme notwendig.

Unter DOS muss für SCSI Festplatten mit einer Kapazität von über 1 GiB das SCSI BIOS des Host Adapter eine Unterstützung für den Extended BIOS Translation Support bieten, dieses erlaubt dann Festplatten bis zu einer Größe von 8 GiB unter DOS zu verwenden. Alternativ zum SCSI BIOS kann auch der ASPIDISK.SYS Treiber geladen werden, der diese Unterstützung dann auch mitbringt.

Microsoft lizenzierte die ASPI-Treiber von Adaptec und lieferte sie zusammen mit seinen Windows 9x-Betriebssystemen aus. Währenddessen entwickelte Microsoft mit SPTI (SCSI Pass-Through Interface), einen hauseigenen Ersatz für ASPI zur Verwendung mit Windows NT. Daher wurde in 2000, XP und Windows Server 2003 zugunsten von SPTI auf einen eingebauten ASPI-Treiber verzichtet. Da der Standard jedoch schon weit verbreitet war, lieferten Hersteller von Hardware sowie von Brenner-Software weiterhin ASPI-Manager aus, um bestehende Kompatibilität beizubehalten. SPTI hingegen kann nicht auf anderen Systemen nachinstalliert werden.

Für die Unterstützung von USB-Laufwerken unter DOS entwickelte Panasonic einen universell verwendbaren ASPI-Treiber (USBASPI.SYS), der gleichzeitig das Fehlen von nativer USB-Unterstützung durch DOS umgeht.

Bei Adaptec endete im November 2003 mit der Versionsnummer 4.71.2 die Entwicklung der offiziellen ASPI-Treiber.

ASPI wird hauptsächlich durch die folgenden Treiber bereitgestellt.

Betriebssystem Treiberdatei(en) Mitgeliefert
DOS Ein Host-Adapter SCSI-Controller spezifischer Treiber (z. B. ASPI2DOS.SYS, ASPI4DOS.SYS, ASPIEDOS.SYS, ASPI7DOS.SYS, ASPI8DOS.SYS, ASPI8U2.SYS oder diverse OEM Treiber) und ASPIDISK.SYS (für SCSI-Festplatten wenn das SCSI BIOS des Host Controllers nicht installiert ist oder dieses für Festplatten über 1 GiB Größe nicht über das Feature Extended BIOS Translation Support verfügt), ASPICD.SYS (für SCSI CD-ROM-Laufwerke), USBASPI.SYS (für USB-Laufwerke)[3][4] Nein
OS/2 1.1 ASPI4OS2.SYS Nein
OS/2 2.1, Warp OS2ASPI.DMD Ja
NetWare 2.15 ASWNOVL.OBJ und ASWNOVL.DSK Nein
NetWare 3.x ASPITRAN.DSK Nein
Windows 3.1x WINASPI.DLL Nein
Windows 95, 98 und ME WNASPI32.DLL, WINASPI.DLL, APIX.VXD, ASPIENUM.VXD Ja
Windows NT, 2000, XP und 2003 WNASPI32.DLL, ASPI32.SYS Nein

Einzelnachweise

[Bearbeiten | Quelltext bearbeiten]
  1. Douglas W. Goodall – Ampro Computers. Abgerufen am 28. Januar 2017 (englisch): „I worked briefly at Ampro in order to modify the CP/M-80 BIOS for the Little Board Z80 to support SCSI hard disk operations. […] I suggested my skills would be better used working with a 16-bit card such as an 80186. […] I wrote the SCSI support for that board as well. […] I taught a staff employee the principles of my driver architecture. He then left Ampro and went to work for Adaptec, where he reproduced my driver architecture and it ended up being called ASPI.“
  2. Ben Myers: More on ASPI. (englisch).
  3. https://storage.microsemi.com/en-us/speed/scsi/dos/dosdrvr_exe.php
  4. https://web.archive.org/web/20210224001800/https://download.adaptec.com/scsi/dos/dosdrvr.exe

Licensed under CC BY-SA 3.0 | Source: https://de.wikipedia.org/wiki/Advanced_SCSI_Programming_Interface
11 views | Status: cached on November 22 2024 03:55:04
↧ Download this article as ZWI file
Encyclosphere.org EncycloReader is supported by the EncyclosphereKSF