Háttérfeladat

Háttérfeladat (háttérfolyamat) - a háttérben, a háttérben futó folyamat . Ez azt jelenti, hogy a háttérfolyamatot futtató operációs rendszer héja nem várja meg a folyamat befejeződését vagy befejezését, ahogyan ez a szokásos programok esetében történik. A shell egy háttérfolyamat elindítása után azonnal több folyamatot is elindíthat, így azok egy időben futnak majd. Valójában a folyamatok egyenként fognak lefutni, majd a másik, de a folyamatok közötti váltási sebesség túl gyors az emberi érzékeléshez, ezért számunkra úgy tűnik, hogy egyszerre futnak. A rendszeren futó jellemző háttérfolyamatok az eseménykezelők és a rendszerszolgáltatások. A lefoglalt RAM-on belül tetszőleges számú folyamat végrehajtható.

Általános szabályként (például UNIX-ban) a folyamatok háttér- és előtérbeli folyamatokra való felosztása csak a folyamatnak az operációs rendszer shelljéhez és a terminál-illesztőprogramhoz való viszonyát tükrözi, nem pedig az operációs környezetben és a diszpécseren belüli végrehajtásának sajátosságait. .

Így például egy háttérfolyamatnak általában nincs joga felhasználói bevitel fogadására, amikor megpróbálja megtenni, leáll, és az operációs rendszer shell erről üzenetet jelenít meg a felhasználónak.

A UNIX shell az általa futtatott folyamatcsoportokat „előtérben”, „háttérben” és „felfüggesztett” csoportokra osztja, és támogatja a folyamatcsoportok átvitelét a fenti osztályok egyikéből a másikba. Ezt a parancssor végén található & (és) használatával, a Ctrl-Z billentyűkombinációval (felfüggeszti az aktuális előtérbeli folyamatcsoportot), valamint a jobs (fg és bg) parancsokat.

A különbség a UNIX operációs rendszer háttérfolyamatai és „démonjai” (szolgáltatásai) között az, hogy a „démon” teljesen elveszíti kapcsolatát a felhasználói terminállal és az operációs rendszer shellével, gyakran továbbra is fennáll az azt létrehozó shell-folyamat kilépése után is. . A háttérfolyamat továbbra is logikai kapcsolatot tart fenn a terminállal és a héjjal.

Jellemzők

Unix rendszerek

Unix rendszereken egy folyamatot a háttérben futtathat úgy, hogy "és" jellel futtatja :

$ command &


Lásd még