๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐Ÿ’ ๋ณด์•ˆ·์ทจ์•ฝ์ /๐Ÿ”ธ์‹œ์Šคํ…œ·์šด์˜์ฒด์ œ

File Descriptor

by Jenny:! 2022. 8. 12.

File Descriptor

ํŒŒ์ผ ๋””์Šคํฌ๋ฆฝํ„ฐ(์ดํ•˜ FD)๋ž€ ์‹œ์Šคํ…œ์œผ๋กœ๋ถ€ํ„ฐ ํ• ๋‹น ๋ฐ›์€ ํŒŒ์ผ์„ ๋Œ€ํ‘œํ•˜๋Š” ์Œ์ด ์•„๋‹Œ ์ •์ˆ˜ ๊ฐ’(unsigned int)์œผ๋กœ, ํ”„๋กœ์„ธ์Šค์—์„œ ์—ด๋ฆฐ ํŒŒ์ผ์˜ ๋ชฉ๋ก์„ ๊ด€๋ฆฌํ•˜๋Š” ํ…Œ์ด๋ธ”์˜ ์ธ๋ฑ์Šค์ด๋‹ค.

 

๋ฆฌ๋ˆ…์Šค ํ˜น์€ ์œ ๋‹‰์Šค ๊ณ„์—ด ์‹œ์Šคํ…œ์—์„œ๋Š” ๋ชจ๋“  ๊ฒƒ์„ ํŒŒ์ผ๋กœ ๊ด€๋ฆฌํ•˜๊ณ  ์žˆ๋‹ค. (์ •๊ทœ ํŒŒ์ผ, ๋””๋ ‰ํ† ๋ฆฌ, ์†Œ์ผ“, ํŒŒ์ดํ”„, ๋ธ”๋ก ๋””๋ฐ”์ด์Šค ,์บ๋ฆญํ„ฐ ๋””๋ฐ”์ด์Šค ๋“ฑ) ํ”„๋กœ์„ธ์Šค๊ฐ€ ํŒŒ์ผ์„ ์—ด๋ฉด, ์ปค๋„์€ ํŒŒ์ผ์— FD์—์„œ ์•ˆ ์“ฐ๋Š” ์ˆซ์ž ์ค‘ ์ž‘์€ ๊ฐ’๋ถ€ํ„ฐ ํ• ๋‹นํ•œ๋‹ค. ๊ทธ๋Ÿฌ๋ฉด ํ”„๋กœ์„ธ์Šค๋Š” ํ• ๋‹น๋ฐ›์€ FD๋กœ ํŒŒ์ผ์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋‹ค.

 

์ฒซ ์ค„์— FD๊ฐ€ 'ํŒŒ์ผ์„ ๊ด€๋ฆฌํ•˜๋Š” ํ…Œ์ด๋ธ”์˜ ์ธ๋ฑ์Šค'๋ผ๊ณ  ํ–ˆ๋Š”๋ฐ, ์•„๋ž˜ ๊ทธ๋ฆผ์„ ์ฐธ๊ณ ํ•˜๋ฉด ์ข‹๋‹ค.

์‚ฌ์šฉ์ž์˜ FD ํ…Œ์ด๋ธ”์—๋Š” ๊ธฐ๋ณธ์œผ๋กœ ์—ด๋ ค ์žˆ๋Š” ํ‘œ์ค€ ์ž…์ถœ๋ ฅ FD(0, 1, 2)๋ฅผ ์ œ์™ธํ•˜๊ณ , 3, 4, 5 ...์˜ ์ˆœ์„œ๋Œ€๋กœ ๊ฐ’์ด ํ• ๋‹น๋œ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ํ…Œ์ด๋ธ”๋งˆ๋‹ค ํฌ์ธํ„ฐ๊ฐ€ ํŒŒ์ผ ํ…Œ์ด๋ธ”์— ์žˆ๋Š” ํŒŒ์ผ์„ ๊ฐ€๋ฆฌํ‚ค๊ณ  ์žˆ๋‹ค.

 

 

๊ธฐ๋ณธ์œผ๋กœ ํ• ๋‹น๋˜๋Š” FD

ํ‘œ์ค€ ์ž…๋ ฅ (Standard Input) 0
ํ‘œ์ค€ ์ถœ๋ ฅ (Standard Output) 1
ํ‘œ์ค€ ์˜ค๋ฅ˜ (Standard Error) 2

 

 

์ฐธ๊ณ ์ž๋ฃŒ

https://dev-ahn.tistory.com/96