شروع به طراحی و پیاده سازی سیستم عامل

خب در سلسله مقالاتی قصد دارم توسعه و طراحی یک سیستم عامل رو توضیح بدم.

برای شروع به چند چیز نیاز داریم :

۱- انگیزه و هدف :

خب معمولش این هست که انگیزه یا هدف رو طوری تعیین کنیم که بتونیم از پسش بر بیایم. اگر شخصی هستید که فقط به جهت علاقه دنبال طراحی و نوشتن سیستم عامل هستید، هدف خود را «لذت از سیستم» یا «فان» تعریف کنید :)

۲- حوصله و دقت :

دقت کنید که حتما دامنه حوصله ای خودتون رو گسترش بدید! چون سیستم عامل مثل برنامه های ساده نیست که نهایتا جایی کم بیاریم کد بقیه رو دست نخورده بیاریم توی برنامه خودمون! ولی نشدنی هم نیست. فقط باید حوصله به خرج بدیم و سیستم عامل خودمون رو با کدها هماهنگ کنیم یا بالعکس! (که کار رو بیشتر کردیم! اون هم بسیار بسیار بیشتر!)

۳- برنامه نویسی :

الف) اسمبلی و C : این دو زبان در کنار هم سیستم عاملهای خوبی رو ساختند! داس ، ویندوز ، لینوکس و تقریبا کل سیستم عاملهای امروزی ترکیبی از این دو هستند ! حال یا بصورت این لاین اسمبلی یا جدا جدا و سپس به هم لینک شدند!

ب) C یا C++ یا هر زبان دلخواه دیگر : این قسمت به خودتون بستگی داره. قسمتهایی مثل بوت لودر عموما با اسمبلی یا سی نوشته میشن در صورتی که سایر قسمت ها با توجه به سیاست های شما یا توانایی هاتون با زبانهای دیگر (از خود C و C++ گرفته تا پاسکال و بیسیک و …) اجرا بشه.

۴- محیط توسعه:

قبلا در این باره بحث شده. ولی باز تکرار میکنم لینوکس (و علی الخصوص اوبونتو) بسیار مناسب هست. اگر نمیخواید روی سیستمتون نصب کنید در VM نصب کرده سپس توسط puTTY و openssh-server از درون ویندوز با هم کار کنید.

۵- منابع:

اگرچه نباید تنها به منابع اینترنتی اکتفا کرد ولی فعلا چند منبع اینترنتی معرفی میکنم :

۱- مایک او اس : http://mikeos.berlios.de

۲- او اس دو : http://wiki.osdev.org    http://forums.osdev.org

۳- او اس دور : http://osdever.net

FacebookTwitterGoogle+Share

منتشرشده توسط

محمدرضا حقیری

نیازی نمی بینم تا اینجا رو پر کنم، ترجیح میدم یه صفحه داشته باشم و کامل توضیح بدم داستان خودم رو :)

8 دیدگاه برای «شروع به طراحی و پیاده سازی سیستم عامل»

  1. سلام.
    وبلاگت جالبه و جالبتر حوصله ی شما در پروژه ی جبیر! :)
    امیدوارم همیشه ادامه داشته باشه و پیشرفت کنه!
    من هم به این موضوع علاقه مند شدم که یک توزیع درست کنم. اگه یکم کاربردی تر توضح بدید خیلی بهتره.
    با تشکر.

      1. منظورم ایجاد توزیعی مثل اوبونتو هست ( نه انشعاب گرفتن از اوبونتو)
        البته برای خودم هم سوال هست که چرا شما از اوبونتو استفاده کردید.
        یا اینکه تا چه زمانی با این روش جلو میرید و بعدا یک توزیع مستقل خواهید داشت یا نه؟

        1. خب اوبونتو خودشم آنچنان مستقل نیست. هنوز ایده های دبیانی داره :)
          ولی استفاده از اوبونتو بخاطر اینه که خیلی چیزا رو پیش ساخته داره.
          ما بهمن ماه نسخه ۴ توزیع رو ارائه میکنیم که کاملا مستقل خواهد بود 😉

          1. خیلی عالیه!
            امیدوارم روز به روز پیشرفت کنید و به بقیه هم در این راه کمک کنید! :)

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

شما می‌توانید از این دستورات HTML استفاده کنید: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>