PDA

View Full Version : SoftModem e Hardware modem. Un po' di chiarezza.


sblantipodi
14-11-2004, 01:31
Allora ragazzi,
sinceramente non ho mai posseduto un softmodem ma solo hw modem,
pero' ho sempre sentito parlare dei problemi che Linux da con i SoftModem.

Vorrei fare un po' di chiarezza nella mia mente e se qualcuno mi illumina gliene sarei molto grato.

Allora, correggetemi se sbaglio.
I SoftModem, sono modem, ma solo in parte.
Cioe' la loro circuiteria non rappresenta un vero e proprio modem e necessita di un corposo appoggio software per svolgere i compiti di un normale modem. Giusto?

I modem normali invece non hanno bisogno di ausili software per svolgere le loro funzioni xche' la loro circuiteria e' tale da essere indipendente. Giusto?

Correggetemi se sbaglio.


Io ho navigato spesso con i modem dei cellulari in GPRS sotto linux senza problemi o necessita' di installare driver particolari.
Il modem del mio telefono viene riconosciuto da linux come se fosse un normale HW Modem.
Ho navigato con Motorola V66i, Nokia 8310, Nokia 7210, Motorola V600 come fossero HW Modem.

Ma i modem presenti sui cellulari sono HW modem o Soft Modem???
Io tirando a indovinare direi HW modem. Giusto :D

Pang
14-11-2004, 13:23
Originariamente inviato da sblantipodi
Allora ragazzi,
sinceramente non ho mai posseduto un softmodem ma solo hw modem,
pero' ho sempre sentito parlare dei problemi che Linux da con i SoftModem.

Vorrei fare un po' di chiarezza nella mia mente e se qualcuno mi illumina gliene sarei molto grato.

Allora, correggetemi se sbaglio.
I SoftModem, sono modem, ma solo in parte.
Cioe' la loro circuiteria non rappresenta un vero e proprio modem e necessita di un corposo appoggio software per svolgere i compiti di un normale modem. Giusto?

I modem normali invece non hanno bisogno di ausili software per svolgere le loro funzioni xche' la loro circuiteria e' tale da essere indipendente. Giusto?

Correggetemi se sbaglio.


Io ho navigato spesso con i modem dei cellulari in GPRS sotto linux senza problemi o necessita' di installare driver particolari.
Il modem del mio telefono viene riconosciuto da linux come se fosse un normale HW Modem.
Ho navigato con Motorola V66i, Nokia 8310, Nokia 7210, Motorola V600 come fossero HW Modem.

Ma i modem presenti sui cellulari sono HW modem o Soft Modem???
Io tirando a indovinare direi HW modem. Giusto :D

Giusto:D

Johnny5
14-11-2004, 14:13
Come sopra, hai detto giusto. Per buttarci un pò di teoria il fatto è questo:

Linux sa come dialogare con un modem, nel senso che ogni modem accetta una serie di comandi standard (ATDT, ATX, eccettera, quei comandini che chat manda al modem quando provi a collegarti), fornendogli una serie di risposte standard (classicamente OK, ecc..).

Questo non cambia per i modem cellulari perché anch'essi rispettano questo standard di comunicazione.

Quello che manca da fare per saltare a cavallo del doppino verso il mondo della grande rete è la vera e propria modulazione fisica, ad esempio ATDT7027020000 deve tradursi nella seria di toni di frequenza differente per produrre l'effetto di "digitare il numero", e a connessione avvenuta i bit mandati al modem devono tradursi in quella serie di pernacchiette con cui di fatto i segnali passano sulla linea fisica.

Negli hardware modem, come dice il nome, ci pensa l'hardware a fare quest'ultima parte, quindi Linux non deve pensare ad altro. Lui manda i comandi o i bit di tx verso la porta seriale o usb o infrarossi e a posto così. Nei software modem, il processore tramite appositi driver deve anche sbattersi a creare lui il segnale modulato, il modem si riduce semplicemente a poco più della porta fisica per mandare i segnali sulla linea. Qui Linux ha problemi ma non per qualche debolezza intrinseca del s.o., ma semplicemente perché le ditte produttrici non svelano come funziona l'hardware, e i driver windows sono a sorgente chiusa. Così si rende necessario un processo manuale di reverse engineering da parte di coraggiosi sviluppatori indipendenti che chipset per chipset (i chipset grazie al cielo sono comuni a molti modelli) cercano di ricostruire il funzionamento del softmodem particolare e riprodurlo in codice open source.

Infatti se noti i softmodem che girano sotto linux (come il mio sis) di fatto caricano un modulo del kernel che produce un device "virtuale", che fa finta di essere un modem fisico. Così da una parte il s.o. manda i bit al device credendo sia un device vero, dall'altra un'altra parte del kerenl prende quegli ingressi, li modula, e li manda verso la porta fisica.

Spero di essere stato chiaro!