Xhack
Vuoi reagire a questo messaggio? Crea un account in pochi click o accedi per continuare.
Xhack

Un forum dedicato all'hacking
 
IndiceIndice  PortalePortale  CercaCerca  Ultime immaginiUltime immagini  RegistratiRegistrati  Accedi  

 

 Variabili volatili

Andare in basso 
3 partecipanti
AutoreMessaggio
darkjoker
Admin
Admin
darkjoker


Numero di messaggi : 813
Data d'iscrizione : 30.07.07

Variabili volatili Empty
MessaggioTitolo: Variabili volatili   Variabili volatili EmptyGio Dic 27, 2007 6:39 pm

Studiandomi un po di C mi sono inbattuto nelle variabili volatili, ovvero delle variabili che possono essere, da come ho capito, modificate da altri processi...
Codice:

volatile int var = 12;
Ora, sapete dirmi come posso, con un programma in C, modificare una variabile volatile di un'altro programma...?
grazie
ciao Very Happy
Torna in alto Andare in basso
The_Nano93
membro
membro
The_Nano93


Numero di messaggi : 104
Età : 1016
Localizzazione : Da qualche parte nell'universo....
Data d'iscrizione : 28.09.07

Variabili volatili Empty
MessaggioTitolo: Re: Variabili volatili   Variabili volatili EmptyLun Dic 31, 2007 1:14 am

mmm.... non ne ho la più pallida idea!!! non sapevo neanche che esistessero.
proverò a cercare in giro...
Torna in alto Andare in basso
The_Nano93
membro
membro
The_Nano93


Numero di messaggi : 104
Età : 1016
Localizzazione : Da qualche parte nell'universo....
Data d'iscrizione : 28.09.07

Variabili volatili Empty
MessaggioTitolo: Re: Variabili volatili   Variabili volatili EmptyLun Dic 31, 2007 1:29 am

non ho trovato niente.
credo che usando un altro programma si possa modificare col semplice var=...;

devi chiedere a Blacklight
Torna in alto Andare in basso
darkjoker
Admin
Admin
darkjoker


Numero di messaggi : 813
Data d'iscrizione : 30.07.07

Variabili volatili Empty
MessaggioTitolo: Re: Variabili volatili   Variabili volatili EmptyMer Gen 02, 2008 12:08 pm

blacclight se ne è andato...
impara a leggere negli annunci Wink
Torna in alto Andare in basso
BlackLight
Moderatore
Moderatore
BlackLight


Numero di messaggi : 277
Età : 37
Data d'iscrizione : 22.08.07

Variabili volatili Empty
MessaggioTitolo: Re: Variabili volatili   Variabili volatili EmptyMer Gen 02, 2008 6:15 pm

darkjoker ha scritto:
blacclight se ne è andato...

Tranquilli leggo ancora il forum di tanto in tanto e se le domande sono intelligenti non vedo perché di tanto in tanto non dovrei rispondere...

Da nessuna parte è scritto che una variabile volatile è modificabile da un altro programma. Due programmi sono due entità risedenti in memoria con due stack diversi che in nessuna maniera possono comunicare, quindi se ho una variabile volatile in Word e voglio leggerne il valore da Excel non posso farlo in nessun modo. È scritto casomai che con volatile si identifica una variabile che può essere modificata da un altro processo o thread diverso da quello che l'ha dichiarata, ma sempre all'interno dello stesso programma. Detto questo, la keyword volatile non aggiunge praticamente nulla di nuovo alla variabile: dà solo quest'informazione aggiuntiva al compilatore, ovvero che quella variabile può essere modificata anche da altri processi e thread all'interno dell'applicazione e quindi di prenderla 'con le pinze' e non ottimizzarla. Per intenderci, se io ho un codice del genere:

Codice:
int var;

void foo()  {
  var=0;

  while (var>-10)
    printf ("Ciao\n");
}

Ora se il compilatore fa ottimizzazione potrebbe notare che effettivamente var è sempre maggiore di -10 e far diventare quel codice

Codice:
int var;

void foo()  {
  var=0;

  while (TRUE)
    printf ("Ciao\n");
}

Ma questo potrebbe portare problemi se la variabile var è modificata anche da altri thread o processi, in quanto il suo valore potrebbe essere modificato senza che il processo di ottimizzazione fatto dal compilatore se ne accorga. Dichiarandola come volatile è come se gli dicessi 'guarda, questa roba qui la modifica anche qualcun altro, non farci su robe strane, non toccarla e non farci su dell'ottimizzazione'.
Torna in alto Andare in basso
http://blacklight.gotdns.org
darkjoker
Admin
Admin
darkjoker


Numero di messaggi : 813
Data d'iscrizione : 30.07.07

Variabili volatili Empty
MessaggioTitolo: Re: Variabili volatili   Variabili volatili EmptyMer Gen 02, 2008 6:30 pm

grazie black; illuminante.
Torna in alto Andare in basso
Contenuto sponsorizzato





Variabili volatili Empty
MessaggioTitolo: Re: Variabili volatili   Variabili volatili Empty

Torna in alto Andare in basso
 
Variabili volatili
Torna in alto 
Pagina 1 di 1
 Argomenti simili
-
» Problema con le variabili

Permessi in questa sezione del forum:Non puoi rispondere agli argomenti in questo forum.
Xhack :: Programmazione :: C/C++-
Vai verso: