software:vorstellung:exchanges:transfolio
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
software:vorstellung:exchanges:transfolio [13/03/2010 09:03] – Link aktualisiert 8088 | software:vorstellung:exchanges:transfolio [08/02/2023 22:02] (aktuell) – Credits am Seitenanfang eingefügt bttr | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
====== Einsatz und Funktionsweise des internen Datenübertragungsprogramms ====== | ====== Einsatz und Funktionsweise des internen Datenübertragungsprogramms ====== | ||
+ | |||
+ | Ursprungstext: | ||
===== Einführung ===== | ===== Einführung ===== | ||
Zeile 18: | Zeile 20: | ||
Die aktuelle Version von Transfolio ist unter http:// | Die aktuelle Version von Transfolio ist unter http:// | ||
- | ==== Systemvoraussetzungen ==== | ||
- | Das vorkompilierte TRANSFOLIO.EXE benötigt für die Zugriffe auf den Parallelport | + | ==== Systemvoraussetzungen ==== |
+ | Das vorkompilierte TRANSFOLIO.EXE | ||
+ | TRANSFOLIO.EXE verwendet die voreingestellte Port-Adresse 0x378. Insbesondere bei Verwendung einer PCI-Schnittstellenkarte kann die tatsächliche Adresse des Parallelports davon abweichen und muss dem Programm mit dem Kommandozeilenparameter -p < | ||
Die Linux-Version benötigt das Kernelmodul ppdev, das für die Parallelportgerätedateien / | Die Linux-Version benötigt das Kernelmodul ppdev, das für die Parallelportgerätedateien / | ||
Zeile 216: | Zeile 219: | ||
=== Datei anfordern === | === Datei anfordern === | ||
- | Der erste Schritt vor der Übertragung einer Datei besteht darin, ihre Existenz auf dem Server zu erfragen. Dazu dient die oben beschriebene | + | Der erste Schritt vor der Übertragung einer Datei besteht darin, ihre Existenz auf dem Server zu erfragen. Dazu dient die oben beschriebene |
- | ^ Offset ^ Inhalt | + | ^ Offset |
- | | | + | | |
- | | | + | | |
- | | | + | | |
- | | | + | | |
- | | ... | + | | ... |
- | | 3+len | 00 | + | | |
- | | ... | + | | ... |
- | | | + | | 81 | ... |
- | Der Portfolio antwortet hierauf mit einem 11 Byte langen Datenblock, der u.a. die Dateilänge enthält: | + | Der Portfolio antwortet hierauf mit einem 11 Byte langen Datenblock, der u. a. die Dateilänge enthält: |
- | ^ Offset | + | ^ Offset |
- | | | + | | |
- | | | + | | |
- | | | + | | |
- | | | + | | |
- | | | + | | |
- | | | + | | |
- | | | + | | |
- | | | + | | |
- | | | + | | |
- | | | + | | |
- | | | + | | 10 | n-HighHigh |
+ | |||
+ | Direkt im Anschluss folgt die Übertragung der Nutzdaten in einem oder mehreren Datenblöcken. Die Anzahl der benötigten Datenblöcke hängt von der Dateigröße und der Puffergröße des Portfolio ab. Die Puffergröße wiederum ist abhängig vom Arbeitsspeicher des Portfolio und liegt typischerweise bei 7.000 hex Byte = 28.672 Byte. | ||
- | Direkt im Anschluss folgt die Übertragung der Nutzdaten in einem oder mehreren Datenblöcken. Die Anzahl der benötigten Datenblöcke hängt von der Dateigröße und der Puffergröße des Portfolio ab. Die Puffergröße wiederum ist abhängig vom Arbeitsspeicher des Portfolio und liegt typischer Weise bei 7000 hex Byte = 28672 Byte. | ||
Wurden alle Datenblöcke empfangen, schließt der Empfänger die Kommunikation durch folgenden Datenblock ab: | Wurden alle Datenblöcke empfangen, schließt der Empfänger die Kommunikation durch folgenden Datenblock ab: | ||
- | ^ Offset ^ Inhalt | + | ^ Offset |
- | | | + | | |
- | | | + | | |
- | | | + | | |
=== Datei versenden === | === Datei versenden === | ||
Zeile 255: | Zeile 259: | ||
Beim Übertragen einer lokalen Datei zum Server wird als erstes ein Datenblock gesendet, der insbesondere den Zieldateinamen und die Dateilänge beinhaltet: | Beim Übertragen einer lokalen Datei zum Server wird als erstes ein Datenblock gesendet, der insbesondere den Zieldateinamen und die Dateilänge beinhaltet: | ||
- | ^ Offset ^ Inhalt | + | ^ Offset |
- | | | + | | |
- | | | + | | |
- | | | + | | |
- | | | + | | |
- | | | + | | |
- | | | + | | |
- | | | + | | |
- | | | + | | |
- | | | + | | |
- | | | + | | |
- | | | + | | 10 | n-HighHigh |
- | | | + | | 11 |
- | | ... | + | | ... |
- | | 11+len | 00 | + | | 11+len |
- | | ... | + | | ... |
- | | | + | | 89 | ... |
Der Server antwortet mit 3 Byte, die darüber Aufschluss geben, ob die Datei auf dem Server schon vorhanden ist und in wie großen Blöcken der Dateiinhalt versendet werden kann: | Der Server antwortet mit 3 Byte, die darüber Aufschluss geben, ob die Datei auf dem Server schon vorhanden ist und in wie großen Blöcken der Dateiinhalt versendet werden kann: | ||
- | ^ Offset ^ Inhalt | + | ^ Offset |
- | | | + | | |
- | | | + | | |
- | | | + | | |
Gegebenenfalls kann der Sender die Datei mit folgendem Kommando überschreiben lassen: | Gegebenenfalls kann der Sender die Datei mit folgendem Kommando überschreiben lassen: | ||
- | ^ Offset ^ Inhalt | + | ^ Offset |
- | | | + | | |
- | | | + | | |
- | | | + | | |
Wenn das Überschreiben vom Benutzer nicht gewünscht wird, beendet er die Kommunikation durch das Abbruchkommando: | Wenn das Überschreiben vom Benutzer nicht gewünscht wird, beendet er die Kommunikation durch das Abbruchkommando: | ||
- | ^ Offset ^ Inhalt | + | ^ Offset |
- | | | + | | |
- | | | + | | |
- | | | + | | |
- | Sofern die Übertragung nicht abgebrochen wurde, können jetzt die Nutzdaten in einem oder mehreren Blöcken versendet werden. Die maximale Blocklänge richtet sich nach der Puffergröße, | + | Sofern die Übertragung nicht abgebrochen wurde, können jetzt die Nutzdaten in einem oder mehreren Blöcken versendet werden. Die maximale Blocklänge richtet sich nach der Puffergröße, |
- | ^ Offset ^ Inhalt | + | Sobald alle Datenblöcke erfolgreich transferiert wurden, quittiert der Server schließlich noch einmal mit einer 3-Byte-Sequenz: |
- | | | + | |
- | | | + | ^ Offset |
- | | | + | | |
+ | | | ||
+ | | | ||
- | ---- | ||
- | Klaus Peichl, 2006-02-05 |
software/vorstellung/exchanges/transfolio.1268468827.txt.gz · Zuletzt geändert: 16/02/2024 17:02 (Externe Bearbeitung)