పరిమిత వనరులతో పొందుపరిచిన వ్యవస్థల కోసం పికోలిబ్ సి లైబ్రరీ

పొందుపరిచిన-సి-

కీత్ ప్యాకర్డ్ చురుకైన డెబియన్ డెవలపర్ మరియు అది కూడా X.Org ప్రాజెక్ట్ లీడర్ మరియు కూడా సృష్టికర్త అనేక X పొడిగింపులలో, XRender, XComposite మరియు XRandR తో సహా. పికోలిబ్ అతని రచనలలో మరొకటి మరియు ఇది సి లైబ్రరీ ఇది పొందుపరిచిన పరికరాల్లో ఉపయోగం కోసం అభివృద్ధి చేయబడింది పరిమిత వనరులతో (అంటే, వాటికి తక్కువ స్థిర నిల్వ స్థలం మరియు RAM ఉంది). అభివృద్ధి సమయంలో, సిగ్విన్ మరియు ఎవిఆర్ లిబ్క్ ప్రాజెక్ట్ యొక్క న్యూలిబ్ లైబ్రరీ నుండి కొన్ని కోడ్ తీసుకోబడింది, ఇది అట్మెల్ ఎవిఆర్ మైక్రోకంట్రోలర్ల కోసం అభివృద్ధి చేయబడింది.

తక్కువ-ర్యామ్ ఎంబెడెడ్ పరికరాల్లో ఉపయోగించగల లిబ్క్ యొక్క మంచి సంస్కరణను కనుగొనలేకపోయిన తరువాత కీత్ ప్యాకర్డ్ అభివృద్ధిని ప్రారంభించాడు. ఈ ప్రాజెక్ట్ గత సంవత్సరం నుండి అభివృద్ధి చెందుతోంది. మొదటి దశలో, ప్రాజెక్ట్ న్యూలిబ్ వేరియంట్, దీనిలో stdio ఫంక్షన్లను avrlibc యొక్క కాంపాక్ట్ వెర్షన్ ద్వారా భర్తీ చేశారు (న్యూలిబ్‌లోని stdio వనరుల భారీ వినియోగానికి అనుగుణంగా లేదు).

చైనా యొక్క ప్రస్తుత కార్యకలాపాలు ఇటీవల RISC-V ఆర్కిటెక్చర్ మరియు ఎంబెడెడ్ పరికరాల కోసం సాధనాల అభివృద్ధికి సంబంధించిన పనులకు సంబంధించినవి కాబట్టి libc అమలుల స్థితిని తనిఖీ చేసింది y నిర్ధారించారు ఏమి, కొద్దిగా సర్దుబాటుతో, న్యూలిబ్ మరియు అవర్లిబ్ కలయిక మంచి సార్వత్రిక పరిష్కారం. ప్రారంభంలో, ఈ ప్రాజెక్ట్ "న్యూలిబ్-నానో" పేరుతో అభివృద్ధి చేయబడింది, కాని న్యూలిబ్ లైబ్రరీతో గందరగోళాన్ని నివారించడానికి, దీనికి పికోలిబ్ అని పేరు మార్చారు.

PicoLibc గురించి

ప్రస్తుత రూపంలో, బిఎస్డి లైసెన్స్ క్రింద ఇవ్వని అన్ని కోడ్లను తొలగించడానికి పికోలిబ్ ఇప్పటికే పని చేసింది (ఈ కోడ్ ఎంబెడెడ్ పరికరాల కోసం అసెంబ్లీలో ఉపయోగించబడలేదు), ఇది ప్రాజెక్ట్ లైసెన్స్‌తో పరిస్థితిని బాగా సులభతరం చేసింది.

థ్రెడ్ స్థానిక అమలు 'struct _reent' నుండి TLS (థ్రెడ్ లోకల్ స్టోరేజ్) మెకానిజంకు తరలించబడింది. Avdlibc లైబ్రరీ కోడ్ నుండి తీసుకోబడిన stdio యొక్క కాంపాక్ట్ వెర్షన్ అప్రమేయంగా ప్రారంభించబడుతుంది (ATmel- నిర్దిష్ట సమీకరించేవారి చొప్పనలు C లో తిరిగి వ్రాయబడతాయి).

యొక్క సాధనాలు మీసన్ సంకలనం కోసం ఉపయోగిస్తారు, ఏమిటి న్యూలిబ్ స్క్రిప్ట్‌లను అటాచ్ చేయకుండా మరియు న్యూలిబ్ నుండి మార్పులను బదిలీ చేయడానికి మిమ్మల్ని అనుమతిస్తుంది. ప్రారంభ కోడ్ (crt0) యొక్క సరళీకృత సంస్కరణ జోడించబడింది, ఎక్జిక్యూటబుల్ ఫైల్‌కు జతచేయబడింది మరియు ప్రధాన () ఫంక్షన్‌కు నియంత్రణను బదిలీ చేయడానికి ముందు అమలు చేయబడింది.

పికోలిబ్ యొక్క సోర్స్ కోడ్ BSD లైసెన్స్ క్రింద పంపిణీ చేయబడుతుంది లైబ్రరీ ARM (32-బిట్), i386, RISC-V, x86_64 మరియు పవర్‌పిసి నిర్మాణాలకు మద్దతు ఇస్తుంది.

PicoLibc 1.1 యొక్క క్రొత్త సంస్కరణ గురించి

నేను ఇటీవల పికోలిబ్ 1.1 యొక్క క్రొత్త వెర్షన్ విడుదలను సమర్పించాను, దీనిలో సెమీ హోస్టింగ్ టెక్నాలజీకి మద్దతుగా సహాయక లైబ్రరీ జోడించబడింది, డీబగ్గర్ లేదా ఎమ్యులేటర్ వాతావరణంలో కోడ్ నడుస్తున్న హోస్ట్ సిస్టమ్ నుండి ఇన్పుట్ / అవుట్పుట్ మెకానిజాలను ఉపయోగించడానికి ఇది అనుమతిస్తుంది.

సిస్టమ్ కాల్‌లను తెరవడానికి, మూసివేయడానికి, చదవడానికి మరియు వ్రాయడానికి మద్దతు ఇచ్చే వ్యవస్థల కోసం, టినిస్ట్డియో ప్రామాణిక POSIX I / O ఇంటర్‌ఫేస్‌లను జతచేస్తుంది, ఫోపెన్ మరియు ఎఫ్‌డోపెన్ ఫంక్షన్లతో పాటు, పోడిక్స్-నిర్వచించిన ఫైల్ డిస్క్రిప్టర్‌లకు stdin / stdout / stderr ను బంధించడం.

  • న్యూలిబ్ కోడ్ బేస్ నుండి ఇటీవలి మార్పులు జరిగాయి. Fenv.h కోసం అదనపు libm స్టబ్‌లతో సహా, గణన మద్దతు లేకుండా సిస్టమ్‌లలో ఉపయోగించవచ్చు.
  • ఉపయోగించని ప్రయోగాత్మక కోడ్‌ను కలిగి ఉన్న న్యూలిబ్, లిబ్మ్ మరియు మ్యాథ్‌ఎఫ్‌పి డైరెక్టరీలను తొలగించడంతో పాటు, ARM మరియు RISC-V వ్యవస్థల కోసం పికోలిబ్‌తో హలో వరల్డ్ అప్లికేషన్ సంకలన ఉదాహరణను జోడించారు.

Picolibc ఉపయోగించడం ప్రారంభించండి

పికోలిబ్‌సితో ప్రారంభించడానికి, జిసిసిని ఉపయోగించి లైనక్స్ హోస్ట్‌లోని వివిధ హార్డ్‌వేర్ ప్లాట్‌ఫారమ్‌ల కోసం కంపైల్ చేయడానికి పికోలిబ్ మీసన్ బిల్డ్ సిస్టమ్‌ను ఉపయోగిస్తుందని మీరు తెలుసుకోవాలి. అందుకే పైథాన్ 3 మరియు నింజా వ్యవస్థాపించడంతో పాటు, అభివృద్ధి వాతావరణంలో భాగంగా వారు మీసన్‌ను కలిగి ఉండాలి. దీని కోసం మీరు దాని గైడ్‌ను సంప్రదించవచ్చు కింది లింక్‌లో. 

చివరగా, పికోలిబ్ కోడ్ పొందటానికి, మీరు ఈ క్రింది లింక్ నుండి చేయవచ్చు, ఇక్కడ మీరు కనుగొనవచ్చు అవసరమైన డాక్యుమెంటేషన్. 

లేదా అదే విధంగా వారు సంప్రదించవచ్చు నెట్‌లో నేను కనుగొన్న క్రింది గైడ్ మరియు వివరణాత్మక సమాచారాన్ని కలిగి ఉంది.


వ్యాసం యొక్క కంటెంట్ మా సూత్రాలకు కట్టుబడి ఉంటుంది సంపాదకీయ నీతి. లోపం నివేదించడానికి క్లిక్ చేయండి ఇక్కడ.

వ్యాఖ్యానించిన మొదటి వ్యక్తి అవ్వండి

మీ వ్యాఖ్యను ఇవ్వండి

మీ ఇమెయిల్ చిరునామా ప్రచురితమైన కాదు. లు గుర్తించబడతాయి గుర్తించబడతాయి *

*

*

  1. డేటాకు బాధ్యత: మిగ్యుల్ ఏంజెల్ గాటన్
  2. డేటా యొక్క ఉద్దేశ్యం: కంట్రోల్ స్పామ్, వ్యాఖ్య నిర్వహణ.
  3. చట్టబద్ధత: మీ సమ్మతి
  4. డేటా యొక్క కమ్యూనికేషన్: డేటా చట్టపరమైన బాధ్యత ద్వారా తప్ప మూడవ పార్టీలకు తెలియజేయబడదు.
  5. డేటా నిల్వ: ఆక్సెంటస్ నెట్‌వర్క్స్ (EU) హోస్ట్ చేసిన డేటాబేస్
  6. హక్కులు: ఎప్పుడైనా మీరు మీ సమాచారాన్ని పరిమితం చేయవచ్చు, తిరిగి పొందవచ్చు మరియు తొలగించవచ్చు.