ویندوز چطور تصمیم میگیره چه نخی بر روی چه هستهای از پردازنده اجرا بشه؟ چه پارامترهایی تاثیر دارند؟ اولویت نخها چطور تعیین میشه؟ آیا اولویت ثابته یا تغییر میکنه؟ سوالاتی از این دست در مورد Scheduler ویندوز موضوع ویدئوهای این بخش از دورهی Windows Internals هستند.
در ویدئوی اول این بخش، ابتدا مروری بر مفهوم Scheduling یا زمانبندی نخها در ویندوز انجام داده و سپس موارد مهمی که در آن تاثیر دارند شرح داده میشوند. کار را با اولویت نخها در ویندوز شروع کرده و به معرفی مدل اولویتگذاری نخها و اینکه اولویت چگونه مشخص شده و در چه بازهای است میپردازیم. سپس به بررسی وضعیت نخها در ویندوز و اینکه وضعیت نخ تحت چه شرایطی تغییر میکند میپردازیم. در ادامه سراغ شرایطی میرویم که در آنها اولویت نخها به صورت خودکار توسط سیستمعامل تغییر میکند تا نخها دچار گرسنگی نشده و بتوانند وظیفهی خود را به انجام برسانند. در پایان نیز دو مفهوم Affinity, CPU Sets شرح داده میشوند که باعث اعمال محدودیت بر روی هستههای CPUای میشوند که نخ میتواند بر روی آنها اجرا شود. برای دیدن این ویدئو به لینک زیر مراجعه کنید:
https://www.aparat.com/v/TsVwe
در ویدئوی بعدی که دموی مفاهیم ذکر شده در ویدئوی اول است، به کمک ابزارهای مختلف، مفاهیم مرتبط با زمانبندی نخهای ویندوز نمایش داده شده و تاثیر تغییر اولویت و اعمال محدودیت بر روی اجرای نخها بررسی میشوند. ابتدا با تغییر Priority Class و Thread Priority مقدار تنظیم شده برای اولویت به کمک Process Explorer نمایش داده شده و سپس از ابزار CPU-Stress کمک گرفته میشود که بتوانیم تمامی پارامترهای شرح داده شده را تغییر دهیم. در این حین، به کمک API-Monitor توابعی که پشت صحنه اجرا میشوند را مشاهده کرده و تاثیر کار انجام گرفته را در Process Explorer میبینیم. در ادامه به سراغ ابزار Performance Monitor رفته و شیوهی تغییر اولویت نخها در شرایط مختلف و همچنین تغییر وضعیت آنها را به کمک نمودار مشاهده میکنیم. در انتها برای بررسی دقیق تاثیر اعمال کردن CPU Sets و اطمینان از درست اجرا شدن آن، فعالیت پروسهها را با Windows Performance Recorder ثبت کرده و در Performance Analyzer مشاهده میکنیم. برای مشاهدهی این ویدئو به لینک زیر مراجعه کنید:
https://www.aparat.com/v/iQ8kp
لطفا با لایک، کامنت و اشتراکگذاری در رسیدن این ویدئوها به دست افراد علاقهمند سهیم باشید. اگر هم انتقاد یا پیشنهادی داشتید حتما کامنت گذاشته یا به صورت مستقیم پیام بدید.
#windows #internals #threads #scheduling
Post #70
1.77K