Mis on POSIX?

Arvutuskeskkondade kaasaskantav operatsioonisüsteemi liides (POSIX®) on standardite ja spetsifikatsioonide kogum, mis määratleb viisid, kuidas arvutiprogrammid operatsioonisüsteemiga suhtlevad. Nendele standarditele vastavaid rakendusi saab hõlpsamini teisaldada teistele platvormidele, mis samuti spetsifikatsioone toetavad. Need spetsifikatsioonid on rahvusvaheliselt ametlikult vastu võetud ja mõned erikliendid valitsuse, kaitse ja kosmosevaldkonnas on neid nõudnud. Standardiperekonnale on erinevad vastavustasemed, mida UNIX® platvormi disain suuresti mõjutas.

On tehtud palju katseid leevendada tarkvara arendamise raskusi rohkem kui ühe arvutiplatvormi jaoks. Erinevused operatsioonisüsteemi disainis, saadaolevates programmikeeltes ja riistvaras tekitavad ühilduvusprobleeme, millest ei ole kerge üle saada. Selle kohta, kuidas platvormidevahelise andmetöötluse väljakutseid kõige paremini lahendada, on palju erinevaid. POSIX® kasutab reeglitel põhinevat lähenemist, mis reguleerib seda, kuidas rakendused nende aluseks oleva platvormiga suhtlevad, ning kohustub kaasama ka mõned utiliidid. Need reeglid kehtivad nii rakenduste kui ka operatsioonisüsteemide kohta ning pakuvad nende kahe vahelise suhtluse standardviisi.

POSIX®-i eesmärk on pakkuda lähtekoodi kaasaskantavust. Lähtekood, rakenduste loomiseks kasutatava arvutiprogrammi inimloetav versioon, on “kompileeritud” masinkoodiks, millest saavad aru kõigi arvutite mikroprotsessorid. Erinevad protsessorid sisaldavad erinevat tüüpi masinkoodi; see tähendab, et programm ei tohi olla kirjutatud ainult operatsioonisüsteemi silmas pidades, vaid ka konkreetse riistvaraga, millel programm töötab. Lähtekoodi kaasaskantavus tähendab, et programmi lähtekoodi saab erinevate platvormide jaoks kompileerida vähese vaevaga või ilma pingutuseta, mis muudab olemasoleva koodi taaskasutamise tõhusamaks kui programmi nullist taasloomise.

Paljud suured organisatsioonid, kes ostavad laia valikut riist- ja tarkvara, on hakanud nägema POSIX®-i standardite perekonda ostetavate toodete olulise või isegi olulise funktsioonina. Elektri- ja elektroonikainseneride instituut (IEEE), Rahvusvaheline Standardiorganisatsioon (ISO) ja Rahvusvaheline Elektrotehnikakomisjon (IEC) on kinnitanud POSIX® standardid IEEE 1003 ja ISO/IEC 9945. See rahvusvaheline kasutuselevõtt on muutnud standardid populaarseks valitsuse kliendid. Mõned sõjaväe- ja kosmosevaldkonna kliendid nõuavad standardeid, et hõlbustada rakenduste kohandamist nendes valdkondades kasutatavate spetsiaalsete andmetöötlusplatvormidega. Näiteks USA merevägi on lisanud standardid oma avatud arhitektuuriga arvutikeskkonda, mis on algatus, mille eesmärk on säilitada sõjalaevade, mehitamata õhusõidukite ja sukelaevade toiteallika tarkvara koostalitlusvõime.

POSIX® on pigem seotud standardite perekond kui üksik spetsifikatsioon. Mõned on hästi toetatud, teised aga mitte. Samuti on olemas erinevad tugitasemed, „vastavad” tarkvaratooted järgivad rangelt standardeid ja „ühilduvad” tooted toetavad vaid mõnda neist. Paljud POSIX®-i spetsifikatsioonid põhinesid UNIX®-i operatsioonisüsteemidel, nii et mitmed UNIX®-i ja UNIX®-i sarnased platvormid toetavad standardeid juba karbist välja. Mõned teised platvormid toetavad IEEE 1003 täiendava tarkvara abil.