Хочу знати, що полягають у відмінностях поведінки демона, процесу та служби, що працюють в Ubuntu.
Хочу знати, що полягають у відмінностях поведінки демона, процесу та служби, що працюють в Ubuntu.
Відповіді:
Демони - Daemon нічого НЕ стоять для дисків і Execution Monitor ( http://www.takeourword.com/TOW146/page4.html ). Це процеси, які працюють у фоновому режимі і не є інтерактивними. У них немає керуючого терміналу.
Вони виконують певні дії у визначений час або у відповідь на певні події. У * NIX назви демонів закінчуються на d .
Послуги - У Windows демони називають службами .
Якщо вам цікаво, чому * NIX має службу з іменем команди , вона просто використовується для запуску сценаріїв init (скорочення для ініціалізації scriptrunlevel ).
Процес - Process - це запущена програма. У певний момент часу це може бути або біг , сон , або зомбі (завершений процес, але чекаючи, коли батьківський процес підбере повернене значення).
Джерела та додаткова інформація :
Демон є фон, неінтерактивному програмою . Він від'єднаний від клавіатури та відображення будь-якого інтерактивного користувача. Слово демон для позначення фонової програми походить від культури Unix; це не універсально.
Послуга є програмою , яка відповідає на запити від інших програм в протягом деякого межпроцессного механізму зв'язку (зазвичай через мережу). Сервіс - це те, що надає сервер. Наприклад, послуга картографування портів NFS надається у вигляді окремої послуги портмапи, яка реалізується як portmapd
демон.
Служба не повинна бути демоном, але зазвичай є. У програмі користувача із графічним інтерфейсом може бути вбудована послуга: наприклад, програма для обміну файлами. Інший приклад - служба X Window, яка є все лише поза фоном: вона переймає ваш екран, клавіатуру та вказівний пристрій. Це сервіс, оскільки він відповідає на запити програм (для створення та маніпулювання Windows, тощо), які можуть бути навіть в інших місцях мережі. Але служба X також відповідає на кожен ваш натискання клавіші та миші.
Процес - це один або кілька потоків виконання разом із спільним набором ресурсів, найважливішими з яких є адресний простір та дескриптори відкритих файлів. Процес створює середовище для цих потоків виконання, схоже на те, що вони мають цілу машину для себе: це віртуальна машина.
Всередині процесу ресурси інших процесів і ядра є невидимими і не мають прямого доступу (принаймні, не для потоку, який виконує код простору користувача). Наприклад, немає можливості посилатися на відкриті файли іншого процесу або на їх простір пам'яті; це так, ніби цих речей навіть не існує.
Цей процес та його відношення до ядра та інших процесів, можливо, є найбільш важливою абстракцією в операційних системах, схожих на Unix. Ресурси системи поділяються на процеси, і майже все розуміється як відбувається всередині того чи іншого процесу.