Buforowanie - technologia polegająca na stosowaniu buforów programowych lub sprzętowych, wykorzystywana najczęściej w celu wyrównania różnic prędkości przesyłania danych między różnymi urządzeniami. Dzieli się na:

  • zerową pojemność (jest tylko przekaźnikiem komunikatów)
  • ograniczoną pojemność
  • nieograniczoną pojemność

We wczesnych systemach operacyjnych buforowanie było wykorzystane do zwiększenia wydajności komputera, poprzez zmniejszenie tzw. "przestojów" procesora. Pozwalało ono na zmniejszenie czasu oczekiwania na operację wejścia lub wyjścia. Rozwiązanie było jedynie częściowo satysfakcjonujące, ponieważ:

  • wysoka szybkość jednostki centralnej - powodowała opróżnienie bufora, czego skutkiem był przestój procesora związany z oczekiwaniem na dane
  • zapełnienie bufora urządzenia wyjścia - powodowało przestój procesora, związany z oczekiwaniem na urządzenie wyjścia

Ponieważ szybkość działania jednostki centralnej była znacznie szybsza niż urządzeń wejścia-wyjścia, prędkość obliczeń była ściśle uzależniona od prędkości urządzeń wejścia-wyjścia.