Hva er Posix?
Det bærbare operativsystemgrensesnittet for databehandlingsmiljøer (POSIX®) er et sett med standarder og spesifikasjoner som definerer måter for dataprogrammer å samhandle med et operativsystem. Programmer som samsvarer med disse standardene, kan lettere porteres til andre plattformer som også støtter spesifikasjonene. Disse spesifikasjonene er offisielt vedtatt internasjonalt og har blitt pålagt av noen spesielle kunder innen regjeringen, forsvaret og romfartsfeltene. Det er forskjellige nivåer av samsvar med familien av standarder, som var sterkt påvirket av utformingen av UNIX® -plattformen.
Det har vært mange forsøk på å lette vanskene med å utvikle programvare for mer enn en datamaskinplattform. Forskjeller i design av operativsystemer, tilgjengelige programspråk og maskinvare skaper kompatibilitetsproblemer som ikke lett overvinnes. Det er mange forskjellige meninger om hvordan du best kan takle utfordringene med databehandling på tvers av plattformer.POSIX® tar en regelbasert tilnærming som styrer hvordan applikasjoner samhandler med deres underliggende plattform, samt mandat om inkludering av noen få verktøy. Disse reglene gjelder både applikasjoner og operativsystemer, og gir en standard måte for kommunikasjon å finne sted mellom de to.
Målet med POSIX® er å gi noe kjent som portabilitet i kildekode. Kildekode, den menneskelige lesbare versjonen av et dataprogram som brukes til å bygge applikasjoner, er "samlet" til maskinkode som kan forstås av mikroprosessorene i alle datamaskiner. Ulike prosessorer inneholder forskjellige typer maskinkode; Dette betyr at et program ikke bare må skrives med et operativsystem i tankene, men med den spesielle maskinvaren som programmet vil kjøre på. Kildekodeportabilitet betyr at et programs kildekode kan settes sammen for forskjellige plattformer med liten eller ingen effektt, noe som gjør det mer effektivt å gjenbruke eksisterende kode enn å gjenskape programmet fra bunnen av.
Mange store organisasjoner som kjøper et bredt utvalg av maskinvare og programvare har kommet for å se POSIX® -familien av standarder som en viktig eller til og med viktig funksjon for produkter de kjøper. Institute of Electrical and Electronics Engineers (IEEE), International Organization for Standardization (ISO) og International Electrotchnical Commission (IEC) har sluttet seg til POSIX® -standardene som IEEE 1003 og ISO/IEC 9945. Denne internasjonale adopsjonen har gjort standardene populære blant myndighetskunder. Noen militære og romfartskunder krever standardene for å gjøre det lettere å tilpasse applikasjoner til spesialiserte databehandlingsplattformer som brukes i disse feltene. Den amerikanske marinen har for eksempel innlemmet standardene i sitt åpne arkitekturberegningsmiljø, et initiativ som tar sikte på å opprettholde interoperabilitet i programvaren som driver krigsskip, ubemannetLuftkjøretøyer og nedsenkbare.
Posix® er en familie med relaterte standarder i stedet for en enkelt spesifikasjon. Noen støttes godt mens andre ikke er det. Det er også forskjellige nivåer av støtte, med "samsvarende" programvareprodukter som strengt fulgte standardene og "kompatible" produkter som bare støtter noen av dem. Mange av POSIX®-spesifikasjonene var basert på UNIX®-operativsystemene, så en rekke UNIX® og UNIX®-lignende plattformer støtter standardene ut av boksen. Noen andre plattformer støtter IEEE 1003 ved bruk av tilleggsprogramvare.