Locally written software

NOTE: This material is distributed "as is" for educational purposes. While many people have found it useful, it should all be considered "use at your own risk" subject to your personal or business standards for quality assurance.

Most of this software will respond with help information if called with an argument of "-?" to trigger the usage routine. New or updated programs are flagged in red.

new: blkdevtrc

program Use files
addir Creates sessions on a multi-session CD, with many options on the destination name used. Will take directories or individual file on the command line, or input from stdin, such as find or files created by breakup. source (PERL)
Display information about block devices on the system. Run as root!
source (PERL.tgz}
breaker Break a list of items and sizes into multiple lists with a limited size per list.

Bug fix: Some combination of sizes would produce an incorrect list of items, possibly missing one item.

Enhancement: HTML doc is better

New feature: produce output file formatted to use as input to mkisofs using the "-path-list" and "-graft-points" options together to create ISO (CD or DVD) volumes.

breaks a list in "size string" order into maxsize groups and writes each group to a file. Useful to break long lists into smaller parts, such as lists of files to backup, etc.

source (PERL) documentation(HTML)
ctxbench IPC performance measurement tool

This program measures the performance of InterProcess Communication using several methods of notification between processes. These include signals, message queues, semaphores, and use of a spinlock.

Running "make tests" will create a test report in a standard format which can be processed by the extract program included. Several result files can be extracted at once, leading to a comparison of different kernels or options.

source in gzipped tar
glitch1 Scheduler characterization package

This package consists of a load and measure script glitch1.sh and an analysis tool, GLanal, which reads the gathered data, performs some statistical analysis, and writes an HTML table as output. Both objective and subjective data can be gathered.

update: generated HTML now includes "stability index."

source and doc tgz
newstools2 Assorted command line utilities written in C, which interface as a client to the NNTP network protocol. gzipped tarball
ptail low overhead pipe tailer

Enhancement: tar file now includes a makefile

This program reads from a pipe and copies the input to stdout. The main difference between tail and ptail is that ptail uses select() to minimize overhead (tail polls for more data) and responds immediately to available data.

The initial use of ptail was to direct sysout to a pipe and watch for certain exception conditions which benefit from prompt response.

C source code
(gzipped tar format)
ptbuf Copies from stdin to stdout using many small buffers controlled by pthreads for input and output. Many option, use the "-?" option for help. source tgz file
tdate.pl returns a string representing the last modified date of a file in touch format. Used to preserve the modified time of a file when running a shell script, and in other ways. source (PERL)
zeroize read lines, such as the file or directory names output of find, from stdin and write them zero-byte delimited (instead of newline delimited) to stdout.
Allows xargs with -0 option to handle filenames with special characters, such as blanks. Painfully simple but not obvious.
source (PERL)
MailTrim.pl This program is used to limit the size of a standard BSD format mail file to the most recent messages, by max number of messages or max size of the file. It may be used to limit the size of folders if your mail program dumps low priority messages into one or more folders which you read when you get time. source (PERL)

Other software - sometimes hard to find

program Use files
tree This is the tree command found in many distributions. Unfortunately it isn't in all, and is very handy for making complex directory trees readable. source

v1.13 Last update: 2011/09/11 14:03:36