رفتن به محتوای اصلی
توضیح کوهستانمجازی‌سازی اندرویدمقاله آموزشی· 5 دقیقه مطالعه· در راهنماها

چگونه فریم‌ورک مجازی‌سازی اندروید یک ماشین مجازی دبیان را روی گوشی‌های پیکسل اجرا می‌کند

ترمینال لینوکس داخلی اندروید با دور زدن شبیه‌سازهای سنتی، یک ماشین مجازی کامل دبیان ۱۲ را مستقیماً روی سخت‌افزار دستگاه اجرا می‌کند. این قابلیت که توسط یک هایپروایزر محافظت‌شده پشتیبانی می‌شود، گوشی‌های جدید پیکسل را به یک ایستگاه کاری جیبی تمام‌عیار تبدیل می‌کند.

به قلم ویدا کاظمی

به‌طور خلاصه

  • ترمینال لینوکس بومی اندروید یک ماشین مجازی کامل دبیان ۱۲ را از طریق فریم‌ورک مجازی‌سازی اندروید اجرا می‌کند و یک شبیه‌ساز سندباکس‌شده نیست.
  • این قابلیت دسترسی نامحدود به مخازن رسمی بسته‌های دبیان را فراهم می‌کند و اجازه نصب بومی ابزارهایی مانند Node.js و OpenSSH را می‌دهد.
  • یک هایپروایزر محافظت‌شده (pKVM) ایزوله‌سازی دقیق را تضمین کرده و از دسترسی مهمان لینوکس به دوربین گوشی یا آسیب رساندن به میزبان اندروید جلوگیری می‌کند.

در ۱۲ سپتامبر ۲۰۲۶، وب‌سایت MakeUseOf بررسی عملی یک ماشین مجازی کامل لینوکس دبیان را که به‌صورت بومی روی پیکسل ۹ اجرا می‌شد، منتشر کرد. این اتفاق نشان‌دهنده تبدیل ترمینال لینوکس اندروید از یک آزمایش توسعه‌دهندگان به یک ایستگاه کاری جیبی کاربردی است.

این قابلیت که در بخش گزینه‌های توسعه‌دهنده سیستم پنهان شده، به کاربران اجازه می‌دهد یک محیط کامل دبیان ۱۲ را مستقیماً روی گوشی هوشمند خود بوت کنند. MakeUseOf گزارش داد: «برنامه ترمینال لینوکس گوگل یک شبیه‌ساز سندباکس‌شده مانند Termux نیست. در واقع، این یک ماشین مجازی واقعی دبیان است که از طریق فریم‌ورک مجازی‌سازی اندروید روی سخت‌افزار پیکسل من اجرا می‌شود.»[1]

نتیجه کاربردی برای کاربران حرفه‌ای کاملاً روشن است: دیگر نیازی به روت کردن دستگاه یا تکیه بر رابط‌های واسط برای اجرای نرم‌افزارهای بومی لینوکس ندارید. با فعال کردن گزینه «محیط توسعه لینوکس»، سیستم یک ایمیج ۵۰۰ مگابایتی دبیان را دانلود کرده و یک ماشین مجازی (VM) ایزوله با کرنل مهمان اختصاصی خود راه‌اندازی می‌کند. این کار دسترسی نامحدود به مخازن رسمی ابزار بسته‌بندی پیشرفته دبیان (APT) را فراهم می‌کند و به کاربران اجازه می‌دهد نسخه‌های دقیق ابزارهای توسعه، کامپایلرها و برنامه‌های سرور را دریافت کنند.[1][2]

این قابلیت توسط فریم‌ورک مجازی‌سازی اندروید (AVF) پشتیبانی می‌شود؛ زیرسیستمی که گوگل از زمان اندروید ۱۳ بی‌سروصدا در حال توسعه آن بوده است. AVF از یک هایپروایزر محافظت‌شده ماشین مجازی مبتنی بر کرنل (pKVM) استفاده می‌کند تا یک محیط اجرایی ایزوله و مستقل بین میزبان اندروید و مهمان لینوکس ایجاد کند. از آنجا که این ماشین مجازی در سطح سخت‌افزار عمل می‌کند و نه به‌عنوان یک لایه نرم‌افزاری، محدودیت‌های استاندارد سندباکس برنامه‌های اندروید را دور می‌زند و در عین حال مرزهای امنیتی سخت‌گیرانه‌ای را حفظ می‌کند.[4][5]

سال‌هاست که روش استاندارد اجرای ابزارهای لینوکس روی اندروید استفاده از Termux بوده است؛ برنامه‌ای که از محیط chroot مبتنی بر PRoot برای شبیه‌سازی فایل‌سیستم لینوکس استفاده می‌کند. اگرچه Termux کارآمد است، اما در مخازن بسته‌های سفارشی خود عمل می‌کند که حدود ۲۰۰۰ بسته تطبیق‌یافته را ارائه می‌دهد. ترمینال لینوکس بومی مستقیماً به سیستم بسته‌های استاندارد دبیان متصل می‌شود، به این معنی که دستوراتی مانند `apt install build-essential git python3 nodejs` دقیقاً همان‌طور که در یک رایانه رومیزی کار می‌کنند، اجرا می‌شوند.[1][3]

هایپروایزر pKVM ایزوله‌سازی سخت‌گیرانه‌ای در سطح سخت‌افزار بین میزبان اندروید و مهمان دبیان اعمال می‌کند.

ایزوله‌سازی ارائه‌شده توسط AVF یک شمشیر دولبه است. از یک سو، ماشین مجازی نمی‌تواند به‌راحتی به دوربین، میکروفون یا فایل‌های اختصاصی اندروید دسترسی پیدا کند و سیستم‌عامل اصلی را در برابر هرگونه کد مخرب اجراشده در محیط لینوکس محافظت می‌کند. از سوی دیگر، این مرزبندی سخت‌گیرانه باعث افزایش بار پردازشی می‌شود. اجرای یک محیط کامل دبیان ۱۲ روی اندروید نیازمند حافظه و منابع پردازشی (CPU) اختصاصی است که می‌تواند در طول پردازش‌های سنگین کامپایل، روی عمر باتری تأثیر منفی بگذارد.[4][5]

با وجود این بار پردازشی، کاربردی بودن آن غیرقابل انکار است. تنها با یک دستور `sudo apt install ssh`، مجموعه کامل و بومی OpenSSH همراه با مدیریت کلید استاندارد در پوشه `~/.ssh` در دسترس قرار می‌گیرد. این کار نیاز به دانلود کلاینت‌های SSH شخص ثالث پر از تبلیغات یا درخواست‌های اشتراک را صرفاً برای مدیریت یک سرور از راه دور از بین می‌برد. این محیط صراحتاً برای توسعه روی دستگاه طراحی شده است و به مهندسان یک محیط اجرای کامل را مستقیماً روی گوشی ارائه می‌دهد.[1][2]

پشتیبانی از گرافیک، مرز بعدی برای ترمینال لینوکس است. در حال حاضر، این محیط در انجام وظایف رابط خط فرمان (CLI) عالی عمل می‌کند، اما اجرای برنامه‌های دارای رابط کاربری گرافیکی (GUI) نیازمند هدایت داده‌های نمایشگر از طریق میزبان اندروید است. نسخه‌های اخیر Android Canary شتاب‌دهنده گرافیکی (GPU) آزمایشی را با استفاده از کتابخانه‌ای به نام Gfxstream معرفی کرده‌اند که فراخوانی‌های گرافیکی را از ماشین مجازی لینوکس مستقیماً به پردازنده گرافیکی گوشی ارسال می‌کند و رندر نرم‌افزاری مبتنی بر CPU را دور می‌زند.[4][5]

با پیاده‌سازی کامل این قابلیت، هدایت GPU به کاربران اجازه می‌دهد برنامه‌های دسکتاپ مانند GIMP یا LibreOffice را با سرعت رندر تقریباً بومی اجرا کنند. در حال حاضر، این ویژگی عمدتاً به سخت‌افزارهای جدیدتر مانند سری پیکسل ۹ و پیکسل ۱۰ محدود می‌شود که دارای افزونه‌های Vulkan و پشتیبانی AVF لازم برای مدیریت نیازهای مجازی‌سازی هستند. دستگاه‌های سامسونگ و مدل‌های قدیمی‌تر اندروید در حال حاضر فاقد لایه‌های فریم‌ور خاص مورد نیاز برای راه‌اندازی ماشین مجازی هستند.[1][4]

با پشتیبانی از بسته‌های بومی، توسعه‌دهندگان می‌توانند کدها را کامپایل کرده و سرورها را مستقیماً از روی گوشی خود مدیریت کنند.

برای دسترسی به ترمینال، کاربران ابتدا باید با هفت بار ضربه زدن روی شماره ساخت دستگاه خود، حالت توسعه‌دهنده را فعال کنند. از آنجا، با رفتن به گزینه‌های توسعه‌دهنده، کلید «محیط توسعه لینوکس» نمایان می‌شود. راه‌اندازی اولیه برای دانلود ایمیج دبیان به اتصال وای‌فای نیاز دارد، اما در اجراهای بعدی، ماشین مجازیِ پایدار در عرض چند ثانیه به‌صورت محلی بوت می‌شود.[1][5]

معرفی یک ماشین مجازی بومی دبیان نشان‌دهنده تغییر گسترده‌تری در نحوه استفاده از سخت‌افزار موبایل است. گوشی‌های هوشمند مدرن با ۱۲ گیگابایت رم و پردازنده‌هایی عرضه می‌شوند که در عملکرد تک‌هسته‌ای با تراشه‌های لپ‌تاپ رقابت می‌کنند. سیستم‌عامل با ارائه یک محیط استاندارد لینوکس، سرانجام لایه نرم‌افزاری لازم را برای استفاده حداکثری از این سخت‌افزار با پردازش‌های در سطح دسکتاپ فراهم می‌کند.[2][5]

برای دانشجویانی که در حال یادگیری اصول خط فرمان هستند، مدیران فناوری اطلاعات که زیرساخت‌ها را در حال حرکت مدیریت می‌کنند، یا توسعه‌دهندگانی که کدها را به‌صورت محلی آزمایش می‌کنند، ترمینال لینوکس اصطکاک محاسبات موبایلی را از بین می‌برد. این قابلیت با بهره‌گیری از سازگاری جهانی دبیان برای پر کردن شکاف بین اکوسیستم‌های موبایل و دسکتاپ، گوشی هوشمند را از یک دستگاه مصرفی به یک ابزار تولیدی تبدیل می‌کند.[1][2]

برخلاف راه‌حل‌های PRoot، ماشین مجازی AVF از کرنل مهمان اختصاصی خود و مخازن رسمی دبیان استفاده می‌کند.

نقطه عطف قابل تأیید بعدی برای این فناوری، انتشار نسخه پایدار اندروید ۱۷ در اواخر سال ۲۰۲۶ خواهد بود که انتظار می‌رود شتاب‌دهنده GPU را رسمی کرده و پشتیبانی از AVF را به طیف وسیع‌تری از تولیدکنندگان تجهیزات اصلی (OEMs) گسترش دهد. تا آن زمان، این ویژگی به‌عنوان یک ابزار قدرتمند، هرچند آزمایشی، برای کسانی که مایل به کاوش در تنظیمات توسعه‌دهنده هستند، باقی می‌ماند.[4][5]

اصطلاحات کلیدی

فریم‌ورک مجازی‌سازی اندروید (AVF)
یک معماری سیستمی که به دستگاه‌های اندرویدی اجازه می‌دهد ماشین‌های مجازی ایزوله را به‌طور امن در کنار سیستم‌عامل اصلی اجرا کنند.
هایپروایزر pKVM
یک هایپروایزر که ایزوله‌سازی سخت‌گیرانه حافظه و سخت‌افزار را بین میزبان اندروید و ماشین‌های مجازی مهمان اعمال می‌کند.
دبیان
یک توزیع لینوکس متن‌باز محبوب و بسیار پایدار که به‌عنوان پایه و اساس ترمینال لینوکس اندروید عمل می‌کند.
محیط PRoot
یک پیاده‌سازی در فضای کاربری از دستور chroot که به برنامه‌هایی مانند Termux اجازه می‌دهد فایل‌سیستم روت لینوکس را بدون نیاز به دسترسی مدیر دستگاه شبیه‌سازی کنند.
ماشین مجازی (VM)
یک شبیه‌سازی نرم‌افزاری از یک رایانه فیزیکی که سیستم‌عامل و کرنل اختصاصی خود را مستقل از دستگاه میزبان اجرا می‌کند.

پرسش‌های متداول

فریم‌ورک مجازی‌سازی اندروید (AVF) چیست؟

فریم‌ورک AVF یک زیرسیستم تعبیه‌شده در نسخه‌های مدرن اندروید است که از یک هایپروایزر محافظت‌شده برای اجرای ماشین‌های مجازی ایزوله استفاده می‌کند و به سیستم‌عامل‌های ثانویه مانند دبیان اجازه می‌دهد به‌طور امن در کنار اندروید اجرا شوند.

ترمینال لینوکس چه تفاوتی با Termux دارد؟

برنامه Termux از محیط PRoot برای شبیه‌سازی فایل‌سیستم لینوکس با استفاده از کرنل مشترک اندروید استفاده می‌کند. اما ترمینال لینوکس بومی، یک ماشین مجازی کامل دبیان را با کرنل مهمان اختصاصی خود اجرا می‌کند و دسترسی به مخزن کامل و دست‌نخورده بسته‌های دبیان را فراهم می‌سازد.

آیا می‌توانم برنامه‌های گرافیکی لینوکس را روی پیکسل اجرا کنم؟

در حال حاضر، پشتیبانی گرافیکی آزمایشی است و به هدایت داده‌های نمایشگر از طریق میزبان اندروید نیاز دارد. انتظار می‌رود به‌روزرسانی‌های آینده شتاب‌دهنده GPU را رسمی کنند تا برنامه‌هایی مانند GIMP روان‌تر اجرا شوند.

کدام گوشی‌ها از ترمینال لینوکس بومی پشتیبانی می‌کنند؟

این قابلیت به دستگاهی با پشتیبانی از AVF نیاز دارد که در حال حاضر به مدل‌های جدیدتر گوگل پیکسل مانند پیکسل ۹ و پیکسل ۱۰ با نسخه‌های توسعه‌دهنده اندروید ۱۶ یا بالاتر محدود می‌شود.

بررسی عمیق دیدگاه‌ها

توسعه‌دهندگان موبایل

ماشین مجازی بومی را به‌عنوان یک پیشرفت بزرگ برای کدنویسی و آزمایش روی دستگاه می‌بینند.

برای مهندسان نرم‌افزار، فریم‌ورک مجازی‌سازی اندروید نیاز به حمل لپ‌تاپ برای دیباگ کردن سبک یا مدیریت سرور را از بین می‌برد. با ارائه دسترسی نامحدود به مخازن رسمی دبیان، توسعه‌دهندگان می‌توانند نسخه‌های دقیق Node.js، Python و OpenSSH را دریافت کنند. ایزوله‌سازی سخت‌گیرانه تضمین می‌کند که کدهای آزمایشی نمی‌توانند به سیستم‌عامل اصلی اندروید آسیب برسانند و گوشی را به یک محیط امن برای کامپایل تبدیل می‌کند.

معماران امنیت

بر مزایای ایزوله‌سازی هایپروایزر pKVM تمرکز دارند.

متخصصان امنیت تأکید می‌کنند که ارزش واقعی AVF در مرزبندی‌های سطح سخت‌افزار آن نهفته است. برخلاف روش‌های قدیمی chroot که کرنل میزبان را به اشتراک می‌گذارند و در برابر حملات ارتقاء سطح دسترسی آسیب‌پذیر هستند، هایپروایزر pKVM یک محیط کاملاً مستقل ایجاد می‌کند. حتی اگر مهمان دبیان به‌طور کامل توسط نرم‌افزارهای مخرب آلوده شود، میزبان اندروید امن باقی می‌ماند و از داده‌های کاربر، اطلاعات بیومتریک و سخت‌افزار دوربین در برابر دسترسی غیرمجاز محافظت می‌کند.

کاربران عادی اندروید

با الزامات سخت‌افزاری بالا و دشواری‌های راه‌اندازی مواجه هستند.

برای مصرف‌کننده عمومی، ترمینال لینوکس همچنان یک مفهوم انتزاعی است که در پشت گزینه‌های توسعه‌دهنده پنهان شده است. نیاز به دانلود یک ایمیج سیستمی ۵۰۰ مگابایتی، همراه با فقدان پشتیبانی پیش‌فرض از رابط کاربری گرافیکی، جذابیت فوری آن را محدود می‌کند. علاوه بر این، این ویژگی در حال حاضر به سخت‌افزارهای جدیدتر مانند پیکسل ۹ و پیکسل ۱۰ محدود شده است و دارندگان دستگاه‌های قدیمی‌تر یا غیر گوگلی را از دسترسی به قابلیت‌های مجازی‌سازی محروم می‌کند.

مدافعان مجازی‌سازی بومی 60%کاربران محیط‌های کانتینری 40%
مدافعان مجازی‌سازی بومی
استدلال می‌کنند که ایزوله‌سازی در سطح سخت‌افزار و کرنل‌های کامل مهمان، تنها راه امن و بدون محدودیت برای اجرای لینوکس دسکتاپ روی دستگاه‌های موبایل است.
کاربران محیط‌های کانتینری
برای راه‌حل‌های سبک و با کرنل مشترک مانند PRoot ارزش قائل هستند که منابع کمتری مصرف می‌کنند و یکپارچگی بهتری با فایل‌سیستم میزبان اندروید دارند.

دیدگاه‌هایی که این گزارش پوشش نداده

  • تولیدکنندگان تجهیزات سخت‌افزاری (OEMs)
  • توسعه‌دهندگان دسکتاپ لینوکس

منابع

پوشش منابع

5 منبع

2 دیدگاه شناسایی‌شده

مدافعان مجازی‌سازی بومی 60%کاربران محیط‌های کانتینری 40%
  1. [1]MakeUseOfمدافعان مجازی‌سازی بومی

    I turned my Android phone into a real Linux machine with Debian

    مطالعه در MakeUseOf →
  2. [2]Debianکاربران محیط‌های کانتینری

    Debian -- The Universal Operating System

    مطالعه در Debian →
  3. [3]Termuxکاربران محیط‌های کانتینری

    Termux | Termux

    مطالعه در Termux →
  4. [4]Android Open Source Projectمدافعان مجازی‌سازی بومی

    Android Virtualization Framework | Android Open Source Project

    مطالعه در Android Open Source Project →
  5. [5]تیم سردبیری کوهستانمدافعان مجازی‌سازی بومی

    تحلیل تیم سردبیری کوهستان

    مطالعه در تیم سردبیری کوهستان →

نظرات

همیشه در جریان باشید

هر زاویه. هر روز.

اخبار راهنماها با پوشش کامل منابع و تحلیل دیدگاه‌ها، هر روز و رایگان.