سیستم عامل ملی زاگرس

به نام خدا

هدف : با ياري خداوند متعال نتيجه اجراي طرح ارائه شده (با عنوان سيستم عامل (zagrOS ، سیستم عاملی خواهد بود قدرتمند ، كاربر پسند ، هماهنگ با سيستم هاي تاچ (لمسي) ، پايدار ، با قابلیت تطبيق با آخرین سخت افزارها ، امكان نصب ساده و امکان نصب در كنار سيستم عامل ويندوز ، با راه اندازي سريع و … .

با ورود ايران به سازمان جهاني تجارت (WTO) كشور ايران مانند ساير كشورهاي توسعه يافته ملزم به رعایت قوانین مالکیت معنوی/فکری (copyright) خواهد بود که در طی آن استفاده از انواع نرم افزار بایستی با مجوز از شرکت سازنده انجام شود . از آنجايي كه در كشور ايران از سيستم عامل ويندوز بعنوان سيستم عامل پیش فرض استفاده میشود  اين اقدام هزينه هاي زيادي را به كشور تحميل خواهد كرد. در اين شرايط نياز به سيستم عاملی مستقل ، كه كليه حقوق آن متعلق به كشور ايران باشد احساس ميشود.

1) بیان اینکه آیا سیستم عامل ملی زاگرس از ابتدا نوشته می شود و یا با استفاده از OpenSourceها میباشد یا فقط قرار است یک پوسته برای سیستم های موجود نوشته شود:
در سیستم عامل ملی زاگرس بنابر این است که از هسته (KERNEL)  سیستم عامل لینوکس که یک سیستم متن باز است استفاده شود .
این هسته از سال 1991 در حال تکمیل و ارتقاء می باشد و نسخه نهایی 2.6.x  هم اکنون در دسترس است ، با استفاده از این کرنل، سیستم عامل ملی زاگرس علاوه بر این که از راه اندازهایی سخت افزاری در سطح هسته این سیستم بهره مند خواهد شد توانایی اجرای برنامه های متن باز (open source)را  نیز خواهد داشت و علت انتخاب این هسته نیز همین است.
سیستم عامل لینوکس با هفت کنسول مجازی راه اندازی می شود و بنابر قرارداد , کنسول مجازی هفتم برای رابط گرافیکی کاربر رزرو است که البته این رابط از روی ترمینال (همان کنسول مجازی) اجرا می شود.
کنسول های مجازی خود دارای چندین پوسته (shell)   هستند که در هر لحظه یکی از آن ها فعال است (به عنوان  مثال sh – bsh – csh – ksh – bash و … )
همچنین لینوکس دارای چندین رابط گرافیکی سطح کاربر (X WINDOW SYSTEM)  است که در هنگام ورود به سیستم (log -in)   قابل انتخاب میباشند . به عنوان مثال GNOME , KDE , XFCE , WindowMaker, Enlightment, Blackbox ,icewm و …
هر واسط گرافیکی خود دارای یک مدیرپنجره مجزاء می باشد به طور مثال مدیرپنجره های (WM)  واسط GNOME برنامه Metacity است. همین برنامه در واسط KDE  برنامه   KDM است.
هر مدیر پنجره خود دارای یک ویجت سِت (Widget set)  است مثلا در برنامه Metacity در واسط گرافیکی گنوم، GDM یک ویجت ست است و این برنامه درKDE برنامه Qt  است.
هر واسط گرافیکی کاربر خود دارای یک مدیر فایل (FileManager)  می باشد. مدیرفایل ها در گنوم برنامه Nautilus و در کی دی ای برنامهKonqueror   است. البته در نسخه جدید کی دی ای، این برنامه جای خود را به برنامه  Dolphin داده است و نهایتا  در XFce برنامه  Thunar برای مدیریت فایل ها به کار می رود.
واسط های گرافیکی کاربر (GUI)  دارای برنامه و ابزار های داخلی مربوط به خود می باشند که البته از یک واسط می توان برنامه های واسط دیگر را نیز اجرا کرد. از آنجایی که سیستم عامل گنو/لینوکس یک سیستم عامل متن باز است برنامه هایی مستقل از واسط کاربر نیز برای آن وجود دارد.
در این شرایط برای انجام کار مشابه چندین برنامه وجود دارد. برای مثال برای انجام ویرایش متنی ساده برنامه های زیادی در بستر لینوکس فراهم آمده است . به عنوان مثال Gedit , Kwrite , Kate , Mousepad , JEdit, xemacs, pico , Vi, Vim   و… که همگی این ها برای انجام عمل یکسان  text-editing  می باشند.
همگی مسائل یاد شده ممکن است در توزیع های مختلف گنو/لینوکس متفاوت باشند و آن هم به دلیل تفکرات خاص شرکت توزیع کننده است.بعضی شرکت های توزیع کننده طرفدار آخرین و به روزترین برنامه ها هستند بعضی دیگر به دنبال با ثبات ترین و پایدارترین برنامه در نوع خود می باشند. تفاوت دیگر توزیع های لینوکس می تواند در نوع نگرش آن شرکت به محصولات تجاری یا نیمه تجاری باشد مثلا این برنامه ها در  توزیع Debian جایی ندارند اما شرکت کانونیکال که توزیع کننده ی لینوکس Ubuntu می باشد با برنامه های نیمه تجاری (قابل استفاده در مدت زمان محدود) مشکلی ندارد.
ممکن است توزیع خاص برای یک مقصود خاصی  ایجاد شده باشد و با دیگران متفاوت باشد، به عنوان مثال توزیع  Parsix  که ویژه فارسی زبانان نوشته شده است اما اغلب توزیع ها در باقی موارد با هم یکسانند.
توزیع لینوکس ملی نیز تمامی مسائل یاد شده در بالا را به همراه دارد و تنها برای کشور ایران سفارشی و مطلوب شده است.
اما سیستم عامل ملی زاگرس تنها و تنها در هسته (KERNEL) با توزیع های لینوکس مشترک است و در باقی موارد دوباره سازی و احیاء خواهد شد.
در سیستم عامل ملی زاگرس بنابر آن است که تمام کنسولهای مجازی (Terminal) حذف شوند و در زمان راه اندازی رابط گرافیکی کاربر بطور مستقل (نه از روی پوسته) مانند آنچه در سیستم عامل مکینتاش و مایکروسافت ویندوز دیده میشود , اجرا شود.
در این حالت پیچیدگی های سایر توزیع های لینوکس از بین میرود و واسط گرافیکی کاربر جزیی از خود سیستم عامل خواهد بود و طبیعی است که تنها یک واسط گرافیکی وجود دارد.
برنامه هایی که بهمراه سیستم عامل نصب می شوند (Accessories) نیز مطابق با واسط گرافیکی سیستم عامل دوباره سازی و یا سفارشی خواهند شد، برنامه های مشابه و کم کاربرد حذف و تنها یک برنامه با واسط گرافیکی یکپارچه وجود خواهد داشت.در این شرایط علاوه بر آزاد شدن فضا, کاربر دچار سردرگمی نخواهد شد و با یادگیری کاربا یک برنامه(به دلیل همین یکپارچگی) , کار با سایر برنامه ها را فرا می گیرد.
سیستم عامل ملی زاگرس علاوه بر اینکه توانایی اجرای برنامه های متن باز را خواهد داشت خود نیز دارای یک کیت توسعه ی نرم افزار(SDK)است , که برنامه نویسان و شرکتهای تجاری میتوانند نرم افزار مخصوص تحت این پلتفرم  را عرضه کنند در این شرایط این سیستم عامل علاوه بر بازار نرم افزارهای رایگان و متن باز , بازار تجاری را نیز پوشش خواهد داد.
یکی از علت های اینکه شرکتهای تجاری مانند Adobe تمایل به عرضه نرم افزار برای سیستم عامل گنو/لینوکس را ندارند همین محدودیت (نرم افزار صرفا رایگان و دارای سورس باز) است و این محدودیت در سیستم عامل ملی زاگرس بر طرف خواهد شد.

2) بیان چگونگی عملیاتی نمودن طرح , جزییات فنی و مولفه های مورد استفاده مثل زبان پیاده سازی:
از آنجایی که سیستم عامل گنو/لینوکس متن باز است و سورس آن در دسترس است براحتی می توان با دست بردن در سورس منبع آن تغییرات مورد نظر را اعمال کرد.
هسته لینوکس (Kernel) بدون ویرایش در سیستم عامل ملی زاگرس قرار می گیرد اما سطح نرم افزاری آن (GNU) دوباره سازی و بازنگری خواهد شد .کدهای اضافه، تکراری و بلااستفاده مانند وجود چندین پوسته , کنسول مجازی و… حذف و در صورت نیاز دوباره نویسی خواهد شد.
سیستم عامل ملی زاگرس به هیچ عنوان رویه ای که در سایر توزیع ها (Distro) دنبال میشود دنبال نخواهد کرد و نتیجه این پروژه توزیع جدیدی از گنو/لینوکس نخواهد بود و خود یک سیستم عامل مستقل است.
در سال 1984 سیستم عامل مکینتاش از روی هسته سیستم عامل Free BSD که خود از خانواده یونیکس است نوشته و پیاده سازی شد. در این سیستم عامل نیز ابتدا از هسته یونیکس استفاده شد و امروز این سیستم عامل یک سیستم عامل مستقل است به این صورت که سایت ویکی پدیا این دو سیستم عامل را از هم جدا میداند.
سیستم عامل ملی زاگرس , مانند سیستم عامل Apple Macintosh با مرور زمان هر چه بیشتر از گنو/لینوکس فاصله میگیرد وبه سرعت از زیر سایه ی این سیستم عامل خارج خواهد شد .
اغلب زبانهای برنامه نویسی سورس کدهای لینوکس تحت زبان C و C شی گرا و در پاره ای از موارد Perl است;
آنچه سیستم عامل ملی زاگرس خواهد داشت:
سیستم عاملی سبک با سرعت راه اندازی بالا , واسط گرافیکی کاربر یکپارچه با سیستم عامل , مطابق با سیستم های تاچ
حذف کلیه ی  پوسته یا shell (حداقل بطور ظاهری) ، واسط گرافیکی و نوشتن یک واسط گرافیکی یکپارچه و مستقل برای سیستم عامل ملی زاگرس (zagrOS)
توانایی نصب و اجرا در سیستم فایل NTFS و در کنار سیستم عامل مایکروسافت ویندوز برای راحتی و نجات از سردرگمی کاربر
توانایی اجرای کلیه برنامه های تحت سیستم عامل گنو/لینوکس و متن باز   (Open Source)
ارائه یک کیت نرم افزاری مستقل(Software Development Kit) جهت ارائه به شرکتهای تجاری برای خارج شدن از وابستگی به نرم افزارهای صرفآ رایگان و متن باز
ارائه یک فروشگاه نرم افزاری یا AppStore بنام  zigzag جهت پیاده سازی و ارائه کلیه ی نرم افزارهای بزرگ و کوچک تحت سیستم عامل ZagrOS بصورت یکپارچه ودر یک محل (بصورت Online) با امکان خرید و فروش توسط شخص ثالث (Third-Party) .
با راه اندازی این فروشگاه نرم افزاری, برنامه نویسان ایرانی قادر خواهند بود برنامه های کوچک وبزرگ در سطح ملی را عرضه کند.در دنیای امروز نرم افزارهای کوچک جای خود را در بازار نرم افزاری باز کرده اند.برنامه های کوچک(App) صرفآ محدود و یا ناقص نیستند و گاهی کاراتر از برنامه های بزرگ (Application) خواهند بود مثلآ برای ایجاد یک قاب دور تصاویر بجای استفاده از برنامه Adobe Photoshop برنامه ای کوچک و صرفآ جهت ایجاد قاب دور تصاویر بسیار کاراتر است . در این شرایط که برنامه نویسان ایرانی خود را از بازار نرم افزار دور می بینند و از رقابت با برنامه های بزرگ و پرطرفدار در حراصند , میتوانند رفته رفته با ارائه این برنامه های کوچک جای خود را در بازار نرم افزار تثبیت کرده و خود بزودی تبدیل به یک قطب نرم افزاری در خاورمیانه و یا حتی در جهان شوند.
دوباره متذکر می شویم که سیستم عامل ملی زاگرس از پروژه لینوکس ملی بسیار فاصله دارد بدین صورت که نتیجه اجرای سیستم عامل لینوکس ملی تنها توزیع (Distribution) جدیدی از سیستم عامل گنو/لینوکس خواهد بود که برای کاربران ایرانی سفارشی و مطلوب شده است .(با امکاناتی مانند:کنترل کامل بر روی هسته و افزودن زبان فارسی )
در حالی که با توجه به دلایلی که پیش از این ذکر شد پروژه سیستم عامل ملی زاگرس یک سیستم عامل مستقل ,مجزا از گنو/لینوکس و دارای نسخه های آتی خواهد بود,سورس نهایی پروژه سیستم عامل ملی زاگرس بسته(Close Source) و غیر قابل تغییر توسط شخص ثالث(Third-Party) است چرا که این محصول یک محصول تجاری خواهد بود و نسخه های آتی آن توسط برنامه نویسان داخلی طی یک برنامه زمانبندی منظم، عرضه خواهد شد.

طرح پژوهشي پيش رو ، علاوه بر معرفي سيستم عامل با امكانات معمول ، امتيازاتي نيز دارد كه به شرح  زير است.

  • · رابط كاربري يكپارچه ، كاربر پسند و هماهنگ با سيستم هاي تاچ(لمسي)

يكي از دلايل عدم تمايل كاربران ايراني به سيستم هاي خانواده UNIX عدم وجود يكپارچگي ، وجود اسامي غير مرتبط با برنامه كاربردي ، تعدد نرم افزار با ظاهر متفاوت براي انجام يك كار و … می باشد.

در اين طرح علاوه بر طراحي مجدد رابط گرافيكي كاربر (GUI) ، رابط كاربري برنامه هاي كاربردي جانبي (Accessories) نيز دوباره سازي خواهد شد تا يكپارچگي در سيستم حاكم شود .

در اين شرايط كاربر با بكارگيري يك  برنامه خاص ، كار با برنامه هاي ديگر را نيز فرا ميگيرد.

در اين رابط جديد تمامي فعاليتها با كليك ، دوبار كليك و يا تركيبي از آنها انجام ميشود و براي كليد سمت راست ماوس(Right Click)  فرماني تعريف نشده است ، بدين ترتيب بستري مناسب را براي كار با سيستم هاي تاچ فراهم آورده است.

  • سيستم عاملي قدرتمند ، ايمن ، پايدار و همراه با هزاران برنامه كاربردي قابل اجرا

نوشتن یک هسته (kernel) با معماري جديد علاوه بر بالا بردن هزينه ها ، بستر نرم افزاري جديدي را تعريف می کند كه مطمئنا زمان زيادي بايد صرف شود تا شركتهاي نرم افزاري تمايل به عرضه برنامه جدید روي اين بستر(Software Development Kit) را پيدا كنند .

در سيستم عامل زاگرس (zagrOS) با بكارگيري هسته لينوكس علاوه بر اين كه قدرتهاي اين سيستم عامل از جمله امنيت بالا ، پايداري (Stability)، تطبيق با آخرين سخت افزارها و … به سيستم عامل ايراني زاگرس به ارث خواهد رسيد همچنین گستره نرم افزاري اين پلت فرم روي سيستم عامل زاگرس قابل اجرا خواهد بود.

در اين جا ذكر اين نكته ضروري است كه اين طرح پژوهشي كاملا متفاوت از پروژه “لينوكس ملي” ميباشد،

چرا كه نتيجه اين پروژه (لينوكس ملي) تنها توزيع جديدي از لينوكس با امكانات فارسي خواهد بود كه با

*پروژه ملي سيستم عامل ايراني زاگرس* قابل مقايسه نميباشد .

  • امكان نصب روي سيستم فايل NTFS

يكي از دلايل وجود پيچيدگي در خانواده UNIX سيستم فايل سلسه مراتبي (Hierarchical File System) آن است ، در اين سيستم فايل قبل از استفاده از هر ابزار (device) و پارتيشن ، ابتدا بايد يك نقطه اتصال(mount point) تعريف كرد . در اين طرح اين امكان تعريف شده است كه بتوان سيستم عامل را روي سيستم فايلNTFS نصب كرد كه علاوه بر اين كه كاربر را از سردرگمي نجات ميدهد ، امكان نصب اين سيستم عامل را در كنار سيستم عامل  Microsoft Windowsبصورت چندگانه (multi boot)

فراهم ميكند .

  • · سرعت بالاي راه اندازي (boot) و به کارگیری سیستم عامل در حداقل زمان

با تعريف يكImage از برنامه های راه انداز ،  قسمتهايي از سيستم عامل که بر روي حافظه اصلي

در هر بار راه اندازی سوار میشوند ، بررسی های سخت افزاری اولیه در هنگام بوت و … می توان image را در راه اندازی بعدی بر روی حافظه اصلی سوار کرد و سرعت راه اندازی را تا حد چشم گيري بالا برد كه شرح جزييات آن متعاقبا منتشر خواهد شد .

نو آوری های زیادی در قسمت طراحی اینترفیس و برنامه های کاربردی همراه با سیستم عامل تعریف شده که کار با سیستم عامل را ساده و مطلوب تر می کند که شاید نمونه آن را تنها در سیستم های مکینتاش شاهد بودیم.

لازم به توضیح است که آنچه بیان شد فرا تر از یک ایده اولیه می باشد و قابل اجرا و پیاده سازی است که تنها با امید به خداوند متعال انتظار می رود با همایت از این پروژه ملی ، شاهد عرضه اولین سیستم عامل تماما ایرانی با امکانات خاص آن باشیم .

نويسنده مطلب :هادي شيرين نويد و پيمان مجيدي معين


دانلود فايل توضيحات سيستم عامل ملي زاگرس

فایل ارائه روز تاییدیه – 17/8/89
دانلود نسخه ورد این صفحه : Document

  • Trackback are closed
  • دیدگاه (0)

بیان دیدگاه