पढ़ने के लिए this question के संदर्भ में() और लिखें(), मैं सोच रहा हूं कि प्रत्येक खुले फ़ाइल विवरण में अपना स्वयं का पढ़ना और लिखने वाले बफर हैं या यदि फ़ाइल के लिए एक सिंगल पठन और लिखने वाला बफर होता है तो इसे एकाधिक खोला जाता है एक बार में बार। मैं उत्सुक हूं क्योंकि इस पर असर डालने के साथ वास्तव में एक ही फाइल पर लिखने पर असर होगा। शायद यह ऐसा कुछ है जो यूनिक्स के बीच बदलता है?क्या प्रत्येक यूनिक्स फ़ाइल विवरण में अपना स्वयं का पढ़ना/लिखना बफर है?
(मेरी समझ के लिए, "फ़ाइल विवरण" एक खुली फ़ाइल के बारे में जानकारी/विकल्पों को संदर्भित करता है, जैसे वर्तमान मार्कर स्थिति। "फाइल डिस्क्रिप्टर", इसके विपरीत, संदर्भ में उपयोग की जाने वाली प्रक्रिया में केवल उस संख्या को संदर्भित करता है विवरण के लिए।)
मुझे लगता है कि निम्न स्तर यूनिक्स I/O अधिकतर बेबुनियाद है। लेकिन अगर एक धारा (फॉपेन इत्यादि) के रूप में खोला जाता है तो FILE संरचना के लिए एक बफर बनाया जाता है। – seand
@seand मेरी समझ में, पढ़ने/लिखने को डिफ़ॉल्ट रूप से buffered किया जाता है जब तक कि फ़ाइल O_DIRECT के साथ खोला नहीं जाता है। स्ट्रीम-आधारित i/o lib वास्तव में इस प्रक्रिया में बफरिंग की दूसरी परत जोड़ता है। – Jegschemesch