Standardowym podejściem do tych terminów jest stwierdzenie, że „aplikacja” to określony, statyczny program w pamięci. Jest to fragment kodu przechowywany na dysku twardym, płycie CD-ROM lub w innym miejscu.
Z drugiej strony „proces” to konkretna instancja działającego programu. To znaczy. jest rejestrowany przez system operacyjny jako wykonujący się lub mogący być uruchamiany, kiedy tylko system operacyjny ma na to ochotę.
Jeśli weźmiesz na przykład Calculator.app, jest to pojedyncza aplikacja, jednak możesz mieć wiele aplikacji Kalkulator procesy, jeśli uruchomisz program wiele razy.
Jak napisał chananelb, możliwe jest również posiadanie procesów, które nie są „tylko” zwykłymi aplikacjami, które zostały uruchomione. Mogą to być na przykład procesy jądra lub po prostu zwykłe procesy generujące podprocesy do wykonania określonych zadań.
Jeśli chodzi o usługi, odpowiedź chananelb prowadzi cię w złym kierunku. Jego odpowiedź mówi o tym, co nazywa się „usługą” w systemie Mac OS X ... ale zapytałeś o to, co nazywa się „usługą” w systemie Windows.
Odpowiednikiem usługi Windows jest demon na Mac OS X (i inne systemy wywodzące się z Uniksa).
Demony są zwykle kategoryzowane przez działanie w „tle”, tj. Bez bezpośredniej interakcji użytkownika za pośrednictwem graficznego lub nie-graficznego interfejsu użytkownika. Różnica jest jednak nieco niewyraźna, ponieważ Daemon może na przykład mieć interfejs sieciowy do interakcji z użytkownikiem.
Demony w systemie Mac OS X są kontrolowane przez program launchd, który jest odpowiedzialny na przykład za uruchamianie demonów podczas rozruchu i pozwalanie użytkownikowi na uruchamianie i zatrzymywanie demonów na żądanie.