Theory
Bench વહેંચવાની કટોકટી
કલ્પના કરો કે તમે આપણા LabOne server પર એક વિશાળ graphic design assignment પર કામ કરી રહ્યા છો. અચાનક, 5 બીજા students પોતાના semester project માટે heavy database queries ચલાવવા log in કરે છે. server RAM સંપૂર્ણપણે ભરાઈ જાય છે અને બધું freeze થઈ જાય છે. જો LabOne પાસે બધાનો code એક સાથે રાખવા પૂરતા physical memory slots નથી, શું server બસ crash થઈ જાય છે અને તમારી unsaved પ્રગતિ ગુમાવે છે? કે એ તમારા કામને હંગામી રીતે બાજુ પર કરી શકે છે જેથી બીજા પસાર થઈ શકે?
Theory
Library Reading Room ની Table
RAM ને college library માં એક નાની study table ની જેમ વિચારો જે એક સમયે માત્ર 3 પુસ્તકો fit કરે છે. તમારું BCA assignment પૂરું કરવા તમારે 5 વિશાળ reference પુસ્તકો વાંચવી છે. હાર માનવાને બદલે, તમે 3 પુસ્તકો table પર રાખો છો. જ્યારે તમને 4મી પુસ્તક જોઈએ, તમે table પરથી એક નકામી પુસ્તક ઉઠાવો છો, એને book shelf પર પાછી મૂકો છો, અને નવી પુસ્તક table પર લાવો છો. book shelf એક હંગામી holding area તરીકે કામ કરે છે જેથી તમે table physically રાખી શકે એના કરતાં વધુ પુસ્તકો સાથે કામ કરી શકો.
Theory
Swapping ઔપચારિક રીતે વ્યાખ્યાયિત કરવું
એક operating system માં, swapping એક memory management technique છે જ્યાં એક સંપૂર્ણપણે નિષ્ક્રિય process ને main memory (RAM) માંથી હટાવીને એક ઝડપી secondary storage device પર move કરાય છે જેને backing store કહે છે. RAM નું આ મુક્ત થવું બીજી સક્રિય processes ને execute કરવા દે છે. જ્યારે swapped out process ફરી ચાલવા તૈયાર થાય છે, OS એને backing store થી પાછી main memory માં લાવે છે. આ cycle system ને high load હેઠળ પણ સરળતાથી ચાલતું રાખે છે.
At a glance
LabOne પર swapping cycle ના બે પાયાના તબક્કા.
| Operation | દિશા | Trigger Condition |
|---|---|---|
| Swap Out | RAM થી Backing Store સુધી | RAM સંપૂર્ણપણે ભરેલી છે અને એક higher priority process ને જગ્યા જોઈએ |
| Swap In | Backing Store થી RAM સુધી | process execution ફરી શરૂ કરવા તૈયાર છે અને RAM space ઉપલબ્ધ છે |
Think first
કુલ Transfer Time ની ગણતરી
ધારો કે 10 MB કદની એક student program ને LabOne પર જગ્યા બનાવવા RAM માંથી swap out કરવી છે. backing store 20 MB પ્રતિ second ની transfer rate વાળી એક hard disk છે. માત્ર આ process ને swap out કરવામાં લાગેલો બિલકુલ સમય calculate કરો. પગલાં પ્રગટ કરતાં પહેલાં division મનમાં કરવાનો પ્રયાસ કરો.
Show the answer
Step 1: આપેલા મૂલ્યો ઓળખો. Process Size = 10 MB. Transfer Rate = 20 MB પ્રતિ second.
Step 2: formula લાગુ કરો: Transfer Time = Process Size / Transfer Rate.
Step 3: સંખ્યાઓ મૂકો: Transfer Time = 10 MB / 20 MB પ્રતિ second = 0.5 seconds.
Step 4: એનો અર્થ માત્ર swap out તબક્કા માટે 500 milliseconds લાગે છે. એક પૂર્ણ swap cycle (swap out plus swap in) પૂરો 1.0 second લેશે, જે એક ઝડપી CPU માટે એક મોટો overhead છે.
Quiz
જો LabOne operating system વારંવાર processes swap in અને out કરે છે કારણ કે RAM ગંભીર રીતે ઓછી છે, system performance પર સૌથી સંભવિત અસર શું છે?
- CPU speed disk operations સંભાળવા આપોઆપ વધે છે
- server ભારે disk read અને write times ના કારણે ખૂબ ધીમો થઈ જાય છે
- કુલ physical RAM ક્ષમતા વધુ processes store કરવા કાયમી રીતે વધે છે
- backing store student files ને ભ્રષ્ટાચારથી બચાવવા સંપૂર્ણપણે બંધ થઈ જાય છે
Show the answer
server ભારે disk read અને write times ના કારણે ખૂબ ધીમો થઈ જાય છે
Disk access RAM access થી હજારો ગણું ધીમું છે. જ્યારે operating system ખરો code execute કરવા કરતાં વધુ સમય processes ને આગળ-પાછળ move કરવામાં વિતાવે છે, એ એક વિશાળ મંદી તરફ લઈ જાય છે. આ સ્થિતિ swapping overhead ના કારણે એક operational bottleneck છે.
Think first
એક Swapped Process નું ગંતવ્ય
જ્યારે એક process ને LabOne ની physical RAM માંથી swap out કરાય છે, એને બરાબર ક્યાં રખાય છે? જવાબ પ્રગટ કરતાં પહેલાં જરૂરી storage device ના પ્રકાર વિશે વિચારો.
Show the answer
એને secondary storage ના એક સમર્પિત high speed section માં store કરાય છે જેને backing store કહે છે, જે સામાન્ય રીતે એક ઝડપી hard drive કે solid state drive હોય છે. OS આ જગ્યાને ખાસ કરીને અટકેલી processes ના memory images રાખવા જાળવે છે જેથી એમને તરત reload કરી શકાય.
Watch out
Swapping વિરુદ્ધ Paging ની ગૂંચવણ
એક classic university exam ભૂલ swapping અને paging શબ્દોને અદલાબદલી વાપરવી છે. વિશુદ્ધ swapping માં, operating system પૂરી process ને RAM અને disk વચ્ચે એક એકલા પૂરા block તરીકે move કરે છે. એથી ઊલટું, paging એક process ને નાના સરખા ટુકડાઓમાં તોડે છે જેને pages કહે છે અને જરૂર પ્રમાણે individual ટુકડા move કરે છે. એ લખવું કે swapping એક program ના નાના individual ટુકડા move કરે છે તમારા paper પર તમારા marks લઈ લેશે.
Theory
Unit 4 માં Linux Swap Partitions
તમે આ concept થી Unit 4 માં જીવંત મળશો જ્યારે આપણે આપણા LabOne server પર Linux install કરવાનો અભ્યાસ કરીએ છીએ. installation પગલાં દરમિયાન, તમને swap space નામનું એક સમર્પિત partition બનાવવા કહેવાશે. આ swap partition એક backing store નું ખરી દુનિયાનું અમલીકરણ છે, એ સુનિશ્ચિત કરતાં કે તમારું Linux system ચાલુ રહે ભલે અનેક students બિલકુલ એ જ સમયે વિશાળ tasks load કરે.
Summary
Key takeaways
- Swapping RAM ઉપયોગ optimize કરવા પૂરી processes ને main memory અને secondary storage વચ્ચે move કરે છે.
- backing store એક ઝડપી disk ક્ષેત્ર છે જે માત્ર swapped out processes રાખવા વપરાય છે.
- Swap out એક process ને RAM થી disk માં copy કરે છે, જ્યારે swap in એને પાછી RAM માં copy કરે છે.
- swapping નો મુખ્ય દંડ ધીમી disk access ઝડપના કારણે ઊંચો transfer time છે.
- વિશુદ્ધ swapping પૂરા programs ને સામેલ કરે છે, જ્યારે paging નાના fixed ટુકડાઓ સાથે નિપટે છે.
- Memory hook: RAM ભરેલી છે, disk પર ધકેલો: swap out કરો જોખમ બચાવવા!