कमांड लाइन में "समय" का उपयोग करते समय "सिस्टम टाइम" क्या है


10

Ubuntu 14.04 में मानक टर्मिनल पर timeएक Perlस्क्रिप्ट के समय का उपयोग करते हुए ।

मैंने पढ़ा है कि real timeस्टॉपवॉच समय है; जब मैं, एक उपयोगकर्ता के रूप में, मैं उस कार्यक्रम को देखने में खर्च कर रहा हूं जब तक कि मैं कार्यक्रम शुरू नहीं कर देता। लेकिन मुझे वह नहीं मिलता जो समय userया sysसमय पर होता है। timeकम से कम कहने के लिए आदमी पृष्ठ पर अस्पष्ट है।

हालांकि यह कुछ हद तक स्पष्ट है कि realसमय आपस में विभाजित है userऔर sysयह स्पष्ट नहीं है कि वे क्या दर्शाते हैं।

मेरी स्क्रिप्ट में मैं अंतर को देखने के लिए एक दूसरे के खिलाफ [1] C ++ और पर्ल बेंचमार्किंग कर रहा हूं, और मैं जानना चाहूंगा कि वास्तव में मुझे कौन सा डेटा मिल रहा है। एक उदाहरण आउटपुट है:

real    0m24.198s
user    0m23.120s
sys     0m1.030s

क्या कोई कृपया बता सकता है कि उपयोगकर्ता को समय का डिफ़ॉल्ट प्रारूप क्या बता रहा है? मैं लिनक्स में नौसिखिया हूं, इसलिए कृपया बहुत अधिक ग्रहण न करें।

[१] दिलचस्प है, जबकि C ++ रास्ता है, realसमय के संबंध में मेरे बेंचमार्क में पर्ल की तुलना में तेजी से रास्ता है, समय sysइतना अलग नहीं है, सी ++ के साथ वास्तव में sysपर्ल की तुलना में अधिक समय का उपयोग कर रहा है । यही कारण है कि मैं जानना चाहता हूं कि उनका क्या मतलब है


जवाबों:


15

से विकिपीडिया :

  • उपयोगकर्ता समय बनाम सिस्टम समय

शब्द 'उपयोगकर्ता सीपीयू समय' पहले थोड़ा भ्रामक हो सकता है। स्पष्ट होने के लिए, CPU का कुल समय उस समय की मात्रा का संयोजन होता है, जो किसी प्रोग्राम के लिए कुछ क्रिया करने में खर्च किए गए CPU (s) और प्रोग्राम की ओर से कर्नेल के लिए CPU (s) खर्च करने वाले सिस्टम कॉल के समय की राशि के बीच होता है। जब कोई प्रोग्राम किसी सरणी से गुजरता है, तो यह उपयोगकर्ता सीपीयू समय जमा कर रहा है। इसके विपरीत, जब कोई प्रोग्राम किसी सिस्टम कॉल को निष्पादित या कांटा के रूप में निष्पादित करता है, तो यह सिस्टम CPU समय जमा कर रहा है।

  • वास्तविक समय बनाम CPU समय

इस संदर्भ में "वास्तविक समय" शब्द, "स्टॉप वॉच" का उपयोग करने की तरह बीता हुआ "दीवार घड़ी" समय को संदर्भित करता है। कुल CPU समय (उपयोगकर्ता समय + sys समय) उस मान से अधिक या कम हो सकता है। क्योंकि एक कार्यक्रम कुछ समय प्रतीक्षा कर सकता है और बिल्कुल निष्पादित नहीं हो सकता है (चाहे उपयोगकर्ता मोड या सिस्टम मोड में) वास्तविक समय कुल सीपीयू समय से अधिक हो सकता है। क्योंकि एक प्रोग्राम उन बच्चों को कांटा सकता है जिनके CPU समय (उपयोगकर्ता और sys दोनों) टाइम कमांड द्वारा बताए गए मानों में जोड़े जाते हैं, कुल CPU समय वास्तविक समय से अधिक हो सकता है।


1
मुझे समझ नहीं आ रहा है कि मैं उस विकिपीडिया लेख को खोजने में कैसे कामयाब रहा। धन्यवाद।
एल्क्रे
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.