1089 Stimmen

Was bedeutet der Begriff "POSIX"?

Was ist POSIX? Ich habe die Wikipedia-Artikel und ich lese ihn jedes Mal, wenn mir der Begriff begegnet. Tatsache ist, dass ich nie wirklich verstanden habe, was es ist.

Kann mir bitte jemand die Notwendigkeit von POSIX" erklären?

1voto

Premraj Punkte 65511

POSIX steht für P ortable O perating S ystem I nterface.

POSIX ist eine Reihe von Standards, die von der IEEE kodifiziert und von ANSI und ISO herausgegeben werden. Ziel von POSIX ist es, die Aufgabe der plattformübergreifenden Softwareentwicklung zu erleichtern, indem eine Reihe von Richtlinien für die Hersteller von Betriebssystemen festgelegt wird. Im Idealfall sollte ein Entwickler ein Programm nur einmal schreiben müssen, damit es auf allen POSIX-konformen Systemen läuft. Die meisten modernen kommerziellen Unix-Implementierungen und viele freie Implementierungen sind POSIX-kompatibel. Es gibt mehrere POSIX-Versionen, aber die wichtigsten sind POSIX.1 und POSIX.2, die Systemaufrufe bzw. die Befehlszeilenschnittstelle definieren.

Die POSIX-Spezifikationen beschreiben ein Betriebssystem, das Unix ähnelt, aber nicht unbedingt mit ihm identisch ist. Obwohl POSIX stark auf den BSD- und System V-Versionen basiert, sind auch Nicht-Unix-Systeme wie Microsofts Windows NT und IBMs OpenEdition MVS POSIX-konform.

fuente

0voto

t0mm13b Punkte 33393

Posix regelt die Interoperabilität, die Übertragbarkeit und andere Bereiche wie die Verwendung und den Mechanismus von Fork, Berechtigungen und Dateisystemstandards wie /etc, /var, /usr und so weiter . Wenn Entwickler ein Programm unter einem Posix-kompatiblen System wie z.B. Linux schreiben, ist daher im Allgemeinen, aber nicht immer, gewährleistet, dass es auch auf einem anderen Posix-kompatiblen System wie IBMs AIX-System oder anderen kommerziellen Varianten von Unix läuft. Posix ist eine gute Sache, denn es erleichtert die Softwareentwicklung im Hinblick auf eine maximale Portabilität, die angestrebt wird. Ich hoffe, diese Antwort macht Sinn.

Danke an Jed Smith & Tinkertim für den Hinweis auf meinen Fehler - mein Fehler!!! :(

0voto

sras Punkte 788

POSIX definiert eine Reihe von Standards für ein Betriebssystem oder ein Programm. Das Ziel ist es, neue Software zu schreiben, die mit UNIX-ähnlichen Systemen kompatibel ist.

Zum Beispiel kann ein Programm, das unter Linux läuft, auch auf anderen UNIX-ähnlichen Systemen wie Solaris, HP-UX und AIX usw. kompiliert und ausgeführt werden.

Die bekanntesten Beispiele sind GNU Bash das zu 100 % POSIX-konform ist und gawk Nutzen.

0voto

MCH Punkte 417

Eine Spezifikation (Blaupause) darüber, wie man ein Betriebssystem mit einem späten UNIX-Betriebssystem (Gott segne es!) kompatibel macht. Das ist der Grund, warum macOS und GNU/Linux sehr ähnliche Terminal-Befehlszeilen, GUIs, Bibliotheken usw. haben. Weil sie beide nach dem POSIX-Entwurf entwickelt wurden.

POSIX schreibt Ingenieuren und Programmierern nicht vor, wie sie kodieren sollen, sondern was sie kodieren sollen.

-2voto

prosti Punkte 34344

Einige Fakten über POSIX, die nicht so erfreulich sind.

POSIX ist auch die Systemaufrufschnittstelle oder API, und sie ist fast 30 Jahre alt.

Sie wurde entwickelt für serialisierter Datenzugriff auf den lokalen Speicher mit einzelnen Computern mit einzelnen CPUs.

Die Sicherheit war in POSIX von vornherein kein großes Thema, was im Laufe der Jahre zu zahlreichen Angriffen mit Wettlaufbedingungen führte und die Programmierer zwang, diese Einschränkungen zu umgehen.

Es werden immer noch schwerwiegende Fehler entdeckt, die mit einem sichereren POSIX-API-Design hätten vermieden werden können.

POSIX erwartet, dass der Benutzer jeweils einen synchronen Aufruf ausführt und auf dessen Ergebnis wartet, bevor er den nächsten ausführt. Heutige Programmierer erwarten, dass sie viele asynchrone Anfragen auf einmal stellen, um den Gesamtdurchsatz zu verbessern.

Diese synchrone API eignet sich besonders schlecht für den Zugriff auf Remote- und Cloud-Objekte, bei denen hohe Latenzzeiten wichtig sind.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X