Add a stunningly useful utility.

if you ever nhave needed to do something like:
tar cf - <big_dir> | rsh cat > /dev/tape then you will appreciate this.

do something like

tar cf - <big_dir> | buffer | rsh othersys "cat  | buffer > /dev/tape"
to enjoy HUGE increases in speed while your tape drive does not
incessantly back/forth/stop/start.
This commit is contained in:
Mark Murray 1995-11-17 19:03:48 +00:00
parent 6e17e83550
commit e526d43c6e
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=2430
5 changed files with 51 additions and 0 deletions

19
misc/buffer/Makefile Normal file
View file

@ -0,0 +1,19 @@
# New ports collection makefile for: buffer
# Version required: 1.17
# Date created: 17 Nov 1995
# Whom: markm
#
# $Id$
#
DISTNAME= buffer-1.17
CATEGORIES+= utilities
MASTER_SITES= ftp://ftp.sun.ac.za/pub/unix/
NO_WRKSUBDIR= yes
post-install:
.if !defined(NOMANCOMPRESS)
gzip -9nf ${PREFIX}/man/manl/buffer.l
.endif
.include <bsd.port.mk>

1
misc/buffer/distinfo Normal file
View file

@ -0,0 +1 @@
MD5 (buffer-1.17.tar.gz) = 6c5236ed99f4df0832623f4c0498c681

1
misc/buffer/pkg-comment Normal file
View file

@ -0,0 +1 @@
buffer sporadic binary I/O for faster tape use

27
misc/buffer/pkg-descr Normal file
View file

@ -0,0 +1,27 @@
This is a program designed to speed up writing tapes on remote tape
drives. Requirements are shared memory and locks which normally
means that these are supported in your kernel.
[for FreeBSD, this means you MUST have a kernel with
options SYSVSHM
compiled in - markm]
Buffer has been tested under SunOS 4.0.*, SunOS 4.1.*, Solarix, HP-UX 7.0,
and Gould UTX 2.1A (sv universe).
The program splits itself into two processes. The first process reads
(and reblocks) from stdin into a shared memory buffer. The second
writes from the shared memory buffer to stdout. Doing it this way
means that the writing side effectly sits in a tight write loop and
doesn't have to wait for input. Similarly for the input side. It is
this waiting that slows down other reblocking processes, like dd.
I run an archive and need to write large chunks out to tape regularly
with an ethernet in the way. Using 'buffer' in a command like:
tar cvf - stuff | rsh somebox "buffer > /dev/rst8"
is a factor of 5 faster than the best alternative, gnu tar with its
remote tape option:
tar cvf somebox:/dev/rst8 stuff

3
misc/buffer/pkg-plist Normal file
View file

@ -0,0 +1,3 @@
@cwd /usr/local
bin/buffer
man/manl/buffer.l.gz