bildiğim kadarıyla random diye bir olay yok. bir program random komutunu çalıştırdığı anda işlemcinin o andaki saatinden bir rakam alıyordu (son rakamı mı ne öyle bir şey). her defasında random sayı elde etmek için de bu komutu yeniden çalıştırtıyordun, bu sefer farklı bir anda komut çalıştığı için farklı bir rakam geliyordu.
bilgisayar random sayı üretemez. pseudorandom sayı üretebilir. arada fark var yani. burada random sayılar belirli matematiksel formüllerle, deterministik olarak sentezlenir. yani aslında random değillerdir ama bizim rastgelelik eşiğimizin üstünde değerler üretirler. yoksa eninde sonunda kendilerini tekrarlarlar mesela... ama çoğu uygulama için dağılımı uniform ve kendini tekrar frekansı çooooooooook düşük olan standart algoritmalar yeterlidir. tabii ki öz hakiki random veriye ihtiyacı olan uygulamalar da bulunur, bu durumda dışarıdan destek almak elzem olur.
(bkz: quantum random bit generator service)
pseudorandom da deniyor buna. yalancı rastgele yani.
siz bile bir randomization algoritması yazabilirsiniz. mesela o anki saatin saat, dakika ve saniye bilgilerini birbirleriyle çarpıp, sonucun basamaklarının toplamını alırsınız, şahane bir rastgele sayınız olur. hatta çıkan sonucun da basamaklarını çarparsınız, çıkan sonuca aynı işlemi bir daha uygularsınız filan... mesela dört basamaklı bir rastgele sayı istiyorsanız, birinci basamağa çıkan sonucun üçüncü basamağını, ikinci basamağa birinci basamağını filan atarsınız.
ben c++'ta yapmıştım birkaç sene evvel, rastgele notalar çalan bir programcık yazmıştım.
actionary, bahsettiğin yöntem pek şahane bir şekilde random sayı üretmez, yani o kadar iyi bir algoritma değil. bir kere saniyede bir sayı üretebilme gibi bir limitasyonu var heheh :) ve sonuçlar pek de random ve uniform dağıtılmış olmayacaktır.