Кіріспе
Фондық процесс – көрініс артында (яғни, фон режимінде) және пайдаланушының араласуынсыз іске қосылатын компьютерлік процесс. Мұндай процестердің әдеттегі міндеттеріне журналдау, жүйелік мониторинг, жоспарлау және пайдаланушыға хабарламалар жіберу кіреді. Windows жүйесінде фондық процесс – пайдаланушы интерфейсін жасамайтын компьютерлік бағдарлама немесе Windows қызметі болып табылады. Алғашқысы кез келген басқа бағдарлама сияқты, мысалы, «Бастау» мәзірі арқылы іске қосылады. Windows қызметтерін Service Control Manager басқарады. Windows Vista және одан кейінгі нұсқаларда олар жеке сессияда орындалады. Unix немесе Unix-қа ұқсас жүйеде фондық процесс немесе тапсырма процестер тобының идентификаторы (ID) терминал тобының идентификаторынан (TGID) өзгешелігімен анықталады. (Процестің TGID-і – терминалды ашқан процесс тобының басшысының процесс ID-сі, әдетте кіру қабығы. TGID процестер тобының басқару терминалын анықтайды.) Мұндай процесс аталық терминалынан пернетақта сигналдарын қабылдай алмайды және әдетте сол терминалға деректер жібермейді. Бұл техникалық анықтама процесс пайдаланушының араласуына бола ма, жоқ па, деген мәселені қарастырмайды. Фондық процестер көбінесе аз ресурстарды қажет ететін мақсаттар үшін қолданылса да, кез келген процесті фон режимінде іске қосуға болады, және мұндай процесс жоғарыда аталған ерекшеліктерді ескере отырып, кез келген басқа процесс сияқты жұмыс істейді. Windows қызметі Windows қызметтерін басқаруға жауапты Service Control Manager интерфейсінің ережелері мен протоколдарына сәйкес болуы керек. Windows қызметтерін операциялық жүйе іске қосылғанда бастауға және Windows жұмыс істеген кезде фон режимінде жұмыс істеуге конфигурациялауға болады. Оларды қолмен немесе оқиға арқылы іске қосуға болады. Windows NT операциялық жүйелері үш пайдаланушы есебінің аясында жұмыс істейтін көптеген қызметтерді қамтиды: жүйелік, желілік қызмет және жергілікті қызмет. Бұл Windows компоненттері көбінесе Windows қызметтерінің хост-процесімен байланысты: svchost.exe. Windows қызметтері өздерінің арнайы пайдаланушы есептерінің аясында жұмыс істейтіндіктен, пайдаланушы кірген жоқ кезде де жұмыс істей алады. Windows Vista-дан бұрын «интерактивті қызметтер» ретінде орнатылған қызметтер Windows жұмыс үстелімен өзара әрекеттесе алатын және графикалық пайдаланушы интерфейсін көрсетуге болатын. Алайда, Windows Vista-да интерактивті қызметтер қолдаусыз болып, Windows қызметтерін қатаңдату нәтижесінде дұрыс жұмыс істемей қалды. Windows қызметтерін басқарудың үш негізгі тәсілі: Microsoft Management Console-дегі «Қызметтер» құралы, sc.exe және Windows PowerShell.
A background process is a computer process that runs behind the scenes (i. e., in the background) and without user intervention. Typical tasks for these processes include logging, system monitoring, scheduling, and user notification. On a Windows system, a background process is either a computer program that does not create a user interface, or a Windows service. The former are started just as any other program is started, e. g., via Start menu. Windows services, on the other hand, are started by Service Control Manager. In Windows Vista and later, they are run in a separate session. On a Unix or Unix like system, a background process or job can be further identified as one whose process group ID differs from its terminal group ID (TGID). (The TGID of a process is the process ID of the process group leader that opened the terminal, which is typically the login shell. The TGID identifies the control terminal of the process group.) This type of process is unable to receive keyboard signals from its parent terminal, and typically will not send output to that terminal. This more technical definition does not distinguish between whether or not the process can receive user intervention. Although background processes are typically used for purposes needing few resources, any process can be run in the background, and such a process will behave like any other process, with the exceptions given above. A Windows service must conform to the interface rules and protocols of the Service Control Manager, the component responsible for managing Windows services. Windows services can be configured to start when the operating system starts, and to run in the background as long as Windows runs. Alternatively, they can be started manually or by an event. Windows NT operating systems include numerous services which run in context of three user accounts: System, Network Service and Local Service. These Windows components are often associated with Host Process for Windows Services: svchost. exe. Since Windows services operate in the context of their own dedicated user accounts, they can operate when a user is not logged on. Before Windows Vista, services installed as "interactive services" could interact with Windows desktop and show a graphical user interface. With Windows Vista, however, interactive services became deprecated and ceased operating properly, as a result of Windows Service Hardening. The three principal means of managing Windows services are:
Services snap in for Microsoft Management Console
sc. exe
Windows PowerShell
Демон
Демон – оқиғаның немесе жағдайдың орын алуын күтіп, үздіксіз фон режимінде жұмыс істеуге арналған фондық процестің бір түрі. Демон функциясымен іске қосылғанда, демон өзінің бас терминалынан бөлінеді.
Unix-тегі негізгі жұмыс орындары
Unix командалық жолында "&" операторы арқылы фондық процесс іске қосылуы мүмкін. bg командасы тоқтатылған жұмысты жалғастыра алады (SIGCONT сигналын жіберу арқылы), оны фон режимінде орындайды. fg командасын қолдану стандартты кірісті оның бастапқы терминалына қайта қосып, оны алдыңғы планға шығарады. jobs командасы ағымдағы терминалмен байланысты барлық процестерді тізімдейді және фондық процестерді алдыңғы планға шығару үшін қолданылуы мүмкін. Егер кіру сессиясы аяқталса, нақты шығу арқылы немесе желі байланысының үзілуі арқылы, барлық процестер, оның ішінде фондық процестер де, әдепкі бойынша тоқтатылады, олардың жетім процестерге айналуына жол бермеу үшін. Нақтырақ айтқанда, пайдаланушы іске қосу қабықшасы процесінен шыққанда, оның барлық жұмыстарына тоқтату сигналын (SIGHUP) жібереді, бұл тиісті процесс тобындағы барлық процестерді тоқтату үшін жасалады. Процестердің жұмысын жалғастыру үшін сессияны аяқтамау керек немесе процестерді тоқтатпай сессияны аяқтау керек. Терминал мультиплексоры сеансты жалғастыру үшін, бірақ виртуалды терминалды одан ажырату үшін пайдаланылуы мүмкін, процестерді сеанстың бағынышты процестері ретінде қалдырады; пайдаланушы кейіннен сеансты қайта қоса алады. Немесе, процесс тоқтатылуын болдырмау үшін, оны nohup командасы арқылы бастауға болады (процеске SIGHUP сигналын елемеуді айту арқылы) немесе кейіннен жұмыс ID-сімен disown командасын орындауға болады, бұл жұмысты жұмыс тізімінен толығымен алып тастайды немесе жай ғана SIGHUP сигналының жіберуін болдырмайды. Соңғы жағдайда сессия аяқталғанда, бағынышты процестер тоқтатылмайды, өйткені оларға SIGHUP сигналы жіберілмейді немесе олар оны елемейді, яғни олар жетім процестерге айналады, содан кейін олар init процесімен қабылданады (ядро оларды init процесінің басты процесі ретінде белгілейді) және сессиясыз жұмысын жалғастырады, енді олар демон деп аталады.
Смартфондар
Көптеген смартфондар мен жеке цифрлық ассистенттердің (ЖЦА) жаңа операциялық жүйелерінде қазір фондық процестерді іске қосу мүмкіндігі бар. Аппараттық шектеулерге байланысты, мобильді операциялық жүйелердегі фондық процестерге белгілі бір міндеттер немесе тұтыну деңгейлерімен шектеу қойылады. Android жүйесінде фондық процестер үшін процессорды пайдалану 5-10% дейін шектелуі мүмкін. Apple iOS-тағы қолданбалар фон режимінде жұмыс істегенде, функциялардың белгілі бір жиынтығымен ғана жұмыс істей алады. iOS және Android екеуінің де жүйелерінде, егер процестер тым көп жадты пайдаланса, жүйе оларды тоқтатуы мүмкін.