دیمن

از ویکی‌پدیا، دانشنامهٔ آزاد
پرش به: ناوبری، جستجو

در سیستم‌عامل‌های با قابلیت چندکارگی, یک دیمِن (به انگلیسی: Daemon) یک برنامه است که به جای اینکه تحت کنترل مستقیم یک کاربر تعاملی باشد، در پس‌زمینه اجرا می‌شود. به طور سنتی نام دیمن ها با حرف d خاتمه می‌یابد. به عنوان مثال، syslogd دیمنی است که قابلیت ثبت رخداد در سیستم‌عامل‌های شبه یونیکس را پیاده‌سازی می‌کند و برنامه‌های کاربردی به کمک این دیمن اطلاعاتی را در فایل‌های ثبت رخداد خود می‌نویسند. یا همچنین sshd دیمنی است که در پس‌زمینه سیستم منتظر اتصالات ورودی اس‌اس‌اچ می‌ماند و آنها را اجابت می‌کند. در سیستم‌عامل‌های یونیکس و شبه یونیکس، فرایند والد یک دیمن، معمولا، اما نه همیشه، فرایندی به نام اینیت است. یک دیمن معمولا به این صورت ایجاد می‌شود که یک فرایند، فرایند فرزندی را منشعب کرده و سپس بالافاصله خارج می‌شود تا باعث شود اینیت فرایند فرزند تولید شده را مال خود کند. به علاوه، دیمن یا سیستم‌عامل باید کارهای دیگری را هم انجام دهد، مثلا باید دیمن مورد نظر از کنترل هر ترمینالی خارج شود و به هیچ ترمینالی وابسته نباشد. چرا که دیمن قرار است در پس‌زیمنه به اجرا درآید و قرار نیست با کاربر به صورت تعاملی ارتباط برقرار کند. به منظور انجام دادن راحت‌تر این کارها، بیشتر سیستم‌عامل‌های یونیکس توابع و رویه‌هایی مانند daemon(3)‎ را پیاده‌سازی کرده‌اند که عملیات فوق را خیلی آسانتر می‌کنند. در اکثر سیستم‌ها، دیمن‌ها اغلب در هنگام بوت شدن سیستم آغاز به کار می‌کنند و خدماتی نظیر پاسخگویی به درخواست‌های شبکه، فعالیت‌های سخت‌افزاری و ... را ارائه می‌دهند.

منابع[ویرایش]