سرویس WMI Provider Host یکی از مهمترین مولفههای ویندوز است و اغلب در پسزمینه اجرا میشود. این مولفه به برنامههای کاربردی که روی کامپیوتر اجرا میشوند اجازه میدهد اطلاعاتی از سیستم درخواست و دریافت کنند. این سرویس بهطور معمول نباید از همه منابع سیستم استفاده کند، اما ممکن است به واسطه درست کار نکردن یک برنامه بیش از اندازه از پردازنده مرکزی استفاده کند.
WMI Provider Host چیست؟
WMI سرنام ابزار مدیریتی ویندوز (Windows Management Instrumentation) است. این ابزار یکی از مولفههای کاربردی ویندوز است که یک راهکار استاندارد در اختیار نرمافزارها و اسکریپتهای مدیریتی قرار میدهد تا اطلاعات مورد نیاز در ارتباط با ویندوز و دادههایی که به آنها نیاز دارند را درخواست کنند. بهطور مثال، نرمافزار یا دستورات ممکن است در جستوجوی اطلاعاتی درباره وضعیت رمزنگاری یک درایو با قابلیت BitLocker، مشاهده اطلاعات ثبت شده در ارتباط با رویدادها، درخواست دادهها از برنامههای نصب شده از طریق یک WMI Provider و…. باشند. مایکروسافت فهرستی از WMI providers کاربردی را گردآوری کرده است. Providerها همچنین از سوی سوی برنامهنویسان در برنامههای کاربردی مورد استفاده قرار میگیرد.
WMI راهکار جامعی برای دسترسی به اطلاعات در اختیار سازمانها قرار میدهد
یکی از ویژگیهای مهم این سرویس در سهولت دسترسی به اطلاعات نهفته است. سازمانها یا اداراتی که از یک مرکز واحد مدیریت کامپیوترهای شخصی استفاده میکنند و کامپیوترهای آنها بهطور مستمر به اطلاعاتی نیاز دارند که از طریق اسکریپتها قابل دسترسی است و این اطلاعات باید به شکلی استاندارد روی کنسولهای اداری به نمایش درآیند به خوبی میتوانند از WMI استفاده کنند.
با این وجود حتا روی یک کامپیوتر شخصی خانگی نیز تعدادی از نرمافزارهای نصب شده ممکن است به اطلاعات سیستمی نیاز داشته باشند که تنها از طریق رابط WMI در اختیار آنها قرار میگیرد. شما میتوانید از WMI برای پیدا کردن اطلاعات ارزشمندی که در حالت عادی قابل مشاهده نیستند و تنها از طریق رابطهای ویندوز در اختیارتان قرار میگیرند استفاده کنید. بهطور مثال، ابزار خط فرمان WMI موسوم به WMIC اطلاعاتی در ارتباط با شماره سریال کامپیوتر، شماره مدل مادربورد و همچنین اطلاعاتی درباره وضعیت سلامتی هارددیسک از طریق SMART در اختیارتان قرار میدهد.
چرا این پردازه بیش از اندازه از پردازنده استفاده میکند؟
WMI Provider در حالت عادی نباید پردازنده مرکزی را بیش از اندازه مورد استفاده قرار دهد، همچنین در حالت عادی هم نباید کاری انجام دهد. اگر مشاهده کردید که پردازه فوق گاهی اوقات از پردازنده استفاده میکنند ممکن است به این دلیل باشد که یک قطعه نرمافزاری یا اسکریپت ثالثی روی کامپیوتر شما اطلاعاتی را از WMI درخواست کرده که این موضوع طبیعی است. اما مصرف بیش از اندازه پردازنده تنها نشانهای است که یک برنامه حجم بالایی از اطلاعات را از WMI درخواست کرده است. با این وجود، استفاده طولانی مدت از پردازنده کامپیوتر به شکل سنگین نشان میدهد که یک برنامه دارای باگ است.
مشکل مصرف بیش از اندازه را چگونه برطرف کنیم؟
بعضی مواقع راهاندازی مجدد سرویس Windows Management Instrumentation مشگل را برطرف میکند. برای این منظور در کادر جستوجو عبارت Services.msc را تایپ کرده و کلید اینتر را فشار دهید تا ابزار Services اجرا شود. اکنون سرویس فوق را پیدا کرده روی آن کلیک راست کرده و گزینه restart را انتخاب کنید.
اگر مشاهده کردید که مشکل برطرف نشد به احتمال زیاد پردازه دیگری در حال استفاده بیش از اندازه از پردازنده است. در این حالت بهتر است کامپیوتر را راهاندازی مجدد کنید.
چگونه میتوانیم پردازههای پر مصرف را شناسایی کنیم؟
برای مشخص کردن اینکه چه پردازهای در زمان کار با WMI دارای مشکل است باید از ابزار Event Viewer استفاده کنید. در ویندوز ۱۰ روی دکمه شروع کلیک راست کرده و گزینه Event Viewer را انتخاب کنید.
در پانل سمت چپ این ابزار روی گزینه Applications and Services log کلیک کنید و در ادامه به مسیر Logs\Microsoft\Windows\WMI-Activity\Operational بروید.
فهرست نشان داده شده را پیمایش کرده تا خطاها (Errors) را مشاهده کلیک کنید. روی خطای پیدا شده کلیک کنید و به دنبال شمارهای باشید که در سمت راست فیلد ClientProcessid در پانل پایین صفحه نشان داده میشود. این شماره شناسایی پردازهای که باعث بروز مشکل در WMI شده است.
اکنون در نوار وظیفه ویندوز در پایین صفحه کلیک راست کرده و ابزار Task Manager را باز کنید.
روی زبانه Details کلیک کرده و سپس در ستون PID به دنبال پردازه در حال اجرایی باشید که شماره آن را از قسمت قبل به دست آوردهاید. اگر پردازه فوق را مشاهده کردید این توانایی را دارید تا به اجرای آن پایان دهید.
میتوانیم WMI Provider Host را غیر فعال کنیم؟
به لحاظ تکنیکی امکان غیر فعال کردن این سرویس وجود دارد. با اینحال اینکار ممکن است باعث بروز مشکلات دیگری شده و باعث میشود بیشتر برنامهها به درستی کار نکنند. به دلیل اینکه WMI Provider یکی از سرویسهای مهم ویندوز است و بهتر است آنرا غیر فعال نکنید. اگر مشاهده کردید این سرویس بیش از اندازه از پردازنده استفاده میکند باید به دنبال پردازههایی باشید که دارای مشگل هستند.
منبع: ماهنامه شبکه