Newsgroup: it.comp.os.linux.sys
Titolo: Porte seriali virtuali

Salve a tutto il NG.
Avrei bisogno di sapere se esiste un modo (un software o semplicemente 
delle impostazioni) per creare delle porte seriali virtuali su un PC 
(Red Hat 9B).
In pratica, il mio portatile non ha nessuna porta seriale, ma devo 
sviluppare dei programmi che ne hanno bisogno. In Windows usavo dei 
driver di Virtual Serial Port, i quali mi creavano coppie di porte 
seriali virtuali collegate tra loro con cavo null-modem. Quindi potevo 
collegare ad una porta il mio programma e all'altra un simulatore.
Dovendo fare un lavoro simile sotto Linux, esiste questa possibilita' o 
qualcosa di simile?
Ringrazio chiunque mi possa dare una mano
Luca

 (Red Hat 9B).
Non ti serve nessun simulatore, semplicemente scrivi i tuoi dati in
una pipe e leggili dall'altra parte.
Davide
-- 
| Last week a cop stopped me in my car. He asked me if I had a police
| record. I said, no, but I have the new DEVO album. Cops have no sense 
| of humor. 
| 

 come si puo' risolvere ? esistono pipe bidirezionali che qualcuno sappia ?
Tutte le "named pipes" sono bidirezionali (afaik).
Davide
-- 
| Human beings were created by water to transport it uphill. 
| 
| 
| 

 
Devi usare una named pipe.
Luca
--
<<>><<>><<>><<>><<>><<>><<<>><<>><<>><<
Luca Paredi
Computing technical supporter              
Universita' degli Studi dell'Insubria  
<<>><<>><<>><<>><<>><<>><<<>><<>><<>><<

> Tutte le "named pipes" sono bidirezionali (afaik).
x intendersi le named pipes sono quelle create con mkfifo ?
allora mi sono perso qualcosa , quelle unidirezionali qual' erano ???
-- 
Quando un androide morde un uomo, non e' una notizia.
Se un uomo morde un androide, si' che e' una notizia.
                -- Notiziario in "Balle spaziali"

 allora mi sono perso qualcosa , quelle unidirezionali qual' erano ???
Se fai cat nomefile | grep ... quella '|' e' una pipe unidirezionale,
perche' invia solo i messaggi di cat nell'input di grep, ma non
re-invia i messaggi di grep in cat. Ma questo non crea un file su disco
per farlo, si limita ad 'accoppiare' lo standard output di un comando con
lo standard input del successivo.
Davide
-- 
| Ehrman's Commentary: (1) Things will get worse before they get better.
| (2) Who said things would get better? 
| 
| 

 lo standard input del successivo.
ok , mi è tutto chiaro , pero' ho provato ad usare minicom su una pipe e non
funziona , dove sta' il problema ?
mkfifo miaseriale
da un xterm lancio un minicom e apro miaseriale , idem da un altro.
mi aspettavo che quello che scrivevo su uno finesse sull' altro e viceversa
e invece nn funziona....
ciao.
-- 
Frazione, s.f.:
        Numero a due piani.
                -- Sergio Paoletti, "Topolino"

 una pipe e leggili dall'altra parte.
E se pero' deve usare le funzioni di termios (velocita', controllo
flusso, e via dicendo)?
	improbabilmente,
	    Cthulhu
-- 
http://www.rlyeh.it/

 flusso, e via dicendo)?
Eh... succede quello che ha scritto nero nel post precedente ^__^
---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (
http://www.grisoft.com
).
Version: 6.0.707 / Virus Database: 463 - Release Date: 15/06/2004

 e invece nn funziona....
Minicom non lo so, ma se usi un bel cat o echo per scrivere/leggere
funziona.
Davide
-- 
| Pardon this fortune.  Database under reconstruction. 
| 
| 
| 

 
Se ti interessa l'argomento puoi provare :
http://www.tldp.org/LDP/lpg/node18.html


 
http://www.tldp.org/LDP/lpg/node18.html
Si ok , sia da shell che da C il concetto è semplice , mi chiedevo come
potesse funzionare come emulatore di seriale visto i programmi che vi
accedono usano un sacco di ioctl x impostare vari parametri.
ciao.
-- 
Nessuno si e' mai ammazzato perche' non riusciva ad amare il prossimo
suo.
                -- Marcello Marchesi

 funziona.
si , ok , ormai con le pipe ci faccio pure il caffe' ;-)
, il discorso era nel caso specifico.
ciao.
-- 
- Perche' da 2000 anni il bambin Gesu' nasce in una grotta?
- Perche' aspetta i fondi della ricostruzione!
                -- Da it.hobby.umorismo

 Meglio mknod
x questioni di porting o cosa ? ;-)
mi pare la stessa zuppa....
-- 
Vendo macchina per scrivere in ottimo stato, seminuova, effixnc&, tew:?
yrup z%p
                -- Da it.hobby.umorismo

 
Intanto grazie a tutti.
A me e' sufficiente che se un programma accede a questa fifo in 
scrittura e successivamente in lettura, non veda i suoi stessi dati. 
Praticamente la pipe deve essere non solo bidirezionale, ma bicanale 
(come una porta eriale, appunto).
La velocita' o le chiamate a ioctl, non mi interessano, perche' non devo 
  programmare direttamente la UART, ipotizzo che le funzioni di buffer, 
velocita' e parita' funzionino piu' che bene nel kernel.
Comunque provero' tutti i suggerimenti che mi avete dato.
Grazie ancora
Luca

 vabbuo'? ;-)
Sei sempre il solito! ^___^


> vabbuo'? ;-)
degustibus ;-D
-- 
La salute e' uno stato precario che non promette niente di buono.

 (come una porta eriale, appunto).
il problema imho è proprio fare in modo che il flusso di dati non ritorni in
lettura a chi lo scrive che da quel che ho capito è quello che succede ,
cosi' a polso potresti provare creando 2 pipe e legandole in una sola
direzione.
tipo:
mknod serA p ( ;-) )
mknod serB p
cat serA >> serB &
cat serB >> serA & 
ma è MOOOOLTO empirico e non vorrei andasse in loop......
altre idee non me ne vengono.
ciao.
-- 
Hardware, s.:
        Le parti di un sistema informatico che possono essere prese a calci.

 
Grazie comunque. Quando ho un risultato in mano lo postero'.
Luca