• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..03-May-2022-

COPYINGH A D19-Jan-200217.6 KiB340281

MakefileH A D03-May-20221.2 KiB4723

Makefile.LinuxH A D19-Jan-200240 74

Makefile.makefileH A D19-Jan-20021 KiB4321

Makefile.suseH A D19-Jan-20021.1 KiB4725

READMEH A D19-Jan-20022.2 KiB5239

buffer.cH A D03-May-202222.7 KiB1,028700

buffer.manH A D03-May-20225 KiB150124

sem.cH A D03-May-20223.1 KiB161104

sem.c.suseH A D19-Jan-20023 KiB160130

sem.hH A D19-Jan-20021.2 KiB375

README

1This is a program designed to speed up writing tapes on remote tape
2drives.  Requirements are shared memory and locks which normally
3means that these are supported in your kernel.
4
5Buffer has been tested under SunOS 4.0.*, SunOS 4.1.*, Solarix, HP-UX 7.0,
6and Gould UTX 2.1A (sv universe).
7
8The program splits itself into two processes.  The first process reads
9(and reblocks) from stdin into a shared memory buffer.  The second
10writes from the shared memory buffer to stdout.  Doing it this way
11means that the writing side effectly sits in a tight write loop and
12doesn't have to wait for input.  Similarly for the input side.  It is
13this waiting that slows down other reblocking processes, like dd.
14
15I run an archive and need to write large chunks out to tape regularly
16with an ethernet in the way.  Using 'buffer' in a command like:
17
18	tar cvf - stuff | rsh somebox buffer -o /dev/rst8
19
20is a factor of 5 faster than the best alternative, gnu tar with its
21remote tape option:
22
23	tar cvf somebox:/dev/rst8 stuff
24
25We have been using buffer here at Imperial for a couple of years now
26for writing tar tapes and the main system dumps.
27
28Thanks to Kevin Twidle <kpt@doc.ic.ac.uk> for the -p and -B code.
29Thanks to Bard Isley <brad@slammer.atl.ga.us> for fixes to the
30 read loop/SIGCHLD handling.
31Thanks to PerSteinar.Iversen@fi.uib.no for the DEC Alpha patches.
32Thanks to kargard@ampex.com (Erik L. Kargard) for the AMPEX enhancements.
33
34INSTALLATION:
35	Check that your kernel supports shared memory and semaphores.
36	A quick way to check is to build buffer and run it.
37	If it says "couldn't create shared memory segment" you probably
38	need to reconfigure and rebuild your kernel.
39
40	To install edit the Makefile and tailor the variables to
41	your local systems.  Then type make.
42
43DISCLAIMER:
44	This package is under the GNU GENERAL PUBLIC LICENSE!
45	In addtion under NO circumstances can I, or Imperial College,
46	be held liable for any event caused by the running or storing
47	of this program or its documentation.
48
49Lee McLoughlin.                           Phone: +44 171 594 8388
50IC-Parc, William Penney Lab,              Fax: +44 171 594 8449
51Imperial College, London, SW7 2BZ, UK     Email: L.McLoughlin@doc.ic.ac.uk
52