svc host چیست ؟

SVCHOST.exe به گفته مایکروسافت نام نوعی پروسس میزبان برای سرویسهایی است که از داخل فایلهای DLL اجرا میشوند. به زبان ساده svchost.exe یک نام عمومی است برای فرآیندهایی که از طریق DLLها یا از داخل آنها اجرا میشوند و محل قرار گیری آن در فولدر SystemRoot%\System32% میباشد. در زمان بوت شدن سیستم ، ویندوز قسمت Services رجیستری بررسی میشود و یک لیست از سرویسهایی که باید اجرا شوند تهیه میشود ، در این حالت تعداد زیادی SVCHOST میتوانند به صورت همزمان با هم اجرا شوند تا باعث افزایش سرعت بوت شدن ویندوز شود. این روش باعث کنترل بهتر و عیب یابی بهتر میشود.

فایل های DLL توابع کتابخانه ای ویندوز هستند که به جای نگهداری در فایل EXE در فایلهایی با این عنوان نگهداری میشوند ، همانطور که میدانید امکان اجرای یک DLL به صورت مستقیم وجود ندارد ، فقط میتوان از طریق یک فایل EXE فراخوانی شود و به این علت مایکروسافت SVCHOST را خلق کرد.

بارها دیده اید که تعداد زیادی SVCHOST در تسک منیجر ویندوز و قسمت Process فعال است که همین مورد باعث کندی ویندوز میشود. برخی از این سرویسهای مورد نیاز نیست و اغلب باعث سنگینی سیستم و عدم کارکرد صحیح آن میشود.

راهکار برای حل این مشکل چیست ؟

همانطور که در بالا گفتیم SVCHOST به عنوان میزبان برای سرویس است ، از جمله این سرویسها میتوانیم به Windows Update ، Plug & Play ، Windows Firewall و RPC اشاره کنیم ، ما میتوانیم با استفاده از تسک منیجر و استفاده از پروسس ها ببینیم که چه تعداد SVCHOST در حال حاضر مشغول به کار هستند ، همانطور که میدانید ویندوز از سرویس های مختلفی استفاده میکند که اگر هر کدام بخواهند به طور جداگانه کار کنند نیاز به پردازنده و قدرت پردازش بسیار قوی دارد ، در حالیکه SVCHOST به صورت گروه بندی شده پردازش گروه و طبقه خود را مدیریت میکند.

برای حل مشکل در این قسمت میتوانید سرویسی که بیشترین حجم منابع را از لحاظ رم و CPU اشغال کرده ، با کلیک راست روی SVCHOST مربوطه  و کلیک بر روی Go to Service ، و غیر فعال نمودن سرویس مورد نظر ، منابعی را که آن سرویس دریافت نموده ، آزاد نمود. هرگز نباید SVCHOST را EndProcess کنید یا فعالیت آن را متوقف کنید ، تنها با روشی که ذکر شد میتوانید مشکل مربوطه را به شکل صحیح و بدون اینکه عملکرد ویندوز شما دچار مشکل شود برطرف سازید.