Шта је демон?
Даемон је врста програма преко УНИКС-овог ОС-а који се ненаметљиво извршава у позадини, уместо директног приступа корисника. Чека да се покрене појавом одређеног стања или догађаја.
Типично, системи слични УНИКС-у покрећу бројне демоне, првенствено за прилагођавање захтева за услугама преко других система на мрежи, за хардверску активност, као и за одговарање на друге програме.
Примери услова или радњи које би могле да активирају демоне у активности могу бити одређени датум или време, пролазак описаног временског интервала, пријем веб захтева или е-поште креираних из одређене комуникационе линије и датотека која се налази у одређеном директоријуму.
Салман Кхан аге
Није обавезно да починилац услова или радње буде познат који демон слуша.
Међутим, програми би често имплементирали акцију само зато што су познати да би то имплицитно побудило демона.
Демон се такође назива позадинским процесима. То је УНИКС или Линук програм који се извршава у позадини. Скоро сваки демон садржи имена која се завршавају словом 'д'. На пример, ссхд, ово управља везама ССХ даљинског приступа, или хттпд демоном који управља Апацхе сервером. Често Линук покреће демоне у време почетка.
Разне схелл скрипте се чувају унутар директоријума који је /етц/инит.д. Ове скрипте се користе за покретање и заустављање демона.
Линук Процесс
Обично се демони инстанцирају као процеси. Ови процеси су покренуте или извршне инстанце програма. Процесом управља језгро које је језгро оперативног система и оно додељује све посебне идентификационе бројеве процеса.
У Линук-у углавном постоје три уобичајене врсте процеса који су следећи:
- Батцх
- Интерацтиве
- Даемон
Пакетни процес се шаље кроз ред процеса и није повезан са командном линијом. Ови процеси су погодни за обављање понављајућих операција ако је употреба система мала.
Интерактивни процес интерактивно извршава корисник на командној линији.
Демон је идентификован системом попут оних процеса чији родитељски процес садржи ПИД од један.
Увек дефинише процес инит. Инит процес је почетни процес који почиње када се покрене Линук систем и остаје у систему док се систем не искључи.
Инит може усвојити било који тип процеса чији се родитељски процес прекида или умире без чекања статуса подређеног процеса.
пролећни облак
Дакле, основна техника за покретање демона је дељење или рачвање двапут или једном и омогућавање родитељским процесима да се заврше док подређени процес почне да примењује своју општу функцију.
Историја демона
Неколико демона објављује инит скрипте Система В. То су скрипте или кратки програми који се могу извршити аутоматски ако се систем покреће. Могу се или репродуковати у интервалима или преживети током трајања сесије.
Сада се неколико демона покреће само по потреби и од стране једног демона (кинетд) уместо да се извршава непрекидно. Ксинетд је познат као ТЦП/ИП супер сервер.
Почиње у време почетка и такође слуша различите портове који су додељени оним процесима наведеним у конфигурационој датотеци, тј. /етц/кинетд.цонф или /етц/инетд.цонф.
Ручно, неколико демона се такође може покренути у инклузији за покретање од стране апликацијских програма и оперативног система. Сви демони имају појединачну скрипту у неколико ОС-ова сличних УНИКС-у укључујући Линук са којима се може поново покренути и прекинути.
тојсон јава
Управљање овим скриптовима је имплементирано у складу са нивоима покретања. Ниво покретања се може дефинисати као оперативно или конфигурационо стање система које дозвољава само неким одабраним процесима да буду доступни. Почетак у различитом нивоу покретања може подржати решавање одређених проблема или проблема, укључујући исправљање системских грешака.
Кључне тачке демона
Неке важне кључне тачке Даемона су објашњене у наставку:
- Реч демон је преузета из грчке методологије даемон. То су била натприродна бића која леже између смртника и богова и која су поседовала јединствену моћ или знање.
- Године 1963, термин демон је првобитно примењен унутар системског контекста на пионирском пројекту МАЦ уз помоћ ИБМ 7094.
- Инспирисан је Максвеловим демоном термодинамике и физике који је био апстрактни агент који је подржавао сортирање молекула различитих брзина и неуморно радио у позадини.
- Након тога, термин је коришћен за описивање процеса у позадини који су неуморно радили имплементирајући системске послове.
- Први демон компјутер је био програм који је аутоматски креирао резервне копије траке.
- Овај термин је коришћен за коришћење рачунара. Био је то кратка форма за Диск анд Екецутион МОНитор.
- Различити програми који се називају услугама демонских функција на оперативном систему Мицрософт Виндовс. Међутим, реч даемон се такође понекад примењује са тим системима.
Имплементација демона
Уник као системи
Процес система сличног Уник-у је демон ако његов родитељ процес умре и овај демон је именован за инит процес (процес број 1) као родитељски процес и не садржи контролни терминал на стриктно технички начин.
Међутим, демон може бити било који процес у позадини без обзира да ли је инит процес дете или не.
Основна техника за процедуру постаје демон на систему сличном УНИКС-у када се процедура започне преко командне линије или скрипти за покретање као што је скрипта за покретање система или инит скрипта, укључује:
- Опционо брисање непотребних променљивих кроз окружење.
- Покретање као позадински задатак изласком и рачвањем. Омогућава родитељу демона (процес покретања или љуске) да прима обавештења о излазу и настави нормално извршавање.
- Одвајање кроз одељак за позивање, обично се постиже појединачном операцијом, сетсид():
- Раздвајање кроз тти контролу.
- Направи новију сесију и постане вођа те сесије.
- Постати вођа процесне групе.
- Ако демон жели да се увери да неће наследити нову тти контролу, могао би изаћи и поново се раставити. То значи да више није никакав вођа сесије унутар нове сесије и да не може наследити никакву контролу тти.
- Подешавање тренутног радног директоријума као основног директоријума тако да процес не узима ниједан директоријум у употреби који би могао бити преко монтираног система датотека.
- Модификовање умаск-а на 0 за омогућавање цреате(), опен() и других позива оперативног система да би се олакшала њихова маска дозвола и да се не ослањају на све умаске позиваоца.
- Преусмеравање дескриптора датотека 0, 1 и 2 за стандардне токове (стдерр, стдоут, стдин) у датотеку евиденције или /дев/нулл, и затварање сваке друге датотеке дескриптора добијене кроз родитељски процес.
Када процес започне било који демон супер сервера као што је системд, лаунцхд или инетд, супер сервер ће имплементирати те функције за овај процес, осим оних старих демона који нису трансформисани у извршавање под системд-ом и описани као сервери са вишенитним и Типе=форкинг датаграмима упон инетд.
ажурирање јава
МС-ДОС
Програм сличан демону је извршен као терминате анд стаи резидент (укратко ТСР) софтвер унутар Мицрософт ДОС платформе.
Виндовс НТ
Програми познати као Виндовс услуге имплементирају функције ових демона на системима Мицрософт Виндовс НТ. Они се извршавају као процеси и обично немају интеракцију са мишем, тастатуром и монитором. Могу се покренути уз помоћ оперативног система у тренутку покретања.
Виндовс услуге се ручно заустављају, покрећу и конфигуришу помоћу контролне табле (наменски програм за конфигурацију/контролу), система за скриптовање ПоверСхелл или команди нет стоп и нет старт, елемента сервисног контролора менаџера контроле услуга.
Међутим, свака Виндовс апликација може да имплементира одговорности демона не само као сервис, а неколико Виндовс демона садржи опцију извршавања као нормалан процес.
Класични мацОС и Мац ОС
Различите опционе услуге и функције су олакшане тим датотекама које су учитане у време покретања и које реконструишу оперативни систем на класичном Мац ОС-у.
Они су се звали контролни панели и системска проширења. Новије верзије стандардног Мац ОС-а су их увећале са потпуно развијеним безличним позадинским апликацијама.
Ове апликације су обичне апликације које се извршавају у позадини. Оне су и даље биле наведене као обичне системске екстензије за корисника.
мацОС је Уник систем и користи демоне. МацОС примењује термин услуге за означавање софтвера који имплементира функције изабране преко менија услуга уместо да примењује тај термин као што то раде Виндовс за демоне.
Типичне демонске функције
- Извршите заказане акције као што је црон.
- Надгледајте системе као што су РАИД низ или здравље хард диска.
- Одговорите на захтев мреже и отворите мрежни порт (попут порта 80).
Како да покренемо, поново покренемо или зауставимо демоне за промпт љуске?
Морамо да применимо њихове сервисне команде као у наставку:
service daemon-name-here start service daemon-name-here stop service daemon-name-here restart
У следећем примеру, звездице, поново покрените и зауставите.
service httpd start service httpd stop service httpd restart
Како да проверимо листу сваког покренутог демона?
Да бисте проверили статус сваког инсталираног демона, откуцајте:
service - -status-all
Планирање нашег демона
Шта ће демон да уради?
Демон мора да примени једну ствар, и то добро. Та једина ствар може бити компликована као руковање великим бројем поштанских сандучића на више од једног домена или једноставно као позивање сендмаила да га пошаље администратору и наведе извештај.
Морамо имати бољу представу о томе шта демон мора да уради у сваком случају. Биће у интеракцији са неколико других демона које можемо навести или не. То је такође нешто друго за испитати.
за низ низова јава
Интеракција
Демони никада не смеју да комуницирају са корисником директно преко терминала. Свака комуникација пролази поред неколико сортирања интерфејса (које можемо, а можда и не морамо да наведемо), што може бити компликовано као ГУИ+ГТК или једноставно као појединачни скуп.
Основна структура демона
Даемон мора да спроведе неколико кућних послова ниског нивоа да би се припремио за прави посао када се покрене. То укључује неколико корака који су следећи:
- Одвојите супер процес (родитељски процес)
- Измените маску режима датотеке (умаск)
- Отворите дневнике за писање
- Направите посебан ИД сесије (укратко СИД)
- Измените радни директоријум (тренутни) на безбедно место
- Затворите класификационе дескрипторе датотеке
- Унесите оригинални код демона