From: Michael S. Z. <ms...@mo...> - 2005-06-05 22:26:12
|
Group, I have expanded my small torture test into a set of tests. Baseline is GNU/Bash-2.05b on GNU/Linux with all scripts executing as intended. No explicit test of mmap calls yet, but bash does use mmap calls during start-up. Tarball unpacks into a 'torture' directory. Copy of torture.me (the doc) follows inline. - - - - - Torture.me File extensions: [none, .win] : Dos/Windows text file conventions. [.nix] : Linux, Unix, *nix text file conventions. [.mac] : Mac text file conventions. Scripts: readfile [pathname]filename May be any format text file. ifstest[.nix, .win, .mac] Test data for the readfile script. (Once was the rxtest script.) Known broken under Bash-2.04 Known good under Bash-2.05b and Bash-3.0-p## If output from reading all three ifstest files is identical, the cross-platform IFS handling is fixed. This is the memory hog of the test scripts. rxsleep <SMALL_NUMBER> Allocates the user/bash internal shared file descriptors, creates two background jobs of itself and sleeps. Typically, the parent should die first. rxwait <SMALL_NUMBER> Allocates the user/bash internal shared file descriptors, creates two background jobs of itself and waits for its children to die. rxsfile <SMALL_NUMBER> <TEXT_FILE_NAME> Reads a file to an array with enough elements to hold the lines of whatever text file was specified and sleeps. Typically, the parent should die first. The memory held allocated is controlled by the size of the file. rxwfile <SMALL_NUMBER> <TEXT_FILE_NAME> This one waits for the children to die first. Legend: r (recursive) x (execution) [ s (sleep), w (wait) ] file[reader] Note 1: Start with small numbers, input X is the X in 2^X jobs. Note 2: When (not IF, but WHEN) your os breaks; you get to keep all of the parts. (A decent RT OS will not break.) Keep this in mind if redirecting the output to a disk file. |