Visualizzazione post con etichetta XP. Mostra tutti i post
Visualizzazione post con etichetta XP. Mostra tutti i post

domenica 10 luglio 2011

Come utilizzare Google+

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.

lunedì 4 luglio 2011

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:
#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.c
Ora 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 puts
Come 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
Ora che conosciamo il simbolo associato alla nostra funzione possiamo procedere con il linking:
$ gcc -o pippo -e f pippo.o
Come 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! :-D
  1. 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
deb http://www.virtualbox.org/debian etch non-free
Poi aggiungete la chiave in questo modo:
# wget http://www.virtualbox.org/debian/innotek.asc
# apt-key add innotek.asc

Aggiornate la lista dei pacchetti e installate virtualbox:


# apt-get update
# apt-get install 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):
# addgroup fra vboxusers
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:
Windows dentro Linux

Come attivare Windows 7

Finalmente hai deciso di installare Windows 7 sul tuo PC e abbandonare il caro vecchio XP. Tutto è andato per il verso giusto, il tuo PC va più veloce di prima ma c’è ancora un piccolo particolare da sistemare: Windows deve essere attivato, altrimenti dopo 30 giorni scadrà e smetterà di funzionare.
Se non sai come attivare Windows 7, non preoccuparti. Non devi far altro che collegarti ad Internet e digitare il numero di serie del sistema operativo. Ci vogliono due minuti di tempo ed io sto anche per spiegarti passo dopo passo come fare. Che aspetti?



Il primo passo che devi compiere per attivare Windows 7 è cliccare sul pulsante Start, fare click destro su Computer e selezionare la voce Proprietà dal menu che compare. Scorri la finestra che si apre fino in fondo e clicca sulla voce xx giorni rimasti per l’attivazione. Attivare Windows adesso per far partire la procedura guidata per l’attivazione di Windows.

Adesso, fai click sul pulsante Attiva Windows online e digita il codice di 25 caratteri (numeri e lettere mischiati) che trovi sulla confezione del sistema operativo o sul case del computer nel campo Codice “Product Key”. Clicca quindi sul pulsante Avanti che si trova in basso a destra e attendi che la tua copia di Windows 7 venga attivata.
Se tutto è andato per il verso giusto, nel giro di qualche secondo, Windows ti avviserà che la tua copia del sistema operativa è genuina ed è stata attivata correttamente. Per portare a termine la procedura, devi essere connesso ad Internet.

Dopo aver completato il processo relativo a come attivare Windows 7, puoi verificare in qualsiasi momento lo stato dell’attivazione del tuo Windows cliccando sul pulsante Start e selezionando la voce Computer con il pulsante destro del mouse. Clicca quindi sulla voce Proprietà del menu che compare e scorri fino in fondo la finestra che si apre.
Se il sistema è attivato correttamente, dovresti vedere il logo Microsoft originale in basso a destra e la dicitura Windows è attivato di fianco ad esso. In caso contrario, prova a seguire tutta la procedura daccapo o ad eseguire l’attivazione telefonica (il numero lo trovi nella stessa procedura guidata).