Кіріспе

Компьютерлік бағдарламаның бастапқы параметрлерін орнату үшін қолданылатын бағдарламалық файл. Компьютерлік жүйеде конфигурациялық файлдар (әдетте "конфиг файлдар" деп аталады) – кейбір компьютерлік бағдарламалардың, қосымшалардың, серверлік процестердің және операциялық жүйе параметрлерінің параметрлерін және бастапқы орнатымдарын конфигурациялау үшін қолданылатын файлдар. Кейбір қосымшалар өз конфигурациялық файлдарының синтаксисін жасау, өзгерту және тексеруге арналған құралдарды ұсынады, олардың кейбіреулері графикалық интерфейске ие. Басқа бағдарламалар үшін жүйе әкімшілері мәтіндік редакторды қолдана отырып, файлдарды қолмен жасау және өзгерту қажет болуы мүмкін, себебі олардың көпшілігі адамдар оқи алатын қарапайым мәтіндік файлдар болып табылады. Серверлік процестер мен операциялық жүйе параметрлері үшін әдетте стандартты құрал болмайды, бірақ операциялық жүйелер YaST немесе debconf сияқты өздерінің графикалық интерфейстерін ұсынуы мүмкін. Кейбір компьютерлік бағдарламалар конфигурациялық файлдарын тек іске қосылғанда ғана оқиды. Ал басқалары өзгерістерді анықтау үшін конфигурациялық файлдарды үнемі тексереді. Пайдаланушылар кейбір бағдарламаларға конфигурациялық файлдарды қайта оқып, ағымдағы процеске өзгерістерді қолдануға немесе тіпті кез келген файлды конфигурациялық файл ретінде оқуға бұйыруға болады. Нақты стандарттар немесе қатаң конвенциялар жоқ.

Unix және Unix-қа ұқсас операциялық жүйелер

Unix сияқты операциялық жүйелерде көптеген түрлі конфигурациялық файл форматтары бар, әрбір қосымша немесе қызмет өзінің ерекше форматта болуы мүмкін, бірақ олардың адам оқи алатын қарапайым мәтін түрінде болуы қалыпты жағдай, ал кілт-мәнді жұп форматы жиі қолданылады. Файл атауларының кеңейтімдері cnf, conf, cfg, cf немесе ini жиі қолданылады. Көптеген форматтар түсініктемелерге рұқсат береді, онда жеке параметрлерді түсініктеме таңбасымен басып, өшіруге болады. Көбінесе әдепкі конфигурациялық файлдарда түсініктемелер түрінде кеңінен ішкі құжаттама болады, сондай-ақ форматты және қол жетімді опцияларды құжаттау үшін man файлдары да қолданылады. Жүйелік бағдарламалық құралдар көбінесе /etc каталогында сақталатын конфигурациялық файлдарды пайдаланады, ал пайдаланушы қолданбалары көбінесе "dotfile" – үй каталогында нүктемен басталатын файл немесе каталогты пайдаланады, бұл Unix жүйесінде файлды немесе каталогты тізімдеуден жасырады. Бұл жағдай ластануға алып келетіндіктен, жаңа пайдаланушы қолданбалары әдетте үй каталогының стандартталған кіші каталогы – config каталогында өз қалтасын жасайды. Кейбір конфигурациялық файлдар іске қосылғанда командалар жиынтығын орындайды. Әдетте мұндай файлдардың атында "rc" болады, әдетте бағдарламаның атын, содан кейін "(. )rc" қосымшасын пайдаланады, мысалы, ".xinitrc", ".vimrc", ".bashrc", "xsane.rc". Толық мәліметтер үшін "Командаларды орындау" бөлімін қараңыз. Ал IBM-нің AIX жүйесі өз жүйелік параметрлерінің көп бөлігін сақтау үшін Object Data Manager (ODM) деректер базасын пайдаланады.

Microsoft Windows-тың жүйелік жүйесі

Microsoft Windows операциялық жүйелерінің алғашқы отбасысы INI файлдарын (initialization – инициализациядан) кеңінен пайдаланды. Олар операциялық жүйе мен қосымшалардың мүмкіндіктерін конфигурациялаудың басты құралы болды. Осы файлдардан мәліметтерді оқу және жазу API-лары Windows жүйесінде әлі де қолданылады, бірақ 1993 жылдан бастап Microsoft әзірлеушілерді INI файлдарын пайдаланудан ауыстырып, Windows тіркелімінде параметрлерді сақтауға бағыт берді. Windows тіркелімі – бұл конфигурациялық параметрлерді сақтауға арналған иерархиялық деректер базасы, ол сол жылы Windows NT жүйесімен бірге енгізілді.

macOS

Property List – macOS жүйесіндегі (сондай-ақ iOS, NeXTSTEP, GNUstep және Cocoa қолданбаларында) стандартты конфигурациялық файл форматы. Ол .plist файл кеңейтімін пайдаланады.

IBM OS/2 жүйесі

IBM-нің OS/2 екілік форматты қолданады, сонымен қатар INI қосымшасы бар, бірақ ол Windows нұсқаларынан өзгеше. Ол типтелмеген кілт-мәнді жұптардың тізімдерінен тұрады. Жүйелік параметрлерді екі файл басқарады: OS2.INI және OS2SYS.INI. Қолданба жасаушылар оларды пайдалануға немесе өз қолданбалары үшін жеке файл жасауға құқылы.

HarmonyOS және OpenHarmony операциялық жүйелері

HarmonyOS және OpenHarmony негізіндегі операциялық жүйелер, әрбір HAP қосымшасының түбірлік каталогында «config.json» конфигурациялық файлын пайдаланады. Ол үш модульден тұрады: қосымша, deviceConfig және Модуль. config.json файлы JSON файл форматына сәйкес келеді, онда әрбір жазба атрибут пен оған сәйкес келетін мәнді қамтиды. Атрибут мәндерінің реті кездейсоқ, бірақ әрбір атрибут бірегей және қайталанбауы тиіс. Әрбір атрибутқа тағайындалған мән JSON-ның негізгі дерек түрлерімен сәйкес келеді. HarmonyOS DevEco Studio config.json файлын өңдеу үшін екі әдіс ұсынады: кодты өңдеу режимі және визуальды өңдеу режимі. `app` объектісі қосымшаның жалпы конфигурациялық мәліметтерін сақтайды, мысалы, HarmonyOS-тың негізгі қосымшасының config.json конфигурациялық файлында көрсетілгендей. DeviceConfig нақты құрылғыларға арналған конфигурациялық мәліметтерді қамтиды, соның ішінде: әдепкі, Телефон, Планшет, ПК, Теледидар, Автомобиль, Киілетін құрылғы, liteWearable және smartVision. Әдепкі таңбадағы параметрлер барлық құрылғыларға қолданылады. Егер басқа құрылғылар үшін ерекше талаптар болса, тиісті құрылғы түрінің таңбасы бойынша параметрлерді конфигурациялау қажет. Модуль объектісі HAP пакетінің конфигурациялық мәліметтерін, әрбір мүмкіндік анықтауы тиіс негізгі атрибуттарды (пакет атауы, класс атауы, түрі және мүмкіндіктер сияқты), сондай-ақ қосымшаның жүйеге немесе басқа қорғалған бөлімдерге қол жеткізуі үшін қажетті рұқсаттарды қамтиды. MainAbility HAP пакетінің кіреберіс мүмкіндігінің атауын көрсетеді.

Сериялау пішімдері

Бірнеше жалпы мақсаттағы деректерді тізбектеу форматтары бар, олар күрделі дерек құрылымдарын оңай сақтауға болатын форматта бейнелей алады. Бұл форматтар көбінесе конфигурациялық файлдардың негізі ретінде қолданылады, әсіресе ашық кодты және платформаға тәуелсіз бағдарламалық қамтамасызда және кітапханаларда. Осы форматтарды сипаттайтын ережелер жиынтығы әдетте жұртшылыққа ашық болады, соның арқасында түрлі бағдарламалау тілдері үшін деректерді талдаушылар мен жасайтын құралдардың қолжетімділігі артады. Мысалдар: JSON, XML және YAML.