সীমিত সংস্থান সহ এম্বেড থাকা সিস্টেমগুলির জন্য পিকোলিব সি সি লাইব্রেরি

এম্বেড-সি-

কিথ প্যাকার্ড সক্রিয় ডেবিয়ান বিকাশকারী এবং এটিও এক্স.আরগ প্রকল্প নেতা এবং এছাড়াও স্রষ্টা অনেক এক্স এক্সটেনশনএক্সরেন্ডার, এক্সকম্পোজিট এবং এক্সআর্যান্ডআর সহ। পিকোলিব্ক তাঁর আর একটি রচনা এবং এটি একটি সি লাইব্রেরি যা এম্বেড থাকা ডিভাইসে ব্যবহারের জন্য তৈরি করা হয়েছে সীমিত সংস্থান সহ (যা তাদের কাছে খুব কম স্থির স্টোরেজ স্পেস এবং র‌্যাম রয়েছে)। উন্নয়নের সময়, কিছু কোড সাইগউইন এবং এভিআর লিবিসি প্রকল্পের নতুনলিব লাইব্রেরি থেকে নেওয়া হয়েছিল, যা আতেল এভিআর মাইক্রোকন্ট্রোলারদের জন্য তৈরি করা হয়েছিল।

লিথের একটি শালীন সংস্করণ খুঁজে না পেয়ে কিথ প্যাকার্ড তার বিকাশ শুরু করেছিলেন, যা লো-র‌্যাম এমবেডড ডিভাইসে ব্যবহার করা যেতে পারে। প্রকল্পটি গত বছর থেকেই উন্নয়নশীল। প্রথম পর্যায়ে, প্রকল্পটি একটি নতুনলিপি বৈকল্পিক ছিল, যেখানে স্ট্রিয়ো ফাংশনগুলি অ্যাগ্রলিবকের সংক্ষিপ্ত সংস্করণ দ্বারা প্রতিস্থাপিত হয়েছিল (নিউলিবিতে স্টিডিওগুলি সম্পদের ভারী ব্যবহারের সাথে অভিযোজিত হয়নি)।

যেহেতু চীনের বর্তমান ক্রিয়াকলাপগুলি সম্প্রতি আরআইএসসি-ভি আর্কিটেকচারের চলমান কাজ এবং এমবেডেড ডিভাইসের সরঞ্জামগুলির বিকাশের সাথে সম্পর্কিত libc বাস্তবায়ন স্থিতি পরীক্ষা করে y উপসংহারে কি, সামান্য ঝাপটায়, newlib এবং avrlibc এর সংমিশ্রণ একটি ভাল সর্বজনীন সমাধান হতে পারে। প্রথমদিকে, প্রকল্পটি "নিউলিব-ন্যানো" নামে তৈরি করা হয়েছিল, তবে নিউলিব গ্রন্থাগারের সাথে বিভ্রান্তি এড়াতে, এর নামটি পিকোলিব নামকরণ করা হয়েছিল।

পিকোলিবিসি সম্পর্কে

বর্তমান আকারে, বিএসডি লাইসেন্সের অধীনে প্রদত্ত নয় এমন সমস্ত কোড সরানোর জন্য ইতিমধ্যে পিকোলিব্যাক কাজ করেছে (এই কোডটি এম্বেডড ডিভাইসের জন্য সমাবেশে ব্যবহার করা হয়নি), যা প্রকল্পের লাইসেন্সের মাধ্যমে পরিস্থিতিটিকে ব্যাপকভাবে সরল করে তুলেছিল।

থ্রেড স্থানীয় প্রয়োগটি 'স্ট্রাক _রেেন্ট' থেকে টিএলএস (থ্রেড লোকাল স্টোরেজ) মেকানিজমে স্থানান্তরিত হয়েছে। স্ট্রিওর কমপ্যাক্ট সংস্করণটি ডিফল্টরূপে সক্ষম করা হয়েছে, এগ্রিলিবিক লাইব্রেরি কোড থেকে নেওয়া (এটিমেল-নির্দিষ্ট এসেমব্লার সন্নিবেশগুলি সিতে পুনরায় লেখা হয়)।

এর সরঞ্জাম মেসন সংকলনের জন্য ব্যবহৃত হয়, কি আপনাকে newlib স্ক্রিপ্টগুলি সংযুক্ত করতে এবং newlib থেকে পরিবর্তনগুলি স্থানান্তরকে সহজ করার অনুমতি দেয়। ইনিশিয়ালাইজেশন কোডটির একটি সরলীকৃত সংস্করণ (crt0) যুক্ত করা হয়েছে, এক্সিকিউটেবল ফাইলের সাথে সংযুক্ত করা হয়েছে এবং মূল () ফাংশনে নিয়ন্ত্রণ স্থানান্তর করার আগে সম্পাদন করা হয়েছে।

PicoLibc এর উত্স কোডটি একটি BSD লাইসেন্সের অধীনে বিতরণ করা হয়েছে এবং গ্রন্থাগারটি এআরএম (32-বিট), i386, আরআইএসসি-ভি, x86_64, এবং পাওয়ারপিসি আর্কিটেকচার সমর্থন করে।

পিকোলিব 1.1 এর নতুন সংস্করণ সম্পর্কে

আমি সম্প্রতি পিকোলিব 1.1 এর নতুন সংস্করণ প্রকাশের উপস্থাপন করেছি, যার মধ্যে আধা-হোস্টিং প্রযুক্তি সমর্থন করার জন্য একটি সহায়ক লাইব্রেরি যুক্ত করা হয়েছে, একটি যা ডিবাগার বা এমুলেটর পরিবেশে চলমান কোডটিকে হোস্ট সিস্টেম থেকে ইনপুট / আউটপুট প্রক্রিয়া ব্যবহার করার অনুমতি দেয়।

সিস্টেমে যেগুলি কল কল, টিনস্টিডিও ওপেন, বন্ধ, পড়া এবং লেখার পক্ষে সমর্থন করে মানকযুক্ত POSIX I / O ইন্টারফেস যুক্ত করে, fopen এবং fdopen ফাংশন সহ স্টিডিন / stdout / stderr পিজিক্স-সংজ্ঞায়িত ফাইল বর্ণনাকারীদের সাথে অন্তর্ভুক্ত।

  • সাম্প্রতিক পরিবর্তনগুলি newlib কোড বেস থেকে নেওয়া হয়েছে। Fenv.h- র অতিরিক্ত লিবিম স্টাব সহ, যা গণনা সমর্থন ছাড়াই সিস্টেমে ব্যবহার করা যেতে পারে।
  • অ্যারএম এবং আরআইএসসি-ভি সিস্টেমগুলির জন্য পিকোলিব্যাকের সাথে হ্যালো ওয়ার্ল্ড অ্যাপ্লিকেশন সংকলন উদাহরণ যুক্ত করেছে, অযৌক্তিক পরীক্ষামূলক কোডযুক্ত newlib, libm, এবং mathfp ডিরেক্টরিগুলি সরানোর পাশাপাশি।

Picolibc ব্যবহার শুরু করুন

পিকোলিব্যাক দিয়ে শুরু করার জন্য, আপনার জানা উচিত যে পিসিলিবিসি জিসিসি ব্যবহার করে একটি লিনাক্স হোস্টে বিভিন্ন হার্ডওয়্যার প্ল্যাটফর্মগুলির জন্য সংকলন করতে মেসন বিল্ড সিস্টেম ব্যবহার করে। এজন্য পাইথন 3 এবং নিনজা ইনস্টল করা ছাড়াও তাদের অবশ্যই বিকাশের পরিবেশের অংশ হিসাবে মেসন করতে হবে। এর জন্য আপনি এটির গাইডের পরামর্শ নিতে পারেন নীচের লিঙ্কে। 

অবশেষে, পিকোলিবিক কোডটি পেতে, আপনি এটি নীচের লিঙ্ক থেকে করতে পারেন, যেখানে আপনি সন্ধান করতে পারেন প্রয়োজনীয় ডকুমেন্টেশন। 

অথবা একইভাবে তারা পরামর্শ করতে পারে নীচের গাইডটি আমি নেটে খুঁজে পেয়েছি এবং বিস্তারিত তথ্য আছে।


আপনার মন্তব্য দিন

আপনার ইমেল ঠিকানা প্রকাশিত হবে না। প্রয়োজনীয় ক্ষেত্রগুলি দিয়ে চিহ্নিত করা *

*

*

  1. ডেটার জন্য দায়বদ্ধ: মিগুয়েল অ্যাঞ্জেল গাটান
  2. ডেটার উদ্দেশ্য: নিয়ন্ত্রণ স্প্যাম, মন্তব্য পরিচালনা।
  3. আইনীকরণ: আপনার সম্মতি
  4. তথ্য যোগাযোগ: ডেটা আইনি বাধ্যবাধকতা ব্যতীত তৃতীয় পক্ষের কাছে জানানো হবে না।
  5. ডেটা স্টোরেজ: ওসেন্টাস নেটওয়ার্কস (ইইউ) দ্বারা হোস্ট করা ডেটাবেস
  6. অধিকার: যে কোনও সময় আপনি আপনার তথ্য সীমাবদ্ধ করতে, পুনরুদ্ধার করতে এবং মুছতে পারেন।