POSIX
POSIX®, de afkorting van Portable Operating-System Interface,[1][2] is een standaard die voorziet in een basis voor Unix-besturingssystemen. De standaard specificeert op welke wijze de shell dient te werken, wat verwacht kan worden van bepaalde shellcommando's en welke C-bibliotheekfuncties aanwezig behoren te zijn.[3] Onder deze standaard vallen de IEEE-1003 standaarden en delen van ISO/IEC 9945.[4][5] POSIX is een handelsmerk van de IEEE en The Open Group.[6]
Veel van dergelijke besturingssystemen houden zich geheel of grotendeels aan de POSIX-standaard. Daardoor is het mogelijk om programma's die op een van deze systemen zijn ontwikkeld en zich conformeren aan de door de Portable Applications Standards Committee ontwikkelde POSIX-standaard, ook te compileren en te gebruiken op een ander dergelijk systeem.[7]
Geschiedenis
[bewerken | brontekst bewerken]De IEEE-1003 POSIX-standaard bestaat sinds 1988. De standaard is voortgekomen uit het IEEE-IX-project dat in 1985 van start ging. De naam POSIX werd voorgesteld door Richard M. Stallman. De POSIX-versies van voor 1997 waren samengesteld uit ruim twintig onderdelen waarvan de drie belangrijkste waren:[8]
- IEEE-1003.1-1988: Basisspecificaties en systeeminterfaces.
- IEEE-1003.2-1992: Specificatie van de shell en standaardcommando's.[9]
- IEEE-1003.3-1991: Testmethoden voor de POSIX-certificering.[10]
Na 1997 is de POSIX.1-2001-standaard ontwikkeld.[4] Daarin zijn de verschillende onderdelen van eerdere versies samengevoegd. In 2004 is een update op de versie uit 2001 verschenen, waaruit de huidige POSIX.1-2008-standaard voortgekomen is.[5]
Onderdelen
[bewerken | brontekst bewerken]De POSIX API, de commando's voor de Bourne-shell en de directory-structuur van het bestandssysteem vormen de basis waarop software voor een POSIX-besturingssysteem ontwikkeld wordt.[11][12]
Alle systeembeheerders en andere gebruikers van een shell maken gebruik van door POSIX gestandaardiseerde command-line-utilities.[13] Van de basisdefinities worden de standaarden voor omgevingsvariabelen en batchservices veel gebruikt.[14][15] Voor softwareontwikkelaars is het van belang kennis te nemen van de POSIX-standaarden voor met name:[16]
- Reguliere expressies[17]
- Headerbestanden[18] en systeeminterfaces
- Development Utilities
- De Networking services-bibliotheek en de realtime- en threadbibliotheek
De POSIX-standaarden en de Filesystem Hierarchy Standard vormen de basis van de LSB-voorschriften. Deze voorschriften vormen een belangrijke richtlijn voor de ontwikkeling van Linuxdistributies.
Zie ook
[bewerken | brontekst bewerken]
- ↑ POSIX® 1003.1 FAQ (Version 1.13), The Open Group
- ↑ Solaris POSIX 1-1988 man page
- ↑ Ben Klemens, 21st Century C, O'Reilley, 2015
- ↑ a b IEEE 1003.1-1996 en 1003.2-1992 Base Specifications - uitgave 2004, The Open Group
- ↑ a b IEEE 1003.1-2008 Base Specifications - uitgave 2013, The Open Group
- ↑ IEEE POSIX certificatie home page
- ↑ Portable Applications Standards Committee
- ↑ PASC - POSIX Projects and Status 04 Dec 2003
- ↑ IEEE-1003.2 specificaties. Gearchiveerd op 28 maart 2014. Geraadpleegd op 25 juni 2013.
- ↑ POSIX Test Suite - standaard van de NIST
- ↑ POSIX.1-2008 Shell Command Language
- ↑ POSIX.1-2008 Directory Structure and Devices
- ↑ POSIX.1-2008 Utilities
- ↑ POSIX.1-2008 Environment Variables
- ↑ POSIX.1-2008 Batch services
- ↑ POSIX.1-2008 Development Topics
- ↑ POSIX.1-2008 Regular Expressions
- ↑ POSIX.1-2008 Standaard headers