Posix

Posix Standaard

Posix Standaard

POSIX: een overzicht

De Portable Operating System Interface (POSIX) is een IEEE-standaard die helpt bij de compatibiliteit en overdraagbaarheid tussen besturingssystemen. Theoretisch zou de POSIX-compatibele broncode naadloos overdraagbaar moeten zijn. In de echte wereld stuit de overgang van applicaties vaak op systeemspecifieke problemen. Maar POSIX-compliance maakt het eenvoudiger om applicaties te porten, wat kan resulteren in tijdbesparing. Ontwikkelaars moeten dus kennismaken met de basisprincipes van deze veelgebruikte standaard.

Geschiedenis van POSIX

Vroege programmeurs moesten hun applicaties helemaal opnieuw schrijven voor elk nieuw computermodel. Maar de IBM System/360 veranderde dat changed. In 1964 introduceerde het het besturingssysteem OS/360. IBM begon dezelfde hardware-architectuur te gebruiken om de nieuwe modellen in staat te stellen hetzelfde besturingssysteem te hergebruiken. De aanwezigheid van een gemeenschappelijk besturingssysteem op meerdere machines vormde de eerste fase voor applicatieportabiliteit.

Eind jaren zestig opende de komst van UNIX nieuwe mogelijkheden. Bell Labs van AT&T was verantwoordelijk voor de initiële ontwikkeling van dit nieuwe besturingssysteem. Het kan op machines van meerdere leveranciers lopen. Maar UNIX begon zich in verschillende smaken te vertakken. Naast System V van AT&T waren er Berkeley Software Distribution (BSD), Xenix en meer. Het was niet gemakkelijk om deze smaken over te dragen. De belofte van applicatieportabiliteit raakte een verkeersdrempel. In de komende decennia zou de introductie van nieuwe besturingssystemen het alleen maar complexer maken om applicaties over te dragen naar hardware, besturingssystemen en leveranciers.

POSIX-standaard is in de jaren tachtig ontwikkeld om het draagbaarheidsprobleem op te lossen. De standaard is gedefinieerd op basis van System V en BSD Unix. POSIX definieert niet het besturingssysteem, het definieert alleen de interface tussen een applicatie en een besturingssysteem. De programmeurs hebben de vrijheid om hun besturingssysteem en applicatie te schrijven zoals ze willen, zolang de interface tussen de twee wordt gerespecteerd. Omdat POSIX onafhankelijk is van hardware, besturingssysteem of leverancier, is het gemakkelijker om applicatieportabiliteit te bereiken.

De eerste POSIX-standaard werd uitgebracht in 1988. Formeel heette het IEEE Standard 1003.1-1988 Draagbare besturingssysteeminterface voor computeromgevingen”. In 1990 werd een internationale versie van dezelfde standaard met kleine variaties uitgebracht als ISO/IEC 9945-1:1990 Informatietechnologie - Portable Operating System Interface (POSIX) - Part 1: System Application Program Interface (API).

Aanvankelijk was POSIX verdeeld in meerdere standaarden:

POSIX.1: Kerndiensten
POSIX.1b: Realtime extensies
POSIX.1c: Threads-extensies
POSIX.2: Shell en hulpprogramma's

Na 1997 bracht de Austin Group alle standaard onder één paraplu. Sindsdien zijn de versies POSIX.1-2001 (ook bekend als IEEE Std 1003.1-2001), POSIX.1-2004 (ook bekend als IEEE Std 1003.1-2004) en POSIX.1-2008 (ook bekend als IEEE Std 1003.1-2008) zijn uitgebracht.

Voorbeelden van sommige POSIX-compatibele systemen zijn AIX, HP-UX, Solaris en MacOS (sinds 10.5 Luipaard). Aan de andere kant, Android, FreeBSD, Linux-distributies, OpenBSD, VMWare, enz., volg de meeste POSIX-standaarden, maar ze zijn niet gecertificeerd.

Basisprincipes van POSIX

POSIX.1-2008 standaard behandelt vier belangrijke gebieden:

  1. Basisdefinitie Volume: Algemene termen, concepten en interfaces.
  2. Systeeminterfaces Volume: Definities van systeemservicefuncties en subroutines. Omvat ook draagbaarheid, foutafhandeling en foutherstel.
  3. Shell en Utilities Volume: Definitie van interfaces van elke applicatie om shells en algemene hulpprogramma's te bevelen.
  4. Rationeel volume: Bevat informatie en geschiedenis over toegevoegde of verwijderde functies en de motivering van de beslissingen.

De standaard dekt geen grafische interfaces, database-interfaces, object-/binaire code-portabiliteit, systeemconfiguraties, I/O-overwegingen of beschikbaarheid van bronnen.

Enkele van de leidende principes achter POSIX-ontwerp zijn:

POSIX-toepassingsontwikkeling

Het doel van POSIX was om de draagbaarheid te verbeteren. Wanneer uw broncode de standaard volgt, kunt u de code eenvoudig compileren en uitvoeren op een andere machine. Als POSIX echter wordt gedefinieerd als een algemene vereiste voor een toepassing, kan dit verwarring veroorzaken. De volledige POSIX-standaard is meer dan 4000 pagina's met meer dan 1350 interfaces. Het heeft geen zin om alles te implementeren. Elk project moet dus de aspecten van POSIX definiëren die aan bepaalde vereisten voldoen.

Er zijn misvattingen in de ontwikkelingsgemeenschap dat de POSIX-standaard oud en irrelevant is. Het is niet waar. POSIX is een levend document dat regelmatig wordt bijgewerkt door de Austin Group. Iedereen kan lid worden van de groep en deelnemen aan het verbeteren van de standaard. De standaard wordt actief gebruikt in de huidige servers, werkstations, routers, mobiele apparaten, embedded systemen en meer. Het wordt gebruikt voor UNIX- en Linux-machines.

Ontwikkelaars moeten zich er echter van bewust zijn dat de POSIX-standaard problemen heeft. U kunt elke bug die u ontdekt aan de Austin Group melden en er zal naar worden gekeken voor de volgende revisie.

Conclusie
POSIX lijkt in eerste instantie misschien ontmoedigend. Toch zouden applicatie-ontwikkelaars kennis moeten maken met de basis, aangezien dit van tijd tot tijd als een vereiste zal verschijnen. Vanwege de grote reikwijdte van de norm is het niet mogelijk om een ​​expert te worden over het volledige document. Ontwikkelaars kunnen contact opnemen met de UNIX- en Linux-gemeenschappen voor meer informatie. De community's kunnen uw vragen beantwoorden en u een beter idee geven van welk deel van de norm relevant is voor uw project.

Verdere studie:

Referenties:

AppyMouse trackpad en muisaanwijzer op het scherm voor Windows-tablets
Tabletgebruikers missen vaak de muisaanwijzer, vooral wanneer ze gewend zijn om de laptop te gebruiken. Het touchscreen Smartphones en tablets hebben ...
Middelste muisknop werkt niet in Windows 10
De middelste muis knop helpt u door lange webpagina's en schermen met veel gegevens te bladeren. Als dat stopt, zul je uiteindelijk het toetsenbord ge...
Hoe de linker- en rechtermuisknop op Windows 10 pc te veranderen
Het is nogal een norm dat alle computermuisapparaten ergonomisch zijn ontworpen voor rechtshandige gebruikers. Maar er zijn muisapparaten beschikbaar ...