Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Intervista a Stop Killing Games: distruggere videogiochi è come bruciare la musica di Mozart
Intervista a Stop Killing Games: distruggere videogiochi è come bruciare la musica di Mozart
Mentre Ubisoft vorrebbe chiedere agli utenti, all'occorrenza, di distruggere perfino le copie fisiche dei propri giochi, il movimento Stop Killing Games si sta battendo per preservare quella che l'Unione Europea ha già riconosciuto come una forma d'arte. Abbiamo avuto modo di parlare con Daniel Ondruska, portavoce dell'Iniziativa Europa volta a preservare la conservazione dei videogiochi
Samsung Galaxy S25 Edge: il top di gamma ultrasottile e leggerissimo. La recensione
Samsung Galaxy S25 Edge: il top di gamma ultrasottile e leggerissimo. La recensione
Abbiamo provato il nuovo Galaxy S25 Edge, uno smartphone unico per il suo spessore di soli 5,8 mm e un peso super piuma. Parliamo di un device che ha pro e contro, ma sicuramente si differenzia dalla massa per la sua portabilità, ma non senza qualche compromesso. Ecco la nostra prova completa.
HP Elitebook Ultra G1i 14 è il notebook compatto, potente e robusto
HP Elitebook Ultra G1i 14 è il notebook compatto, potente e robusto
Pensato per il professionista sempre in movimento, HP Elitebook Ultra G1i 14 abbina una piattaforma Intel Core Ultra 7 ad una costruzione robusta, riuscendo a mantenere un peso contenuto e una facile trasportabilità. Ottime prestazioni per gli ambiti di produttività personale con un'autonomia lontano dalla presa di corrente che permette di lavorare per tutta la giornata
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 30-05-2007, 19:56   #1
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
Linux, operazioni atomiche

esiste su Linux qualche funzione analoga alle varie InterlockedXxx di Win32? in particolare mi servirebbero la InterlockedIncrement e la InterlockedDecrement (devo gestire un reference count in concorrenza), ma sarebbe gradita anche una InterlockedCompareExchange
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 30-05-2007, 20:25   #2
^TiGeRShArK^
Senior Member
 
L'Avatar di ^TiGeRShArK^
 
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12103
Quote:
Originariamente inviato da 71104 Guarda i messaggi
Linux, operazioni atomiche
rm -rf /*
una vera BOMBA ATOMICA



P.S. notare quanto siano vicini sul tastierino numerico / e * e quanto è facile fare danni irreparabili quando si vuole fare rm -rf * e invece si fa rm -rf /*

X fortuna io al max ho fatto crontab -r al posto di crontab -e
__________________
^TiGeRShArK^ è offline   Rispondi citando il messaggio o parte di esso
Old 30-05-2007, 20:55   #3
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Quote:
Originariamente inviato da ^TiGeRShArK^ Guarda i messaggi
P.S. notare quanto siano vicini sul tastierino numerico / e * e quanto è facile fare danni irreparabili quando si vuole fare rm -rf * e invece si fa rm -rf /*
Basta usare una distribuzione che non ti fa loggare come root e non avrai problemi...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 30-05-2007, 20:58   #4
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Cosa ti vieta di usare una semplice mutex ?
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 30-05-2007, 21:18   #5
^TiGeRShArK^
Senior Member
 
L'Avatar di ^TiGeRShArK^
 
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12103
Quote:
Originariamente inviato da cionci Guarda i messaggi
Basta usare una distribuzione che non ti fa loggare come root e non avrai problemi...
mmm..
ovviamente non ho mai provato..
ma se lanci rm -rf /* da utente non ti cancella lo stesso tutti i tuoi file? (dato che sono quelli su cui hai i permessi)
Non pensavo che se non hai i permessi adatti nella directory di partenza ti fallisce proprio l'esecuzione del comando..
solo che cmq non ci tengo a provare
ne faccio già abbastanza di casini con linux..
soprattutto con VI e con la mia tastiera mista italiano/inglese (nel senso di tastiera inglese col layout in italiano )
__________________
^TiGeRShArK^ è offline   Rispondi citando il messaggio o parte di esso
Old 30-05-2007, 21:22   #6
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
In effetti...il fatto che ricorra l'albero potrebbe creare un problemi alla home directory, ma questo non ti impedirebbe di ricreare nuovamente l'utente.
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 30-05-2007, 23:55   #7
^TiGeRShArK^
Senior Member
 
L'Avatar di ^TiGeRShArK^
 
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12103
Quote:
Originariamente inviato da cionci Guarda i messaggi
In effetti...il fatto che ricorra l'albero potrebbe creare un problemi alla home directory, ma questo non ti impedirebbe di ricreare nuovamente l'utente.
si... questo lo so ke l'utente lo puoi ricreare..
ma tutti i tuoi dati, ovvero tutti i files su cui hai il permesso di scrittura, li perdi o no se lanci rm -rf /* anke se non sei root?

Prova e fammi sapere per sicurezza
__________________
^TiGeRShArK^ è offline   Rispondi citando il messaggio o parte di esso
Old 31-05-2007, 07:40   #8
cdimauro
Senior Member
 
L'Avatar di cdimauro
 
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
Quote:
Originariamente inviato da ^TiGeRShArK^ Guarda i messaggi
ne faccio già abbastanza di casini con linux..
soprattutto con VI e con la mia tastiera mista italiano/inglese (nel senso di tastiera inglese col layout in italiano )
Prova un editor umano, joe, che ha i comandi del vecchio e amatissimo WordStar (in buona parte poi adottati dalla Borland coi suoi Turbo*).
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro
@LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro
Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys
cdimauro è offline   Rispondi citando il messaggio o parte di esso
Old 31-05-2007, 08:16   #9
^TiGeRShArK^
Senior Member
 
L'Avatar di ^TiGeRShArK^
 
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12103
fiko il wordstar
cmq ho appena provato e non c'è installato 'sto joe..
e non se me lo fanno installare qui al lavoro mi sa

cmq ancora non ho capito che succede se lancio rm -rf /* da utente....
braso tutti i dati su cui ho accesso in scrittura o no?
__________________
^TiGeRShArK^ è offline   Rispondi citando il messaggio o parte di esso
Old 31-05-2007, 08:52   #10
ilsensine
Senior Member
 
L'Avatar di ilsensine
 
Iscritto dal: Apr 2000
Città: Roma
Messaggi: 15625
Quote:
Originariamente inviato da 71104 Guarda i messaggi
esiste su Linux qualche funzione analoga alle varie InterlockedXxx di Win32? in particolare mi servirebbero la InterlockedIncrement e la InterlockedDecrement (devo gestire un reference count in concorrenza), ma sarebbe gradita anche una InterlockedCompareExchange
Rub..ehm prendi spunto da atomic_t nei sorgenti del kernel linux e le rispettive funzioni.
__________________
0: or %edi, %ecx; adc %eax, (%edx); popf; je 0b-22; pop %ebx; fadds 0x56(%ecx); lds 0x56(%ebx), %esp; mov %al, %al
andeqs pc, r1, #147456; blpl 0xff8dd280; ldrgtb r4, [r6, #-472]; addgt r5, r8, r3, ror #12
ilsensine è offline   Rispondi citando il messaggio o parte di esso
Old 31-05-2007, 09:08   #11
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Ma siamo sicuri che in user space funzioni ugualmente ?
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 31-05-2007, 10:06   #12
cdimauro
Senior Member
 
L'Avatar di cdimauro
 
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
Quote:
Originariamente inviato da ^TiGeRShArK^ Guarda i messaggi
fiko il wordstar
cmq ho appena provato e non c'è installato 'sto joe..
e non se me lo fanno installare qui al lavoro mi sa
Anche da me non c'era, ma l'ho fatto installare (in tutte le macchine: una trentina ): con joe sono DI GRAN LUNGA più produttivo che col VI.
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro
@LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro
Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys
cdimauro è offline   Rispondi citando il messaggio o parte di esso
Old 31-05-2007, 10:09   #13
ilsensine
Senior Member
 
L'Avatar di ilsensine
 
Iscritto dal: Apr 2000
Città: Roma
Messaggi: 15625
Quote:
Originariamente inviato da cionci Guarda i messaggi
Ma siamo sicuri che in user space funzioni ugualmente ?
Sì sono dei semplici inline assembler con il prefisso "lock".

Ad es. mi è capitato di dover realizzare una classe tipo questa:
Codice:
#ifdef __SMP_SUPPORT__
#define LOCK "lock "
#else
#define LOCK
#endif

class Atomic
{
private:
  volatile int m_val;
public:
...
  void Inc();
  int AddAndReturn(int val);
...
};

inline void Atomic::Inc()
{
  asm volatile(
    LOCK "incl %0"
    :"=m" (m_val)
    :"m" (m_val)
  );
}

inline int Atomic::AddAndReturn(int val)
{
  int old = val;
  asm volatile(
    LOCK "xaddl %0, %1;"
    :"=r"(val)
    :"m"(m_val), "0"(val)
  );
  return val+old;
}
__________________
0: or %edi, %ecx; adc %eax, (%edx); popf; je 0b-22; pop %ebx; fadds 0x56(%ecx); lds 0x56(%ebx), %esp; mov %al, %al
andeqs pc, r1, #147456; blpl 0xff8dd280; ldrgtb r4, [r6, #-472]; addgt r5, r8, r3, ror #12
ilsensine è offline   Rispondi citando il messaggio o parte di esso
Old 01-06-2007, 00:01   #14
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
Quote:
Originariamente inviato da cionci Guarda i messaggi
Cosa ti vieta di usare una semplice mutex ?
si tratta del solito programma che sto facendo per l'università, quello col sorgente portabile per Windows e per Linux (l'ho quasi finito )

non so quanto "pesino" i semafori su Linux, ma certo è che su Win32 le InterlockedXxx sono molto più spedite di un mutex (cioè di un kernel object a tutti gli effetti).
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 01-06-2007, 00:08   #15
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
Quote:
Originariamente inviato da ilsensine Guarda i messaggi
Rub..ehm prendi spunto da atomic_t nei sorgenti del kernel linux e le rispettive funzioni.
e ti pareva che non ci stavano le funzioni già pronte
scrivere del codice assembly mi lega alla piattaforma: sicuramente non sarà richiesto che il programma giri su piattaforme diverse dagli x86 (penso che neanche lo farà andare su un processore a 64 bit), ma non so quanto piaccia al professore. per tenere il programma "leggero" potrei usare su Linux un pthread mutex al posto di un semaforo e su Win32 una sezione critica al posto di un mutex, ma in realtà non posso perché il reference count in questione deve essere condiviso tra processi.
conclusivamente alla mia prima esperienza di sorgente portabile non posso che dire la seguente cosa: GNU/Linux sarà anche na meraviglia, sarà l'emblema della prima utopia realizzata della storia, sarà rulez, sarà FOSS, sarà powa, sarà winzozz sucksz e tutto quello che vi pare; ma che sia "un sistema fatto dai programmatori per i programmatori" * non credo proprio -.-
a me Windows pare tecnologicamente molto più avanzato

* frase ricorrente che tra l'altro ripeteva spesso il mio prof di laboratorio di sistemi 1

Ultima modifica di 71104 : 01-06-2007 alle 00:14.
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 01-06-2007, 00:12   #16
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
Quote:
Originariamente inviato da cdimauro Guarda i messaggi
Anche da me non c'era, ma l'ho fatto installare (in tutte le macchine: una trentina ): con joe sono DI GRAN LUNGA più produttivo che col VI.
non pensavo che qualcuno sulla faccia della Terra lo usasse veramente il VI... :|

una volta c'ho provato... sono stato costretto per l'esame di laboratorio di sistemi 1... ma credevo che fosse soltanto na roba didattica
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 01-06-2007, 00:14   #17
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Early Optimization is the root of all evil

Perché non usi le mutex su entrambi e festa finita ? Prima scrivi tutto e poi cerca di migliorarlo...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 01-06-2007, 00:17   #18
71104
Bannato
 
L'Avatar di 71104
 
Iscritto dal: Feb 2005
Città: Roma
Messaggi: 7029
Quote:
Originariamente inviato da cionci Guarda i messaggi
Perché non usi le mutex su entrambi e festa finita ? Prima scrivi tutto e poi cerca di migliorarlo...
ah mbe' se è per questo sono comunque costretto

come ho riassunto al post #15, credo che mi convenga usare il semaforo/mutex.
71104 è offline   Rispondi citando il messaggio o parte di esso
Old 01-06-2007, 08:31   #19
^TiGeRShArK^
Senior Member
 
L'Avatar di ^TiGeRShArK^
 
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12103
Quote:
Originariamente inviato da 71104 Guarda i messaggi
non pensavo che qualcuno sulla faccia della Terra lo usasse veramente il VI... :|

una volta c'ho provato... sono stato costretto per l'esame di laboratorio di sistemi 1... ma credevo che fosse soltanto na roba didattica
magari!
io ogni volta che edito un file sotto ssh sono costretto ad usare quello schifo...
e i primi tempi facevo tanti di quei danni che ci mettevano 10 minuti a riuscire a chiuderlo i miei colleghi che in teoria l'avrebbero dovuto sapere usare ... lo mandavo in LOOP
__________________
^TiGeRShArK^ è offline   Rispondi citando il messaggio o parte di esso
Old 01-06-2007, 09:06   #20
ilsensine
Senior Member
 
L'Avatar di ilsensine
 
Iscritto dal: Apr 2000
Città: Roma
Messaggi: 15625
Quote:
Originariamente inviato da 71104 Guarda i messaggi
scrivere del codice assembly mi lega alla piattaforma
Più al "compilatore" che alla "piattaforma", a meno che non devi scrivere anche per Sparc (nel qual caso basta che dai una occhiata nella directory asm-<processore> del kernel linux per avere la soluzione).

Quote:
sicuramente non sarà richiesto che il programma giri su piattaforme diverse dagli x86 (penso che neanche lo farà andare su un processore a 64 bit), ma non so quanto piaccia al professore.
Quel codice gira perfettamente anche su x86-64.
Ok che l'asm è da evitare se possibile, ma hai trovato un ottimo esempio di utilizzo consigliato, che lo giustifica. Usando dei lock aggiungeresti un overhead assolutamente inutile.
Inoltre, leggendo la documentazione di "InterlockedIncrement":
http://msdn2.microsoft.com/en-us/library/ms683614.aspx
trovi scritto:
Quote:
This function is implemented as an inline function using a compiler intrinsic where possible.
qundi forse anche queste sono implementate con inline asm.
Nota inoltre che
Quote:
This function generates a full memory barrier (or fence) to ensure that memory operations are completed in order.
lo sfence non è necessario, a meno che non ti serva effettivamente.
Quote:
posso che dire la seguente cosa: GNU/Linux sarà anche na meraviglia, sarà l'emblema della prima utopia realizzata della storia, sarà rulez, sarà FOSS, sarà powa, sarà winzozz sucksz e tutto quello che vi pare; ma che sia "un sistema fatto dai programmatori per i programmatori" * non credo proprio -.-
Non capisco questa tua affermazione, sono sistemi profondamente diversi, e anzi è incredibile che tutto sommato presentino molte similitudini.
Forse che portare del codice tra Windows e MacOS sarebbe più semplice?
__________________
0: or %edi, %ecx; adc %eax, (%edx); popf; je 0b-22; pop %ebx; fadds 0x56(%ecx); lds 0x56(%ebx), %esp; mov %al, %al
andeqs pc, r1, #147456; blpl 0xff8dd280; ldrgtb r4, [r6, #-472]; addgt r5, r8, r3, ror #12
ilsensine è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Intervista a Stop Killing Games: distruggere videogiochi è come bruciare la musica di Mozart Intervista a Stop Killing Games: distruggere vid...
Samsung Galaxy S25 Edge: il top di gamma ultrasottile e leggerissimo. La recensione Samsung Galaxy S25 Edge: il top di gamma ultraso...
HP Elitebook Ultra G1i 14 è il notebook compatto, potente e robusto HP Elitebook Ultra G1i 14 è il notebook c...
Microsoft Surface Pro 12 è il 2 in 1 più compatto e silenzioso Microsoft Surface Pro 12 è il 2 in 1 pi&u...
Recensione REDMAGIC Astra Gaming Tablet: che spettacolo di tablet! Recensione REDMAGIC Astra Gaming Tablet: che spe...
Le 18 offerte Amazon del weekend, senza ...
Galaxy S25 Ultra 512GB sotto i 1.000€ su...
Vi piace l'iPhone nero? Su Amazon sono s...
MacBook Air M4 16GB/256GB e 16GB/512GB s...
4 portatili per risparmiare tanto ed ess...
San Marino multa TikTok: non controllano...
Dreame e Roborock in saldo su Amazon: ro...
Pazzesco su Amazon: crollano i prezzi de...
La Corea del Sud vorrebbe costruire una ...
Rilasciati i primi risultati delle anali...
Robot umanoidi low cost? Unitree ci prov...
Non solo Rocket Lab, anche Avio potrebbe...
Chips Act UE: 41,5 milioni di euro a Eph...
Ryzen Threadripper 9000 al debutto il 31...
Nuovi coupon nascosti Amazon (aggiorname...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 14:00.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v