मर्यादित स्त्रोतांसह एम्बेड केलेल्या सिस्टमसाठी PicoLibc C लायब्ररी

अंतःस्थापित-सी-

कीथ पॅकार्ड एक सक्रिय डेबियन विकसक आहे आणि ते देखील आहे एक्स.ऑर्ग प्रकल्प नेते आणि निर्माता देखील अनेक एक्स विस्तारXRender, XComposite आणि XRandR सह. पिकोलिबक ही त्याची आणखी एक कामे आहेत आणि हे सी लायब्ररी आहे जे एम्बेड केलेल्या डिव्हाइसमध्ये वापरण्यासाठी विकसित केले गेले आहे मर्यादित स्त्रोतांसह (म्हणजे त्यांच्याकडे थोडीशी निश्चित संचयन जागा आणि रॅम आहे). विकासादरम्यान, काही कोड साइगल आणि एव्हीआर लिबिक प्रोजेक्टच्या न्यूलिब लायब्ररीतून घेतले गेले होते, जे अ‍ॅटेल एव्हीआर मायक्रोकंट्रोलरसाठी विकसित केले गेले आहे.

किथ पॅकार्डने लिबॅकची सभ्य आवृत्ती न आढळल्यानंतर विकास सुरू केला, जो लो-रॅम एम्बेड केलेल्या डिव्हाइसवर वापरला जाऊ शकतो. हा प्रकल्प गेल्या वर्षापासून विकसित होत आहे. पहिल्या टप्प्यात, प्रोजेक्ट हा एक नवीन प्रकार होता, ज्यामध्ये stdio फंक्शन्सची जागा avrlibc च्या कॉम्पॅक्ट व्हर्जनने बदलली आहे (newlib मधील stdio रिसोर्सच्या भारी वापरासाठी रुपांतरित झाले नाही).

चीनची सध्याची कामे अलीकडेच आरआयएससी-व्ही आर्किटेक्चर आणि एम्बेडेड उपकरणांच्या साधनांच्या विकासावर चालू असलेल्या कामांशी संबंधित आहेत libc अंमलबजावणीची स्थिती तपासली y निष्कर्ष काढला कश्या करिता, थोड्या चिमटासह, newlib आणि avrlibc यांचे संयोजन एक चांगला सार्वत्रिक समाधान असू शकते. सुरुवातीला हा प्रकल्प "न्यूलिब-नॅनो" या नावाने विकसित केला गेला होता, परंतु न्यूलिब लायब्ररीत गोंधळ टाळण्यासाठी, त्याचे नाव पिकोलिब असे ठेवले गेले.

PicoLibc बद्दल

सध्याच्या स्वरूपात, बीएसडी परवान्याअंतर्गत प्रदान न केलेला सर्व कोड काढण्यासाठी पिकोलिबकाने यापूर्वीच काम केले आहे (हा कोड एम्बेडेड डिव्हाइससाठी असेंब्लीमध्ये वापरला गेला नव्हता), ज्याने प्रोजेक्ट परवान्यासह परिस्थिती मोठ्या प्रमाणात सोपी केली.

थ्रेड लोकल अंमलबजावणी 'स्ट्रक्चर _रेन्ट' वरून टीएलएस (थ्रेड लोकल स्टोरेज) यंत्रणेत हलविली गेली आहे. स्ट्रिओची संक्षिप्त आवृत्ती डीफॉल्टनुसार सक्षम केली गेली आहे, एआरलीबिक लायब्ररी कोडमधून घेतली (एटीएमएल-विशिष्ट असेंबलर इन्सर्ट्स सी मध्ये पुन्हा लिहिली जातात).

ची साधने मेसनचा वापर संकलनासाठी केला जातो, काय आपल्याला न्यूलिब स्क्रिप्ट संलग्न करण्याची आणि न्यूलीबमधून बदल हस्तांतरित करण्यास सुलभ करण्याची परवानगी देते. इनिशिएलायझेशन कोडची एक सरलीकृत आवृत्ती (crt0) जोडली गेली आहे, एक्जीक्यूटेबल फाईलला जोडली गेली आणि मुख्य () फंक्शनमध्ये नियंत्रण ट्रान्सफर करण्यापूर्वी अंमलात आणली.

PicoLibc चा स्त्रोत कोड बीएसडी परवान्याअंतर्गत वितरीत केला आहे लायब्ररी एआरएम (32-बिट), आय 386, आरआयएससी-व्ही, x86_64 आणि पॉवरपीसी आर्किटेक्चरला समर्थन देते.

PicoLibc 1.1 च्या नवीन आवृत्तीबद्दल

मी अलीकडेच PicoLibc 1.1 च्या नवीन आवृत्तीचे प्रकाशन सादर केले, ज्यात अर्ध-होस्टिंग तंत्रज्ञानाचे समर्थन करण्यासाठी मदतनीस लायब्ररी जोडली गेली आहे, ए जो डीबगर किंवा इम्युलेटर वातावरणात चालू असलेला कोड होस्ट सिस्टममधून इनपुट / आउटपुट यंत्रणा वापरण्यास अनुमती देतो.

सिस्टीम कॉलसाठी, कॉल, ओपन, बंद करणे, वाचणे आणि लिहिणे यासाठी समर्थन देते प्रमाणित POSIX I / O इंटरफेस जोडते, fopen आणि fdopen फंक्शन्स, तसेच पॉसीएक्स-डिफाईन्ड फाईल वर्णनकर्त्यांकडे stdin / stdout / stderr चे बंधन आहे.

  • अलीकडील बदल न्यूलिब कोड बेस वरुन केले गेले आहेत. Fenv.h करीता अगाऊ लिबम स्टब्सचा समावेश आहे, ज्याचा उपयोग गणनाशिवाय समर्थनांवर केला जाऊ शकतो.
  • एआरएम आणि आरआयएससी-व्ही प्रणालींसाठी पिकोलिबिकसह हॅलो वर्ल्ड compप्लिकेशन संकलनाचे उदाहरण जोडले, नवालिब, लिबएम, आणि मॅथफ्प निर्देशिका काढून टाकण्याव्यतिरिक्त ज्यात न वापरलेले प्रायोगिक कोड आहे.

Picolibc वापरण्यास प्रारंभ करा

Picolibc सह प्रारंभ करण्यासाठी, आपल्याला हे माहित असले पाहिजे की जीसीसी वापरुन लिनक्स होस्टवरील हार्डवेअर प्लॅटफॉर्मसाठी संकलित करण्यासाठी Picolibc मेसन बिल्ड सिस्टमचा वापर करते. म्हणूनच त्यांच्याकडे पायथन 3 आणि निन्जा स्थापित करण्याव्यतिरिक्त विकासाच्या वातावरणाचा भाग म्हणून मेसन असणे आवश्यक आहे. यासाठी आपण त्यातील मार्गदर्शकांचा सल्ला घेऊ शकता पुढील लिंकवर 

शेवटी, पिकोलिबिक कोड प्राप्त करण्यासाठी आपण खालील दुव्यावरुन ते करू शकता, जिथे आपणास शोधू शकता आवश्यक कागदपत्रे. 

किंवा त्याच प्रकारे ते सल्ला घेऊ शकतात खालील मार्गदर्शक मला नेटवर आढळले आणि तपशीलवार माहिती आहे.


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

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

*

*

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