"বাম্প এবিআই" দিয়ে কার্নেল আপডেট কী?


19

আপনি যেমন লিনাক্স কার্নেলের চেঞ্জলগে দেখতে পাচ্ছেন , সেখানে "Bump ABI - Maverick ABI 28" এর মতো আপডেট বার্তা রয়েছে।

উবুন্টু উইকির মতে , এবিআই হ'ল কর্নেল স্পেস এবং অন্যান্য মডিউলগুলির (আমার ব্যাখ্যা) মধ্যে একটি ব্রিজের মতো কিছু।

এই জাতীয় আপডেট অতিরিক্ত বৈশিষ্ট্য এবং / অথবা বাগফিক্স যোগ করে? আমি কি আমার কার্নেলটি পরবর্তী সংস্করণে আপগ্রেড করব?

উত্তর:


12

এনবি: আমি কোনও কার্নেল বিশেষজ্ঞ নই - সুতরাং এটি সংগৃহীত জ্ঞান এবং অভিজ্ঞতার উপর ভিত্তি করে।

এটিবিআইয়ের একটি "উচ্চতর সংস্করণ" খুঁজছেন এমন কিছু মডিউল / অ্যাপ্লিকেশনগুলিতে বাগগুলি "ফিক্স" করতে সক্ষম হওয়া সত্ত্বেও এবিআইয়ের "বাম্প" নতুন বৈশিষ্ট্য আনতে হবে না। আপনার এখনও এই আপডেটগুলি ইনস্টল করা উচিত, যেহেতু সাধারণত সমস্ত উপাদান সিঙ্কে রাখা স্থিতিশীলতা এবং সুরক্ষা নিশ্চিত করে।


12

প্রথমে, আপনি লিনাক্স কার্নেলের জন্য চেঞ্জলগটি খুঁজছেন না। আপনি মেটা প্যাকেজটি দেখছেন, এটি সর্বশেষতম কার্নেলের উপর নির্ভর করে এমন একটি প্যাকেজ। আপনি সম্ভবত এর মতো কিছু চান: http://changelogs.ubuntu.com/changelogs/pool/main/l/linux-image-2.6.35-28-generic/linux-image-2.6.35-28- generic_2.6.35- 28,50 / পরিবর্তণের

এই মেটা-প্যাকেজটির উদ্দেশ্য হ'ল এই এবিআই বিপদের মাধ্যমে ব্যবহারকারীকে স্থানান্তর করা।

আমি আপনার মত একই দৃষ্টিভঙ্গি এবিআই এবং কার্নেলের কাছে রেখেছি। ব্যবহারিকভাবে বলতে গেলে, ABI Bump এর অর্থ হল যে সমস্ত মডিউলগুলি আপডেট করা কার্নেলের বিরুদ্ধে পুনরায় তৈরি করা দরকার।

আমার বোঝার বিষয়টিও রোল্যান্ডের সাথে সামঞ্জস্যপূর্ণ, এতে একটি এবিআই বাম্প নতুন বৈশিষ্ট্যগুলি বোঝায় না, কেবল সমালোচনামূলক সমাধান এবং সুরক্ষা আপডেট।


2
এটি কেবল একটি মেটা-প্যাকেজ বলে উল্লেখ করার জন্য ধন্যবাদ। আমি সে সম্পর্কে ভুলে গেছি। aptitude changelog linux-image-2.6.35-28-genericপরিবর্তনের একটি তালিকা প্রদর্শন করে। আমি নিশ্চিত না কেন মেটা-প্যাকেজে linux-{image,headers}-*-genericপ্যাকেজগুলির আপডেট থাকে না ; linux-{image,headers}-*-serverপ্যাকেজ আছে কারণ সম্ভবত ?
লেকেনস্টেইন

4

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

স্পষ্টরূপে, এখানে একটি উদাহরণ: আমি বছরের মধ্যে প্রকাশিত কোনও বিল্ডিংয়ের বয়সটি এনকোড করতে চাই। এটি করার জন্য, আমি একটি সি ব্যবহার করতে পারি unsigned char, যা এক প্রকারের আকার 1 বাইট এবং এটি 0 থেকে 255 পর্যন্ত মানগুলি এনকোড করতে পারে Now এখন ধরুন যে আমি আবিষ্কার করেছি যে 255 একটি খুব কম সীমা কারণ এখানে আরও বিল্ডিং ছিল এমন বিল্ডিং রয়েছে because 255 বছর আগে। আমি তখন একটি সি ব্যবহার করতে পারি unsigned intযা 4-বাইট দীর্ঘ এবং এটি 0 থেকে 65535 পর্যন্ত মানগুলি এনকোড করতে পারে।

থেকে টাইপ পরিবর্তন charকরার জন্য int, আমি মাঠের শব্দার্থিক অর্থ পরিবর্তিত হয়নি (এটা একটি বয়স বছর প্রকাশ করেন এবং এটি এখনও আছে), কিন্তু আমি তার আকার পরিবর্তিত হয়েছে। আমার অ্যাপ্লিকেশনটির সাথে যোগাযোগ করে এমন প্রতিটি সফ্টওয়্যার পরিবর্তন করার প্রয়োজন হবে না, তবে এটি একটি আলাদা "ভাষা" বলবে।

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

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.