From: Marcus_Kuba@ibase.stgt.sub.org (Marcus Kuba)
Newsgroups: de.comp.sys.amiga.misc
Subject: Re: Multi-User am Amiga
Date: 8 Apr 92 18:48:38 GMT
Organization: Intuition-Base BBS Leonberg

In a message dated Wed  8 Apr 92 02:51, wusel@hamburg (Kai 'wusel' Siering)
wrote:

 K'S> Marcus_Kuba@ibase.stgt.sub.org (Marcus Kuba) writes:

% Und WIE soll das bitte gehen, wenn das Box-Programm durch z.B. einen von
% der DOS-Shell ausgeloesten File-Requester oder sonstwas STEHT und WARTET

 K'S> Soweit darf's eben gar nicht erst kommen ...

Wem sagst Du das ?? Es gibt aber eben doch immer jemanden, der den
entsprechenden Status hat und es (unabsichtlich) soweit kommen lassen
kann..

% ??? WELCHER Task kann denn dann _SAUBER_ auf der noch belegten seriellen
% Schnittstelle auf das Klingeln warten ??? Mach Dir doch mal den Spass,

 K'S> stellen-Server'  zu  schreiben,  der  via Pipe/FIFO/irgendsowas mit
 K'S> anderen Programmen kommuniziert und ggf. halt einfach die Pipe kappt?
 K'S> Sicher nicht trivial (sonst haette das ja jeder =:->), aber auch
 K'S> unmoeglich? Wie gesagt, nur so ein Gedanke ...

Das waere sicher machbar, aber es ist keine Loesung, da ja nur die Wirkung
(haengende Box o.ae.) beseitigt wird und nicht die Ursache (wartendes
Programm mit Requester/Window). Es genuegt eben nicht, sich vom haengenden
Programm abzukoppeln und einfach quasi einen neuen Task auf dem selben Port
zu oeffnen, solange keine saubere Moeglichkeit besteht, den haengenden Task
aus dem Speicher zu schmeissen... dazu muessten eben alle aufrufbaren
Programme auch bereit sein, mit Deinem Schnittstellenserver zu
kommunizieren, oder ihn zumindest zu "hoeren" und darauf zu reagieren:

Handler an Programm: "Du.. mach dass Du weg kommst, der Depp hat aufgelegt
und kann Dir nichts mehr befehlen..."
Programm an Handler: "Ist gut.. lass mich aber vorher noch die aktuelle
Arbeit sichern..."
Handler an Programm: "OK.. beeil Dich aber, andere wollen auch mal..."

(sowas gibt es schon, und zwar ganz simpel mit dem BREAK-Signal.. wenn hier
der Carrier ausfaellt, versucht der handler an den aktuellen Task ein BREAK
zu schicken. Mein Editor ist dann z.B. so nett, dass er vor dem Exit den
aktuellen Text noch in einen FileSlot speichert, so dass der User beim
naechsten Login darauf zurueckgreifen kann...)

Eigentlich kann es doch kein Problem sein, beim Empfang eines BREAK-Signals
seine evtl. geoeffneten Fenster zu schliessen und sauber verschwinden,
jedenfalls muesste es einfacher sein, als so einen Server zu schreiben, der
eben nur die halbe Loesung bietet :-)

 K'S> % Filerequester oeffnet... dann steht die Shell und... GAME OVER... 

 K'S> Ok, Filerequester sind ein Problem - DME/AmiELM/Ann/... ebenso =:-(

Ja... vor allem solange sie sich auch nicht vom aufrufenden Programm wieder
schliessen lassen.. (warum eigentlich nicht ???)

 K'S> % ueber ein Terminal auf einer SUN Windows aufgehen zu lassen und den
 K'S> % Operator zu erschrecken :-)

 K'S> Schon, aber  unbenutzbar  (ueber  diesen Port) wurde das sonnige
Etwas
 K'S> dadurch - im Gegensatz zum Amiga =:-< - wohl nicht, oder?

Doch... der Operator meldete sich naemlich zum Chat und meinte, dass er
dauernd die Fenster schliessen muesse... da war dann auch klar, warum es
immer so lange gedauert hatte, bis sich die Shell zuerueckmeldete... die
hat eben solange warten muessen...
(Aber _eigentlich_ haette das wirklich nicht passieren duerfen :-)

Tschuess,  Marcus


-- Via DLG Pro v0.991

Marcus Kuba          | UUCP   : Marcus_Kuba@ibase.stgt.sub.org
Muensinger Str. 7/1  | FIDO   : 2:247/706
D-7250 Leonberg      | Mailbox: Intuition-Base +49-7152-45768
Tel. +49-7152-45777  |         (online 24h, HST, V.32, V.42bis) 
Newsgroups: de.comp.sys.amiga.misc