В чем разница между приложением, процессом и услугами?

47

Как эти принципиально разные "вещи" в Windows?

Разве не все запущенные процессы?

Кажется, что у каждого приложения есть связанный процесс, который выключает его, если он выключен. Похоже, один процесс может управлять несколькими экземплярами приложения. А Сервисы, я даже не уверен, что они, точно.

Они не сами процессы?

Джастин Л.
источник

Ответы:

71

И приложения, и сервисы имеют связанные с ними процессы.

Приложение представляет собой программу , которая вы общаетесь с на рабочем столе . Это то, что вы проводите почти все свое время на компьютере. Internet Explorer, Microsoft Word, iTunes, Skype - все это приложения.

Процесс является экземпляром определенного исполняемого ( .exeфайл программы) работает. В данном приложении может быть запущено несколько процессов одновременно. Например, некоторые современные браузеры, такие как Google Chrome, запускают несколько процессов одновременно, причем каждая вкладка фактически является отдельным экземпляром / процессом одного и того же исполняемого файла. В некоторых случаях сложные приложения могут иметь несколько процессов; например, Visual Studio запускает отдельный процесс, когда компилирует код от отображения среды IDE. Однако чаще всего данное приложение выполняется из одного процесса; Например, независимо от того, сколько окон Microsoft Word у вас открыто, работает только один экземпляр winword.exe.

Служба является процессом , который работает в фоновом режиме и не взаимодействует с рабочим столом. В Windows сервисы почти всегда запускаются как экземпляр svchost.exeпроцесса, хост-процесс службы Windows; однако иногда бывают исключения из этого.

Иногда процессы могут работать в фоновом режиме, не взаимодействуя с рабочим столом, но без установки в качестве службы. Многие драйверы устройств с расширенными функциями делают это. Например, драйвер тачпада обычно имеет процесс, который запускается, когда пользователь входит в систему и обрабатывает специальные функции тачпада, но не является службой и не показывает пользователю никаких окон.

Иногда приложение может зависеть от определенного сервиса. Печать из любой программы требует, чтобы служба диспетчера очереди печати была активна. Установочные пакеты ( .msiустановщики) требуют, чтобы служба установщика Windows была запущена. Антивирусные программы обычно используют службу, поэтому они могут продолжать работать, даже если пользователь не вошел в систему.

Процессы обычно завершаются, когда приложение закрывается, однако это не всегда так. Некоторые программы, особенно программы загрузки и резервного копирования, могут продолжать работать в фоновом режиме без отображения каких-либо окон. Антивирус также является примером этого - помимо использования службы, многие антивирусные приложения запускают процесс в фоновом режиме, который отображает приложение для пользователя, только когда требуется действие.

nhinkle
источник
4
Тогда в чем разница между тихим процессом и службой Windows? Извините, я новичок!
Субин Джейкоб
1
Сервис будет иметь больше прав, чем обычный процесс, поскольку он работает как процесс Windows, а не как процесс пользователя.
Жиль Лезире
9

И приложения, и сервисы являются процессами. Приложения предназначены для взаимодействия с одним пользователем, тогда как сервисы работают по всей системе, но не взаимодействуют с пользователями напрямую.

Игнасио Васкес-Абрамс
источник
Большинство служб Windows работают как svchost.exe, но я не видел слишком много таких служб, кроме Windows. Следует отметить, что Process Explorer в Sysinternal может использоваться для определения того, какие службы в консоли MMC Services размещаются конкретной svchost.exe.
LawrenceC
1

Служба обычно является фоновым приложением, которое запускается при запуске Windows. обычно он выполняет какую-то задачу, которую использует установленное приложение или сама Windows.

Автономное приложение - это обычная программа (а.exe). Автономный обычно относится к одному исполняемому файлу, который может быть запущен сам по себе.

Большие программы, такие как Word, требуют много разных файлов для запуска.

Энамул Кабир
источник