
معرفی انقلاب در دنیای سیستمعاملها: همکاری مایکروسافت و کنونیکال
در دنیای فناوری، مرزها روزبهروز در حال کمرنگ شدن هستند. یکی از شگفتانگیزترین نمونههای این همگرایی، همکاری تاریخی بین دو غول دنیای سیستمعامل، یعنی مایکروسافت و کنونیکال (سازندهٔ ابونتو) بود. این همکاری منجر به خلق قابلیتی بینظیر در ویندوز 10 شد که برای بسیاری از توسعهدهندگان و کاربران حرفهای، رویایی محسوب میشد. این قابلیت به کاربران اجازه میدهد بدون نیاز به نصب مجزای لینوکس، ابونتو را مستقیماً در محیط ویندوز خود اجرا کنند.
این ویژگی برای اولین بار در آپدیت سالیانه ویندوز 10 (Anniversary Update) که در تابستان ۲۰۱۶ منتشر شد، در دسترس عموم قرار گرفت. البته نسخههای پیشنمایش (Preview) آن از ماه آپریل همان سال توسط برنامهنویسان و علاقهمندان مورد آزمایش قرار گرفته بودند. این قابلیت که با نام Windows Subsystem for Linux (WSL) شناخته میشود، یک زیرسیستم کامل ابونتو را در قلب ویندوز 10 تعبیه میکند و دسترسی به ترمینال خط فرمان Bash و ابزارهای لینوکسی را فراهم میآورد.
Windows Subsystem for Linux (WSL) چیست؟
برای درک عمیقتر این موضوع، باید بدانیم که WSL یک ماشین مجازی یا یک شبیهساز نیست. در واقع، مایکروسافت یک لایه ترجمه (Translation Layer) در هسته ویندوز ایجاد کرده است که فراخوانیهای سیستمی لینوکس (Linux System Calls) را به فراخوانیهای معادل در ویندوز (Windows NT Kernel API) تبدیل میکند. این رویکرد بسیار کارآمدتر از راهکارهای مجازیسازی سنتی است و به برنامههای لینوکسی اجازه میدهد تا تقریباً با سرعت نیتیو (Native) در ویندوز اجرا شوند.
در ابتدا، این زیرسیستم برای اجرای ابزارهای خط فرمان و برنامههای کنسولی طراحی شده بود. اما این آغاز راه بود و ذهن خلاق توسعهدهندگان جامعه متنباز، مرزهای این قابلیت را بسیار فراتر برد.
از خط فرمان تا محیط دسکتاپ: اجرای Unity روی ویندوز
همانطور که گفته شد، هدف اولیه WSL فراهم کردن یک محیط ترمینال قدرتمند برای توسعهدهندگان بود. اما یک توسعهدهنده خلاق با نام کاربری Guerra24 در شبکه اجتماعی گیتهاب (GitHub)، یک گام بزرگ دیگر برداشت. او با تلاش و مهندسی معکوس، موفق شد محیط دسکتاپ ابونتو یونیتی (Ubuntu Unity Desktop) را روی ویندوز 10 اجرا کند.

این دستاورد بسیار چشمگیر بود، زیرا یونیتی یک رابط کاربری گرافیکی (GUI) پیچیده است و اجرای آن نیازمند یک سرور X (X Server) برای مدیریت پنجرهها و گرافیک است. این پروژه نشان داد که پتانسیل WSL بسیار فراتر از یک ترمینال ساده است و میتوان پل ارتباطی کاملی بین دنیای ویندوز و لینوکس ایجاد کرد.
چگونه این کار ممکن شد؟
اجرای محیط گرافیکی لینوکس روی ویندوز نیازمند چندین مولفه کلیدی است که Guerra24 با ترکیب آنها این معجزه را ممکن ساخت. در ادامه، مراحل و ابزارهای مورد نیاز برای این کار را بررسی میکنیم.
- زیرسیستم ویندوز برای لینوکس (WSL): این هسته اصلی است که ابونتو را روی ویندوز اجرا میکند و باید از بخش "Turn Windows features on or off" فعال شود.
- سرور X ویندوز (VcXsrv): از آنجایی که ویندوز به طور پیشفرض از پروتکل X11 (پروتکل اصلی برای نمایش گرافیکی در لینوکس) پشتیبانی نمیکند، باید یک نرمافزار واسطه نصب شود. VcXsrv یک سرور X متنباز برای ویندوز است که وظیفه نمایش پنجرههای برنامههای لینوکسی را بر عهده میگیرد.
- مدیریتکننده تنظیمات کامپیز (CompizConfig Settings Manager): کامپیز (Compiz) مدیر پنجره پیشفرض در محیط یونیتی است که افکتهای سهبعدی و انیمیشنهای زیبای دسکتاپ را مدیریت میکند. با نصب این ابزار در ابونتوی WSL، میتوان تنظیمات لازم برای اجرای یونیتی را پیکربندی کرد.
- XLaunch: این ابزار بخشی از بسته VcXsrv است و برای پیکربندی و راهاندازی سرور X با تنظیمات دلخواه (مانند اتصال از طریق شبکه محلی) استفاده میشود.
مراحل راهاندازی محیط دسکتاپ ابونتو روی ویندوز 10
اگرچه این پروژه در مراحل اولیه خود قرار داشت و باگهایی وجود داشت، اما دستورالعملهای اصلی برای تجربه این قابلیت به شرح زیر بود:
- فعالسازی WSL: ابتدا باید قابلیت "Windows Subsystem for Linux" را در ویندوز 10 فعال کنید.
- نصب ابونتو: از مایکروسافت استور، نسخه ابونتو را نصب کنید.
- نصب VcXsrv: نرمافزار سرور X را روی ویندوز خود نصب و اجرا کنید.
- نصب ابزارهای لینوکس: در ترمینال ابونتو، دستورات لازم برای نصب محیط دسکتاپ یونیتی و CompizConfig Settings Manager را اجرا کنید.
- پیکربندی: با استفاده از CompizConfig، پلاگینهای لازم یونیتی را فعال کرده و متغیرهای DISPLAY را در ترمینال لینوکس تنظیم کنید تا به سرور X ویندوز متصل شوید.
- اجرای دسکتاپ: در نهایت، با اجرای دستور مربوطه، محیط دسکتاپ یونیتی در پنجرهای جدید روی دسکتاپ ویندوز شما ظاهر میشود.
مزایا و کاربردهای این همکاری تاریخی
این قابلیت جدید، مزایای بیشماری را برای گروههای مختلف کاربران به همراه داشت:
- برای توسعهدهندگان وب و نرمافزار: دیگر نیازی به دو بوت کردن یا استفاده از ماشین مجازی سنگین نبود. آنها میتوانستند ابزارهای قدرتمند لینوکس مانند Git, Node.js, Ruby, Python و سرورهایی مانند Apache یا Nginx را مستقیماً در ویندوز خود اجرا کنند و همزمان از IDEهای ویندوزی مانند Visual Studio استفاده نمایند.
- برای مدیران سیستم و شبکه: اجرای اسکریپتهای شل (Shell Scripts) و استفاده از ابزارهای مدیریتی لینوکس مانند SSH, rsync و grep بدون خروج از محیط آشنای ویندوز، کار را بسیار سادهتر میکرد.
- برای دانشجویان و علاقهمندان به لینوکس: این یک فرصت عالی برای یادگیری خط فرمان لینوکس و محیط ابونتو بود بدون اینکه نیازی به نصب مجزای سیستمعامل و درگیر شدن با پارتیشنبندی و مشکلات سختافزاری باشد.
آینده این فناوری و نتیجهگیری
پروژه اجرای یونیتی روی ویندوز 10، اگرچه در ابتدا یک کار آزمایشی و با چالشهای فنی بود، اما آینده روشنی را نوید میداد. این دستاورد نشان داد که دیوار بین اکوسیستمهای ویندوز و لینوکس در حال فرو ریختن است. این همکاری در نهایت به توسعه WSL 2 منجر شد که با یک هسته لینوکس کامل و مجازیسازی سبک، عملکرد و سازگاری بسیار بهتری را ارائه میدهد و امروزه اجرای برنامههای گرافیکی لینوکس (GUI Apps) در WSL 2 به یک قابلیت رسمی و پشتیبانیشده تبدیل شده است.
در نهایت، این امکان به کاربران اجازه میدهد تا تنها با یک سیستمعامل نصبشده، بهترینهای هر دو دنیای ویندوز و لینوکس را در اختیار داشته باشند. این یک پیروزی بزرگ برای جامعه کاربران، توسعهدهندگان و خود مفهوم متنباز است که نشان میدهد همکاری میتواند منجر به خلق ابزارهای فوقالعادهای شود.
نظرات
0دیدگاه خود را ثبت کنید
برای ارسال نظر و مشارکت در گفتگو، لطفا وارد حساب کاربری خود شوید.