I'm trying to understand the linux kernel parameters which are under /proc/sys/kernel/random/
, but I have some troubles. Could you help me figure some things out?
- What is the
boot_id
parameter used for? I found just information it's generated at boot, but I was unable to find why. - I know that the entropy pool size is constant (4096bits) and cannot be changed. Why is the number so small? Couldn't it be, let's say, 1048576 or more? Maybe is it not good to have many bits of entropy available?
- It's similar to the second question but concerns the
entropy_avail
parameter -- what is the purpose of not filling the entire pool of entropy? When I check the parameter, it oscillates around 1000 bits, but the pool size is 4096. Whenentropy_avail
hits the threshold set inwrite_wakeup_threshold
, it falls a little bit (usually 100), and it rises again to the point specified inwrite_wakeup_threshold
parameter. So why do we need this 4096 in entropy poolsize? - Is there any reason why I should increase or decrease the value of
read_wakeup_threshold
andwrite_wakeup_threshold
parameters? The first one just sleeps the process that wants entropy from the/dev/random
device, but what is the difference when I set this to 64, 128 or 256? It just hangs for a little bit longer period of time, or maybe is there something else?