PDA

مشاهده نسخه کامل : Services.msc چیکارس؟



life24
30-03-13, 15:31
سلام
خسته نباشید.
Services.msc وقتی میزنیم لیستی از سرویس هایی که در ویندوز لا وجود داره نشان داده شده.
کلا میخوام بدونم منظور از سرویس چیه؟ من تو تعاریف چیزی درست و حسابی برای سرویس پیدا نکردم.
کارش چیه . کی نیاز هست . کجاها به درد میخوره. کی یک برنماه سرویس نیاز داره ران کنه؟

ravegoat
31-03-13, 10:16
سلام!

سرویس یا Daemon یک برنامه ی اجرایی است که در پس زمینه ی سیستم عامل اجرا میشه تا عمل مشخصی رو اجرا کنه و معمولا" فاقد رابط کاربری هستش. اکثر سرویس ها از زمان بوت شدن سیستم عامل شروع به کار می کنند و با خاموش شدن اون, به کارشون خاتمه می دهند.

هر سرویس وظیفه ی مشخصی داره: بعضی ها وقایع رو ثبت می کنن, برخی تبادل داده تحت شبکه رو مدیریت می کنن و ... . لیست شرح وظایف سرویس ها در ویندوز و یونیکس:
Only the registered members can see the link
Only the registered members can see the link

از سرویس زمانی استفاده میشه که بخواهیم یه کار مهم همگام با ویندوز اجرا بشه صرف نظر از یک رابط کاربری مجزا که بخواد اون رو کنترل کنه و یا زمانی که بخواهیم نتایج یک وظیفه رو به چند تا نرم افزار ارایه کنیم.
فرضا" در یک رایانه زمان ورود کاربران جهت استفاده از سیستم عامل از لحاظ امنیتی برامون مهم تلقی میشه. درنتیجه میشه یه برنامه نوشت که به هنگام بوت شدن سیستم عامل اجرا بشه و زمان ورود کابران رو ثبت کنه. ولی خب اگر این برنامه به هر دلیلی بسته بشه اون وقت دیگه زمان ورود کاربران ثبت نمیشه. از طرفی اصلا" نیاز نیست که این برنامه یه رابط کاربری داشته باشه که هر کاربری بخواد نحوه ی اجرای این وظیفه توسط برنامه رو به دلخواه تغییر بده. در چنین مواردی میان یه سرویس می سازن که عمل ثبت زمان ورود رو در پس زمینه ی کار اجرا می کنه و اصلا" هم مزاحم کاربر هایی که دارن با سیستم کار می کنن نمیشه. از طرفی میشه سرویس رو طوری طراحی کرد که فقط مدیر سیستم عامل بتونه اون رو متوقف کنه در نتیجه غیر از مدیر کسی توانایی خلل وارد کردن در وظیفه ی ثبت رو نداره. بعد می تونید یه برنامه ی مجزا بنویسید که زمان های ثبت شده توسط سرویس طراحی شده رو فقط نمایش بده. یا یه برنامه ی دیگه بنویسید که وقایع ثبت شده را تحلیل و رفتار های مشکوک رو گزارش بده. به عبارتی سرویس می تونه خدمات خودش رو به هر نرم افزاری ارایه کنه درحالی که شما اگر از اول یه نرم افزار مستقل می نوشتید که وقایع رو ثبت کنه, این ثبت وقایع در حالت کلی فقط برای اون نرم افزار قابل استفاده بود.

یا به عنوان مثال اکثر آنتی ویروس ها یه رابط کاربری دارن که کاربر به واسطه ی اون تنظیماتی رو اعمال کنه و یه سرویس جلوگیری از حمله دارن که حتی اگر کاربر رابط کاربری رو ببنده, سرویس همچنان فعاله و می تونه جلوی اجرای فایل های مخرب رو بگیره.
و یا هر برنامه ای که بخواد از منابع تحت شبکه استفاده کنه میاد و سرویس شبکه ی سیستم عامل رو به کار می گیره.

موفق باشید
آرمین

life24
31-03-13, 11:32
ممنون از توضحات خوب شما
در مورد محتویات خود Services چی؟ پسوندش فایل ها exe هستند درسته؟ اینها با چه برنامه ای نوشته میشن؟ سطح پائین مثل اسمبلی یا C ؟
اینها مثل پروسس در حافظه لود میشن؟ نحوه ترتیب اجرا شون چطوریه؟

ravegoat
31-03-13, 14:37
خواهش مي كنم...

بله پسوند شون در ويندوز EXE است.
خير با زبان هاي سطح بالاتر مثل سي شارپ، VB.NET و دلفي هم ميشه سرويس ويندوز نوشت.
تقريبا" به شكل يه پروسه هستن. هر چند تا سرويس تشكيل يه پروسه ي واحد رو ميدن كه svchost.exe نام داره و به عبارتي اين پروسه ميشه نماينده ي چند تا سرويس تا اين جوري در منابع سيستم صرفه جويي بشه (به طور همزمان ممكنه چند تا scvhost.exe روي ويندوز در حال اجرا باشن). كل اين سرويس ها رو هم برنامه اي تحت عنوان services.exe مديريت مي كنه.