POSIX
POSIX Portable Operating System Interface | |||
---|---|---|---|
Utvikler(e) | Austin Group | ||
Nettsted | pubs.opengroup.org (en) | ||
POSIX på Commons |
POSIX (forkortelse for Portable Operating System Interface) er et sett med standarder som definerer et operativsystemuavhengig programmeringsgrensesnitt.
Før 1997 ble POSIX utviklet av IEEE og Open Group, og standardisert av ISO/IEC/IEEE 9945. I 1997 ble arbeidet overtatt av Austin Group, en arbeidsgruppe som er tilknyttet de nevnte standardorganisasjoner. Austin Group publiserer i dag nye revisjoner som en del av Single UNIX Specification, før de godkjennes av ISO som en POSIX-revisjon.
Første versjon ble publisert 1. januar 1988, og den foreløbig siste versjonen ble publisert 31. januar 2018.
POSIX er et programkodelag mellom operativsystemet og applikasjonsprogrammene, som lar programmene kalle opp POSIX-funksjoner i stedet for operativsystemspesifikke funksjoner. Dette medfører at et applikasjonsprogram kan benyttes på flere forskjellige operativsystem, ved å rekompilere det. POSIX ble utviklet for UNIX, men finnes også for flere andre operativsystem.
Bakgrunn
Utdypende artikkel: Unix-krigene
![](http://upload.wikimedia.org/wikipedia/commons/thumb/c/cd/Unix_timeline.en.svg/250px-Unix_timeline.en.svg.png)
Bakgrunnen for POSIX var de såkalte Unix-krigene som pågikk fra 1983 til 1993, hvor ulike leverandører av Unix kjempet for å etablere sin egen Unix-avart som en industristandard. POSIX var i så måte det første forsøket på å standardisere Unix, men standarden gjelder også for andre operativsystemer.
På midten av 1980-tallet, fantes det tre grunnleggende avarter av Unix: AT&T's UNIX System III (som var basis for Microsoft's Xenix, PC/IX som ble støttet av IBM og flere), AT&T's UNIX System V, som prøvde å etablere en ny Unix-standard,[1] og Berkeley Software Distribution (BSD). Alle tre var utgått fra forsknings-Unix, men hadde divergert betraktelig. I tillegg var det også innbyrdes forskjeller på ulike varianter av Unix innad i disse tre «familiene».
Navn
Opprinnelig refererte navnet POSIX til IEEE Std 1003.1-1988, som ble publisert 1. januar 1988. POSIX-standardene er formelt betegnet som IEEE 1003 og det internasjonale standardnavnet er ISO/IEC 9945.
Standardene utgikk fra et prosjekt som begynte omkring 1985. GNU-prosjektets leder Richard Stallman, som var medlem av IEEE Computer Society's Portable Applications Standards Committee (PASC) på 1980-tallet, foreslo navnet POSIX (Portable Operating System Interface) overfor PASC i stedet for det tidligere navnet IEEE-IX. Komitéen fant det lettere å uttale og huske, og adopterte derfor navnet.[2][3]
Egenskaper og bruksområder
Versjoner
POSIX-standarden har blitt revidert og utvidet flere ganger.
Før 1997 ble POSIX utviklet av IEEE og Open Group,[4] og standardisert av ISO/IEC/IEEE 9945.[5] I 1997 ble arbeidet overtatt av Austin Group, en arbeidsgruppe som er tilknyttet de nevnte standardorganisasjoner. Austin Group publiserer i dag nye revisjoner som en del av Single UNIX Specification, før de godkjennes av ISO som en POSIX-revisjon.
POSIX.1 (IEEE Std 1003.1-1988)
- Tjenester av operativsystemkjernen, publisert 1. januar 1988
- oppretting og kontroll av prosesser
- signaler
- behandling av flytekommafeil
- behandling av minnesegmentsfeil
- behandling av illegale instruksjoner
- behandling av bussfeil
- timerbehandling
- datafil- og katalogbehandling
- Pipeline
- C-standardbiblioteket slik det er spesifisert i ANSI C
- I/O og port-kontroll
- Prosesstriggere
POSIX.1b (IEEE Std 1003.1b-1993)
- Sanntidsoperativsystemer, publisert 1. januar 1993
- prioritet av skedulering
- sanntidssignaler
- klokker og tellere
- semaforer
- meldingsoverføring
- delt minne
- asynkron og synkron kommunikasjon
- grensensitt til minnelås
POSIX.1c (IEEE Std 1003.1c-1995)
- Tråder, publisert 1. januar 1995
- Oppretting, kontroll og sletting av tråder
- trådallokering
- trådsynkronisering
- signalbehandling
POSIX.2 (IEEE Std 1003.2-1992)
- Unix-skall og systemverktøy, publisert 1. januar 1992
- Unix-skall, kommandotolker og kommandolinjer
- systemverktøy
POSIX.1-2001 (IEEE Std 1003.1-2001)
- Identisk med Single UNIX Specification version 3,[6] publisert 6. desember 2001
- Basedefinisjoner, utgave 6
- Systemgrensesnitt og hedere, utgave 6
- Kommandoer og systemverktøy, utgave 6
POSIX.1-2004 (IEEE Std 1003.1-2004)
- En mindre oppdatering, publisert 1. januar 2004
- To mindre oppdateringer eller errata, referert til som Technical Corrigenda (TC)[7][8]
POSIX.1-2008 (IEEE Std 1003.1-2008)
- Identisk med Single UNIX Specification version 4, publisert 1. desember 2008
- Basedefinisjoner, utgave 7
- Systemgrensesnitt og hedere, utgave 7
- Kommandoer og systemverktøy, utgave 7
POSIX.1-2008 (IEEE Std 1003.1-2008), 2013-utgaven
- Identisk med Single UNIX Specification version 4, 2013-utgaven, publisert 19. april 2013
- The Technical Corrigendum 1, og merkenavnet UNIX V7
POSIX.1-2008 (IEEE Std 1003.1-2008), 2016-utgaven
- Identisk med Single UNIX Specification version 4, 2016-utgaven, publisert 30. september 2016
- The Technical Corrigendum 2
POSIX.1-2008 (IEEE Std 1003.1-2008), 2017-utgaven
- Mindre oppdatering, publisert 31. januar 2018
Referanser
- ^ Shea, Tom (20. februar 1984). «New developments may decide battle over Unix». InfoWorld. s. 43–45. Besøkt 25. februar 2016.
- ^ «POSIX 1003.1 FAQ Version 1.12». 2. februar 2006. Besøkt 16. juli 2006.
- ^ «The origin of the name POSIX.». 2011. Besøkt 28. september 2013.
- ^ The Single UNIX Specification, Version 3, The Open Group.
- ^ The Austin Common Standards Revision Group, IEEE.
- ^ «The Open Group announces completion of the joint revision to POSIX and the Single UNIX Specification» (pressemelding). The Open Group. 30. januar 2002. Besøkt 21. juli 2019.
- ^ «IEEE Std 1003.1» (2004 utg.). Unix.org. Besøkt 26. juli 2009.
- ^ «IEEE Std 1003.1» (2004 utg.). The Open Group. .
Eksterne lenker
- (en) Offisielt nettsted
- (en) POSIX – kategori av bilder, video eller lyd på Commons
- POSIX - Austin Joint Working Group (en)
- The Open Group Base Specifications (en)