मैंने लिनक्स में SCHED_RR के समय टुकड़े के समान संदेह के बारे में इस टिकट को गुगल किया। लेकिन मुझे यहां से और कर्नेल स्रोत कोड दोनों से स्पष्ट उत्तर नहीं मिल सकता है। आगे की जांच के बाद, मुझे कुंजी बिंदु मिली है "RR_TIMESLICE" jiffies में डिफ़ॉल्ट समय स्लाइस है, मिलीसेकंड नहीं! इसलिए, SCHED_RR का डिफ़ॉल्ट समय टुकड़ा हमेशा 100ms होता है, भले ही आपने जो एचजेड कॉन्फ़िगर किया हो।
jiffies में "/ proc/sys/कर्नेल/sched_rr_timeslice_ms" का मूल्य है, जो मिलीसेकंड में इनपुट मूल्य, लेकिन यह स्टोर और आउटपुट के रूप में एक ही! इसलिए, जब आपका CONFIG_HZ = 100, आप पाएंगे कि:
# echo 100 > /proc/sys/kernel/sched_rr_timeslice_ms
# cat /proc/sys/kernel/sched_rr_timeslice_ms
10
यह थोड़ा उलझन में है। उम्मीद है कि यह आपको समझने में मदद कर सकता है!
हालांकि ऐसा लगता है कि 'rt.h' लिनक्स कर्नेल 3.9 के साथ दिखाई दिया। – backlash
** लिनक्स कर्नेल v3.9 ** से पहले, 'RR_TIMESLICE' की परिभाषा [शामिल/linux/sched.h] में स्थित थी (http://lxr.free-electrons.com/source/include/linux/sched ज? v = 3.8 # L1227)। ** लिनक्स कर्नेल v3.4 ** से पहले, परिभाषा को 'DEF_TIMESLICE' नाम दिया गया था और [कर्नेल/शेड/शेडएचएच] में स्थित था (http://lxr.free-electrons.com/source/kernel/sched/ sched.h? v = 3.3 # L43)। –
ध्यान दें कि यह उत्तर केवल वास्तविक समय प्राथमिकता आरआर –