Jak ziskat jedinecne cislo a realny cas ?

Pavel Kankovsky peak na kerberos.troja.mff.cuni.cz
Čtvrtek Duben 24 11:15:53 CEST 1997


On Thu, 24 Apr 1997, Petr Snajdr wrote:

> the time() functions returns the number of seconfs since 00:00
> Coordinated Universal Time (UTC) on January 1, 1970.
> 
> Nedelam si nadeje, ze vim co je to coordinated univesal time,ale
UTC je novejsi nazev pro cas, ktery maji na hvezdarne v Greenwichi
(doufam, ze jsem to napsal dobre :> ) s tim, ze tento cas nepodleha ruznym
sezonim vlivum (jako je DST, cili po nasem letni cas)

> kazdopadne time nevraci
> pocet sec. od 1.1.1970 (00:00),ale od 1.1.1970 (00:00) +/- letni/zimni
> cas tj. cas aksi "virtualni".
[snip]
> >my_time_fn
> 854097960
> ^^^^^^^^^ je mensi nez predchozi !

jak by ne, kdyz je (po rucnim prenastaveni casu) o hodinu mene!
(10:26 misto 11:26)
> 
> Chapu to snad spatne ? Pokud ano - jak tedy zisakt skutecny cas a ne
> posunuty o hodinu ap. ? 
nastavit si hodiny spravne a neposunovat je :)

=======
jinak k tomu puvodnimu dotazu o jedinecnych cislech, aby z toho neco mel
i ten puvodni tazatel :)

zalezi na tom, jak moc jedinecne to ma byt cislo: v podstate je mozno
pouzit asi ctyri zakladni hodnoty: pid, aktualni cas (bud time() nebo
gettimeofday()), nahodna hodnota (*) a jmeno nebo cislo i-node nejakeho
prave vytvoreneho souboru, pripadne jejich kombinace. Dobra varianta je
treba cas a pid (malokde se za sekundu protoci pidy kolem dokola), ale
vesmes skutecne dost zalezi na konkretnich pozadavcich

(*) to neni vysledek funkce rand(), ale neco opravdu nahodneho, napr.
nekolik bajtu z /dev/*random

--Pavel Kankovsky aka Peak (troja.mff.cuni.cz network administration)



Další informace o konferenci Linux