यह स्पष्ट है कि सामान्य रूप से पढ़ने (2) सिस्टम कॉल पढ़ने के लिए कहा गया था उससे कम बाइट वापस कर सकते हैं। हालांकि, कुछ कार्यक्रमों का मानना है कि स्थानीय फाइलों के साथ काम करते समय, पढ़ें (2) कभी भी पूछे जाने से कम नहीं लौटाता है (जब तक फ़ाइल निश्चित रूप से कम न हो)।"संक्षिप्त पढ़ा", यह कब हो सकता है?
तो, मेरा सवाल यह है कि: लिनक्स पर, कौन से मामलों को पढ़ा जा सकता है (2) खुली फ़ाइल से पढ़ने और ईओएफ का सामना नहीं किया जा रहा है उससे कम वापस लौटा सकता है और पढ़ने की राशि अधिकतम कुछ किलोबाइट है?
कुछ अनुमान:
- संकेत इस तरह पढ़ने बीच में प्राप्त कर सकते हैं, लेकिन नहीं यह असफल बनाते हैं?
- क्या विभिन्न फाइल सिस्टम इस व्यवहार को प्रभावित कर सकते हैं? क्या jffs2 के बारे में कुछ खास है?
कौन से प्रोग्राम "मानते हैं कि स्थानीय फाइलों के साथ काम करते समय, पढ़ें (2) कभी भी पूछा गया उससे कम रिटर्न नहीं देता"? सामान्य मामले में, यह एक बग की तरह लगता है। – Ken
उदाहरण के लिए, klibc utils में fstype बाइनरी। ऐसा लगता है कि कई निम्न-स्तरीय प्रोग्राम जो फ़ाइलों के साथ काम करने के लिए मान सकते हैं, सीधे मानते हैं कि पढ़ना कभी कम नहीं होता है। – Nakedible