मुझे लगता है कि यह काफी हद तक ऐतिहासिक कारणों से है।
एक यूनिक्स फ़ाइल वर्णनकर्ता एक छोटा सा है int
मूल्य, जैसे कार्यों के द्वारा दिया open
और creat
, और करने के लिए पारित कर दिया read
, write
, close
, और इसके आगे।
कम से कम यूनिक्स के शुरुआती संस्करणों में, एक फाइल डिस्क्रिप्टर संरचनाओं के एक निश्चित-आकार प्रति प्रक्रिया सरणी में एक सूचकांक था, जहां प्रत्येक संरचना में एक खुली फ़ाइल के बारे में जानकारी होती है। यदि मुझे सही तरीके से याद है, तो कुछ शुरुआती प्रणालियों ने इस तालिका का आकार 20 या तो सीमित कर दिया है।
अधिक आधुनिक प्रणालियों की उच्च सीमाएं हैं, लेकिन एक ही सामान्य योजना को बनाए रखा है, बड़े पैमाने पर जड़ता से बाहर।