stringtranslate.com

Буфер данных

В информатике буфер данных ( или просто буфер ) — это область памяти, используемая для временного хранения данных во время их перемещения из одного места в другое. Обычно данные сохраняются в буфере по мере их получения от устройства ввода (например, микрофона) или непосредственно перед отправкой на устройство вывода (например, динамики). Однако буфер можно использовать, когда данные перемещаются между процессами внутри компьютера. Это сравнимо с буферами в телекоммуникациях. Буферы могут быть реализованы в фиксированном месте памяти на аппаратном уровне или с использованием виртуального буфера данных в программном обеспечении, который указывает на место в физической памяти.

Во всех случаях данные, хранящиеся в буфере данных, хранятся на физическом носителе . Большинство буферов реализовано в программном обеспечении , которое обычно использует более быструю оперативную память для хранения временных данных из-за гораздо более быстрого времени доступа по сравнению с жесткими дисками . Буферы обычно используются, когда существует разница между скоростью получения данных и скоростью, с которой они могут быть обработаны, или в случае, когда эти скорости являются переменными, например, в диспетчере печати принтера или в потоковом онлайн-видео . В распределенной вычислительной среде буфер данных часто реализуется в виде пакетного буфера , который обеспечивает службу распределенной буферизации.

Буфер часто регулирует время, реализуя в памяти алгоритм очереди (или FIFO ), одновременно записывая данные в очередь с одной скоростью и считывая их с другой скоростью.

Приложения

Буферы часто используются в сочетании с вводом-выводом оборудования , например дисковых накопителей , отправки или получения данных в сеть или из нее или воспроизведения звука на динамике. Очередь к американским горкам в парке развлечений имеет много общего. Люди, которые катаются на горках, приходят с неизвестной и часто переменной скоростью, но американские горки смогут загружать людей очередями (по мере того, как горки прибывают и загружаются). Зона очереди действует как буфер — временное пространство, где желающие покататься ждут, пока поездка освободится. Буферы обычно используются в методе FIFO (первым вошел — первым обслужен), при этом данные выводятся в том порядке, в котором они поступили.

Буферы могут повысить производительность приложений, позволяя быстро выполнять синхронные операции, такие как чтение или запись файлов, вместо блокировки во время ожидания аппаратных прерываний для доступа к подсистеме физического диска; вместо этого операционная система может немедленно вернуть успешный результат вызова API, позволяя приложению продолжить обработку, пока ядро ​​завершает операцию с диском в фоновом режиме. Дополнительные преимущества могут быть достигнуты, если приложение читает или записывает небольшие блоки данных, которые не соответствуют размеру блока дисковой подсистемы, что позволяет использовать буфер для агрегирования множества меньших операций чтения или записи в блоки большего размера. эффективен для дисковой подсистемы или, в случае чтения, иногда позволяет полностью избежать физического доступа к диску.

Телекоммуникационный буфер

Буферная процедура или носитель данных , используемый в телекоммуникациях, компенсирует разницу в скорости потока данных или времени возникновения событий при передаче данных от одного устройства к другому.

Буферы используются для многих целей, в том числе:

Примеры

История

Одним из первых упоминаний о буфере печати является «Outscriber», разработанный пионером обработки изображений Расселом А. Киршем для компьютера SEAC в 1952 году: [1]

Одна из наиболее важных проблем при проектировании автоматических цифровых вычислительных машин состоит в том, чтобы получить результаты вычислений достаточно быстро, чтобы избежать задержки дальнейшего хода вычислений. Во многих задачах, для решения которых применяется компьютер общего назначения, объем выходных данных относительно велик — настолько велик, что приведет к серьезной неэффективности, если компьютеру придется ждать, пока эти данные будут напечатаны на существующих печатающих устройствах. Эта трудность была решена в SEAC путем предоставления устройств магнитной записи в качестве устройств вывода. Эти устройства способны получать информацию от машины со скоростью, в 100 раз превышающей скорость работы электрической пишущей машинки. Таким образом, достигается более высокая эффективность записи выходных данных; Транскрипция может быть произведена позже с устройства магнитной записи на печатающее устройство без привязки к основному компьютеру.

Смотрите также

Рекомендации

  1. ^ «Руководство по техническому обслуживанию SEAC: Outscriber» (PDF) . Отчет Национального бюро стандартов . 2794 . Июль 1953 г. Архивировано из оригинала (PDF) 15 февраля 2020 г. Проверено 13 июля 2017 г.