Bentornati a tutti, ho scelto di riaprire il blog con un post squisitamente tecnico…
Sapete come funziona l’AGPS? Credo sia interessante.

L’acronimo significa letteralmente “Assisted Global Positioning System": è un sistema, voluto qualche anno fa dal governo statunitense, che consente agli impianti di localizzazione di avvalersi anche della comunicazione terrestre per identificare i satelliti ed interpretarne le informazioni.
Il processo attraverso il quale un terminale può fornire la posizione geografica di derivazione GPS è fatto di numerosi e complicati passaggi, di cui sarebbe superfluo discutere ora. Quello che ci interessa è il concetto di “triangolazione": perché un device, come un palmare con ricevitore, possa fornire al sistema di navigazione, la posizione esatta, deve essere in grado di individuare almeno tre satelliti e da questi raccogliere fondamentali indicazioni. Indispensabile, fra queste, è la posizione degli stessi satelliti in orbita.
Quanto abbiamo appena detto si realizza in quel processo conosciuto come “fixing": il dispositivo raccoglie i dati, li elabora, e quando le informazioni sono sufficienti “fissa” i satelliti. Da questo momento in poi l’antenna sarà capace di guidarci lungo le strade e attraverso la loro rappresentazione su cartografia. Il fixing può avvenire in tempi più o meno rapidi, in funzione della visibilità del cielo e di ulteriori fattori condizionanti: più lontani saremo da ostacoli che si frappongono fra noi e i satelliti e più velocemente ed in modo affidabile questi saranno in grado di dialogare con il ricevitore. C’è di più: il satellite può trasmettere la propria posizione al terminale ogni trenta secondi, non in ogni istante. Se una qualsiasi causa interrompe lo scambio di dati, ad esempio il passaggio sotto un cavalcavia o l’avvicinarsi ad un alto edificio, il dispositivo dovrà attendere altri trenta secondi per riattivare il processo.
È qui che dovrebbe (più avanti vedremo perché usiamo il condizionale) intervenire l’AGPS. Per mezzo di connessione con il Web il ricevitore può preventivamente ottenere le informazioni relative alla posizione dei satelliti nell’orbita terrestre: poiché questi ultimi non sono “geostazionari", ma la loro traiettoria può variare in misura infinitesimale rispetto a quella prestabilita, i dati conservati nei piccoli file saranno validi per un periodo di tempo limitato (3/10 giorni) ed in funzione di una determinata area geografica. Ecco perché questi mini pacchetti informativi ricevuti via Internet vengono chiamati Efemeridi, come quella famiglia di piccoli insetti (molto simili alle zanzare, vedi la figura) che vivono pochi giorni o addirittura poche ore dopo il più duraturo stadio larvale.
Riassumiamo: l’antenna intercetta i satelliti, attende che da questi arrivino i dati (Efemeridi) relativi alla loro posizione, interpreta le informazioni, e li “fissa” in memoria facendo riferimento a loro per localizzare su terra il luogo in cui il ricevitore stesso si trova. L’AGPS si propone di saltare la fase intermedia del “fixing", per consentire l’avvio immediato del sistema di navigazione: i satelliti non avranno più segreti, il terminale non dovrà perdere tempo a cercarli.
Visto come delle piccole zanzare risolvono un grande problema? Pensateci quando in una notte estiva disturberanno il vostro sonno ronzando nelle vostre orecchie.
Per approfondire http://it.wikipedia.org/wiki/AGPS
That’s all falks… for now.
La timer_connect è una primitiva di VxWorks (tradotto, una API di sitema operativo) non POSIX. Mi ci sono inbattuto nell’ambito del mio lavoro di tesi in cui stiamo portando codice da VxWorks a Linux.
Questa simpatica funzione consente di assegnare a un timer una funzione che lo gestisca. Teoricamte la stessa cosa si può fare in linux definendo una struttra da dare in pasto alla timer_create, in realtà la cosa crea un overhead di complessità tale (soprattitto nel caso si vogliano passare paramentri e gestione di timer multipli) da renderla di fatto impossibile.
Bene tutto il discorso sopra per richiamare tutti gli informatici che leggono ad attenersi agli standard. Infatti in questo caso lo standard esiste ed è il POSIX ma nessuno dei due sistemi lo rispetta:
* VxWorks infatti implementa correttamente lo standard ma poi ci affianca delle funzioni proprietarie che si sovrappongono allo standard stesso e che, se utilizzate, rendono il codice non più compatibili con lo standard.
* Linux non implementa completamente lo standard posix offrendo un implementazione che limita il concetto di timer e che ne riduce il campo di utilizzo.
Tutto questo nel caso di porting crea dei grossi problemi.Ma non è l’unico danno che può portare.
Se uno standard esiste ed un sistema si dichiara aderente a tale standard è il caso che poi lo rispetti, è un fatto di civiltà, INSOMMA!
Quando ci si connette via ssh da MacOsx a una macchiana Linux (Debian o Ubuntu) si può notare che il tasto cancella, cancellerà il carattere sotto il cursore e non quello davati ad esso.
Per risolvere il problema bisogna correggere un bug nel file di configurazione di zsh.
Le istruzioni sono le seguenti(vanno inserite nella shell del server, cioè della macchina alla quale ci si connette -> Debian o Ubuntu):
echo "bindkey ^? backward-delete-char" >> ~/.zshrc
echo "bindkey ^[[3~ delete-char" >> ~/.zshrc
Viva Mac e Viva l’open source. Alla Prossima.
Questa guida è da intendersi distribuita sotto GPL.
Bordi bianchi:
Se quando massimizzate una finestra il bordo diventa tutto bianco e sparisce il decorator e avete una scheda video ati con driver open-source; aprite un terminale ed eseguite questo comando:
sudo nano /etc/drirc
inserite la vostra password, se richiesta; nella finestra che appare digitate:
Code:
<driconf> | |
<device screen="0" driver="radeon"> | |
<application name="all"> | |
| |
</application> | |
</device> | |
</driconf> |
Premete ctrl+o poi ctrl+x.
Riavviate il computer… Problema Risolto!
Video neri:
Aprite un terminale e digitate:
gstreamer-properties
nella finestra che appare andate nella scheda video:
nel menú a discesa plugin sotto default output scegliete X Windows System (No Xv).
Cliccate su Test poi su ok e quindi su chiudi.
Ora in totem i video sono ok! Problema Risolto!!!
Godetevi beryl!