Google ha lanciato un nuovo social network per competere con Facebook. Si tratta di Google+, una nuova piazza virtuale in cui è possibile rimanere in contatto con i propri amici, chattare con loro, condividere foto, video e persino effettuare videochiamate di gruppo direttamente dal browser.
Il sito non è ancora aperto al pubblico, ma tramite la distribuzione di cosiddetti inviti chi è già dentro può invitare nel social network tutti gli amici che vuole. Se tu sei uno di questi o stai ancora aspettando l’apertura pubblica del servizio, non perdere altro tempo e scopri insieme a me come utilizzare Google+, fatti trovare subito pronto!
Cosa sono le cerchie? Le cerchie sono uno degli elementi fondamentali che differenziano Google+ da Facebook. Su Google+ gli amici non sono tutti raggruppati in un unico insieme come in Facebook ma sono suddivisi in cerchie personalizzabili, in questo modo puoi decidere tu, di volta in volta, a chi far vedere le notizie, le foto e i video che pubblichi. Vuoi commentare con i tuoi amici la festa fatta la sera scorsa ma non vuoi far sapere al tuo capo che hai partecipato a un party? Posta il tuo messaggio condividendolo solo con la cerchia degli amici e non con quella dei colleghi di lavoro e il gioco è fatto.
Visualizzazione post con etichetta LINUX. Mostra tutti i post
Visualizzazione post con etichetta LINUX. Mostra tutti i post
domenica 10 luglio 2011
lunedì 4 luglio 2011
Linux 2.6.38-2 e HDA Intel….oltre che ath9k :)
Come ogni giorno, ho eseguito l’aggiornamento della mia Debian Sid.
E come per magia non funzionava più un cavolo

In pratica, non funzionava ne l’audio nè la scheda wifi.
Un bel problema ho pensato all’inizio.
In realtà la soluzione è stata molto sempilce ed efficace.
Infatti è bastato controllare i moduli caricati per vedere che non ce n’era nemmeno uno di quelli che mi servivano,
Cosi ho fatto questo:
e
e nessuno dei due era stato caricato.
Perciò dato che dispongo di una hda intel come scheda audio integrata, e un Atheros 928x per quanto riguarda la scheda wifi, è bastato appendere al file
Per caricarli a runtime basta usare modprobe nome_modulo.
E il gioco è fatto!
E come per magia non funzionava più un cavolo
In pratica, non funzionava ne l’audio nè la scheda wifi.
Un bel problema ho pensato all’inizio.
In realtà la soluzione è stata molto sempilce ed efficace.
Infatti è bastato controllare i moduli caricati per vedere che non ce n’era nemmeno uno di quelli che mi servivano,
Cosi ho fatto questo:
lsmod | grep snde
lsmod | grep ath9ke nessuno dei due era stato caricato.
Perciò dato che dispongo di una hda intel come scheda audio integrata, e un Atheros 928x per quanto riguarda la scheda wifi, è bastato appendere al file
/etc/modules i due moduli snd_hda-intel e ath9k.Per caricarli a runtime basta usare modprobe nome_modulo.
E il gioco è fatto!
Cambiare l’entry point di un programma con il GCC
NOTA: il procedimento descritto di seguito è riportato per fini puramente didattici/smanettonici. Non è una buona pratica nei programmi comuni, non è standard C e non è necessario salvo casi molto particolari.
Com’è noto, i programmi C/C++ vengono eseguiti dal sistema operativo a partire dalla funzione main. In realtà la stessa main viene richiamata da un’altra funzione, _start, che si occupa di inizializzare alcune cose, eseguire la funzione main ed infine di fare un po’ di pulizia con la funzione exit. La funzione _start è il codidetto entry point del programma, ovvero il punto dal quale inizia la sua esecuzione.
Il GCC consente di specificare un entry point personalizzato: in altre parole si possono scrivere programmi dove verrà eseguita una funzione a nostra scelta al posto della _start (e quindi anche della main). Vediamo un semplice esempio.
Innanzitutto creiamo un banale programma di test, ecco il file pippo.c:
Adesso generiamo il file oggetto pippo.o.
Ora che conosciamo il simbolo associato alla nostra funzione possiamo procedere con il linking:
Com’è noto, i programmi C/C++ vengono eseguiti dal sistema operativo a partire dalla funzione main. In realtà la stessa main viene richiamata da un’altra funzione, _start, che si occupa di inizializzare alcune cose, eseguire la funzione main ed infine di fare un po’ di pulizia con la funzione exit. La funzione _start è il codidetto entry point del programma, ovvero il punto dal quale inizia la sua esecuzione.
Il GCC consente di specificare un entry point personalizzato: in altre parole si possono scrivere programmi dove verrà eseguita una funzione a nostra scelta al posto della _start (e quindi anche della main). Vediamo un semplice esempio.
Innanzitutto creiamo un banale programma di test, ecco il file pippo.c:
#include <stdio.h>
#include <stdlib.h>
int f() {
printf("ciao da f!\n");
exit(0);
}
int main() {
printf("saluti da main!\n");
return 0;
}Il sorgente contiene due funzioni: la main, che è lì solo per dimostrare che non verrà eseguita, ed f, che sarà il nostro nuovo entry point. Notate come sia necessario richiamare exit alla fine di f, perché f andrà a sostituire _start che faceva lo stesso: senza questa chiamata il programma verrà eseguito correttamente ma terminerà con un bel segfault.Adesso generiamo il file oggetto pippo.o.
$ gcc -c pippo.cOra dovremo richiamare il linker (sempre mediante GCC) per creare l’eseguibile ed è a questo punto che dobbiamo specificare il nostro entry point personalizzato). Per fare ciò abbiamo bisogno di conoscere il simbolo che rappresenta la funzione f nel file oggetto pippo.o appena creato. Il comando nm ci viene in aiuto:
$ nm pippo.o
U exit
0000000000000000 T f
0000000000000018 T main
U putsCome potete vedere abbiamo quattro simboli, corrispondenti alle funzioni che usiamo nel programma (puts è lì perché usiamo printf); tra questi simboli c’è anche la nostra funzione f, che è rappresentata proprio dal suo nome f. 1$ gcc -o pippo -e f pippo.oCome vedete oltre a specificare il nome del file eseguibile con l’opzione -o ed il nome del file oggetto, grazie all’opzione -e possiamo specificare il simbolo del nostro entry point personalizzato. Vediamo se l’eseguibile si comporta come previsto:
$ ./pippo ciao da f!Funziona!
- Questo è vero nel caso di programmi C: il simbolo corrispondente ad una funzione ha il nome della funzione stessa. Nel C++ invece la possibilità di fare overloading delle funzioni non consente di usare questa convenzione. Il processo di traduzione da nome della funzione al nome del suo simbolo è chiamato name mangling (letteralmente, “storpiatura del nome”), per ulteriori informazioni potete consultare il corrispondente articolo di Wikipedia. ↩
VirtualBox: creare macchine virtuali con Linux
In questa guida vedremo come creare una macchina virtuale con Linux usando VirtualBox. Il prodotto che andremo a vedere in realtà è disponibile (oltre a Linux) anche per Mac e Windows.
Andiamo allora a creare una macchina virtuale contenente Windows XP sotto una Linux Debian.
1 – Scaricamento e installazione del programma
Prima di tutto dobbiamo scaricare il software. Aggiungete quindi la seguente riga al file /etc/apt/sources.list
Poi aggiungete la chiave in questo modo:
Aggiornate la lista dei pacchetti e installate virtualbox:
Perfetto, ora è tutto installato e possiamo iniziare il procedimento per la creazione della VM (Virtual Machine).
2 – Creazione della macchina virtuale
Per avviare il programma, basta cliccare sul menu:
e vi si dovrebbe aprire la finestra principale di virtualbox:
Ora cliccate su “Nuova” per avviare la procedura guidata:
Dovrete ora inserire una serie di dati, come il nome della VM, la quantità di RAM destinata ad essa, e così via. Quando vi verrà chiesto di selezionare l’hard disk, fate “Nuovo”:
Si aprirà un nuovo wizard. Scegliete anche qua tutti i dati che fanno bene al caso vostro. Io consiglio di scegliere un “Tipo di Immagine” A dimensione fissa.
Una volta finito (finiti tutti e 2 i wizard) si ritornerà alla schermata iniziale:
Provate ad avviare la VM con l’apposito tasto “Avvia”. Dopo alcuni passaggi banali, la macchina non si avvierà e virtualbox vi farà vedere un messaggio di errore come questo:
E’ normale! Non avete i permessi per creare le VM. Dovete quindi aggiungere il vostro utente al gruppo di virtualbox, in questa maniera (da root):
Se non ci sono problemi, riavviate.
Una volta riavviato, riaprite virtualbox e cliccate su “Impostazioni”. Dovete abilitare il CD/DVD drive. Nel frattempo, potete modificare anche altri parametri a piacere:
Perfetto, ora inserire il CD di Windows XP nel lettore e avviate la macchina. Come per miracolo, l’installazione di Windows partirà:
Ora… per installare Windows penso che potreste fare pure da voi
3 – Esecuzione della macchina virtuale
Alla fine dei conti, ecco qua il risultato: Windows XP dentro Linux Debian:
1 – Scaricamento e installazione del programma
Prima di tutto dobbiamo scaricare il software. Aggiungete quindi la seguente riga al file /etc/apt/sources.list
deb http://www.virtualbox.org/debian etch non-freePoi aggiungete la chiave in questo modo:
# wget http://www.virtualbox.org/debian/innotek.asc
# apt-key add innotek.ascAggiornate la lista dei pacchetti e installate virtualbox:
# apt-get update
# apt-get install virtualboxPerfetto, ora è tutto installato e possiamo iniziare il procedimento per la creazione della VM (Virtual Machine).
2 – Creazione della macchina virtuale
Per avviare il programma, basta cliccare sul menu:
e vi si dovrebbe aprire la finestra principale di virtualbox:
Ora cliccate su “Nuova” per avviare la procedura guidata:
Dovrete ora inserire una serie di dati, come il nome della VM, la quantità di RAM destinata ad essa, e così via. Quando vi verrà chiesto di selezionare l’hard disk, fate “Nuovo”:
Si aprirà un nuovo wizard. Scegliete anche qua tutti i dati che fanno bene al caso vostro. Io consiglio di scegliere un “Tipo di Immagine” A dimensione fissa.
Una volta finito (finiti tutti e 2 i wizard) si ritornerà alla schermata iniziale:
Provate ad avviare la VM con l’apposito tasto “Avvia”. Dopo alcuni passaggi banali, la macchina non si avvierà e virtualbox vi farà vedere un messaggio di errore come questo:
E’ normale! Non avete i permessi per creare le VM. Dovete quindi aggiungere il vostro utente al gruppo di virtualbox, in questa maniera (da root):
# addgroup fra vboxusersSe non ci sono problemi, riavviate.
Una volta riavviato, riaprite virtualbox e cliccate su “Impostazioni”. Dovete abilitare il CD/DVD drive. Nel frattempo, potete modificare anche altri parametri a piacere:
Perfetto, ora inserire il CD di Windows XP nel lettore e avviate la macchina. Come per miracolo, l’installazione di Windows partirà:
Ora… per installare Windows penso che potreste fare pure da voi
3 – Esecuzione della macchina virtuale
Alla fine dei conti, ecco qua il risultato: Windows XP dentro Linux Debian:
Windows dentro Linux
Iscriviti a:
Post (Atom)
Iniziamo parlando dell’aspetto del sito. Google+ si presenta con una struttura simile a quella di Facebook ma ha una grafica che rispecchia appieno lo stile minimalista e semplice di tutti i servizi online di Google. La pagina principale presenta tre colonne: al centro ci sono gli aggiornamenti di stato e le notizie pubblicate dagli amici, sulla destra ci sono gli avatar di alcuni amici e dei suggerimenti su delle persone che si potrebbero conoscere, mentre sulla sinistra ci sono il collegamento alla pagina del proprio profilo, il collegamento alla pagina di benvenuto del social network e l’elenco delle proprie cerchie di amici.