Google विकसकांना एलएलव्हीएमसाठी स्वतःचे लिबसी विकसित करायचे आहेत

LLVM_Logo

एलएलव्हीएम मेलिंगवर सादर केलेला एक Google विकसक विकसकाचा विषय आहे क्रॉस-प्लॅटफॉर्म मानक सी लायब्ररी (Libc) एलएलव्हीएम प्रकल्प चौकटीत.

अनेक कारणांमुळे, Google सध्याच्या कामकाजात समाधानी नाही (ग्लिबॅक, मसल) आणि कंपनी नवीन अंमलबजावणी विकसित करण्याच्या मार्गावर आहे, जे एलएलव्हीएमचा भाग म्हणून विकसित करण्याचा त्यांचा हेतू आहे. एलएलव्हीएम घडामोडी अलीकडेच Google साधने तयार करण्याचा आधार म्हणून वापरली गेली आहेत.

विकास हळूहळू आणि हळूहळू कार्यक्षमता वाढविण्याची योजना आखली आहे. असा प्रस्ताव आहे की प्रथम पर्याय अनुप्रयोग आणि libc प्रणाली दरम्यानचे दरम्यानचे थर बनवतात, ज्यापासून अवास्तविक वैशिष्ट्ये कर्ज घेता येतील.

कार्यक्षमतेच्या एका विशिष्ट स्तरावर पोहोचल्यानंतर, नवीन लिबॅकचा वापर संपूर्णपणे लिबॅक सिस्टमच्या बदली म्हणून केला जाऊ शकतो.

X86-64 आर्किटेक्चर, लिनक्स, आणि स्टॅटिक बाइंडिंग (डायनॅमिक लोडिंग, पॅकेजिंग आणि अतिरिक्त आर्किटेक्चर दुसर्‍या अंमलात लागू केले जाईल) च्या समर्थनासह प्रारंभ करण्याचे नियोजित आहे.

प्रकल्प अद्याप विकासाच्या सुरुवातीच्या टप्प्यात आहे, परंतु मूलभूत उद्दीष्टे आधीच परिभाषित केली गेली आहेतः

  • दाणेदार ग्रंथालय पुरवण्याच्या तत्वज्ञानाच्या अनुसार मॉड्यूलरिटी आणि विकासऐवजी अखंडपणे एकत्र करणे.
  • पीआयई मोडमधील स्थिर दुवा समर्थन (स्थिती-स्वतंत्र कार्यकारी) आणि पीआयईशिवाय. स्थिर जोडलेल्या एक्जीक्यूटेबल फायलींसाठी सीआरटी (सी रनटाइम) आणि पीआयई लोडर प्रदान करा.
  • सी लायब्ररीच्या बहुतेक फंक्शन्सना समर्थन देते POSIX प्लग-इन सह मानक आणि विद्यमान अनुप्रयोगांमध्ये विनंती केलेले काही सिस्टम-विशिष्ट विस्तार.
  • विशिष्ट विस्तारांबद्दल काळजीपूर्वक वृत्ती प्रदात्याकडून आणि आवश्यक असताना केवळ त्यांना जोडणे. तृतीय-पक्षाच्या विस्ताराच्या समर्थनासाठी, क्लॅंग आणि libc ++ प्रोजेक्ट दृष्टीकोन वापरण्याचा प्रस्ताव आहे.
  • एलएलव्हीएम टूल्सचा वापर करून विकासातील सर्वोत्तम पद्धती वापरणेजसे की जंतुनाशकांचा वापर आणि सुरुवातीपासूनच चाचण्यांचे निर्मूलन.

सक्रिय एलएलव्हीएम विकसकांपैकी एकाने ते सूचित केले LLVM टूलकिटचा भाग म्हणून libc वितरण अर्थ न करता, परंतु सामान्यत: अशा गरजेनुसार ते मसल लायब्ररी वापरतात, हे चांगले लिहिलेले आहे, एकाधिक आर्किटेक्चर्सचे समर्थन करते आणि डायनॅमिक लिंकिंगसह आवश्यक कार्यक्षमता प्रदान करते.

एलएलव्हीएममध्ये मसलचा समावेश आणि मुख्य प्रकल्पासह सिंक्रोनाइझ काटा म्हणून त्याचा विकास न्याय्य असू शकतो.

त्याचे मत मसल प्रकल्पाच्या लेखकाद्वारे देखील व्यक्त केले गेले, ज्यांनी Google चा प्रस्ताव आणि एलएलव्हीएम वितरणात लिबॅकचा समावेश करणे अत्यंत वाईट कल्पना का आहे असा युक्तिवाद करण्याचा प्रयत्न केला:

योग्य, सुसंगत आणि उच्च-गुणवत्तेचे लिबसी विकसित करणे आणि देखभाल करणे एक अतिशय कठीण काम आहे. समस्या कोडच्या प्रमाणात नाही तर योग्य वर्तन प्रदान करताना आहे.

आणि इंटरफेसच्या अंमलबजावणीसह अडचणी, सी / सी ++ मध्ये लिहिलेल्या अनुप्रयोगांच्या प्रचंड भांडाराचा तसेच इतर भाषांमधील अनुप्रयोग ज्याचा रनटाइम लिबॅकद्वारे वापरला जातो.

बारकावे विचारात न घेता कपाळाकडे जाण्यामुळे केवळ असे दिसून येते की बरेच विद्यमान प्रोग्राम्स लिबकबरोबर कार्य करू शकणार नाहीत, परंतु अशा प्रकारचा प्रकल्प ग्राहकांना रस घेणार नाही.

कॉर्पोरेट विकास लीबिकचा नाश करू शकतो, परंतु व्यापक वापर ड्राइव्ह करा, ज्यामुळे अनुप्रयोगांमध्ये अनुकूलता सुनिश्चित करण्यासाठी हॅक्स जोडण्याची आवश्यकता असेल.

कॉर्पोरेट ओपन प्रोजेक्टच्या मार्गदर्शनाखाली होणारा विकास हा कंपनीच्या गरजा व निर्णयाकडे, समुदायाच्या हिताच्या हानीसाठी कव्हरेज करेल.

उदाहरणार्थ, आपल्या स्वत: च्या दुसर्‍या प्रोग्राममध्ये त्रुटीमुळे उद्भवणारी समस्या ओळखण्याच्या बाबतीत, नियंत्रणाखालील विकासात, त्रुटी स्वतः सुधारण्यापेक्षा या त्रुटीसह लिबकच्या सुसंगततेची हमी देणे सोपे आहे.

Purposesपल या हेतूंसाठी बीएसडी लिबसी काटा वापरतो आणि गूगल फुसिया काटा वापरतो. मुसलच्या विकसकाच्या अनुभवावरून असे दिसते की परवाना देण्याच्या मुद्द्यांबाबत स्पष्टीकरण देण्यासाठी वकिलांनी प्रामुख्याने त्यांच्याशी संपर्क साधला.

स्त्रोत: http://lists.llvm.org


आपली टिप्पणी द्या

आपला ई-मेल पत्ता प्रकाशित केला जाणार नाही. आवश्यक फील्ड चिन्हांकित केले आहेत *

*

*

  1. डेटासाठी जबाबदार: AB इंटरनेट नेटवर्क 2008 SL
  2. डेटाचा उद्देशः नियंत्रण स्पॅम, टिप्पणी व्यवस्थापन.
  3. कायदे: आपली संमती
  4. डेटा संप्रेषण: कायदेशीर बंधन वगळता डेटा तृतीय पक्षास कळविला जाणार नाही.
  5. डेटा संग्रहण: ओकेन्टस नेटवर्क (EU) द्वारा होस्ट केलेला डेटाबेस
  6. अधिकारः कोणत्याही वेळी आपण आपली माहिती मर्यादित, पुनर्प्राप्त आणि हटवू शकता.