Я вижу слово «БУФЕР» везде, но я не могу понять, что это такое.
- Кто-нибудь, пожалуйста, объясните, что такое буфер в языке непрофессионала ?
- Когда это используется?
- Как это используется?
Я вижу слово «БУФЕР» везде, но я не могу понять, что это такое.
Ответы:
Представьте, что вы едите конфеты из миски. Вы берете одну часть регулярно. Чтобы не допустить вытекания чаши, кто-то может снова наполнить чашу до того, как она опустеет, поэтому, когда вы захотите взять еще один кусок, в чаше окажется конфетка.
Чаша служит буфером между вами и конфетным мешком.
Если вы смотрите фильм онлайн, веб-служба будет непрерывно загружать следующие 5 минут в буфер, таким образом, ваш компьютер не должен загружать фильм во время просмотра (что может привести к зависанию).
Термин «буфер» является очень общим термином и не является специфичным для IT или CS. Это место для временного хранения чего-либо, чтобы уменьшить разницу между скоростью ввода и скоростью вывода. Пока производитель работает быстрее, чем потребитель, он может продолжать сохранять выходные данные в буфере. Когда потребитель ускоряется, он может читать из буфера. Буфер находится в середине, чтобы преодолеть разрыв.
Если вы усредните определения в http://en.wiktionary.org/wiki/buffer , я думаю, вы поймете эту идею.
В качестве доказательства того, что нам действительно «приходилось идти 10 миль каждый день по снегу, чтобы идти в школу», см. Руководство по вызовам монитора TOPS-10, том 1 , раздел 11.9, «Использование буферизованного ввода-вывода», в закладке 11-24. Не читайте, если вы подвержены кошмарам.
Буфер - это просто кусок памяти, используемый для хранения данных. В самом общем смысле, это обычно один блок памяти, который загружается за одну операцию, а затем очищается в одной или нескольких, например, в «Перчатке» Перчика. Например, в программе на Си вы можете иметь:
#define BUFSIZE 1024
char buffer[BUFSIZE];
size_t len = ;
// ... later
while((len=read(STDIN, &buffer, BUFSIZE)) > 0)
write(STDOUT, buffer, len);
... которая является минимальной версией cp (1) . Здесь буферный массив используется для хранения данных, прочитанных read (2), до тех пор, пока они не будут записаны; затем буфер используется повторно.
Используются более сложные схемы буфера, например, кольцевой буфер , где используется некоторое конечное число буферов, один за другим; как только все буферы заполнены, индекс «оборачивается», так что первый снова используется.
Буфер означает «временное хранилище». Буферы важны в вычислениях, потому что взаимосвязанные устройства и системы редко "синхронизируются" друг с другом, поэтому, когда информация отправляется из одной системы в другую, ей нужно где-то ждать, пока система-получатель не будет готова.
На самом деле это будет зависеть от контекста в каждом случае, так как нет единого определения, но, говоря в общих чертах, буфер - это место для временного хранения чего-либо. Лучшая аналогия в реальном мире, о которой я могу подумать, это место ожидания. Один простой пример в вычислениях - когда буфер относится к части оперативной памяти, используемой для временного хранения данных.
Буфер - это временная метка-заполнитель (переменные во многих языках программирования) в памяти (ram / disk), на которую могут быть выгружены данные и затем может быть выполнена обработка.
Буферизация имеет много преимуществ, таких как параллельная работа, повышение производительности ввода-вывода и т. Д.
Он также имеет много недостатков, если не используется правильно, например, переполнение буфера, переполнение буфера и т. Д.
C Пример символьного буфера.
char * buffer1 = calloc (5, sizeof (char));
char * buffer2 = calloc (15, sizeof (char));
Буфер - это область данных, совместно используемая аппаратными устройствами или программными процессами, которые работают с разными скоростями или с разными наборами приоритетов. Буфер позволяет каждому устройству или процессу работать без задержки со стороны другого. Для того чтобы буфер был эффективным, размер буфера и алгоритмы перемещения данных в буфер и из него.
буфер является «средним местом удержания», но существует не столько для ускорения скорости действия, сколько для поддержки координации отдельных действий.
Этот термин используется как в программировании, так и в оборудовании. В программировании буферизация иногда подразумевает необходимость экранирования данных из их конечного предполагаемого места, чтобы их можно было редактировать или обрабатывать иным образом перед перемещением в обычный файл или базу данных.
Буфер - это временная метка-заполнитель (переменные во многих языках программирования) в памяти (ram / disk), на которую могут быть выгружены данные и затем может быть выполнена обработка.
Термин «буфер» является очень общим термином и не является специфичным для IT или CS. Это место для временного хранения чего-либо, чтобы уменьшить разницу между скоростью ввода и скоростью вывода. Пока производитель работает быстрее, чем потребитель, он может продолжать сохранять выходные данные в буфере. Когда потребитель ускоряется, он может читать из буфера. Буфер находится в середине, чтобы преодолеть разрыв.