অ্যান্ড্রয়েড কি 32-বিট বা 64-বিট ওএস?


46

শিরোনামটি বেশ স্ব-ব্যাখ্যামূলক: অ্যান্ড্রয়েড কি 32- বা 64-বিট ওএস? আমি ধরে নিই যে এটি এক বা অন্য এবং উভয়ই নয়, কারণ এটি Google Play এ 32- এবং 64-বিট বাইনারি উভয়কেই হোস্ট করতে বাধ্য করবে। আমি জানি যে এটি একটি সাধারণ প্রশ্ন, এবং অন্যান্য লোকেরা এটি জিজ্ঞাসা করছে, কিন্তু আমার জীবনের জন্য আমি ওয়েবে কোনও উত্তর খুঁজে পেতে সক্ষম হইনি, এবং অবশ্যই এই এসईটিতে একটিও নেই।

উত্তর:


48

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

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

ফ্রিওই সর্বশেষ অ্যান্ড্রয়েড যা 32 বিট আয়োজিত পরিবেশের অধীনে সংকলন সক্ষম করেছিল যেখানে এটিআরএম চিপসেটকে লক্ষ্য করে ক্রস-সংকলিত হয়েছিল।

জিঞ্জারব্রেড হ'ল "ভবিষ্যত" অ্যান্ড্রয়েডের প্রথম, তারপরে সার্কা, তিন বছর আগে, এটি নির্মিত হয়েছিল যেখানে একটি 64 বিট আয়োজিত পরিবেশ ব্যবহারের প্রয়োজনীয়তা প্রবর্তন করেছিল। জিঞ্জারব্রেড 32 বিট হোস্ট করা পরিবেশের অধীনে তৈরি করার জন্য অনেকগুলি হ্যাক ছিল।

আইসিএস এবং জেবি, এবং উপরের দিকে এখন অবশ্যই স্পষ্টভাবে সংকলনের গতি বাড়ানোর জন্য এবং বিল্ডিংয়ের ঘুরে দেখার সময় কমাতে একটি 64 বিট পরিবেশ প্রয়োজন।

সুতরাং সংক্ষিপ্তসার হিসাবে, আপনি প্লে স্টোরটিতে যা দেখছেন তাতে 32 বিট বা 64 বিট ব্যবহৃত হয় এবং এইভাবে অপ্রাসঙ্গিক হয় কিনা তার কোনও ফল নেই।

পার্শ্ব দ্রষ্টব্য: সাধারণত ১GB জিবি র‌্যাম / কোয়াড কোর / bit৪ বিট লিনাক্স বিতরণ, স্ক্র্যাচ থেকে আইসিএস তৈরি করতে যে সময় লাগে, এটি সর্বোচ্চ ৩০ মিনিট সময় নেয়, যদি এটি একটি 32 বিটি লিনাক্স বিতরণ হত, তবে এটি বেশি সময় নিতে পারত, বাস্তবে, সিপিইউ মেল্টডাউন হতে পারে যেমন সহজভাবে রয়েছে, ক্রস-সংকলিত কোডটি মন্থন এবং ক্র্যাঙ্ক করার জন্য পর্যাপ্ত প্রক্রিয়াকরণ শক্তি নেই, এটি একটি খুব দাবী এবং ট্যাক্সিং প্রক্রিয়া!

এর প্রমাণ।

যে কোনও নেটিভ এআরএম বাইনারি পাওয়া যায় তাতে টানুন /system/binবা /system/xbinউদাহরণস্বরূপ, /system/bin/dalvikvmএটি ডালভিক ভিএম বাইনারি যা জাভা এবং APK এর উপরের স্তরগুলির জন্য দায়ী।

এখন, কমান্ডটি জারি করে বাইনারি পরীক্ষা করুন: file dalvikvmএটি যে ধরণের ফাইলের সংক্ষিপ্তসার দেয়, প্রত্যাশিত আউটপুটটি এটি হবে:

ডালভিকভিএম: ইএলএফ 32-বিট এলএসবি এক্সিকিউটেবল, এআরএম, সংস্করণ 1 (এসওয়াইএসভি), গতিশীলভাবে সংযুক্ত (শেয়ারড লিবস ব্যবহার করে), স্ট্রিপড

32-বিট ইএলএফ-এর রেফারেন্সটি লক্ষ্য করুন এবং এটি এআরএম-এ ক্রস-সংকলিত এবং বাইনারি কার্যকর কার্যকর।

ডানদিকে চলুন, আসুন পাওয়া একটি স্থানীয় ভাগ করা লাইব্রেরিটি পরীক্ষা করুন, /system/libউদাহরণস্বরূপ /system/lib/libandroid_runtime.so, এখন ইস্যু করুন file libandroid_runtime.so, প্রত্যাশিত আউটপুটটি এটি হবে:

libandroid_runtime.so: ELF 32-বিট এলএসবি শেয়ার্ড অবজেক্ট, এআরএম, সংস্করণ 1 (এসওয়াইএসভি), গতিশীলভাবে সংযুক্ত, স্ট্রিপ

আবার লক্ষ্য করুন, এর 32-বিট ইএলএফ, এআরএম-এ ক্রস-সংকলিত এবং একটি ভাগ করা লাইব্রেরি।

হোস্টের ক্রস-সংকলনের মূল কীটি এওএসপি উত্সে পাওয়া যায়, যেমন আদা, জিঞ্জারব্রেড বিল্ডটি মূলত একটি 64 বিট হোস্ট সিস্টেমে তৈরি করা দরকার ছিল, এখানে নিউজ গ্রুপের লিঙ্কটি কীভাবে স্ক্রিপ্টগুলিতে এটি তৈরি করতে প্যাচ করবেন তা উল্লেখ করে। 32 বিট হোস্টের দু'টি প্যাচ রয়েছে, যা এওএসপির জেরিট পর্যালোচনাতে build/core.mkএবং build/main.mk( সংযুক্ত ) এখানে পাওয়া যায় found

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


2
আকর্ষণীয় জিনিস, তবে উত্তরের কিছু উত্স পাওয়া ভাল লাগবে।
চিনাবাদাম

2
+1, কারণ কোনও উত্স না থাকলেও গবেষণার জন্য কমপক্ষে অর্ধেক লেগ-ওয়ার্ক কী সন্ধান করা উচিত তা সহায়তা করার জন্য করা হয়েছিল। প্রশ্নের সাহায্যে এবং উত্তর দেওয়ার জন্য একটি শালীন প্রচেষ্টা করার জন্য লোকটিকে -1 করবেন না ...
হাইলিমে

1
এখন 64-বিট এআরএম ডিভাইসগুলি 64-বিট অ্যান্ড্রয়েড চলছে।
ম্যাথিউ

1
আমি হতাশ করছি কারণ বেশিরভাগ উত্তর হ'ল অ্যান্ড্রয়েড সংকলন করতে পরিবেশগুলি কী ব্যবহৃত হয় সে সম্পর্কে যা প্রশ্নের সম্পূর্ণ অপ্রাসঙ্গিক।
ড্যান হাল্মে

1
হ্যাঁ, এটি সত্য, এবং আমি আজ পরিস্থিতি সম্পর্কে একটি নতুন উত্তর পোস্ট করতে যাচ্ছি, তবে সংকলনের পরিবেশটি সবসময়ই একটি লাল রঙের উত্তেজনা।
ড্যান হাল্মে

8

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

এই প্রশ্নটি (এবং অন্যান্য উত্তরগুলির বেশিরভাগ) লিখিত হওয়ার সময়ে উপরের সমস্ত সত্য ছিল, কিন্তু আর নেই। ললিপপ নতুন -৪ -বিট এআরএম প্রসেসরের ( এআরএমভি 8) সমর্থন সরবরাহ করেছে) পাশাপাশি ইন্টেল এবং এএমডি এর x86_64 প্রসেসরের জন্য, যার অর্থ অ্যান্ড্রয়েড এখন 32-বিট এবং 64-বিট উভয় প্রসেসরের সমর্থন করে। Nexus 9 হ'ল প্রথম ফ্ল্যাগশিপ 64৪-বিট অ্যান্ড্রয়েড ডিভাইস। নতুন নির্দেশ সেট এক্সটেনশনে অ্যাক্সেস দেওয়ার পাশাপাশি, -৪-বিট সমর্থন মানে অ্যাপ্লিকেশনগুলি 4 গিগাবাইটেরও বেশি র‌্যাম ব্যবহার করতে পারে। বেশিরভাগ অ্যাপ্লিকেশনের তেমন প্রয়োজন হয় না তবে উচ্চ-গেমস এবং ফটো / ভিডিও তৈরি সফ্টওয়্যার অবশ্যই এটি ব্যবহার করতে পারে: অ্যান্ড্রয়েডকে কনসোল-মানের গেমস (ভিআর গেমস সহ) গেমস এবং কনটেন্ট তৈরির জন্য একটি প্ল্যাটফর্ম হওয়ার দিকে ধাক্কা দেয়। জাভা অ্যাপ্লিকেশনগুলি এর সুবিধা গ্রহণের জন্য আপডেট করার দরকার নেই, কারণ ভার্চুয়াল মেশিনটি সবসময় এগুলি ফোনের আর্কিটেকচারে সংকলিত করে, তবে স্থানীয় কোড সহ অ্যাপ্লিকেশনগুলি উইল করে।

কারণ এআরএমভি 8 32-বিট কোডের সাথে পিছনের দিকে সামঞ্জস্যপূর্ণ (একইভাবে x86_64 এখনও x86 কোড চালাতে পারে), এমনকি 32-বিট প্রসেসরের জন্য নেটিভ কোড অন্তর্ভুক্ত থাকা অ্যাপ্লিকেশনগুলি এখনও 64-বিট অ্যান্ড্রয়েডে চলতে পারে। সুতরাং কোনও অ্যাপ্লিকেশনটিতে কেবলমাত্র code৪-বিটের জন্য সংকলন করা দরকার যদি এতে নেটিভ কোড থাকে এবং এটি উচ্চতর র্যাম সীমা বা আর্কিটেকচারের নতুন বৈশিষ্ট্যগুলির সুবিধা নিতে চায়।


5

সমস্ত এআরএম চিপগুলি বর্তমানে 32-বিট। এই কারণে, অ্যান্ড্রয়েড বর্তমানে executes একটি 32 বিট পরিবেশে সব কোড।

64-বিট প্রসেসর 2014 সালে লঞ্চ সেট


1
ফোর্সথ বলেছেন, "স্মার্টফোনটি কিছুটা দূরেই বন্ধ রয়েছে," সার্ভারের কথা বলায় এটি নির্ভরযোগ্য একটি উত্স নয় , আমরা অ্যান্ড্রয়েড / স্মার্টফোন / ট্যাবলেটগুলির প্রসঙ্গে এআরএম সম্পর্কে কথা বলছি।
t0mm13b

2

অ্যান্ড্রয়েড একটি 32- বা 64- বিট ওএস? আমি ধরে নিই যে এটি এক বা অন্য এবং উভয়ই নয়, কারণ এটি Google Play এ 32- এবং 64-বিট বাইনারি উভয়কেই হোস্ট করতে বাধ্য করবে।

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

আপনার সন্দেহ হিসাবে, যে অ্যাপ্লিকেশনগুলি দেশীয় বাইনারিগুলি এবং এনডিকে অ্যাপ্লিকেশনগুলি দিয়ে জাহাজীকরণ করা হয় তাদের অবশ্যই প্রতিটি আর্কিটেকচারের জন্য কম্পাইল করা বাইনারি সহ জাহাজ পাঠানো আবশ্যক যা এটি চালানোর উদ্দেশ্যে। অ্যান্ড্রয়েড যে সর্বাধিক সাধারণ আর্কিটেকচারটি চালায় তা হ'ল এআরএম 32-বিট; তবে এমন কিছু ডিভাইসও রয়েছে যা এক্স 86 এবং এমআইপিএসে চলে।


0

আমি কেবল অনুমান করছি তবে আমি মনে করি এটি কেবল সহজ ব্যাখ্যা করে। এটি আপনি কোন ডিভাইসটি ব্যবহার করছেন তার উপর নির্ভর করে, সেখানে চার ধরণের ওএস রয়েছে যা এআরএম, এআরএম 64, এক্স 84 এবং এক্স 84_64। এআরএম জনপ্রিয় 32 বিট প্ল্যাটফর্ম, এআরএম 64 এছাড়াও জনপ্রিয় তবে 64 বিট প্ল্যাটফর্ম, এক্স 84 একটি অস্বাভাবিক প্ল্যাটফর্ম এবং এটি জেনফোনসে ব্যবহৃত হয়েছে, এটি এক্স 84_64 এর মতো এবং এটি অ্যান্ড্রয়েড এমুলেটরগুলিতে ব্যবহৃত হয়। আমি ওপেন গ্যাপস এ এই ওএস তথ্য পেয়েছি

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