Leksykon IT › Programowanie › Potok (pipe)

Potok (pipe)

Programowanie Svenska → Zaktualizowano: 2026-10-07

Jednokierunkowy strumień bajtów między dwoma procesami — to dzięki niemu działa | w powłoce.

Jądro tworzy bufor, daje jednemu procesowi deskryptor pliku do zapisu, a drugiemu do odczytu. Piszący blokuje się, gdy bufor jest pełny, czytający — gdy pusty, co daje kontrolę przepływu za darmo. W Linuksie bufor ma zwykle 64 kB.

Na tym mechanizmie opiera się filozofia Uniksa: małe programy robiące jedną rzecz, połączone strumieniami tekstu. Potok nazwany, tworzony przez mkfifo, żyje w systemie plików i pozwala połączyć niezależne procesy. Częsty efekt to SIGPIPE — zapis do potoku, którego czytelnik zniknął, domyślnie zabija proces, dlatego head potrafi uciszyć komendy produkujące więcej danych, niż trzeba.

← Wróć do leksykonu