[์์คํ
ํ๋ก๊ทธ๋๋ฐ] pipe์ ๊ดํ์ฌ
ยท
Study/์์คํ
ํ๋ก๊ทธ๋๋ฐ
pipe()๋ฅผ ํธ์ถํ๋ฉด ํ์ดํ๋ฅผ ๋ง๋ค๊ณ ๋ ๊ฐ์ file descriptor table์ ์์ฑํ๋ค. โ ์ฝ๊ธฐ์ฉ descriptor table(fd[0])๊ณผ ์ฐ๊ธฐ์ฉ descriptor table(fd[1]) ์์ฑ ๋ถ๋ชจ์ ์์์ด pipe๋ก ์ํต์ ํ๋ค. ๋ถ๋ชจ๊ฐ pipe ํธ์ถ ํ์ผ ๋์คํฌ๋ฆฝํฐ ํ
์ด๋ธ 2๊ฐ ์์ฑ ์ปค๋ ์์ ํ์ดํ ๊ฐ์ฒด ์์ฑ fd[1]์ ๊ฐ์ง๊ณ ์์ฑ, fd[0]์ผ๋ก ์ฝ์ fork๋ฅผ ํด์ ์์ ํ๋ก์ธ์ค ์์ฑ ์์ ํ๋ก์ธ์ค๋ ๋๋ถ๋ถ์ ์ ๋ณด๋ฅผ ๋ณต์ฌํ๋ค.โ ํ์ผ ๋์คํฌ๋ฆฝํฐ ๋ด์ฉ ๋ํ ๋ณต์ฌ๋จ ๊ฐ์ ํ์ดํ์ ์ฐ๊ณ ์ฝ์ ์ ์๋ค. readํ ๋ฐ์ดํฐ๋ ํ์ดํ์ ์ ์ฅ๋์ง ์๊ณ , ์์ด์ง๋ค. ํ์ดํ ์์ readํ ๋ฐ์ดํฐ๊ฐ ์๋๋ฐ readํ ๊ฒฝ์ฐ โ ๊ทธ๋ฅ read๊ฐ ๋จ ํ์ดํ ์์ด ๋น์ด์๋๋ฐ readํ ๊ฒฝ์ฐ ์ง๊ธ์ ..