اجرای ماشینهای مجازی گاهی به سختافزار ویژه نیاز دارد. هرچند اغلب میتوان از سختافزارهای مصرفی هم بهره برد، معمولاً باید آنها را با دقت پیکربندی و انتخاب کرد تا قابلیتهایی مانند گذررسانی GPU، پایدارتر و قابلاعتمادتر عمل کنند.
راهاندازی یک نمایشگر مجازی برای ماشین مجازی این روزها نسبتاً بیدردسر است، اما در عوض از امکاناتی چون شتابدهی GPU و تغییر اندازهٔ پویا محروم میشوید. تازهترین بهروزرسانی برنامهای که سالهاست از آن استفاده میکنم، یعنی لوکینگ گلس، سرانجام ماشینهای مجازی ویندوز را در پنجرهای روان در لینوکس نمایش میدهد. این نسخه همچنین درایور نمایشگر مجازی داخلی (VDD) دارد که شیوهٔ استفادهٔ من از ماشینهای مجازی را کاملاً دگرگون کرد.
لوکینگ گلس پروژهٔ تازهای نیست
سالهاست انتخاب نخست من برای تصویرهای ماشین مجازی ویندوز است

پروژهٔ لوکینگ گلس مدتهاست وجود دارد و مدت زیادی است که یکی از ابزارهای اصلی من برای ماشین مجازی ویندوز به شمار میرود. ایده ساده است: لوکینگ گلس پنجرهای تعاملی فراهم میکند که خروجی نمایشگر یک ماشین مجازی ویندوز را نشان میدهد؛ بنابراین، بهجای اجرای ویندوز درون ویندوز، میتوانید ویندوز را از داخل لینوکس ببینید و کنترل کنید.
این برنامهٔ متنباز همچنین بهطرز چشمگیری سریع است و در مقایسه با نمایشگر داخلی اسپایس در ویرتمنیجر، تأخیر بسیار کمتر و مشکلات گرافیکی عجیبوغریب کمتری دارد.
در کنار گذررسانی GPU، تجربهای تقریباً بینقص فراهم میکند. بااینحال، تا امروز به یک GPU فیزیکی و یک دانگل ساختگی HDMI یا DP برای شبیهسازی نمایشگر نیاز داشت؛ یا باید با ترفندهای نرمافزاری در ویندوز، نمایشگر مجازی ایجاد میکردید.
البته این کار، دستکم در سمت کارخواه لینوکس، به نصب و پیکربندی دستی هم نیاز دارد. گرچه از نظر فنی میتوانید نسخهای را از AUR یا منابع دیگر بگیرید، پیشنهاد میکنم ساخت توسعهای را از وبسایت دریافت و دستی نصب کنید. ساخت توسعهای امکانات بسیار بیشتری دارد و معمولاً آنقدر پایدار هست که بتوان هر روز از آن استفاده کرد.
ساخت توسعهای، درایور مجازی ویندوز را در بر میگیرد
نه به GPU دوم نیاز دارید، نه به دانگل ساختگی HDMI





با نگاهی به صفحهٔ دریافتهای لوکینگ گلس، دو گزینه دیده میشود: نسخهٔ پایدار B7 و نسخهٔ توسعهای که بهطور پویا از شاخهٔ B7 تغییر میکند. نسخهٔ توسعهای همچنین دو ساخت جداگانه برای نسخهٔ میزبان ویندوز دارد.
برای آزمودن قابلیت تازهٔ IDD، به نسخهٔ ویندوزی IDD از فایل اجرایی نیاز داریم که در عمل جایگزینی مستقیم برای گونهٔ قدیمیتر است. پس از ورود به ماشین مجازی، ساخت توسعهای خودکار IDD موردنیاز را دریافت کنید و مانند همیشه نصبش کنید. فرایند پیچیدهای در کار نیست و همهچیز در کمتر از یک دقیقه بهطور کامل انجام میشود.
برای کارکرد درست، نسخههای میزبان و مهمان لوکینگ گلس باید کاملاً یکسان باشند! من با فعالبودن ماژول DKMS مربوط به KVMFR بهترین نتیجه را گرفتهام. حتماً مستندات را با دقت بخوانید و برای راهاندازی، دقیقاً همان دستورالعملها را اجرا کنید.
پس از نصب برنامه، میتوانید با ابزار داخلی آن وضوح تصویر و نرخ نوسازی دلخواه را تنظیم کنید. سپس کافی است ماشین مجازی را دوباره راهاندازی کنید و کارخواه لوکینگ گلس را اجرا کنید؛ البته پس از آنکه دستگاه ویدئویی QXL یا نمونهٔ مشابهش را حذف کردید.
دگرگونی کامل در شیوهٔ کار من با ماشینهای مجازی
تأخیر عملاً ناپدید شده و همهچیز حس بومی دارد

بهترین ویژگی نسخهٔ IDD این است که برای ارسال فریمها، نه به خروجی نمایشگر ساختگی نیاز دارد و نه به GPU دوم و اختصاصی. شگفتآور اینکه عملکردش هم بسیار خوب است و تفاوت آنقدر ناچیز است که میتوان کاملاً نادیدهاش گرفت.
مجازیسازی با دو GPU همیشه وجود داشته و مزیتهای ذاتی خود را دارد؛ برای نمونه، میتوان بازیها و دیگر برنامههای سهبعدی را از این راه اجرا کرد. بااینحال، به دو GPU فیزیکی نیاز دارد: یا دو کارت گرافیک بزرگ رایانهٔ رومیزی، یا لپتاپی با iGPU بههمراه GPU اختصاصی؛ یعنی یک GPU قدرتمندتر برای بازی یا ایستگاه کاری.
ساخت IDD قواعد بازی را کاملاً عوض میکند. دیگر به هیچیک از اینها نیاز ندارید و همهچیز بهسادگی «کار میکند». هرچند مطمئن نیستم بتوان با آن بازی اجرا کرد یا از پس کارهای واقعاً سنگین و وابسته به GPU برآمد — برای آنها همچنان به یک GPU درستودرمان نیاز دارید — اما برای استفادهٔ پایه از ویندوز، بیش از اندازه کافی است.
کارهایی مانند بهروزرسانی راهانداز یک دستگاه، باز کردن سندهای MS Office، یا حتی کنترل نرمافزارهای اختصاصیِ یک دستگاه، همگی بیهیچ مشکلی انجام میشوند. Looking Glass اکنون از تغییر پویا در اندازهٔ نمایشگر نیز پشتیبانی میکند؛ یعنی میتوانید اندازهٔ پنجرهٔ ماشین مجازی را همان لحظه تغییر دهید و ببینید که وضوح داخلی نیز متناسب با آن تنظیم میشود.
پیشتر از نمایشگرهای QXL و Virtio استفاده کردهام، اما هیچکدام به اندازهٔ این نسخه روان و یکپارچه نبودهاند. تأخیر هم عملاً ناچیز است و کارخواه Looking Glass چند قابلیت خوشایند دیگر نیز دارد؛ از جمله عبور دادن صدا و امکان فرستادن مستقیم ویدئوی ضبطشده به OBS. با اطمینان میتوان گفت از این پس در ماشینهای مجازی ویندوز من بسیار به کار خواهد آمد.
راهاندازهای سهبعدی در ماشینهای مجازی ویندوز اخیراً پیشرفت چشمگیری داشتهاند
بستهٔ ابزارهای Virtio برای ویندوز مدتهاست راهاندازی نسبتاً ابتدایی، در حد یک بافر فریم دوبعدی، فراهم میکند؛ اما این راهانداز محدودیتهای فراوانی دارد و کیفیتش نیز بهمراتب پایینتر است.
در مورد راهانداز واقعی نمایش سهبعدی، پیشرفتهایی صورت گرفته است. عمدتاً دو گزینه وجود دارد: Venus و VirGL؛ گزینهٔ دوم از virglrenderer بهره میگیرد و پیادهسازی آن تا حدی آسانتر به نظر میرسد.
با این حال، راهاندازی هیچیک از این دو گزینه آسان نیست. باید در صفحههای GitHub هر پروژه جستوجو کنید و نسخهها را خودتان کامپایل کنید. حتی در این صورت نیز راهاندازها همچنان کاملاً در مرحلهٔ بتا هستند و استفادهٔ روزمره از آنها را توصیه نمیکنم؛ چه برسد به بازی کردن، البته اگر در حال حاضر اصلاً ممکن باشد.
دستیابی به شتابدهی سهبعدی در مهمانهای ویندوز، در حال حاضر مستلزم آن است که یا یک پردازندهٔ گرافیکی فیزیکی را به ماشین مجازی واگذار کنید، یا با بهرهگیری از SR-IOV روی پردازندهٔ گرافیکیِ پشتیبانیشده، مانند گرافیکهای جدید Intel، یک کارت گرافیک مجازی بسازید. نه AMD و نه Nvidia این قابلیت را در سختافزارهای مصرفی خود پشتیبانی نمیکنند. از همین رو، راهحل Looking Glass فعلاً بهترین راهکار موقت به شمار میآید.
منبع: این مطلب ترجمه و بومیسازی مقالهای از MakeUseOf به قلم Dipan Saha است. مشاهده مقاله اصلی