Это командный буфер, который можно запустить в бесплатном хостинг-провайдере OnWorks с помощью одной из наших многочисленных бесплатных онлайн-рабочих станций, таких как Ubuntu Online, Fedora Online, онлайн-эмулятор Windows или онлайн-эмулятор MAC OS.
ПРОГРАММА:
ИМЯ
buffer - очень быстрая программа для переблокирования
СИНТАКСИС
буфер [-S размер] [-b Блоки] [-s размер] [-z размер] [-m размер] [-p процент] [-u
микросекунд] [-B] [-t] [-Z] [-i имя файла] [-o имя файла] [-d]
ДОПОЛНИТЕЛЬНЫЕ ОПЦИИ
-i имя файла
Использовать данный файл как входной. По умолчанию - stdin.
-o имя файла
Используйте данный файл в качестве выходного файла. По умолчанию - стандартный вывод.
-S размер
После того, как каждый кусок этого размера был написан, распечатайте, сколько было написано
так далеко. Также печатает общую пропускную способность. По умолчанию это не установлено.
-s размер
Размер каждого блока в байтах. Размер блока по умолчанию составляет 10 КБ, что соответствует нормальному выходу.
деготь(1) программу.
-z размер
Объединяет -S и -s флаги.
-b Блоки
Количество блоков, выделяемых в кольцевой буфер разделяемой памяти. По умолчанию
номер, необходимый для заполнения запрошенной разделяемой памяти.
-m размер
Максимальный размер блока разделяемой памяти, выделяемого для кольцевой очереди. По умолчанию
до одного мегабайта.
-p процент
Начинайте запись только тогда, когда заданный процент внутренней очереди заполнен. А
процент около 75 часто оказывается лучшим. По умолчанию ноль.
-u микросекунд
После каждой паузы записи в течение этого количества микросекунд. По умолчанию ноль. (Удивительно
небольшой сон, 100 мкс, после каждой записи может значительно повысить пропускную способность некоторых
диски.)
-B Заставить каждый записанный блок дополнить до размера блока. Это нужно некоторым
ленточные и картриджные приводы. По умолчанию - без дополнений. Это влияет только на последний блок
написано.
-t При выходе из печати в стандартный поток вывода краткое сообщение, показывающее общее количество записанных байтов.
-Z Если чтение / запись непосредственно на символьное устройство (например, ленточный накопитель), то после каждого
gigabyte выполняет поиск в начало файла. Используйте этот флаг с особой осторожностью.
Его можно использовать только на устройствах, где lseek не перематывает ленту, а сбрасывает
флаги положения ядер. Он используется для записи более 2 гигабайт.
-d Распечатать отладочную информацию в stderr во время работы.
Размеры - это число с необязательным завершающим символом. A 'b' умножает размер на
512, k на 1024 и m на мег.
ОПИСАНИЕ
Buffer читает из стандартного ввода с повторной блокировкой до заданного размера блока и записывает каждый блок
на стандартный вывод.
внутренне буфер представляет собой пару процессов, обменивающихся данными через большую кольцевую очередь, хранящуюся в
Общая память. Процесс чтения должен блокироваться только тогда, когда очередь заполнена и писатель
процесс, когда очередь пуста. Buffer разработан, чтобы попытаться сохранить писательскую сторону
постоянно занят, так что он может передавать поток при записи на ленточные накопители. Когда раньше писал
ленты с промежуточной сетью буфер может привести к значительному увеличению
пропускная способность.
Настройки по умолчанию для буфер обычно достаточно хороши. Если вы активно пользуетесь магнитной лентой
тогда стоит попробовать различные комбинации вариантов. В
конкретный запуск буфер на обоих концах трубы может обеспечить существенное увеличение
(см. последний пример ниже).
ПРИМЕРЫ
$ буфер < / и т.д. / termcap > / dev / rst8
$ деготь cf - . | RSH некто буфер > / dev / rst8 '
$ дамп fu - | RSH некто буфер -s 16k > / dev / nrst8 '
$ деготь cf - . | буфер |
RSH некто буфер -S 500K -p 75 > / dev / rst0 '
БУФЕР ПРЕДЕЛЫ
Есть 2 ограничения в буфер влияет на максимальный общий размер буфера: максимальное число
блоков (2048) и максимальный размер блока (512кБ). Это приводит к максимальному общему количеству
размер буфера 1 ГБ.
Обратите внимание, что также существует ограничение ядра на максимальный размер сегмента разделяемой памяти.
(использован буфер внутренне), который обычно намного ниже пределов в буфер. Так
if буфер жалуется на невозможность создать сегмент разделяемой памяти, это ограничение
возможно, придется поднять с помощью команды Sysctl kernel.shmmax =XXX (См. также Sysctl(1) и
процесс(5 г.)).
Используйте буфер онлайн с помощью сервисов onworks.net