Посик

Да ли је Линук усклађен са ПОСИКС-ом?

Да ли је Линук усклађен са ПОСИКС-ом?

Софтвер су написали бројни програмери са различитим позадинама. Општи алгоритми су доступни под бесплатном лиценцом или су научно објављени, а могу бити доступни и бесплатно у сврхе проучавања. То резултира различитим имплементацијама и верзијама софтвера које одговарају различитим потребама. Стандардизација интерфејса и формата података је неопходна да би ове различите примене биле заменљиве и модуларне.

Укратко, ПОСИКС [1] ради управо то за системе сличне УНИКС-у и УНИКС-у (погледајте Зак Х-ов чланак [4] за детаљнију историју о овој теми). Дефинише интерфејсе за размену, механизме позивања и пренете податке за софтвер, али интерну имплементацију препушта програмеру или одржавачу софтвера. Циљ је објединити све различите УНИКС вилице и УНИКС сличне системе на такав начин да различите софтверске имплементације могу међусобно комуницирати. Главна предност ПОСИКС-а је постојање обавезујуће документације за ове компоненте - интерфејсе, механизме и податке - доступну у писаном облику.

Оперативни систем који у потпуности следи ПОСИКС стандард је класификован као усклађен са ПОСИКС-ом. У овом чланку ћемо објаснити шта значи ПОСИКС, утврдити да ли Линук припада овој категорији и навести које компоненте Линук-а морају бити изузете из ове класификације.

Шта означава термин ПОСИКС?

ПОСИКС је скраћеница за Портабле Оператинг Систем Интерфаце. Као што је горе кратко објашњено, ПОСИКС је назив за збирку стандарда који су потребни за одржавање компатибилности између оперативних система. Као што је наведено у [1], „[ит] дефинише интерфејс за апликационо програмирање (АПИ), заједно са љускама командне линије и корисничким интерфејсима, за софтверску компатибилност са верзијама Уника и других оперативних система.”Прва верзија ПОСИКС-а објављена је 1988. године. Од тада је ПОСИКС континуирано проширивао и ажурирао Аустин Цоммон Стандардс Ревисион Гроуп (такође познат и као Тхе Аустин Гроуп) [7].

Од 2021. године ПОСИКС стандард садржи следеће делове:

  1. Основне услуге (Укључује стандардни АНСИ Ц) (ИЕЕЕ стд 1003.1-1988) - Креирање и контрола процеса, сигнали, операције датотека и директорија, цеви, Ц библиотека, интерфејс и контрола И / О порта, окидачи процеса
  1. Проширења (Симболички линкови)
  2. Проширења у реалном времену и У / И (ИЕЕЕ Стд 1003.1б-1993) - Приоритетно заказивање, сигнали у реалном времену, сатови и тајмери, семафори, прослеђивање порука, заједничка меморија, асинхрони и синхрони У / И, интерфејс закључавања меморије
  3. Проширења нити (ИЕЕЕ Стд 1003.1ц-1995) - Стварање нити, управљање и чишћење нити, планирање нити, синхронизација нити, руковање сигналима
  4. Више продужења у реалном времену
  5. Безбедносна проширења (Листе за контролу приступа)
  1. Схелл и комуналне услуге (ИЕЕЕ Стд 1003.2-1992) - Цомманд Интерпретер, услужни програми

Стандард се редовно преиспитује како би одражавао техничке промене и побољшања. Понекад може проћи и неколико година пре него што се нова верзија објави и промене унесу. Ово може бити неповољно, али је разумљиво с обзиром на опсег стандарда.

Последњих година додата су проширења за обраду у реалном времену. Тренутна верзија је објављена почетком 2018. године [3]. Аутори СибилФС [5] такође су објавили многе напомене за ПОСИКС стандард како би утврдили логику и интеракције вишег реда.

Шта значи бити усклађен са ПОСИКС-ом?

Израз „усклађен са ПОСИКС-ом“ значи да оперативни систем испуњава све ПОСИКС критеријуме. Оперативни систем може изворно да покреће УНИКС програме или се апликација може пренети са УНИКС система на други систем. Пренос апликације из УНИКС-а у циљни оперативни систем је једноставан или барем лакши, него ако не подржава ПОСИКС. Да би био сигуран, оперативни систем је требало успешно да постигне ПОСИКС сертификат [2]. Овај корак се постиже (уз наплату) полагањем аутоматизованог сертификационог теста. Одговарајући тест пакет можете наћи овде [11].

Од 2021. године на списку ПОСИКС сертификованих оперативних система налазе се АИКС компаније ИБМ, ХП-УКС компаније ХП, ИРИКС компаније СГИ, ЕулерОС [6] компаније Хуавеи, Мац ОС Кс компаније Аппле (од 10.5 Леопард), Соларис и КНКС Неутрино из Орацлеа, Инспур-ов К-УКС [11] и ОС ИНТЕГРИТЕТ ОС-а у стварном времену из софтвера Греен Хиллс [15]. Тренутно није јасно да ли су новије верзије три наследника Солариса, ОпенСоларис, Иллумос и ОпенИндиана, такође класификоване као потпуно усклађене са ПОСИКС-ом. Ови оперативни системи су били усклађени са ПОСИКС-ом до ПОСИКС-а 2001.

Остали оперативни системи који се углавном (али не у потпуности) подударају са ПОСИКС-ом укључују Андроид, БеОС, ФрееБСД, Хаику, Линук (види доле) и ВМВаре ЕСКСи. За Мицрософт Виндовс, Цигвин пружа углавном развојно окружење и време извршавања у складу са ПОСИКС-ом.

Да ли је Линук усклађен са ПОСИКС-ом?

Израз „Линук“ односи се на читав оперативни систем Линук, без обзира на укус, као што су Дебиан ГНУ / Линук, РедХат Линук, Линук Минт, Убунту Линук, Федора и ЦентОС, на пример. Прецизније речено, Линук је само име језгра које је суштинска компонента овог бесплатног оперативног система.

Као што је Линус Торвалдс описао у књизи „Јуст Фор Фун“ [8], да би развио Линук кернел, затражио је копију ПОСИКС стандарда. То му је помогло да примени исте механизме који се користе у комерцијалним УНИКС системима. Штавише, ово му је омогућило да повеже Линук кернел са ГНУ алатима који су углавном следили исти приступ. Да будемо поштени, софтверу на Линук систему доприносе различити извори који поштују ПОСИКС стандард, али који такође понекад примењују сопствене концепте. Међутим, истовремено, ово такође показује разноликост која чини Линук као оперативни систем.

Један пример за то је начин на који се записују аргументи командне линије. Аргументи са две цртице (нпр.г., “-Хелп”) су ГНУ конвенције, док ПОСИКС наредбе никада не користе аргументе са две цртице, већ само један (е.г., "-помоћ"). Линук је од самог почетка дизајниран с ГНУ-ом на уму, и зато наредбе садрже ГНУ-стил

аргументи. Да би се постигла усклађеност са ПОСИКС-ом, аргументи у стилу ПОСИКС-а додани су корак по корак. Ипак, коначну одлуку доноси програмер. Од данас већина наредби прихвата и кратке и дуге аргументе, или чак аргументе без цртица, као што је на пример наредба „пронађи“. Да будемо поштени, не постоји доследност између наредби на једном систему, а то може представљати проблем када исту наредбу намеравате да користите на другом систему заснованом на УНИКС-у, посебно када се пребацујете са Линук-а, ОС-а Кс и Солариса.

За сада Линук нема ПОСИКС сертификат због високих трошкова, осим две комерцијалне Линук дистрибуције Инспур К-УКС [12] и Хуавеи ЕулерОС [6]. Уместо тога, Линук се сматра углавном усклађеним са ПОСИКС-ом.

Ова процена је због чињенице да главне дистрибуције Линука прате Линук Стандард Басе (ЛСБ) уместо ПОСИКС-а [9]. ЛСБ има за циљ „да смањи разлике између појединачних Линук дистрибуција“ [14]. То се односи на структуру софтверског система, укључујући Стандард хијерархије датотечног система (ФХС) који се користи у језгру Линук-а. ЛСБ је заснован на ПОСИКС спецификацији, јединственој УНИКС спецификацији (СУС) [10] и неколико других отворених стандарда, али их такође проширује у одређеним областима.

Линук дистрибуције засноване на ЛСБ-у укључују РедХат Линук, Дебиан ГНУ / Линук (2002-2015) и Убунту (до 2015), да набројимо неколико.

Развијање са ПОСИКС-ом на уму

Да бисмо ПОСИКС разумели детаљније, препоручујемо вам да набавите копију стандарда ПОСИКС и прочитате га у целости. Књигу можете добити на веб локацији Опен Гроуп. Ово захтева регистрацију, али вам даје пуни приступ овом драгоценом ресурсу. Стандарди помажу јер вам омогућавају да развијете софтвер на такав начин да се понаша на исти начин на свим УНИКС платформама.

Везе и референце

Хвала вам

Аутор се захваљује Акел Бецкерт-у и Веит-у Сцхиеле-у на помоћи и саветима током припреме овог чланка.

Водич за ОпенТТД
ОпенТТД је једна од најпопуларнијих игара за пословну симулацију. У овој игри морате створити диван посао превоза. Међутим, почет ћете у почетку око 1...
СуперТукКарт за Линук
СуперТукКарт је сјајан наслов дизајниран да вам пружи Марио Карт искуство бесплатно на вашем Линук систему. Прилично је изазовно и забавно играти, диз...
Водич за битку за Веснотх
Битка за Веснотх је једна од најпопуларнијих стратешких игара отвореног кода које тренутно можете играти. Не само да је ова игра у развоју већ јако ду...