Zusi 3 TCP-Protokoll-Implementation für .Net
Re: Zusi 3 TCP-Protokoll-Implementation für .Net
Ich gehe davon aus, dass du dein Programm noch nicht auf einem BigEndian-System getestet hast, Jens?
Diese Signatur möchte folgendes bekannter machen: ZusiWiki · ZusiSK: Streckenprojekte · YouTube: Objektbau für Zusi · euirc: Zusi-Chat
-
- Beiträge: 8967
- Registriert: 04.11.2001 19:57:46
- Aktuelle Projekte: Zusi3 Objektbau
- Kontaktdaten:
Re: Zusi 3 TCP-Protokoll-Implementation für .Net
Wie relevant sind denn Systeme vom Schlage SPARC, PPC, m68k als Plattform im Zusi-Umfeld
Mein Youtube-Kanal: youtube.com/echoray1
- Jens Haupert
- Beiträge: 4920
- Registriert: 23.03.2004 14:44:34
- Aktuelle Projekte: http://www.zusidisplay.de
- Wohnort: Berlin
- Kontaktdaten:
Re: Zusi 3 TCP-Protokoll-Implementation für .Net
Welches System wäre das zum Beispiel im Zusi-Bereich?
Edith meint: Alwin war schneller
Edith meint: Alwin war schneller
Zuletzt geändert von Jens Haupert am 15.03.2016 19:14:37, insgesamt 1-mal geändert.
Re: Zusi 3 TCP-Protokoll-Implementation für .Net
ARM vielleicht? Die sind ja scheinbar Hybrid, so dass man sich darauf nicht verlassen könnte.
Jedenfalls muss man das irgendwie abdecken. Mindestens durch eine Ausnahme bei BigEndian-Systemen. Alles andere wäre Schluderei.
Jedenfalls muss man das irgendwie abdecken. Mindestens durch eine Ausnahme bei BigEndian-Systemen. Alles andere wäre Schluderei.
Diese Signatur möchte folgendes bekannter machen: ZusiWiki · ZusiSK: Streckenprojekte · YouTube: Objektbau für Zusi · euirc: Zusi-Chat
- Jens Haupert
- Beiträge: 4920
- Registriert: 23.03.2004 14:44:34
- Aktuelle Projekte: http://www.zusidisplay.de
- Wohnort: Berlin
- Kontaktdaten:
Re: Zusi 3 TCP-Protokoll-Implementation für .Net
Das ist aber bestenfalls ein akademischer Ansatz (hups, das würde mich dann ja betreffen). Ich bleibe pragmatisch und befasse mit micht interessanteren/wichtigeren Themen.
Grüße
Jens
Grüße
Jens
Re: Zusi 3 TCP-Protokoll-Implementation für .Net
ARM? Nein. Ich denke, dass auf Raspberrys der ideale Ort für Displays ist, solange man irgendjemand gefunden hat, der .Net schon drauf zum laufen gebracht hätte. Keine Ahnung, ob das schon der Fall ist.
Diese Signatur möchte folgendes bekannter machen: ZusiWiki · ZusiSK: Streckenprojekte · YouTube: Objektbau für Zusi · euirc: Zusi-Chat
- Jens Haupert
- Beiträge: 4920
- Registriert: 23.03.2004 14:44:34
- Aktuelle Projekte: http://www.zusidisplay.de
- Wohnort: Berlin
- Kontaktdaten:
Re: Zusi 3 TCP-Protokoll-Implementation für .Net
Selbst wenn's ginge (tuts nicht) -> zu langsam. Glaub's mir einfach.
Re: Zusi 3 TCP-Protokoll-Implementation für .Net
Nö. Nicht in Anbetracht dessen, was ich da experimentell schon alles für Unfug drauf laufen hab lassen... Aber gut, wenn ich Zeit finde, kann ich ja mal schauen. Momentan ist er allerdings fest für ein paar bestimme Aufgaben verbaut...
Diese Signatur möchte folgendes bekannter machen: ZusiWiki · ZusiSK: Streckenprojekte · YouTube: Objektbau für Zusi · euirc: Zusi-Chat
- Max Senft
- Administrator
- Beiträge: 3004
- Registriert: 04.11.2001 14:01:40
- Aktuelle Projekte: Dies und das
- Wohnort: Blieskastel, Saarland, Deutschland
- Kontaktdaten:
Re: Zusi 3 TCP-Protokoll-Implementation für .Net
Hi,
was eine Diskussion *schüttel*. Wenn es denn unbedingt alle Endianesen (absichtlich falsch geschrieben ) abdecken will, wird man wohl um das manuelle Drehen der Datenwörter nicht rumkommen. Zu ermitteln ob ein System nun Little oder Big Endian ist, ist recht einfach mit der IsLittleEndian Eigenschaft des BitConverters zu machen. Wenn das false ist -> Drehen und wandeln. Wenn das true ist -> direkt wandeln.
Da ich leider auch immer wieder dazu neige alle ach so unwahrscheinlichen Fälle abzudecken, würde ich es vermutlich auch implementieren. Wenn es schnell gehen soll und/oder der Aufwand zu groß werden würde, lasse ich es meistens bis es mir dann doch irgendwann auf die Füße fällt.
Meiner Meinung nach ist bei der Sache aber am aller wichtigsten, dass überhaupt an so etwas wie Endianess gedacht wird. Das ist ja leider nicht immer der Fall.
Gruß
Max
was eine Diskussion *schüttel*. Wenn es denn unbedingt alle Endianesen (absichtlich falsch geschrieben ) abdecken will, wird man wohl um das manuelle Drehen der Datenwörter nicht rumkommen. Zu ermitteln ob ein System nun Little oder Big Endian ist, ist recht einfach mit der IsLittleEndian Eigenschaft des BitConverters zu machen. Wenn das false ist -> Drehen und wandeln. Wenn das true ist -> direkt wandeln.
Da ich leider auch immer wieder dazu neige alle ach so unwahrscheinlichen Fälle abzudecken, würde ich es vermutlich auch implementieren. Wenn es schnell gehen soll und/oder der Aufwand zu groß werden würde, lasse ich es meistens bis es mir dann doch irgendwann auf die Füße fällt.
Meiner Meinung nach ist bei der Sache aber am aller wichtigsten, dass überhaupt an so etwas wie Endianess gedacht wird. Das ist ja leider nicht immer der Fall.
Gruß
Max
Administrator, Programmierer, Ansprechpartner bei Problemen mit dem Board
- Roland Ziegler
- Beiträge: 5508
- Registriert: 04.11.2001 22:09:26
- Wohnort: 32U 0294406 5629020
- Kontaktdaten:
Re: Zusi 3 TCP-Protokoll-Implementation für .Net
So sollte man es handhaben. Und schließlich läuft Jens' Implementierung für ZusiDisplay seit Jahren, auch für Zusi3.Jens Haupert hat geschrieben:Ich bleibe pragmatisch und befasse mit micht interessanteren/wichtigeren Themen.
Es gehört zu dem Erfahrungsschatz eines Entwicklers, wahrscheinliche zukünftige Anforderungen vorauszusehen und unwahrscheinliche auszusortieren. Letzteres geschieht hier. Aber selbst wenn man variable Endianess vorsehen wollte, dann würde man sie in einen eigenen BinaryReader verpacken und fertig. Einfach und sauber und im Sinne der .Net-Framework-Architektur. Dieses Wenn und Aber führt zu rein gar nichts, oder doch: zu Code Bloat.
Re: Zusi 3 TCP-Protokoll-Implementation für .Net
Ich nehme das zum Anlass, das Provisorium mal erst mal zu lassen. Denn wenn es neue Funktionen gibt, dann sicher nicht in der dieser Abstraktionsebene.Roland Ziegler hat geschrieben:So sollte man es handhaben. Und schließlich läuft Jens' Implementierung für ZusiDisplay seit Jahren, auch für Zusi3.Jens Haupert hat geschrieben:Ich bleibe pragmatisch und befasse mit micht interessanteren/wichtigeren Themen.
Es gehört zu dem Erfahrungsschatz eines Entwicklers, wahrscheinliche zukünftige Anforderungen vorauszusehen und unwahrscheinliche auszusortieren.
Diese Signatur möchte folgendes bekannter machen: ZusiWiki · ZusiSK: Streckenprojekte · YouTube: Objektbau für Zusi · euirc: Zusi-Chat
- Jens Haupert
- Beiträge: 4920
- Registriert: 23.03.2004 14:44:34
- Aktuelle Projekte: http://www.zusidisplay.de
- Wohnort: Berlin
- Kontaktdaten:
Re: Zusi 3 TCP-Protokoll-Implementation für .Net
Wir widmen uns dem Thema einfach wieder, sobald ein realisitisches und konkretes Szenario autritt.
Grüße
Jens
Grüße
Jens
Zuletzt geändert von Jens Haupert am 16.03.2016 08:05:43, insgesamt 1-mal geändert.
- Max Senft
- Administrator
- Beiträge: 3004
- Registriert: 04.11.2001 14:01:40
- Aktuelle Projekte: Dies und das
- Wohnort: Blieskastel, Saarland, Deutschland
- Kontaktdaten:
Re: Zusi 3 TCP-Protokoll-Implementation für .Net
Hi.
Gruß
Max
Deswegen gab es von mir auch mal die Nachfrage, warum diese jahrelang getestete Implementierung nicht veröffentlicht werden kann. Verstehe ich auch nicht so 100%ig.Roland Ziegler hat geschrieben:So sollte man es handhaben. Und schließlich läuft Jens' Implementierung für ZusiDisplay seit Jahren, auch für Zusi3.
Gruß
Max
Administrator, Programmierer, Ansprechpartner bei Problemen mit dem Board
- Carsten Hölscher
- Administrator
- Beiträge: 33436
- Registriert: 04.07.2002 00:14:42
- Wohnort: Braunschweig
- Kontaktdaten:
Re: Zusi 3 TCP-Protokoll-Implementation für .Net
Weil es laufend Änderungen gab und es für mich viel einfacher ist, das kurz formlos mit Jens zu besprechen als einen größeren Kreis an Nutzern zu haben. Zusi 3 sollte ja irgendwann mal fertig werden.
Carsten
Carsten
Re: Zusi 3 TCP-Protokoll-Implementation für .Net
Sehe da aber eigentlich nur wenige Sachen, wo man sich hätte über das Protokoll beschweren können, erst recht, wenn man sich darauf beschränkt, was man jetzt im Nachhinein besser nicht mehr ändert:
1) die von Roland angesprochene Payload-Angabe (war Roland eigentlich nicht eingeweiht )
2) das Paket 00 0A hätte so strukturiert seien sollen, dass die Daten jedes beliebigen Zuges auf die selbe Art- und Weise übertragen werden können, wobei ich das erst mal nur als Vorrüstung gesehen hätte.
3) das bool-Werte mal als Word und mal als Byte übertragen werden.
Aber ansonnsten ist das Protokoll ja schon recht gut erweiterbar gehalten. Wüsste also nicht, warum ich mich beschweren sollte.
1) die von Roland angesprochene Payload-Angabe (war Roland eigentlich nicht eingeweiht )
2) das Paket 00 0A hätte so strukturiert seien sollen, dass die Daten jedes beliebigen Zuges auf die selbe Art- und Weise übertragen werden können, wobei ich das erst mal nur als Vorrüstung gesehen hätte.
3) das bool-Werte mal als Word und mal als Byte übertragen werden.
Aber ansonnsten ist das Protokoll ja schon recht gut erweiterbar gehalten. Wüsste also nicht, warum ich mich beschweren sollte.
Diese Signatur möchte folgendes bekannter machen: ZusiWiki · ZusiSK: Streckenprojekte · YouTube: Objektbau für Zusi · euirc: Zusi-Chat
- Carsten Hölscher
- Administrator
- Beiträge: 33436
- Registriert: 04.07.2002 00:14:42
- Wohnort: Braunschweig
- Kontaktdaten:
Re: Zusi 3 TCP-Protokoll-Implementation für .Net
Die Längenangabe ist als Wunsch bekannt, aber nicht ohne weiteres umsetzbar, darum bisher nicht drin.
Bool als Word gibt es wo?
Carsten
Bool als Word gibt es wo?
Carsten
Re: Zusi 3 TCP-Protokoll-Implementation für .Net
Habe ich Word geschrieben? Meinte Single und Byte.
Generell, wenn du noch mal Hand an die Tabelle der Führerstands-IDs legst, hätte ich nix dagegen, bei den Speziellen Structures das "Single" aus der Spalte zu streichen.
Generell, wenn du noch mal Hand an die Tabelle der Führerstands-IDs legst, hätte ich nix dagegen, bei den Speziellen Structures das "Single" aus der Spalte zu streichen.
Diese Signatur möchte folgendes bekannter machen: ZusiWiki · ZusiSK: Streckenprojekte · YouTube: Objektbau für Zusi · euirc: Zusi-Chat
- Carsten Hölscher
- Administrator
- Beiträge: 33436
- Registriert: 04.07.2002 00:14:42
- Wohnort: Braunschweig
- Kontaktdaten:
Re: Zusi 3 TCP-Protokoll-Implementation für .Net
Die phys. Größen sind intern einfach ein single-Array, auch wenn manche Positionen nur als Bool genutzt werden.
Carsten
Carsten
- Max Senft
- Administrator
- Beiträge: 3004
- Registriert: 04.11.2001 14:01:40
- Aktuelle Projekte: Dies und das
- Wohnort: Blieskastel, Saarland, Deutschland
- Kontaktdaten:
Re: Zusi 3 TCP-Protokoll-Implementation für .Net
Hi.
Gruß
Max
Ich meinte eigentlich auch, dass die Klassen mit Sicherheit auch hätten "exportiert" werden können, in eine eigene .Net Assembly. Dann wäre es auch was halbwegs offizielles gewesen.Carsten Hölscher hat geschrieben:Weil es laufend Änderungen gab und es für mich viel einfacher ist, das kurz formlos mit Jens zu besprechen als einen größeren Kreis an Nutzern zu haben. Zusi 3 sollte ja irgendwann mal fertig werden.
Gruß
Max
Administrator, Programmierer, Ansprechpartner bei Problemen mit dem Board