با ظهور اولین سیستمهای عامل نظیر ام اس داس و یونیکس همه کاربران کامپیوتر و کسانی که مایل به فراگیری علوم کامپیوتر یا کار باسیستمهای رایانه ای بودند میبایست ابتدا فرامین مختلف کامپیوتر را یکی پس از دیگری آموخته و این فرامین را جهت اجرای برنامه ها یا انجام عملیات خاص نظیر کپی فایل، تغییرنام فایلها، فرمت دیسک و .... در محیط متنی تایپ و بکار می بستند . لیکن با پیدایش سیستمهای عامل جدیدتر خصوصا از زمان ایجاد رابطهای گرافیکی در سیستمهای عامل نیاز به فراگیری این دستورات روز بروز کمتر و کمتر شده تا جائی که در حال حاضر یک کاربر ساده کامپیوتر میتواند بیشتر عملیات مورد نظر خود را تنها با چند کلیک ساده ماوس یا اجرای یک برنامه در محیط گرافیکی ویندوز یا لینوکس براحتی به اجرا گذارد . این موضوع رفته رفته نیاز کاربران را به استفاده از صفحه کلید کامپیوتر و مراجعه به خط فرمان متنی سیستمهای عامل کمتر و کمتر نموده و در پاره ای موارد حتی لزوم آموزش و پرداختن به این موضوع کاملا به دست فراموشی سپرده شده است و امروزه میتوان کاربرانی را دید که با محیط متنی و خط فرمان command prompt یا shell کاملا بیگانه هستند .
حال این سئوال پیش می آید که آیا براستی عمردستورات متنی و شلهای فرمان متنی به سر رسیده است ؟!!
همانطوریکه میدانید به دلائل زیر جواب این سئوال منفی است :
1- برخی دستورات و فرامین پایه ای سیستمهای عامل از جمله پیکر بندی اولیه سیستمها و حتی شبکه های کامپیوتری را هنوز هم فقط در محیط فرامین متنی میتوان به اجرا گذاشت .
2- اصولا کار در خط فرمان متنی بدلیل اجتناب ازبکارگیری رابطهای گرافیکی که حجم بالائی از منابع سیستم از جمله حافظه را اشغال میکنند بسیار سریعتر و کم خطر تر است .
3- در واقع کلیه برنامه های اجرائی در محیط گرافیکی به نحوی پس از اخذ دستورات ویژوال یا بصری از کاربر همان فرامین متنی را برای انجام عملیات خود در پس زمینه اجرا میکنند و چه بسا بدلیل ایرادات موجود در نرم افزارها گاهی این دستورات یا به کندی اجرا شده و یا آنها را به درستی نیز اجرا نمی نمایند .
4- کار در محیط فرمان متنی و اجرای دستورات در محیطهای shell از جمله نیازهای اصلی مدیران سیستم و کاربران پیشرفته کامپیوتر است و هیچگاه به کلی منسوخ نخواهد شد .
5- برخی سیستمهای عامل همچون لینوکس با وجود توسعه چشمگیر رابطهای گرافیکی نظیر KDE و GNOME و 000 هنوز به فرامین متنی وابسته اند و بدون دانستن این فرامین نمیتوان از این سیستمها بطور کامل و موثر بهره برد .
نصب گامباس در ooenSUSE 10.2 در سه مرحله انجام می شود :
قبل از هر کاری اخرین نسخه گامباس را از اینجا دانلود کنید
قدم اول نصب ابزار هایی مثل GCC
قدم دوم نصب کتابخانه ها و GUI
قدم نهایی کامپایل و نصب کد منبه گامباس که :
shell> tar xvfj gambas2-1.9.48.tar.bz2
...
list of unpacked files
...
shell> cd gambas-1.9.48
با استفاده از دستور اول بسته کد منبع رو Extract کنید
خط دوم فایل ها و محتویات داخل بسته رو بصورت یک لیست نشون می دهد
و در خط سوم به پوشه حاوی فایل های اکسترت شده برید
shell> ./reconf-all
...
view progress of reconfigure
...
shell> ./configure -C
...
view progress of configure
...
shell> make
...
view progress of make
...
shell> su -c "make install"
Password: enter root password
...
view progress of install
...
و برای اجرا یکی از دستور های زیر رو در ترمینال تایپ کنید
shell> gambas
یا
shell> gambas2
نکته اول اینکه در دو قدم اول تمامی بسته ها(به جز برخی از اونها که در قدم دوم نصب می شوند) در DVD خودopenSUSE 10.2 هست و می تونید از طریق Yste اونها رو نصب کنید.
نکته دوم اینکه برای نصب گامباساگه ازقبل نسخه قدیمی روی سیستمتون نصب و می خواهید نسخه جدید رو نصب کنید لازم که نسخه قبلی رو پاک کنید
و نکته اخر اینکه شما اخرین نسخه گامباس رو دانلود می کنید و یا هر نسخه دیگه در تایپ سه تا دستور اول که توضیح دادم دقت کنید.
لیستبسته های پیش نیاز Install Tools & Graphical User Interface
در چندین شماره پیاپی گذشته ماهنامه شبکه، موضوع فناوری محاسبات 64 بیتی در سیستمعاملهای ویندوز اکسپی و 2003، پلتفرم برنامهنویسی داتنت، بانکهای اطلاعاتی و پردازندههای اینتل و AMD مورد بررسی قرار گرفت. به نظر میرسد معرفی این فناوری در دنیای سیستمعامل لینوکس (که شاید زودتر از ویندوز هم به آن دست یافت) خالی از لطف نباشد.
در اواسط سال 1995، فناوری 32 بیتی بر روی سیستمعاملهای ویندوز 95 مایکروسافت و OS/2 آیبیام پا به عرصه ظهور گذاشت. در آن زمان بسیاری تصور میکردند که فناوری دیگر به انتهای شکوفایی خود رسیدهاست. از اینرو فکر پدیدهای به نام <محاسبات 64 بیتی> را هم در ذهن خود نمیپروراندند. در حالی که در همین زمان و حتی چند سال قبل از آن هم صحبت از فناوری 64 بیتی به میان آمده بود. اما به دلیل اینکه این رخداد در دنیای PC ها و بهویژه محیط پرکاربرد ویندوز مایکروسافت به وقوع نپیوسته بود، کمتر کسی از آن خبر داشت.
در واقع اولین بار در سال 1992 پردازندههای DEC Alpha (مبتنیبر معماری RISC ) امکان دسترسی 64 بیتی به فایل و فایلسیستم را فراهم ساختند. در آن زمان سیستمعاملهای Open VMS و Digital Unix توانستند بهترین بهره را از قابلیتهای این پردازنده ببرند. پس از آن و در سال 1993 لینوکس نیز به جمع سیستمعاملهای پشتیبانیکننده از پردازندههای DEC پیوست و در سال 1995 نیز نسخههایی از لینوکس برای اجرا در پردازندههای 64 بیتی، نظیر Ultra Sparc سان مایکروسیستمز و MIPS آیبیام ساخته شدند؛ درحالیکه در وادی PCها هنوز هم ویندوز و هم لینوکس در دنیای 32 بیتی زندگی میکردند.
بالاخره در سال 2001 شرکت اینتل اولین سری پردازندههای 64بیتی PCها را با نام ایتانیوم به بازار عرضه کرد که فقط برنامههای 64بیتی قادر بودند بر روی یک سیستمعامل 64 بیتی با این پردازنده کار کنند. اینتل بعداً این نقص را با ارائه ایتانیوم 2 که به برنامههای 32 بیتی نیز امکان اجرای سریعتر میداد، برطرف کرد. شرکت AMD نیز در سال 2003 خط تولید انبوه پردازنده 64 بیتی اپترون (Opteron) را رسماً افتتاح کرد. این پردازنده که به داشتن فناوری 64-X86 معروف شد، به راحتی توانست برنامههای 32 و 64 بیتی را اجرا کند و همین مسئله باعث شد اینتل نیز در رقابت با اپترون، پردازندههای سری Xeon را با فناوری و قابلیتهای مشابه بسازد.
بهطورکلی در پردازندههایی که توسط این دو سازنده ساخته شد، تعداد رجیستریهای CPU برای لود کردن تعداد بیشتری دستورالعمل در واحد زمان، به دو برابر افزایش یافتهاست. ضمن اینکه امکان آدرسدهی فضای حافظه برای برنامههای در حال اجرا نیز از چهار گیگابایت به شانزده میلیون گیگابایت افزایش یافت. این موضوع سبب شد سیستمعامل مجبور نباشد به سبب کمبود حافظه قابل آدرسدهی، از هارددیسک به عنوان فضای موقت نگهداری دادهها (Virtual Memory) استفاده کند و بهطور مداوم اطلاعات را جهت پردازش، بین هارددیسک و حافظه ردوبدل کند. در سیستمعاملهای 64 بیتی به خوبی از این امکانات جدید استفاده شدهاست.
برای برنامههای 32بیتی نیز از قابلیت اول و برای برنامههای 64 بیتی از هر دو قابلیت مذکور بهترین بهره برای افزایش سرعت اجرای برنامه برده میشود. به هر حال اگرچه شرکتهای معتبر توزیعکننده لینوکس مثل ردهت یاSUSE مطالعه و آزمایش برروی نسخههای اولیهای از لینوکس 64بیتی را آغاز کرده بودند، اما باید سال 1995 را زمان ورود رسمی لینوکس به دنیای 64 بیتی به حساب آورد. در حال حاضر نیز شرکتهای ردهت و ناول مشغول ارائه سیستمهای 64 بیتی خود هستند.
بهویژه در صنایع گاز، هوا-فضا، داروسازی و برخی صنایع تولیدی دیگر، لینوکسهای 64 بیتی با سرورهای HP ،IBM وNEC یکهتاز میدان هستند. البته این مسئله به همینجا نیز ختم نمیشود و این سیستمعاملهای پرسرعت علاوه بر قدرتی که در سرورهای رده متوسط آیبیام نظیر سری i و p به نمایش گذاشتند، روی پلتفرمهای کوچکتری چون سرورهای سری e آیبیام یا سرورهای Dual Xeon Relion شرکت Penguin Computing نیز کارایی بسیاری نشان دادند. اکنون نیز ناول با سیستمعامل SUSE و ردهت با RHEL (هر دو سری A و ES) راههای آسان و سریعی را برای دستیابی و بهرهمندی شرکتهای کوچک به مزایای محیط 64 بیتی تحت پردازندههای AMD Athlon 64 و Intel Xeon، پدید آوردهاند.
در کاربردهای خانگی یا دسکتاپ نیز اوضاع به همین روال است. علاوهبر دو توزیعکننده معروف ردهت و ناول، دیگران نیز در ساخت لینوکسهای 64بیتی دسکتاپ موفقیتهای غیرقابلانکاری داشتهاند.
نمونه آن، توزیع Ubuntu Linux 5.04 است که از پردازندههای AMD 64 و Power پشتیبانی میکند.
برنامههای 64 بیتی
در زمینه برنامههای کاربردی دو بحث مختلف را میتوان مطرح کرد: یکی در مورد برنامههایی که نقش سرویسدهنده (server) را بازی میکنند و دوم برنامههایی که تک کاربره و دسکتاپ هستند. در مورد اول، بانکهایاطلاعاتی نخستین کاربرد مهم سرورها به شمار میآیند که ارتقا آنها به نسخههای 64 بیتی به دلیل حجم دادهها و پردازشهای همزمان موجود در آنها، بسیار منطقی و مهم به نظر میرسد.
در این حالت در حالی که مایکروسافت نسخه 64 بیتی بانک اطلاعاتی خود (یعنی SQL Server) را بر روی سیستمعامل مختص خود یعنی ویندوز 2003 (یعنی 64 بیتی) توصیه مینماید، در دنیای لینوکس وضع به گونهای دیگر در جریان است. در اینجا ویرایشهای 64 بیتی MySQL و IBM DB2 و از همه مهمتر Oracle 10g به راحتی بر روی لینوکسهایی که به پردازندههای Xeon و ایتانیوم مجهزند، نصب و اجرا میشوند. اما این بانک اطلاعاتی برای اجرا در محیط ویندوز 64 بیتی نیازمند وجود فقط پردازنده ایتانیوم است.
در مورد کاربردهای دسکتاپ و خاص، ذکر یک نکته ضروری است. قبل از آنکه فناوری 64 بیتی مطرح شود، بسیاری از شرکتها مجبور بودند برای دستیابی به سرعت و کارایی موردنظرشان، کامپیوترهای قدرتمند و چندپردازندهای را خریداری نمایند. برخی از این کامپیوترها، مثل سری SGI و چند نوع دیگر که برای کاربردهای خاصی مثلفیلمسازی، طراحی انیمیشن، صنایع داروسازی، شبیهسازی پرواز یا امثال آن مورد استفاده قرار میگرفتند، از معماری و ترکیب خاصی در تجهیزات برخوردار بود و در مقایسه با PCهای معمولی بسیار گران به نظر میرسیدند.
اما اکنون با فراگیر شدن فناوری 64بیتی و بهویژه با پشتیبانی دو پردازنده اپترون و Xeon (فناوری 64-86X) حتی لپتاپها نیز تاحدودی قادر به برآورده ساختن برخی از این نوع نیازها شدهاند. اثرات این پیشرفت را میتوان به وضوح در برخی کاربردهای عام دسکتاپ مشاهدهکرد. افزایش سرعت در برنامههای ویرایش تصویر و گرافیک مانندGIMP یا برنامههای محاسباتی مثل Open Office، از جمله این موارد به حساب میآیند. از طرفی دیگر به نظر میرسد در آینده نزدیک نیز شاهد مهاجرت بسیاری از برنامههای 32 بیتی فعلی به نسخههای 64 بیتی خواهیم بود. شاید آرزوی دیدن برنامههای محبوبی مانند Flash در دنیای 64 بیتی، چندان دور از دسترس نباشد.
معماری لینوکس 64 بیتی
یک لینوکس 64 بیتی یعنی لینوکسی که دارای کرنل و GNU کامپایل شده 64 بیتی است، قاعدتاً باید در کنار توابع کتابخانهای 32بیتی، توابعی برای اجرای 64 بیتی برنامههای 64 بیتی نیز داشته باشد. یعنی از آنجا که سیستمعامل 64 بیتی باید بتواند هم برنامههای 32بیتی و هم برنامههای 64 بیتی را اجرا نماید، باید از هر کتابخانه، دو نسخه مختلف را در کنار هم داشته باشد. مثلاً توابعی که برای کامپایل و اجرای برنامههای نوشته شده به زبانC مورد استفاده قرار میگیرند (مثل کتابخانه glibc) باید در هر دو فرمت 32 و 64 بیتی در دسترس باشند. به عنوان مثال فدورا، کتابخانههای 32بیتی را در دایرکتوری Lib/Usr/Lib و کتابخانههای 64بیتی را در دایرکتوری Lib64/Usr/Lib64 قرار میدهد تا در موقع مناسب مورداستفاده برنامههای 32 یا 64 بیتی قرار گیرند. به این حالت، Dynamic Multilib گفته میشود.
بههمین ترتیب میتوان حتی برنامههایی که توسط برنامهنویسان و در قالب Package نوشته و در سیستم نصب میشوند را نیز تقسیمبندی کرد. از این لحاظ برنامههای Package به دو دسته تقسیم میشوند: یکی آنهایی که فقط برای کار کردن در یک محیط (32 یا 64 بیتی) ساخته میشوند و دوم آنهایی که شبیه Multilib خود لینوکس، در قالب دو نسخه و برای قابلاجرا بودن در هر دو محیط ساختهشده و به نام Multilib Package شناخته میشوند.
کاملاً واضح است که در صورتی که از روش دوم برای ساخت برنامههای کاربردی استفاده شود، باید تمهیداتی به کار بسته شود تا هر نسخه (32 یا 64بیتی) برنامه بتواند در زمان اجرا شدن بر روی لینوکس، محیط خود را شناسایی نماید و مسیر صحیح قرار گرفتن کتابخانههای همگون و مربوط (Multilib) را پیدا و از آنها استفاده کند. بدیهی است درغیراینصورت ممکن است برنامههای 32 یا 64بیتی به اشتباه از کتابخانههای یکدیگر استفادهکنند و در نتیجه قابل اجرا بر روی سیستم نباشند.
مسئله مهم دیگر وجود بعضی plug inهای قدیمی در محیط 64 بیتی است. فرض کنید یک لینوکس 64 بیتی دارید که از یک مرورگر وب فایرفاکس 64 بیتی استفاده میکند و شما وارد سایتی میشوید که جلوهای ساخته شده باFlash را به شما نشانمیدهد. اتفاقی که در اینجا رخ میدهد این است که از آنجا که برنامه اصلی در حال اجرا (یعنی فایرفاکس) یک برنامه 64 بیتی است، سیستمعامل برای اجرای تصاویر فلاش به دنبال plug in نسخه 64بیتی میگردد و چون هنوز این plug in برای لینوکس 64 بیتی ساخته نشده یا در دسترس نیست، سعی میکند از plug in نسخه 32 بیتی آن استفاده نماید؛ غافل از آن که فایرفاکس 64بیتی نمیتواند 32plug in بیتی را اجرانماید.
بنابراین هیچ چیزی نمایش داده نمیشود و زمانی که به Help سیستمعامل مراجعه میکنید، تازه متوجه میشوید که باید فعلاً از فایرفاکس 64 بیتی صرفنظر کنید و همان نسخه قبلیاش را مورد استفاده قرار دهید تا زمانی که مطمئن شوید کلیه سازندگان plug inهای اینترنتی، نسخه 64 بیتی ویژه لینوکس را ساخته و ارائه کردهاند.
در دنیای ویندوز این معضل تقریباً با کمک شبیهسازی به نام WOW 64 حل شده است. این شبیهساز قادر است برنامهها و یا plug inهای قدیمی نوشته شده برای محیط 32 بیتی را در ویندوز 64 بیتی اجرا نماید. شاید این مسئله به همراه مشکل مربوط به وجود درایورهای سختافزاری در محیطهای 64 بیتی، از معدود نقاط برتری فناوری 64 بیتی در ویندوز نسبت به لینوکس باشد. در حالی که هم اکنون شرکتهایی همانند ردهت به شدت مشغول سازگارسازی و قابلاجرا نمودن برنامهها و درایورهای سختافزاری 32 بیتی بر روی محیط 64 بیتی هستند و احتمال اینکه در آینده نزدیک این مشکل را به طور کلی برطرف کنند و دنیای اپنسورس را با جهشی چشمگیر در عرصه 64 بیتی مطرح سازند، بسیار زیاد است. به هر حال همیشه راهحلهای متمرکز و انحصاری در تقابل با اندیشههای نو و متعدد اپنسورس، رقابتهای جالبی را به نمایش گذاشته است. پس شاید در این زمینه نیز به زودی شاهد رویدادهای جدیدی باشیم.
منبع : ماهنامه شبکه