در کل فکر خوبیه. امیدوارم از توسعه اش لذت ببرید.
اما چند تا مساله:
اولین چیزی که در شروع یک کار سنگین و زمانی که میخوای آستین ها رو بالا بزنی و شروع کنی به کد نویسی باید بدونی به کجا میخوای برسی. یعنی یک فیلم، یک سناریو از نحوه توسعه و آینده اون کاری که میخوایم انجام بدیم و اهدافش باید تو ذهنمون داشته باشیم تا بتونیم دست به کار بشیم. اینکه در آینده بتونیم بهره برداری کنیم از این سیستم عامل من به شخصه الان چیزی به ذهنم نمیرسه که چه استفاده ای میشه از این کرد.
وقتی بحث نوشتن سیستم عامل پیش کشیده میشه (دقیقا با اسم سیستم عامل) یعنی درایور و پشتیبانی از شونصد هزار تا سخت افزاری که معلوم نیست چجوری میخوایم به این سخت افزارها دسترسی داشته باشیم. از روزهای DOS و بعدها Windows این سازندگان سخت افزار بودند که به ناچار برای فروش سخت افزارهاشون باید درایور اون سخت افزار رو هم برای DOS و یا Windows مینوشتند. لینوکس با اون پشتیبانی و حمایت جهانی که ازش شد و تا حدودی شناخته شد هنوز که هنوزه یکی از ایرادهای اساسیش همون درایورها هست که برای اکثر سخت افزارها نداره و نمیتونه از تمامی امکاناتشون استفاده کنه.
حالا از این بحث درایورها که خارج بشیم پشتیبانی برنامه نویسها و شرکتها چی؟ آیا تمامی نرم افزارها برای سیستم عامل تون رو خودتون میخواید طراحی کنید؟ یا قرار هست یک clone از ویندوز یا لینوکس بسازید که برنامه های اونها در سیستم عامل شما قابل اجرا باشه؟ اگر اینطور نیست اصولا چه دلایلی یا مزایایی در نظر دارید برای مثلا منِ برنامه نویس بیارید تا من حاضر بشم قید سیستم عاملهای فعلی و قَدَر در بازار رو بزنم و بیام در سیستم عاملی که شما مینویسید نرم افزار بسازم؟
پشتیبانی مالی پروژه هم البته یک مساله هست که باید قبل از شروع پاسخ داده بشه. آدم ممکنه کوتاه مدت برای عشق و حال و لذت از کاری که انجام میده کد نویسی کنه ولی در دراز مدت این کار عملا غیر ممکنه چون یک جایی این پروژه یا ارضا میکنه شما رو از نظر روحی و یا خسته. بنابراین بدون انگیزه مالی یکم دور از ذهن هست که بیشتر از چند ماه دوام بیاره و بعد از یک مدتی پروژه Abandoned
اینها واقعا سوالاتی هستند که باید قبل از شروع کار پاسخ قانع کننده ای براش پیدا بشه.
حالا اگر بیایم بگیم استفاده آموزشی داره باز هم یک سری سوالات مطرح هست اینجا:
میکروسافت حدود دو سه ماه پیش سورس کد نسخه های اولیه MS_DOS رو تحویل موزه داد و اجازه استفاده آموزشی از این سورس کد رو برای همگان داده. کدهایی که بسیار بادقت، بهینه و همراه با توضیحات هست(نمیدونم همش همینطوره یا نه تا جایی که من دیدم اینطور بود). در یک چنین شرایطی نوشتن یک سیستم عامل جدید آیا منطقی هست.
یک استفاده اما مطمئن هستم که داره اون هم اینکه کار لذت بخشی هست و نوشتنش احساس خیلی خوبی به آدم میده. خود من هم یه زمانی این کار رو انجام دادم اما به نوشتن یک Boot Manager ساده با فونتهای فارسی اکتفا کردم و بیشتر از اون دیگه جلو نرفتم.
البته یه توضیح اضافی هم آخر سر در مورد همین پستم بدم اینکه هدف دلسرد کردن شما از پروژه نیست صرفا زدن یک تلنگر ذهنی هست و یا اگر احیانا پاسخهای منطقی و قانع کننده ای به مسائل مطرح شده باشه علاقه دارم که بشنوم.