2011-06-17 5 views
6

संभव डुप्लिकेट:
shifting from windows to *nix programming platformविंडोज प्रोग्रामर (सी/सी ++) के लिए लिनक्स प्रोग्रामिंग पर कोई सुझाव?

किसी को भी एक अच्छा, कॉम्पैक्ट संसाधन है कि मुझे लिनक्स प्रोग्रामिंग करने के लिए Windows प्रोग्रामिंग से विस्थापित करने की अनुमति होगी पता है?

मैं, सरल क्षुधा चल पाने में कामयाब रहे डेमॉन वास्तुकला की जाँच की है, लेकिन किसी भी तरह मैं नहीं जानता कि जहां सामान्य रूप में सर्वोत्तम प्रथाओं और वास्तुकला के लिए सामान्य समाधान का एक बेहतर समझ पाने के लिए शुरू करने के लिए।

मुझे लगता है कि सभी सूत्रण, म्युटेक्स, महत्वपूर्ण अनुभाग, आई/ओ, (नाम?) पाइप सामान शायद रास्ता बंद विंडोज विकास से है। लेकिन मुझे एक अच्छा, कॉम्पैक्ट दस्तावेज नहीं मिल रहा है।

लिनक्स में डेमॉन तरह से Windows में से सरल होने लगते हैं, लेकिन मैं पहले से ही कांटा समारोह है कि पूरी तरह से असामान्य है पर ठोकर खाई है, और वहाँ की तरह है कि मुझे लगता है कि अन्य बातों के होना चाहिए।

इसके अलावा, POSIX अनुपालन की बातों के बारे में क्या है? मैंने सुना है कि यह मंच अज्ञेयवादी होना चाहिए, लेकिन मैंने यह भी पढ़ा कि यह कुछ वितरणों के तहत बिल्कुल समर्थित नहीं है।

+2

प्रश्न डुप्लिकेट प्रतीत नहीं होता है। – taskinoor

+1

@ टास्किनूर: यह बहुत करीब है। –

+0

मैं सिंक्रनाइज़ेशन अवधारणाओं, प्रक्रिया प्रबंधन, फ़ाइल I/O, और गेटचास को बेहतर ढंग से समझना चाहता हूं जो लिखने के लिए एक सिम्लिंक खोल रहा है। व्यवसाय तर्क प्रकार घटकों को विकसित करने के लिए आप विम/जीसीसी/सी के माध्यम से बहुत अधिक सामान कर सकते हैं। यह लिंक Distros/संपादकों/कंसोल कमांड के बारे में अधिक है। लेकिन मैं इसे देख लूंगा। – Coder

उत्तर

2

जहाँ तक * nix एपीआई पर विवरण के रूप में चला जाता है, इस सामग्री का एक अच्छा सेट है:

http://www.hiraeth.com/alan/tutorials/courses/unixprog.html

और किसी को एक साथ खींच लिया है एक अच्छा list of links to many resources here

हालांकि यह जानने के लिए अच्छा है लक्ष्य मंच, मैं दृढ़ता से Boost पुस्तकालयों का उपयोग करने की सलाह देता हूं जहां प्लेटफॉर्म-निर्भर व्यवहार (थ्रेडिंग, नेटवर्किंग इत्यादि के लिए) रैपर के रूप में संभव है

3

आप ईएसआर के The Art of Unix Programming पर एक नज़र है, जो आपके सवालों के अधिकांश का जवाब देंगे लग सकता है।

यह * nix दर्शन, एपीआई के डिजाइन, मूल और POSIX अनुकूलता के लिए कारणों, और बाकी सब कुछ की व्याख्या करेगा।

5

लिनक्स प्रोग्रामिंग इंटरफेस है अद्भुत किताब मैं अब पढ़ रहा हूँ:

http://www.amazon.com/Linux-Programming-Interface-System-Handbook/dp/1593272200

बस लेकर अपनी बकाया ग्राहकों को देखो - यह वास्तव में उत्कृष्ट लिनक्स प्रोग्रामिंग किताब है।

0

विशेष रूप से थ्रेडिंग के लिए, आप शायद NPTL पर पढ़ना चाहते हैं।

fork विंडोज CreateProcess के साथ सबसे करीबी रूप से समान है लेकिन अर्थशास्त्र बहुत अलग है कि आपको कोड को मैप करने से पहले दोनों को समझने की आवश्यकता है।

0

दो वें हैं जो आपको सीखने की जरूरत है।make और GCC:

  1. उपकरण
  2. एपीआई

उपकरणों के लिए देखो। अधिकांश यूनिक्स बिल्ड के आधार बनाने के आधार बनाएं, हालांकि कई टूल (ऑटो टूल्स और सीएमके) हैं जो आपके लिए मेकफ़ाइल उत्पन्न करेंगे।

एपीआई के लिए सबसे अच्छा दस्तावेज़ GLibC Manual है। यह मूल यूनिक्स एपीआईएस को समझाने का एक अच्छा काम करता है।

0

रॉबिन्स द्वारा Unix Systems Programming पर एक नज़र डालें। यह वास्तव में यूनिक्स की बजाय POSIX के बारे में अधिक है, और कुछ बहुत ही गहन उदाहरणों के साथ-साथ सामग्री का एक बहुत कुछ शामिल है। POSIX कारक का अर्थ है कि यह लिनक्स के साथ-साथ कुछ अन्य यूनिक्स संस्करणों जैसे बीएसडी और ओएसएक्स के लिए काफी अच्छी तरह से अनुवाद करता है। इसे पढ़ने के बाद, आपको निश्चित रूप से एक बहुत अच्छा अवलोकन मिलेगा कि एक पॉज़िक्स सिस्टम कैसे काम करता है, साथ ही उन प्रमुख क्षेत्रों का एक उत्कृष्ट सर्वेक्षण जो आप एपीआई जैसे थ्रेडिंग, सॉकेट और फ़ाइल I/O में उपयोग करेंगे।

संबंधित मुद्दे