ලිනක්ස් “ඉහළ” විධානය: අප, sy, ni, id, wa, hi, si සහ st (CPU භාවිතය සඳහා) යනු කුමක්ද?


207

මම topලිනක්ස් හි නිකුත් කරන විට , මට මේ හා සමාන ප්‍රති result ලයක් ලැබේ:

ඉහළ තිර රුව

එක් පේළියක CPU භාවිත තොරතුරු මේ ආකාරයෙන් නිරූපණය කර ඇත:

Cpu(s): 87.3%us,  1.2%sy,  0.0%ni, 27.6%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st

මම ඒ එක් එක් අර්ථ දැක්වීම් (බොහෝ පහළින්) දන්නා නමුත්, මෙම කාර්යයන් හරියටම අදහස් කරන්නේ කුමක්දැයි මට තේරෙන්නේ නැත.

  • hi - දෘඩාංග බාධා කිරීම් වලට සේවා සැපයීම යන්නෙන් අදහස් කරන්නේ කුමක්ද?
  • si - මෘදුකාංග බාධා කිරීම් වලට සේවා සැපයීම යන්නෙන් අදහස් කරන්නේ කුමක්ද?
  • st - ඔවුන් පවසන්නේ එය "අථත්ය CPU විසින් ස්වේච්ඡාවෙන් බලා සිටින CPU කාලය වන අතර හයිපර්වයිසර් වෙනත් සකසනයකට (හෝ)% අථත්ය යාන්ත්රණයකින් සොරකම් කරන ලද කාලයයි".

නමුත් ඇත්ත වශයෙන්ම එයින් අදහස් කරන්නේ කුමක්ද? යමෙකුට වඩාත් පැහැදිලි විය හැකිද?

මම සියලු ලැයිස්තුගත us, sy, ni,, ආදිය ඒ එකම සොයමින් අන් අයට උදව් විය හැකි නිසා ය. මෙම තොරතුරු මෑන් පිටුවල නොමැත.

us: user cpu time (or) % CPU time spent in user space
sy: system cpu time (or) % CPU time spent in kernel space
ni: user nice cpu time (or) % CPU time spent on low priority processes
id: idle cpu time (or) % CPU time spent idle
wa: io wait cpu time (or) % CPU time spent in wait (on disk)
hi: hardware irq (or) % CPU time spent servicing/handling hardware interrupts
si: software irq (or) % CPU time spent servicing/handling software interrupts
st: steal time - - % CPU time in involuntary wait by virtual cpu while hypervisor is servicing another processor (or) % CPU time stolen from a virtual machine

Answers:


96

hiදෘඩාංග බාධා සැකසීමට ගත කරන කාලය වේ. දෘඩාංග බාධා කිරීම් ජනනය කරනු ලබන්නේ දෘඩාංග උපාංග (ජාල කාඩ්පත්, යතුරුපුවරු පාලකය, බාහිර ටයිමරය, දෘඩාංග සංවේදක, ...) CPU වෙත යමක් සං signal ා කිරීමට අවශ්‍ය වූ විටය (දත්ත පැමිණ ඇත, උදාහරණයක් ලෙස).

මේවා බොහෝ විට සිදුවිය හැකි බැවින් සහ ඒවා ක්‍රියාත්මක වන විට වර්තමාන CPU අවහිර කරන හෙයින්, කර්නල් දෘඩාංග බාධා කිරීම් හසුරුවන්නන් හැකි තරම් වේගවත් හා සරල ලෙස ලියා ඇත.

දිගු හෝ සංකීර්ණ සැකසුම් කිරීමට අවශ්‍ය නම්, යාන්ත්‍රණ ඇමතුමක් භාවිතා කරමින් මෙම කාර්යයන් කල් දමනු ලැබේ softirqs. මේවා ස්වාධීනව සැලසුම් කර ඇත, ඕනෑම CPU එකක ධාවනය කළ හැකිය, සමගාමීව ධාවනය කළ හැකිය (දෘඩාංග බාධා කිරීම් හසුරුවන්නන් සම්බන්ධයෙන් ඒ කිසිවක් සත්‍ය නොවේ).

දෘ CP IRQs වර්තමාන CPU අවහිර කිරීම පිළිබඳ කොටස සහ softirqsඕනෑම තැනක ධාවනය කිරීමට ඇති කොටස හරියටම නිවැරදි නොවේ, සීමාවන් තිබිය හැකි අතර සමහර දෘඩ IRQ මඟින් අනෙක් අයට බාධා කළ හැකිය.

නිදසුනක් ලෙස, ජාල කාඩ්පතකින් "ලැබුණු දත්ත" දෘඩාංග බාධා කිරීම මඟින් "කාඩ්පත් එතිඑක්ස් සේවය කළ යුතු" තොරතුරු කොහේ හෝ තැනක ගබඩා කර උපලේඛනගත කළ softirqහැකිය. මෙම softirqසැබෑ පැකට් ගමන්වාරය මූලික හේතුව බව දෙයක් වනු ඇත.

siමේවායින් ගත කරන කාලය නියෝජනය කරයි softirqs.

softirqයාන්ත්‍රණය පිළිබඳ හොඳ කියවීමක් (ඉතිහාසයක් ද ඇත) මැතිව් විල්කොක්ස්ගේ මම පසුව එය කරන්නෙමි: සොෆ්ට්රික්ස්, කාර්ය සාධක, පහළ අර්ධ, කාර්ය පෝලිම්, වැඩ පෝලිම් සහ ටයිමර්ස් (PDF, 64k).

st, "සොරකම් කාලය", අදාළ වන්නේ අථත්‍යකරණය කළ පරිසරවල පමණි. එය නිරූපණය කරන්නේ වර්තමාන අථත්‍ය යන්ත්‍රයට සැබෑ CPU ලබා ගත නොහැකි වූ කාලයයි - එය එම වීඑම් වෙතින් හයිපර්වයිසර් විසින් "සොරකම් කරන ලදි" (එක්කෝ වෙනත් වීඑම් එකක් ධාවනය කිරීමට හෝ එහි අවශ්‍යතා සඳහා).

මෙම ගිණුම්කරණ CPU කාලය IBM සිට ලියවිල්ල ගැන කාලය සොරකම් අතර CPU අථත්යකරණය කළ පරිසර තුළ ගිණුම්කරණ වැඩි විස්තර ඇත. (එය zSeries වර්ගයේ දෘඩාංග ඉලක්ක කර ඇත, නමුත් සාමාන්‍ය අදහස බොහෝ වේදිකාවලට සමාන වේ.)


ඉතා පැහැදිලිය. ඉතින්, මම නව ශබ්ද පද්ධතියක්, හෙඩ්සෙට් යනාදිය සම්බන්ධ කළහොත් (ඒ සඳහා ඕනෑම දෘඩාංගයක්) එය දෘඩාංග බාධා කිරීමටද හේතු වේ, නේද?
its_me

2
ඔව්, එය ඔබේ ශබ්ද චිප්සෙට් එකට "යමක් සිදුවී ඇති" බවට සං signal ා කිරීමට මාර්ගයක් විය හැකිය. නමුත් හෙඩ්සෙට් එකක ප්ලග් කිරීම මුළුමනින්ම ශබ්ද චිපය විසින්ම සිදු කළ හැකිය (නිදසුනක් ලෙස ශබ්ද ප්‍රතිදානය ප්‍රධාන සිට ඔබේ හෙඩ්ෆෝන් වෙත නැවත හරවා යැවීම), එබැවින් එය ප්‍රධාන CPU වෙත බාධාවක් ඇති නොකරනු ඇත. ඔබගේ යතුරුපුවරුවේ යතුරක් ටයිප් කිරීමෙන් බාධා ඇති වේ (ඔබට USB යතුරු පුවරුවක් තිබේ නම් ඔබගේ USB හබ් උපාංගයෙන්). මෙයද බලන්න cat /proc/interrupts(මිනිසා man procසඳහා ලේඛනය. එම ගොනුව ගැන).
මැට්

20
  • අප - පරිශීලක අවකාශයේ ගත කළ කාලය
  • sy - කර්නල් අවකාශයේ ගත කරන කාලය
  • ni - නියම කළ පරිශීලක ක්‍රියාවලි ක්‍රියාත්මක කිරීමට ගතවන කාලය (පරිශීලක අර්ථ දක්වන ලද ප්‍රමුඛතාවය)
  • id - නිෂ්ක්‍රීය මෙහෙයුම් සඳහා ගත කරන කාලය
  • wa - IO පර්යන්ත සඳහා රැඳී සිටීමට ගතවන කාලය (උදා: තැටිය)
  • හායි - දෘඩාංග බාධා කිරීම් පුරුදු හැසිරවීමට ගත කළ කාලය. (පර්යන්ත ඒකකයකට අවධානය යොමු කිරීමට අවශ්‍ය වූ විට එය CPU බවට පත් වේ, එය වචනාර්ථයෙන් රේඛාවක් ඇද ගනී, එය සේවය කිරීම සඳහා CPU සං signal ා කරයි)
  • si - මෘදුකාංග බාධා කිරීමේ පුරුදු හැසිරවීමට ගත කළ කාලය. (කේත කැබැල්ලක්, බාධාකාරී පුරුද්දක් ලෙස හැඳින්වේ ...)
  • st - හයිපර්වයිසර් වෙනත් ප්‍රොසෙසරයකට සේවය කරන අතරතුර අතථ්‍ය cpu විසින් ස්වේච්ඡාවෙන් බලා සිටීම සඳහා ගත කරන කාලය (අථත්‍ය යන්ත්‍රයකින් සොරකම් කර ඇත)

2

AWS වෙතින් T2.micro EC2 නිදසුනක් භාවිතා කිරීමෙන් "st" අගය සරලව පැහැදිලි කළ හැකිය.

තුළ AWS ප්රලේඛනය ඔබ VCPU අනුව පමණක් 10% ක පාදක කාර්ය සාධන ලබා දී ඇති බවයි කියවිය හැක. මෙයින් අදහස් කරන්නේ ඔබට බොහෝ cpu කාලය වැය වන ක්‍රියාවලියක් තිබේ නම්, VCPU වලින් 10% ක් පමණක් භාවිතා කිරීමට ඔබට අවසර ඇති බැවින් “st” අගය 90 ක් පමණ පවතිනු ඇති බවයි. අනෙක් අගයන්ගේ එකතුව 10 ක් පමණ පවතිනු ඇත.

එබැවින් AWS හයිපර්වයිසර් භාවිතා කරන්නේ ඔබට යම් පරිගණක බලයකට ප්‍රවේශ වීමට පමණි. ඔබ අඩු ස්ථරයක් පමණක් භාවිතා කරන බැවින් එය චේතනාවෙන් ඔබව මන්දගාමී කරයි.

මෙය දේවල් තේරුම් ගැනීමට ටිකක් පහසු කරයි යැයි මම විශ්වාස කරමි.

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.