Introduction (परिचय)
जब data I/O device (जैसे keyboard, disk) से CPU या memory में आता है, तो speed mismatch की problem होती है।
CPU बहुत fast होता है
I/O devices comparatively slow होते हैं
इस gap को handle करने के लिए Buffering का use किया जाता है।
I/O Buffering क्या होता है
I/O Buffering एक technique है जिसमें data को temporarily एक memory area (buffer) में store किया जाता है ताकि data transfer smooth और efficient हो सके।
Simple Definition
Buffer एक temporary storage area होता है जहाँ data को hold किया जाता है जब तक उसे process या transfer नहीं किया जाता।
Buffering की जरूरत क्यों पड़ती है
- Speed difference (CPU vs I/O device)
- Data loss को रोकने के लिए
- Continuous data flow बनाए रखने के लिए
Working (कैसे काम करता है)
- Device data भेजता है
- Data पहले buffer में store होता है
- फिर CPU buffer से data read करता है
इससे CPU को wait नहीं करना पड़ता

Types of I/O Buffering
1. Single Buffering
- केवल एक buffer use होता है
Working:
- Device → Buffer → CPU
Problem:
- CPU को wait करना पड़ सकता है
2. Double Buffering
- दो buffers use होते हैं
Working:
- एक buffer fill हो रहा होता है
- दूसरा buffer process हो रहा होता है
Parallel work होता है
Advantage:
- CPU idle नहीं रहता
3. Circular Buffering (Ring Buffer)
- Multiple buffers circular form में arranged होते हैं
Working:
- Buffers rotation में use होते हैं
- Continuous data flow मिलता है
Advantage:
- High efficiency
- Real-time systems में useful
Example
मान लो video streaming:
- Data server से आता है
- Buffer में store होता है
- फिर screen पर play होता है
👉 Buffer empty हो गया तो video रुक जाएगा (buffering…)
Advantages (फायदे)
- CPU efficiency बढ़ती है
- Data loss कम होता है
- Smooth processing
Disadvantages (कमियाँ)
- Extra memory की जरूरत
- Management थोड़ा complex
Key Points
- Buffer = temporary storage
- Speed mismatch handle करता है
- Double buffering ज्यादा efficient है
Conclusion
I/O Buffering Operating System का एक महत्वपूर्ण concept है, जो data transfer को smooth और efficient बनाता है।
यह CPU और I/O devices के बीच speed difference को balance करता है।