मुझे यूजर स्पेस कोड का एक टुकड़ा मिला है जो सीपीयू उपयोग प्राप्त करने के लिए पार्सिंग/proc/pID/task/tID/stat है। मैं प्रति सेकंड jiffies प्राप्त करने के लिए एचजेड का उपयोग कर सकते हैं, लेकिन यह कोड एक और मशीन पर जा सकता है जिसमें एक अलग कॉन्फ़िगर किया गया मान है। क्या रनटाइम पर उपयोगकर्ता स्पेस से एचजेड का मूल्य प्राप्त करने का कोई तरीका है?jiffies को सेकंड में कनवर्ट करें
उत्तर
आप इसे sysconf (_SC_CLK_TCK) से प्राप्त संख्या से विभाजित करते हैं।
हालांकि, मुझे लगता है कि यह शायद हमेशा 100 लिनक्स के तहत वास्तविक घड़ी टिक की परवाह किए बिना है, यह हमेशा 100
देखें आदमी proc के रूप में यूज़रस्पेस के समक्ष प्रस्तुत किया है (5)।
मैंने पढ़ा था कि 100 हमेशा उपयोगकर्ताओं के लिए प्रस्तुत किया जाता है ... लेकिन सुनिश्चित नहीं किया गया था कि यूजर स्पेस के रूप में गिना जाता है :) –
मुझे यकीन नहीं है कि मैं समझता हूं: क्या इसका मतलब यह है कि एचजेड वास्तव में प्रश्नकर्ता नहीं चाहता था? –
एचजेड वह नंबर है जो मैं चाहता था ... लेकिन यह निरंतर संकलित है। जब तक मैं उसी मशीन पर चल रहा हूं जिसके लिए मैं संकलित हूं ... सब अच्छा है। लेकिन अगर मैं बिना किसी मशीन के दूसरी मशीन पर जाता हूं तो इसका गलत मूल्य हो सकता है। –
"ps" कमांड के स्रोत में एचजेड के मूल्य प्राप्त करने के लिए फ़ाइल <linux/param.h>
शामिल है।
उन्होंने यह भी 17 नंबर के साथ एक "ELF नोट" के लिए देखो (sysinfo.c) हर्ट्ज का मान ज्ञात करने के लिए:
//extern char** environ;
/* for ELF executables, notes are pushed before environment and args */
static unsigned long find_elf_note(unsigned long findme){
unsigned long *ep = (unsigned long *)environ;
while(*ep++);
while(*ep){
if(ep[0]==findme) return ep[1];
ep+=2;
}
return NOTE_NOT_FOUND;
}
[...]
hz = find_elf_note(17);
मैं यह मेरे लिए अजीब लग रही है के बाद से ELF नोट स्वीकार करना होगा एक वर्ग में परिभाषित किया गया है संकलन के दौरान।
MarkR's जवाब के पीछे का गणित स्पष्ट करने के लिए:
sysconf(_SC_CLK_TCK)
आप jiffies per second
मिल जाएगा। सेकंड की कुल संख्या प्राप्त करने के लिए sysconf(_SC_CLK_TCK)
से प्राप्त होने वाली संख्या से jiffies
को विभाजित करें।
jiffies jiffies seconds
-------------------- = ----------------- = ------- = seconds
sysconf(_SC_CLK_TCK) (jiffies/second) 1
शेल-स्क्रिप्टिंग आदि के लिए, कमांड लाइन से getconf CLK_TCK
का उपयोग करें। उस पैरामीटर को पर्यावरण चर या कमांड लाइन पर पास करने के लिए इसका उपयोग कर सकते हैं।
main(int argc, char **argv) {
unsigned long clk_tck = atol(
getenv("CLK_TCK") || "0"
) || sysconf(_SC_CLK_TCK) ;
... /* your code */
इस रूप में ऊपर sysconf का उपयोग करता है, लेकिन आप एक वातावरण चर, उपरोक्त आदेश के साथ सेट किया जा सकता है, जिसमें उसे ओवरराइड करने देता है।
- 1. जिफियों को मिली सेकंड में कनवर्ट करना
- 2. प्रति सेकंड और jiffies टिक्स। क्या फर्क पड़ता है?
- 3. सेकंड, मिनट और सेकेंड में सेकंड्स को कनवर्ट करें
- 4. mysql DATETIME कॉलम को युग सेकंड में कनवर्ट करें
- 5. सेकंड को सेकंड्स में कनवर्ट करने के लिए फ़ंक्शन
- 6. घंटों में कनवर्ट करें: मिनट: एक्सेल में कुल मिनटों में सेकंड
- 7. स्ट्रिंग को डबल में कनवर्ट करें - वीबी
- 8. सीएसटींग को वर्ण सरणी में कनवर्ट करें?
- 9. बिटमैप को बाइट सरणी में कनवर्ट करें
- 10. java.util.Set को scala.collection में कनवर्ट करें।
- 11. कॉमा को पूर्णांक में कनवर्ट करें
- 12. इनपुटस्ट्रीम (छवि) को ByteArrayInputStream में कनवर्ट करें
- 13. स्ट्रिंग को गणितीय मूल्यांकन में कनवर्ट करें
- 14. जेननेल को छवि में कनवर्ट करें
- 15. टाइमस्टोन में टाइमस्टैम्प को कनवर्ट करें
- 16. पॉलीगॉन को त्रिकोणों में कनवर्ट करें
- 17. सरणी को स्ट्रिंग में कनवर्ट करें? सी #
- 18. SimpleXML को DOMDocument में कनवर्ट करें, DOMElement
- 19. तिथि को मिलीसेकंड में कनवर्ट करें
- 20. एनएसआईएनटेगर को NSUInteger में कनवर्ट करें?
- 21. UIImage को CVPixelBufferRef में कनवर्ट करें
- 22. फ़ंक्शन को सिमुलिंक ब्लॉक में कनवर्ट करें
- 23. वेब पेज को छवि में कनवर्ट करें
- 24. छवि को बाइनरी में कनवर्ट करें?
- 25. मिमी को पिक्सल में कनवर्ट करें
- 26. स्ट्रिंग टेक्स्ट को बिटमैप में कनवर्ट करें
- 27. तारीखों को संख्याओं में कनवर्ट करें
- 28. स्ट्रिंग को डेटाटाइम में कनवर्ट करें
- 29. प्रिंटस्ट्रीम को प्रिंटवाइटर में कनवर्ट करें
- 30. बिटमैप को स्ट्रिंग में कनवर्ट करें
डुप्लिकेट: http://stackoverflow.com/questions/2731463/converting-jiffies-to-milli-seconds – Daenyth
यह डुप्लिकेट नहीं है क्योंकि मैं एचजेड परिभाषा का उपयोग नहीं कर सकता। –