Chcę wiedzieć, jakie są różnice w zachowaniu demona, procesu i usługi działającej w Ubuntu.
Chcę wiedzieć, jakie są różnice w zachowaniu demona, procesu i usługi działającej w Ubuntu.
Odpowiedzi:
Daemons - Daemon nie oznacza Monitora dysku i wykonania ( http://www.takeourword.com/TOW146/page4.html ). Są to procesy działające w tle i nie są interaktywne. Nie mają terminala sterującego.
Wykonują określone działania w określonych momentach lub w odpowiedzi na określone zdarzenia. W * NIX nazwy demonów kończą się na d .
Usługi - w systemie Windows demony są nazywane usługami .
Jeśli zastanawiasz się, dlaczego * NIX ma komendę o nazwie usługa , jest ona po prostu używana do uruchamiania skryptów inicjujących (skrót do inicjalizacji scriptrunlevel ).
Proces - proces jest uruchomionym programem. W określonym momencie może być uruchomiony , uśpiony lub zombie (proces zakończony, ale czeka, aż proces nadrzędny przejmie wartość zwracaną).
Źródła i dalsze informacje :
Demon jest tło, non-interactive programu . Jest odłączony od klawiatury i wyświetlacza każdego interaktywnego użytkownika. Słowo demon oznaczające program działający w tle pochodzi z kultury uniksowej; to nie jest uniwersalne.
Usługa jest program, który odpowiada na żądania z innych programów na niektóre między procesami mechanizmu komunikacji (zazwyczaj przez sieć). Usługa jest tym, co zapewnia serwer. Na przykład usługa mapowania portów NFS jest udostępniana jako osobna usługa mapowania portów, która jest implementowana jako portmapd
demon.
Usługa nie musi być demonem, ale zwykle nim jest. Aplikacja użytkownika z GUI może mieć wbudowaną usługę: na przykład aplikację do udostępniania plików. Innym przykładem jest usługa X Window, która nie działa w tle: przejmuje ekran, klawiaturę i urządzenie wskazujące. Jest to usługa, ponieważ odpowiada na żądania aplikacji (w celu tworzenia okien i manipulowania nimi itp.), Które mogą znajdować się nawet w innym miejscu w sieci. Ale usługa X reaguje również na każde naciśnięcie klawisza i ruch myszy.
Proces to jeden lub więcej wątków wykonania wraz z ich wspólnym zestawem zasobów, z których najważniejszymi są przestrzeń adresowa i otwarte deskryptory plików. Proces tworzy środowisko dla tych wątków wykonywania, które wygląda jakby miały całą maszynę dla siebie: jest to maszyna wirtualna.
Wewnątrz procesu zasoby innych procesów i jądra są niewidoczne i nie są bezpośrednio dostępne (przynajmniej nie dla wątku, który wykonuje kod przestrzeni użytkownika). Na przykład nie ma sposobu na odniesienie się do otwartych plików innego procesu lub ich przestrzeni pamięci; to tak, jakby te rzeczy nawet nie istniały.
Proces i jego związek z jądrem i innymi procesami może być najważniejszą abstrakcją w systemach operacyjnych typu Unix. Zasoby systemu są podzielone na procesy i prawie wszystko jest rozumiane jako dzieje się w jednym procesie.