POSIX ट्यूटोरियल
POSIX के साथ आरंभ करना
खोज…
संस्करण
संस्करण | मानक | रिहाई का वर्ष |
---|---|---|
POSIX.1 | IEEE Std 1003.1-1988 | 1988/01/01 |
POSIX.1b | IEEE Std 1003.1b-1993 | 1993/01/01 |
POSIX.1c | IEEE Std 1003.1c-1995 | 1995/01/01 |
POSIX.2 | IEEE एसटीडी 1003.2-1992 | 1992/01/01 |
POSIX.1-2001 | IEEE एसटीडी 1003.1-2001 | 2001/12/06 |
POSIX.1-2004 | IEEE एसटीडी 1003.1-2004 | 2004/01/01 |
POSIX.1-2008 | IEEE Std 1003.1-2008 (उर्फ " बेस स्पेसिफिकेशन्स, अंक 7 ") | 2008-12-01 |
POSIX.1-2013 | IEEE एसटीडी 1003.1-2013 | 2013-04-19 |
POSIX.1-2016 | IEEE एसटीडी 1003.1-2016 | 2016/09/30 |
POSIX क्या है?
POSIX " पोर्टेबल ऑपरेटिंग सिस्टम इंटरफ़ेस " के लिए खड़ा है और विभिन्न कंप्यूटिंग प्लेटफॉर्म के बीच संगतता प्रदान करने के लिए मानकों के एक सेट को परिभाषित करता है। मानक का वर्तमान संस्करण IEEE 1003.1 2016 है और इसे OpenGroup POSIX विनिर्देश से एक्सेस किया जा सकता है। पिछले संस्करणों में POSIX 2004 और POSIX 1997 शामिल हैं । POSIX 2016 संस्करण अनिवार्य रूप से POSIX 2008 प्लस इरेटा है (POSIX 2013 रिलीज़ भी था)।
POSIX UNIX जैसे ऑपरेटिंग सिस्टम और अन्य के लिए विभिन्न टूल इंटरफेस, कमांड और API को परिभाषित करता है।
निम्नलिखित को POSIX मानकीकरण के दायरे में माना जाता है:
- सिस्टम इंटरफ़ेस (फ़ंक्शन, मैक्रोज़ और बाहरी चर)
- कमांड दुभाषिया, या शेल ( श उपयोगिता)
- उपयोगिताएँ (जैसे कि अधिक , बिल्ली , एलएस )
POSIX दायरे से बाहर:
- DBMS इंटरफेस
- ग्राफिकल इंटरफेस
- बाइनरी कोड पोर्टेबिलिटी
नमस्ते दुनिया
एक साधारण Hello, World
त्रुटि जाँच के बिना Hello, World
कार्यक्रम:
#include <unistd.h> /* For write() and STDOUT_FILENO */
#include <stdlib.h> /* For EXIT_SUCCESS and EXIT_FAILURE */
int main(void) {
char hello[] = "Hello, World\n";
/* Attempt to write `hello` to standard output file */
write(STDOUT_FILENO, hello, sizeof(hello) - 1);
return EXIT_SUCCESS;
}
और त्रुटि जाँच के साथ:
#include <unistd.h> /* For write() and STDOUT_FILENO */
#include <stdlib.h> /* For EXIT_SUCCESS and EXIT_FAILURE */
int main(void) {
char hello[] = "Hello, World\n";
ssize_t ret = 0;
/* Attempt to write `hello` to standard output file */
ret = write(STDOUT_FILENO, hello, sizeof(hello) - 1);
if (ret == -1) {
/* write() failed. */
return EXIT_FAILURE;
} else if (ret != sizeof(hello) - 1) {
/* Not all bytes of `hello` were written. */
return EXIT_FAILURE;
}
return EXIT_SUCCESS;
}
संकलन और चल रहा है
ऊपर (कोई भी वर्शन) दिखाए गए कोड फ़ाइल में संग्रहीत किया जाता है तो hello.c
, तो आप एक कार्यक्रम में कोड संकलन कर सकते हैं hello
या तो का उपयोग कर c99
या make
। उदाहरण के लिए, एक कड़ाई से POSIX आज्ञाकारी मोड में, आप सिद्धांत का उपयोग कर संकलन कर सकते हैं और प्रोग्राम चला सकते हैं:
$ make hello
c99 -o hello hello.c
$ ./hello
Hello, World
$
अधिकांश वास्तविक make
इंप्लीमेंटेशन एक अलग सी कंपाइलर (शायद cc
, शायद gcc
, clang
, xlc
या कुछ अन्य नाम) का उपयोग करेंगे, और कई कंपाइलर के लिए अधिक विकल्पों का उपयोग करेंगे। जाहिर है, आप बस आदेश टाइप कर सकते हैं make
कमांड लाइन पर सीधे निष्पादित करता है।