System Call
हमें System Call के कांसेप्ट को समझने से पहले CPU के kernel mode तथा user mode के मध्य difference को समझना पड़ेगा.
आजकल हर ऑपरेटिंग सिस्टम में दो मोड्स होते है:-
- kernel mode 2. user mode
kernel mode
जब सी.पी.यू. kernel mode में होता है तो execute होने वाला प्रोग्राम, मैमोरी एड्रेस तथा हार्डवेयर रिसोर्स को एक्सेस कर सकता है. यह सी.पी.यू. के किसी भी instructions को execute कर सकता है. kernel mode बहुत ही शक्तिशाली मोड होता है क्योंकि इसमें ऑपरेटिंग सिस्टम के सबसे विश्वनीय प्रोग्राम execute होते हैं. अगर kernel mode में कोई प्रोग्राम crash हो गया तो पूरे सिस्टम ही ठप पड़ जाता है अर्थात् रुक जाता है.
User Mode:-
जब सी.पी.यू. user mode में होता है तो program को मैमोरी एड्रेस तथा हार्डवेयर रिसोर्स को डायरेक्ट एक्सेस करने की अनुमति नहीं होती है. user mode में अगर कोई प्रोग्राम crash भी हो जाएँ तो केवल वही प्रोग्राम बंद होगा. अर्थात् user mode में कोई प्रोग्राम बंद भी पड़ जाएँ तो भी सिस्टम सुरक्षित रहता है. कंप्यूटर में सबसे ज्यादा प्रोग्राम User Mode में ही Run होते है.
System Call (सिस्टम कॉल):-
जब भी user mode में कोई प्रोग्राम perform किया जाता है तो यूजर द्वारा सिस्टम को उस प्रोग्राम को पूरा करने की request की जाती है. क्योंकि user mode में मैमोरी एड्रेस तथा हार्डवेयर रिसोर्स को डायरेक्ट एक्सेस नहीं किया जा सकता है. तो यूजर के द्वारा यह request एक call के द्वारा की जाती है जिसे हम system call (सिस्टम कॉल) कहते है. आसान शब्दों में कहें तो, “system call प्रोग्राम तथा ऑपरेटिंग सिस्टम के मध्य इंटरफ़ेस का कार्य करता है.” जब यूजर द्वारा किसी प्रोग्राम को परफॉर्म करने के लिए system call की जाती है तो जो mode होता है वह user mode से kernel mode में बदल जाता है. जब भी हम सिस्टम में कोई फोल्डर खोलने की request करते है या माउस को स्क्रीन में move करते है तो यह सिस्टम कॉल कहलाता है.