ভার্চুয়ালাইজেশন একটি চতুর জিনিস। একটি কম্পিউটারের মধ্যে একটি কম্পিউটার, যদি আপনি চান, সম্ভাবনার একটি অন্তহীন সিরিজ এবং ব্যবহার পরিস্থিতি। একজন ব্যতীত. গেমিং। ভার্চুয়াল মেশিনগুলি যে কোনও কারণেই চালান, তাকে জিজ্ঞাসা করুন, এবং তারা সম্ভবত সমস্ত এবং প্রতিটি ভার্চুয়ালাইজেশন সফ্টওয়্যারে একটি বড় ঘাটতি নির্দেশ করবে - অপর্যাপ্তভাবে উন্নত বা যথেষ্ট শক্তিশালী গ্রাফিক্স স্ট্যাক৷
প্রকৃতপক্ষে, প্রায়শই, আপনি যখন ভার্চুয়াল মেশিনের ভিতরে গেস্ট অপারেটিং সিস্টেম চালান, আপনি প্রায়শই গ্রাফিক্স ত্বরণ - 2D এবং 3D কার্যকারিতা দ্বারা সীমাবদ্ধ থাকেন যা আপনার হোস্টের নেটিভ ক্ষমতার পিছনে থাকে। সুতরাং আপনি যদি মনে করেন ভার্চুয়ালাইজেশন আপনার অনেক সমস্যার সমাধান করতে পারে - গেমিং তাদের মধ্যে একটি নয়। Virgil 3d হল একটি প্রজেক্ট যার লক্ষ্য হল ভার্চুয়ালাইজেশন সফ্টওয়্যারে 3D বিস্ময় নিয়ে আসা, যার লক্ষ্য হল একদিনের পারফরম্যান্সে সমতা প্রদানের লক্ষ্য। এই সমাধানটির একটি বাস্তবায়ন হল QEMU Virgil, যা আপনাকে QEMU/KVM-ভিত্তিক ভার্চুয়াল মেশিনে SDL2 এবং Virgil 3d সক্ষম করতে দেয়। আকর্ষণীয় শোনাচ্ছে. তো চলুন দেখে নেই।
সেটআপ
এই ধরনের প্রচেষ্টার সাথে একটি বড় নেতিবাচক দিক হল এটি বেশ জটিল হতে পারে এবং সবকিছু কনফিগার করতে এবং চলমান হতে সময় লাগে। যাইহোক, Virgil 3d এর সাথে, আপনি যদি বিদ্যমান স্ন্যাপ প্যাকেজটি চেষ্টা করতে চান তবে এটি ম্যানুয়াল কম্পাইলেশনের সমস্ত গরীব বিট এবং যা কিছু নয় তা সরবরাহ করে। ইঙ্গিত:একজনকে সর্বদা শেয়ার করতে হবে, আমি স্ন্যাপ প্রচেষ্টার সাথে যুক্ত আছি, তাই যদি আপনি পক্ষপাতিত্বের গন্ধ পান তবে পালিয়ে যান!
sudo snap qemu-virgil ইনস্টল করুন
sudo snap connect qemu-virgil:kvm
একটি ভার্চুয়াল মেশিন চালানো
আপনি কিভাবে একটি 3D-এক্সিলারেটেড ভার্চুয়াল মেশিন শুরু করতে পারেন তার জন্য একটি (নমুনা) কমান্ড দেখুন। আপনি যদি একটু অভিভূত বোধ করেন, আমি আপনাকে কয়েক বছর আগে থেকে আমার KVM গাইডের ভূমিকাটি একবার দেখার পরামর্শ দেব। সেখানে বিস্তারিত বেশিরভাগ জিনিস এখনও প্রযোজ্য।
qemu-virgil -enable-kvm -m 4096 -device virtio-vga,virgl=on -display sdl,gl=on -netdev user,id=ethernet.0,hostfwd=tcp::10022-:22 -device rtl8139,netdev =ethernet.0 -soundhw ac97 kubuntu.img -boot d -cdrom kubuntu.iso
আমাদের এখানে কি আছে?
আসুন এই সমস্ত রঙিন বিকল্পগুলি একবার দেখে নেওয়া যাক:
- -enable-kvm - আমরা সম্পূর্ণ KVM ভার্চুয়ালাইজেশন সমর্থন ব্যবহার করি। বলা বাহুল্য, আপনার হার্ডওয়্যারে প্রয়োজনীয় এক্সটেনশন থাকা উচিত (CPU-তে উপস্থিত এবং BIOS-এ সক্ষম)।
- -m 4096 - VM মেমরি 4GB এ সেট করা আছে।
- -ডিভাইস... - এই বিকল্পটি ডিভাইস ড্রাইভার যোগ করে। বিশেষ করে, আমরা virgl ব্যবহার করি।
- -ডিসপ্লে... - এই বিকল্পটি আমাদের ডিসপ্লের জন্য SDL এবং OpenGL রেন্ডারিং ব্যবহার করতে সক্ষম করে।
- -netdev... - এই বিকল্পটি একটি নেটওয়ার্ক ইন্টারফেস কনফিগার করে যাতে TCP পোর্ট ফরওয়ার্ডিং আছে, যাতে আপনি আপনার ভার্চুয়াল মেশিনে (হোস্ট পোর্ট 10022 ব্যবহার করে) SSH করতে পারেন। নেটওয়ার্ক ডিভাইসটি একটি RTL8139 ভার্চুয়াল অ্যাডাপ্টার হবে। এখন, এই অ্যাডাপ্টারটি 100 Mbps পর্যন্ত সীমাবদ্ধ, তবে আপনি e1000 ব্যবহার করতে পারেন। অফিসিয়াল KVM নেটওয়ার্কিং পৃষ্ঠায় এই বিষয়ে আরও বিশদ রয়েছে।
- -soundhw - আমরা সাউন্ড কার্ড কনফিগার করি।
- kubuntu.img - এটি ভার্চুয়াল হার্ড ডিস্কের নাম। আমরা এখনও একটি তৈরি করিনি - এবং আপনি dd দিয়ে একটি ডিস্ক চিত্র তৈরি করে এটি করতে পারেন (হয় একটি সম্পূর্ণ বা একটি স্পার্স একটি), অথবা আপনি qemu-img কমান্ড ব্যবহার করতে পারেন৷
- -boot d - এই বিকল্পটি বুট অর্ডার নির্দিষ্ট করে; d মানে প্রথমে CD-ROM।
- -cdrom kubuntu.iso - এখানে, আমাদের ভার্চুয়াল সিডি ইমেজ হিসাবে kubuntu.iso আছে। আমরা প্রথমে লাইভ সেশনে বুট করব, অপারেটিং সিস্টেম ইনস্টল করব, এবং তারপরে, পরবর্তী ব্যবহারে, আপনি কমান্ড থেকে সহজভাবে বুট এবং cdrom বিকল্পগুলি সরিয়ে ফেলতে পারেন।
আপনি চেষ্টা করতে পারেন অন্যান্য অনেক বিকল্প আছে. ভার্চুয়াল সিপিইউ এর সংখ্যা, বিভিন্ন সিপিইউ মডেল, স্ন্যাপশট, ডিস্ক ক্যাশিং মোড, ইউএসবি কার্যকারিতা, বিভিন্ন মেমরি পরিচালনা বৈশিষ্ট্য এবং আরও অনেক কিছু। কিন্তু আমরা এখানে KVM আয়ত্ত করতে আসিনি, আমরা এখানে কিছু 3D মজা করতে এসেছি।
হার্ড ডিস্ক তৈরি করুন
সুতরাং, আপনি এরকম কিছু করতে পারেন:
qemu-img তৈরি করুন -f qcow2 kubuntu.img 20g
ভার্চুয়াল মেশিন এবং 3D গ্রাফিক্স শুরু করুন
টিপুন. যাদু আসে। ভার্চুয়াল মেশিনটি বুট হবে, এবং আপনি শীঘ্রই আপনার বেছে নেওয়া গেস্ট অপারেটিং সিস্টেমের ডেস্কটপ দেখতে পাবেন। আমার পরীক্ষার জন্য, আমি ফেডোরা 32-এর উপরে চলমান কুবুন্টু 20.04 নির্বাচন করেছি। কিন্তু আপনি উইন্ডোজ সহ আপনার অতিথির জন্য আপনার পছন্দের যেকোনো কিছু ব্যবহার করতে পারেন।
আপনি এর সাথে 3D ত্বরণ সক্ষমতা পরীক্ষা করতে পারেন:
glxinfo | grep "ডাইরেক্ট রেন্ডারিং"
এখন, এর মানে এই নয় যে প্রতিটি একক 3D রেন্ডারিং ফাংশন প্রয়োগ করা হয়েছে, তবে এটি একটি ভাল শুরু হলে নিশ্চিত। প্রকৃতপক্ষে, আমার কুবুন্টু ভিএম-এ সমস্ত চমৎকার বিট এবং টুকরা ছিল এবং এটি মোটামুটিভাবে ছিল, যার মধ্যে কঠিন 3D পারফরম্যান্স রয়েছে। এমনকি আমি কি দেয় তা দেখতে PassMarkburn-in পরীক্ষা চালিয়েছি। কুষ্টি।
উপসংহার
ভার্জিল একটি সত্যিই সুন্দর জিনিস মত দেখাচ্ছে. কারণ এটি তুলনামূলকভাবে সহজ এবং সস্তা সমাধান। এখন, আমি এমন লোকেদের চিনি যাদের মাল্টি-জিপিইউ কম্পিউটার আছে, এবং তাদের চতুর VM কনফিগারেশন রয়েছে, যেখানে হোস্ট এবং গেস্ট ভার্চুয়াল মেশিনের দ্বারা আলাদা আলাদা জিপিইউ কার্ড ব্যবহার করা হয়, PCI বাস আইডেন্টিফায়ার এবং হোয়াটনট ব্যবহার করে, তাদের অতিথিদের কাছাকাছি-নেটিভ পারফরম্যান্স প্রদান করে সিস্টেম তবে এটি প্রায়শই একজন সাধারণ বোকারের দক্ষতা এবং বাজেটের বাইরে। কারণ আসুন বাস্তববাদী হই, আসলেই সাধারণ মানুষ লিনাক্স, বা ভার্চুয়ালাইজেশন বা এরকম কিছু ব্যবহার করবে না।
শূন্য এবং সবকিছুর মধ্যে 3D, যদি আপনার ভার্চুয়াল মেশিনে কিছু অভিনব গ্রাফিক্সের প্রয়োজন হয়, তাহলে সম্ভবত ভার্জিল আপনাকে সঠিক স্তরের কার্যকারিতা প্রদান করতে পারে। এটি সম্ভবত কুলুঙ্গি, এটি এখনও বিকাশে রয়েছে, তবে এটি যুক্তিসঙ্গতভাবে ভাল কাজ করে এবং আমার পরীক্ষা থেকে, কর্মক্ষমতা পর্যাপ্ত। আমরা এখনও এমন পর্যায়ে নেই যেখানে ভার্চুয়ালাইজেশন সম্পূর্ণরূপে এবং সম্পূর্ণরূপে শারীরিক হার্ডওয়্যার প্রতিস্থাপন করতে পারে (যদি কখনও), তবে ভার্জিল সঠিক দিকের একটি সঠিক পদক্ষেপ। একটি যান, নীড় দূরে. আমরা এখানে শেষ করেছি।
চিয়ার্স।