File Access Methods (Sequential, Direct)

File access methods तय करती हैं कि data storage से कैसे read या write होता है: या तो एक fixed linear line में record-दर-record, या किसी भी ख़ास block address पर तुरंत सीधे jump करके।

10 min read · 10 cards · 3 checks

Read in: English · हिन्दी · ગુજરાતી


Theory

Music Search का संघर्ष

कल्पना कीजिए आप LabOne में बैठे अपने Python lab की एक 2 घंटे की lecture recording के अंदर एक ख़ास section खोज रहे हैं। अगर video player आपको सिर्फ़ timeline पर कहीं click किए बिना second-दर-second fast forward या rewind करने देता, आपको वह एक ख़ास error message खोजने में कितना समय लगता? अब इसकी तुलना एक अकेले mouse click से सीधे 45वें minute पर jump करने से कीजिए। operating systems एक file में से गुज़रने की दोनों शैलियों को support क्यों करते हैं?

Theory

Cassette Tape बनाम Jukebox

sequential access को एक पुराने cassette tape की तरह सोचिए। अगर आप 4था song सुनना चाहते हैं, आपको पहले songs 1, 2, और 3 से physically wind करना होगा। कोई shortcut नहीं है। Direct access एक digital jukebox या एक CD player की तरह है। हर song का एक बिल्कुल address या index number होता है। आप keypad पर 4 type कर सकते हैं, और laser head तुरंत 4थे track की शुरुआत पर jump करता है, बाक़ी सब पूरी तरह छोड़ते हुए।

Theory

Sequential और Direct Access Methods

एक operating system अलग file access methods देता है इस पर निर्भर करते हुए कि जानकारी को कैसे retrieve करने की ज़रूरत है। sequential access में, जानकारी क्रम में process होती है, एक record दूसरे के बाद। एक read या write operation अपने-आप एक file pointer आगे बढ़ाता है। direct access (या random access) में, एक file को blocks या records के एक numbered sequence के रूप में देखा जाता है। program अपने बिल्कुल block address को निर्दिष्ट करके किसी भी block पर तुरंत read या write कर सकता है, इससे पहले किसी भी block को पढ़े बिना।

At a glance

sequential और direct file access methods के बीच मुख्य संरचनात्मक और operational अंतर।

FeatureSequential AccessDirect Access
Pointer Movementएक fixed linear क्रम में एक समय में एक record move करता हैएक address pointer के ज़रिए किसी भी block number पर तुरंत jump करता है
Hardware AnalogyMagnetic tape systems या continuous stream logsHard disk drives या आधुनिक solid state storage units
Performance Lookupfile में दूर स्थित ख़ास records खोजने के लिए धीमाबेहद तेज़, physical location के बावजूद constant time
LabOne Use Caseएक पूरी C source code file ऊपर से नीचे compile करनाroll number से एक student attendance database table query करना

Think first

Pointer Operations को ट्रेस करना

एक exam सवाल पूछता है: 'LabOne पर एक database file में 100 student records हैं। अगर system pointer अभी Record 5 पर है और आपको Record 50 पढ़ना है, sequential और direct access दोनों के तहत ज़रूरी record reads calculate कीजिए।' समाधान प्रकट करने से पहले चरण मन में हल कीजिए।

Show the answer

Sequential Access के लिए:

1. OS jump नहीं कर सकता। इसे Record 5 पढ़ना होगा, फिर 6 पर move करना, फिर 7, और आगे।

2. 5 से 50 जाने के लिए, इसे क्रमिक रूप से 45 अलग records पढ़कर गुज़रना होगा।

Direct Access के लिए:

1. program block number 50 निर्दिष्ट करता एक seek command जारी करता है।

2. file system block 50 के लिए physical disk address सीधे compute करता है।

3. read head तुरंत block 50 पर move करता है, बिल्कुल 1 record read operation की ज़रूरत रखते हुए।

Quiz

कौन सा file operation direct access files में भारी इस्तेमाल होता है पर एक विशुद्ध sequential file access mode में पूरी तरह अनुपस्थित या अर्थहीन है?

  1. Open
  2. Read
  3. Seek
  4. Close
Show the answer

Seek

file pointer को एक मनमाने block number पर फिर से position करता एक seek operation direct access के लिए मूल ज़रूरत है। एक सख़्त sequential file में, आप बीच का data पढ़े बिना आगे skip या head reposition नहीं कर सकते, seek operations को अवैध बनाते हुए।

Watch out

Storage Media की उलझन

semester exams में एक आम ग़लती यह लिखना है कि sequential files सिर्फ़ magnetic tapes पर store हो सकती हैं। यह ग़लत है। जबकि magnetic tapes सिर्फ़ sequential access कर सकते हैं, hard drives और solid state drives sequential और direct access दोनों files store कर सकते हैं। उदाहरण के लिए, LabOne पर आपकी log files एक तेज़ hard drive पर sequentially store होती हैं क्योंकि आप सिर्फ़ उनके अंत में लिखते हैं, इसलिए नहीं कि disk आपको ऐसा करने के लिए मजबूर करती है।

Think first

सही Method चुनना

उस text editor program के बारे में सोचिए जो आप LabOne में अपने assignments लिखने के लिए इस्तेमाल करते हैं। जब आप एक file खोलते हैं, यह line 1 से अंत तक सब कुछ आपकी screen पर load करता है। text editor internally file पढ़ने के लिए कौन सी access method इस्तेमाल कर रहा है? tap करने से पहले सोचिए।

Show the answer

text editor sequential access इस्तेमाल करता है। एक file खोलते या save करते समय, application पूरे document को बिल्कुल पहले character से आख़िरी byte तक निरंतर read या write करता है। पूरी file load करते समय storage के बीच में एक बेतरतीब block address पर jump करने की ज़रूरत नहीं है।

Theory

Database Systems और भविष्य के Semesters

आप अपने Semester 3 Database Management Systems course में direct access लगातार इस्तेमाल करेंगे। जब आप एक ख़ास ID वाले student को खोजता एक SQL query execute करते हैं, database उस बिल्कुल record को milliseconds में pinpoint करने के लिए direct access index maps इस्तेमाल करता है। अगर यह इसके बजाय sequential access इस्तेमाल करता, हर एक query पूरे LabOne server को धीमा करके रेंगने पर ला देती जैसे यह लाखों असंबंधित rows scan करता।

Summary

Key takeaways

  • Sequential access file records को एक सख़्त linear क्रम में process करता है, pointer अपने-आप आगे बढ़ाते हुए।
  • Direct access programs को एक address या index इस्तेमाल करते हुए किसी भी numbered block या record पर तुरंत jump करने देता है।
  • Sequential access source code पढ़ने या continuous application logs लिखने के लिए आदर्श है।
  • Direct access लाखों entries के बीच तेज़ lookups माँगती database applications के लिए ज़रूरी है।
  • hard drives जैसा hardware दोनों access patterns support कर सकता है, जबकि magnetic tapes सख़्ती से sequential हैं।
  • Memory hook: Sequential एक line में चलना है, direct point पर jump है!

Study this properly

This page is the lesson to read. In Gri-Learn the same topic is a graded deck: the self-checks are scored and your weak topics are tracked. Free to start.

Start this topic

Already have an account? Sign in

More from File and Memory Management

Gri-Learn · syllabus-mapped B.C.A. lessons in English, Hindi and Gujarati

File Access Methods (Sequential, Direct) · Operating System · Gri-Learn