В статье не хватает (см. ). |
В информатике бу́фер (от англ. buffer), мн. ч. буфера́, бу́феры — это область памяти, используемая для временного хранения данных при вводе или выводе. Обмен данными (ввод и вывод) может происходить как с внешними устройствами, так и с процессами в пределах компьютера. Буфера могут быть реализованы в или программном обеспечении, но подавляющее большинство буферов реализуется в программном обеспечении. Буфера используются, когда существует разница между скоростью получения данных и скоростью их обработки или в случае, когда эти скорости переменны, например, при буферизации печати.
Буфер и кэш
Эти термины не являются взаимоисключающими, и их функции часто смешиваются, но существует различие в их предназначении. Буфер — временное хранилище, где большие блоки данных сливаются или разбиваются на части. Это необходимо для взаимодействия с запоминающим устройством, которое работает с большими блоками данных, или когда данные передаются в другом порядке чем тот, в котором они формируются, и лишь желательно — в том случае, когда использование мелких блоков неэффективно. Использование буфера приносит пользу, даже если буферизуемые данные пишутся в буфер и читаются из него однократно.
В свою очередь, использование кэша предполагает, что данные будут читаться из кэша чаще, чем записываться туда. Его назначение — уменьшить число обращений к запоминающему устройству, а не сделать их более эффективными.
Использование буферов
Метод организации обмена данными между устройствами или процессами с использованием буфера называется (буферизацией). Один из наиболее известных для пользователей ПК примеров такого использования буфера — (буфер обмена) в ОС Microsoft Windows.
Также буфера используются в программировании для получения данных от функций. Функции Windows API, результатом работы которых является строковое значение (например, MultiByteToWideChar), принимают в качестве одного из аргументов указатель на буфер, куда производится вывод. Вот пример фрагмента исходного текста программы на C, преобразующего строку «Hello, World!» в Unicode:
// исходная строка CHAR text[] = "Hello, World!"; // буфер для получения результата WCHAR buffer[256]; // преобразование строки в Unicode MultiByteToWideChar(CP_ACP, 0, text, strlen(text) + 1, buffer, sizeof(buffer)/sizeof(WCHAR));
См. также
- (Буфер обмена)
- Кэш
- Переполнение буфера
- (Двойная буферизация)
- (Тройная буферизация)
Примечания
- Большой толковый словарь русского языка / Гл. ред. С. А. Кузнецов. — СПб.: Норинт, 1998.
- Слово «буфер» на сайте gramota.ru . Дата обращения: 25 января 2020. 22 октября 2020 года.
- // Академический толковый словарь русского языка / под ред. Л. П. Крысина. — Институт русского языка им. В. В. Виноградова РАН, 2016. — Т. 2.
- Ваулина Е. Ю. // Информатика. Толковый словарь.. — М.: Эксмо, 2005. — 480 с. — (Школьные словари). — .
Википедия, чтение, книга, библиотека, поиск, нажмите, истории, книги, статьи, wikipedia, учить, информация, история, скачать, скачать бесплатно, mp3, видео, mp4, 3gp, jpg, jpeg, gif, png, картинка, музыка, песня, фильм, игра, игры, мобильный, телефон, Android, iOS, apple, мобильный телефон, Samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Сеть, компьютер