草庐IT

random-walk

全部标签

c - 使用 RNDADDENTROPY 将熵添加到/dev/random

我有一个设备会产生一些噪声,我想将其添加到嵌入式Linux系统中/dev/random设备的熵池中。我正在阅读manpageon/dev/random而且我不太了解您传递给RNDADDENTROPYioctl调用的结构。RNDADDENTROPYAddsomeadditionalentropytotheinputpool,incrementingtheentropycount.Thisdiffersfromwritingto/dev/randomor/dev/urandom,whichonlyaddssomedatabutdoesnotincrementtheentropycount.

linux - "cat/dev/random"与 "tail -f/dev/random"

声明cat/dev/random如预期的那样继续产生输出,但是tail-f/dev/random挂起(至少在OSX和SUSE上)。为什么后一条语句挂起? 最佳答案 tail-f做了几件事:找到流的结尾,通过读取直到到达EOF或通过查找结尾(/dev/random上不可用的操作)。备份一定长度(可能通过保留最近读取内容的适当长度的缓冲区,可能通​​过保留初始扫描期间最后N行的查找位置列表,或通过其他方式),然后打印该点和结尾之间的内容。继续打印超过该点的新内容,因为此类内容可用。如果没有尽头——如/dev/random的情况——那么第

c++ - 为什么从/dev/random 读取几乎总是阻塞?

我正在使用内核为2.6.38-12-generic的kubuntu我想在程序开始时从/dev/random中读取16个随机数。但是,它会在相对较短的时间后阻塞。填充/dev/random缓冲区需要多长时间?为什么需要这么长时间才能填满。我将其用作uuid生成器,并将其他随机源添加到种子中我的梅森捻线机。重要的是我不要得到重复的或重复的种子。如果我更改为/dev/urandom它工作正常。关于使用/dev/random而不是/dev/urandom的任何观点。 最佳答案 你真的不应该使用/dev/random。在已知的情况下,/dev

c -/dev/random 总是返回相同的序列

我打算使用/dev/random输出作为opensslkey生成的种子,然后我写了这个小程序只是为了检查我要做什么:#include#include#include#defineLEN128voiduc2hex(char*hex,unsignedchar*uc,unsignedshortuc_len){FILE*bp=fmemopen(hex,2*uc_len+1,"w");unsignedshorti;for(i=0;i我运行该程序一两次,一切似乎都运行良好,但随后我又以​​很短的顺序再次运行了四次,这是输出:[walter@eM350~]$./random0ee08c942ddf9

python - 如何防止 Python 的 os.walk 遍历挂载点?

在Unix中,所有磁盘都作为主文件系统中的路径公开,因此os.walk('/')将遍历,例如/media/cdrom作为以及主硬盘,这对于某些应用程序来说是不可取的。如何获得保留在单个设备上的os.walk?相关:Isthereawaytodetermineifasubdirectoryisinthesamefilesystemfrompythonwhenusingos.walk? 最佳答案 来自os.walk文档:Whentopdownistrue,thecallercanmodifythedirnameslistin-place

python - 在 Windows 上模拟/dev/random

我正在尝试将Python代码从Linux移植到Windows。在不同的地方,随机数是通过读取/dev/random生成的。有没有办法在Windows上模拟/dev/random?我正在寻找一种可以使代码在Linux上可用的解决方案... 最佳答案 如果你用的是Python,为什么还要关心具体的实现呢?只需使用therandommodule让它处理它。除此之外,(如果您不能依赖软件状态)os.urandom提供基于操作系统的随机值:OnaUNIX-likesystemthiswillquery/dev/urandom,andonWin

c - 多线程 random_r 比单线程版本慢

以下程序与描述的程序基本相同here.当我使用两个线程(NTHREADS==2)运行和编译程序时,我得到以下运行时间:real0m14.120suser0m25.570ssys0m0.050s当它仅使用一个线程(NTHREADS==1)运行时,即使它仅使用一个内核,我的运行时间也会显着缩短。real0m4.705suser0m4.660ssys0m0.010s我的系统是双核的,我知道random_r是线程安全的,我很确定它是非阻塞的。当相同的程序在没有random_r的情况下运行并且使用余弦和正弦的计算作为替代时,双线程版本的运行时间约为预期的1/2。#include#include#

linux - 如何使此 "action-packed, random data"在终端中回显?

好吧,这不是一个真正要实现任何实际目标的问题,但它仍然是一个严肃的问题,我希望它会被认真对待并且mods不会因此而惩罚我:)我相信你们中的大多数人都看过一些不错的Action片,其中CIA或FBI或黑客或任何其他“PCNerd”正在“检索一些信息”,当他们实际显示他们的屏幕/显示器/桌面时,有显示了很多随机数据,真是太刺激了:D所以,我们正在拍摄一部电影,我需要重建这样一个场景。我的操作系统是ubuntu10.10。我想我已经在互联网上的某个地方读到过那个shell实际上可以被记录然后回放,但我不确定它是如何工作的。基本上,任何可以解决问题的脚本/程序/代码/解决方案都非常受欢迎。如果

php - 为什么 trim 不能作为 PHP 中 array_walk 或 array_map 的回调?

为什么我的示例代码导致第一个字符串仍有尾随空格?$a=array('test_data_1','test_data_2');array_walk($a,'trim');array_map('trim',$a);foreach($aAS$b){var_dump($b);}string(12)"test_data_1"string(11)"test_data_2" 最佳答案 首先,array_walk根本不符合您的目的。其次,array_map不改变原数组而是返回映射后的数组。所以你需要的是:$a=array_map('trim',$a

php - 从匿名函数中中断 array_walk

有没有办法从匿名函数内部停止array_walk?这里有一些示例代码(有效)来说明我的意思,它检查数组是否只有数值。$valid=true;array_walk($parent,function($value)use(&$valid){if(!is_numeric($value)){$valid=false;}});return$valid?'Valid':'Invalid';如果我有一个足够大的数组,并且第一个条目无效,其余(冗余)检查仍会完成,所以我想停止执行。使用break/continue不起作用(错误:fatalerror:无法在...中中断/继续1级)。注意:我不想重写代码