POSIX

POSIX (engl. Portable Operating System Interface) on käyttöjärjestelmille kehitetty standardi-/määrittelykokonaisuus. Standardin IEEE-versio on IEEE 1003.1-2001, jonka kansainvälinen ISO-standardi on ISO/IEC 9945-1.

Nimeä "POSIX" on käytetty aluksi vain IEEE-standardin IEEE Std 1003.1-1988 synonyyminä, jonka jälkeen esitettiin suositellummaksi termiä POSIX.1. IEEE POSIX 1003.2 (POSIX.2) on ollut erillinen standardi, joka on sittemmin liitetty POSIX 1003.1 -standardiin. Standardi ratifioitiin vuonna 1988 ja laajennettiin vuonna 1990 kansainväliseksi ISO-standardiksi. Yhdysvaltalaisella NIST:llä oli myös FIPS Pub 151-1 -määrittely.

POSIX sai alkunsa noin vuonna 1985 alkaneesta projektista, jossa tarkoituksena oli yhtenäistää Unix-käyttöjärjestelmiä ja niiden ohjelmistoja käyttäjien ja ohjelmoijien kannalta helpompaan suuntaan. Standardi määrittää Unix-yhteensopivan käyttöjärjestelmän järjestelmäkutsujen rajanpinnan ja lisäksi mm. käyttäjätason ohjelmia ja niiden toimintaa. Nimeä POSIX ehdotti Richard Stallman.

Single UNIX Specification perustuu POSIX-määrittelyyn mutta laajentaa ja päivittää sitä.

Yhteensopivuus

Vaikka POSIXia käytetään lähinnä Unix-johdannaisissa ja Unixin kaltaisissa käyttöjärjestelmissä, myös muut käyttöjärjestelmät voivat toteuttaa standardin.

QNX:ssä on POSIX-tuki. Linux-jakeluille tarkoitettu Linux Standard Base -standardi sisältää POSIX-tuen. OS X on POSIX-yhteensopiva.

z/OS sisältää POSIX-yhteensopivan tilan. OpenVMS-järjestelmässä on POSIX-alijärjestelmä. VxWorks on POSIX 1003.13-2003 -standardin mukainen. Windows NT toteutti standardista käyttöjärjestelmän rajapinnan Windows 2000:een saakka: POSIX-tuki poistettiin Windows XP:ssä ja Windows Server 2003:ssa. Haiku sisältää POSIX-yhteensopivuuskerroksen.

POSIX- tai Unix-yhteensopivuuden tuomiseksi eri alustoille on kehitetty useita ohjelmistoja:

Osat

Ennen vuotta 2001 standardi koostui useista osista:

Useat osat on myöhemmin liitetty osaksi IEEE Std 1003.1-2001 standardia. Standardia on myöhemmin päivitetty ISO C -standardin mukaiseksi, IPv6-tuelle ja muita muutoksia.

POSIX.1-2017 (IEEE Std 1003.1-2017) on viimeisin päivitetty versio standardista.

Katso myös

Lähteet

  1. ↑ IEEE 1003.1-2001 - IEEE Standard for IEEE Information Technology - Portable Operating System Interface (POSIX(R)) IEEE Standard Association. Arkistoitu 22.4.2019. Viitattu 5.7.2019. (englanniksi)
  2. ↑ ISO/IEC 9945-1:2002 ISO. Viitattu 5.7.2019. (englanniksi)
  3. 1 2 3 4 5 6 POSIX 1003.1 Frequently Asked Questions (FAQ Version 1.16) Open Group. Viitattu 8.9.2019. (englanniksi)
  4. 1 2 Stephen R. Walli: The POSIX Family of Standards (PDF) maaliskuu 1995. StandardView. Viitattu 12.9.2019. (englanniksi)
  5. ↑ Standards: An Overview Of the Single UNIX Specification Version 3 30.1.2002. The Open Group. Viitattu 11.6.2019. (englanniksi)
  6. ↑ A little history QNX. Viitattu 10.9.2019. (englanniksi) 
  7. ↑ System V Definition linfo.org. Viitattu 10.9.2019. (englanniksi)
  8. ↑ DevynCJohnson: SUS, POSIX, and Other Standards dcjtech.info. 26.2.2017. Arkistoitu 7.7.2019. Viitattu 8.7.2019. (englanniksi)
  9. ↑ OS X for UNIX Users (PDF) images.apple.com. heinäkuu 2011. Viitattu 30.11.2020. (englanniksi) 
  10. ↑ POSIX ibm.com. Viitattu 1.12.2020. (englanniksi) 
  11. ↑ OpenVMS beginner's FAQ alpha.mike-r.com. Arkistoitu 8.2.2011. Viitattu 5.7.2019. (englanniksi)
  12. ↑ Wind River’s VxWorks Becomes the First Operating System to Achieve Certified Conformance to POSIX PSE52 Real-Time Controller Profile Standard windriver.com. 27.11.2006. Viitattu 30.11.2020. (englanniksi) 
  13. ↑ https://blog.ret2.io/2017/09/20/subsystem-posix/
  14. ↑ Kernel Enhancements for Windows XP – Internet Archive
  15. ↑ Alexander Tolstoy: A BeOS-inspired desktop operating system linux-magazine.com. 2018. Viitattu 20.2.2023. (englanniksi)
  16. ↑ Cygwin cygwin.com. Viitattu 1.12.2020. (englanniksi) 
  17. ↑ The EMX Project edm2.com. Viitattu 1.12.2020. (englanniksi) 
  18. ↑ Porting software to AmigaOS (unconventional style) sandervanderburg.blogspot.com. 17.1.2012. Viitattu 1.12.2020. (englanniksi) 
  19. ↑ https://github.com/bebbo/ixemul
  20. ↑ The Open Group Base Specifications Issue 7, 2018 edition pubs.opengroup.org. Viitattu 20.4.2024. (englanniksi)

Aiheesta muualla