Buforowanie

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. Działa on zazwyczaj wykorzystując zasadę FIFO.

Można wykorzystywać bufory o:

  • zerowej pojemności (bufor jest tylko przekaźnikiem komunikatów),
  • ograniczonej pojemności,
  • nieograniczonej pojemności.

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 większa 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.