Jakie są różnice między POSIX, specyfikacją Single UNIX i specyfikacją Open Group Base ? Myślę, że ich celem jest ustalenie, czy system operacyjny to Unix?
Jakie są różnice między POSIX, specyfikacją Single UNIX i specyfikacją Open Group Base ? Myślę, że ich celem jest ustalenie, czy system operacyjny to Unix?
Odpowiedzi:
Jedną ważną „różnicą” jest grupa opcji XSI (XOPEN), która określa szereg tradycyjnych interfejsów uniksowych, które prawdopodobnie nie będą miały zastosowania w nowym systemie operacyjnym, który nie jest „uniksowy”. Często ludzie używają „SUS”, aby odnieść się do pełnego standardu, w tym opcji XSI, oraz „POSIX”, aby odnieść się do standardu podstawowego i ewentualnie nie-uniksowych grup opcji.
Kolejne wersje SUS wydają się stopniowo wycofywać części opcji XSI, które tak naprawdę nie były przydatne do pisania aplikacji przenośnych, a zamiast tego odzwierciedlały tylko starsze implementacje i przenoszą kilka bardziej przydatnych części do standardu podstawowego.
unistd.h
brzmi: „The <unistd.h> Nagłówek określa następujące stałą symboliczną tylko wtedy, gdy implementacja wspiera opcję XSI, patrz XSI zgodności Jeśli zdefiniowany, jego wartość powinna być odpowiednia do stosowania w dyrektywach preprocesora _XOPEN_VERSION #if.. „
Dzisiaj POSIX i SUS są w zasadzie tym samym; SUS obejmuje trochę więcej .
Cytując tutaj :
Począwszy od 1998 r., Wspólna grupa robocza znana jako Austin Group zaczęła opracowywać połączony standard, który będzie znany jako Single UNIX Specification Version 3 i POSIX: 2001 (formalnie: IEEE Std 1003.1-2001). Został wydany 30 stycznia 2002 r
i
W grudniu 2008 r. Austin Group opublikowała nową poważną wersję, znaną jako POSIX: 2008 (formalnie: IEEE Std 1003.1-2008). Jest to rdzeń specyfikacji Single UNIX, wersja 4
Patrząc na górę specyfikacji podstawowej grupy otwartej , zobaczysz standardowy identyfikator IEEE Std 1003.1-2008. IEEE Std 1003.1 jest znany jako POSIX.1, a 2008 jest po prostu najnowszym wcieleniem. Patrząc na POSIX na Wikipedii, zobaczysz, że standard składa się z trzech części, w tym:
Zasadniczo POSIX to tylko nazwa standardu opracowanego przez IEEE z pierwotną wersją wykonaną w 1988 r. POSIX nie jest oficjalnie UNIX ™ po prostu dlatego, że IEEE nie jest właścicielem znaku towarowego, ale jest to środowisko systemu operacyjnego i interfejs systemu UNIX ™ systemy. Później grupa Open Group, która kontroluje znak towarowy UNIX ™, zaangażowała się w tworzenie standardu opartego na POSIX o nazwie Single UNIX Specification wersja 2 lub SUSv2. Teraz te dwie specyfikacje zostały opracowane wspólnie jako The Austin Group. Najnowsza wersja to SUSv4. Więc by podsumować:
POSIX: 2008 = IEEE Std. 1003.1-2008 = SUSv4 = Otwarta specyfikacja grupy, wydanie 7.
Przeczytaj także moją odpowiedź na temat Czym dokładnie jest POSIX?