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

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

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

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

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

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

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

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

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

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

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

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

۵- منابع:

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

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

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

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

Share

خرابکاری در ۸ دقیقه !

از عنوان مشخصه که قصد دارم در مورد یک خرابکاری اساسی بنویسم!

درسته. نسخه ای از جبیر ۴ که تقریبا تمام ملزوماتش آماده بود رو خراب کردم 🙂 . داشتم چند برنامه رو کانفیگ میکردم که متوجه شدم کل میزکار رو دگرگون کردم و لاگین منیجر رو هم کلا داغون نمودم!

اکنون چه کنم؟ سیستم عامل بالا نمیاد! یعنی تو گراب ریست میشه سیستم و فقط به ویندوز ۸ م دسترسی دارم. فکر کنم باید از صفر ساخته بشه. پس تا اوایل بهمن ماه خداحافظ جبیر :))

Share

آیا نسخه OEM صرفا برای کسب درآمد است؟

در پست قبلی اشاره کردم که قرار هست نسخه OEM از جبیر ساخته بشه و در صورت نیاز به تولید کنندگان سخت افزار فروخته بشه.

نسخه OEM ویژگی هایی داره که نسخه های عادی فاقد اون هستند : بی نام و نشان به تولید کننده و کاربر میرسه.

برای تولید چنین چیزی باید بسته ای به نام oem-conifg رو کامپایل ، بسته بندی ، نصب و کانفیگ کنیم. خب اما در ادامه به مزایا و سیاستهایی که نسخه OEM به همراه خواهد داشت رو توضیح میدم.

ادامه خواندن آیا نسخه OEM صرفا برای کسب درآمد است؟

Share

تغییراتی در پروژه جبیر

با سلام خدمت همه خوانندگان عزیز وبلاگ.

پروژه جبیر رو کماکان میشناسید. پروژه ای متشکل از چندین بخش. در این مطلب تغییراتی رو که در پروژه از نسخه ۴ به بعد خواهید دید رو مینویسم.

البته معمول بود که در انجمن  های تخصصی IranBSD   بنویسم.

ادامه خواندن تغییراتی در پروژه جبیر

Share

ساخت یک ایزوی اصلاح شده از FreeBSD – قسمت اول

با سلام.

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

در این سلسله آموزش قصد دارم در مورد ریمسترینگ و ساخت یک توزیع سفارشی از FreeBSD مطلب بنویسم…

ادامه خواندن ساخت یک ایزوی اصلاح شده از FreeBSD – قسمت اول

Share

واکنش هیتلر به گنوم ۳!

دوستان ویدئویی از واکنش هیتلر به گنوم ۳ 🙂 با زیرنویس انگلیسی.

در این ویدئو نشان داده شده که هیتلر برای مدت زیادی کاربر گنوم ۲ بوده و حالا قصد مهاجرت به نسخه ۳ رو داره …

ولی وقتی در مورد نسخه ۳ چیزهایی رو میشنوه واکنش عجیبی نشون میده 🙂

 

واکنش هیتلر

Share

کانسپتی از Bash درونی ویندوز!

با سلام.

همه کاربران لینوکس دست کم یکبار گذارشون به Bash افتاده. این رابط متنی قدرتمند در ویندوز هم میتونه مورد استفاده قرار بگیره. توسط برنامه ای به اسم Cygwin . البته برنامه Git Bash هم میتونه یک Bash کامل به همراه Vim و Nano و … هم ارائه کنه 🙂 .

حال با خودم گفتم اگر این درونی بود چی میشد؟ یعنی اینکه بجای شل (مزخرف) batch از bash استفاده میشد در ساختش. و cmd رو به این شکل در آوردم :

خب چطور این شکلیش کردم؟

ابتدا cmd رو باز کنید .

حالا عنوان رو تغییر بدید :

title Bash

خب اکنون Prompt رو طوری تغییر میدم که به بش نزدیک تر بشه 🙂


prompt #

البته با $ هم تست کردم ولی متاسفانه کار نمیکنه. کاراکتر های * و # رو تست کردم. باقی کاراکتر ها رو هم خودتون تست کنید و حداقل از ظاهر شل خودتون لذت ببرید :))

Share

چرا BSD ما منتشر نشد؟

با سلام.

چند وقت پیش اعلام کرده بودم که BSD ما یعنی JabirOS BSD که الان به JT-UX تغییر نام داده ، بزودی منتشر میشه. همه جا هم خبری ازش زدیم. قرار بود مبتنی بر OpenBSD عرضه بشه. خب یک سری موارد پیش اومد که بهتر دیدم در این مورد شفاف سازی کنم :).

پس در ادامه متن با من باشید ….

ادامه خواندن چرا BSD ما منتشر نشد؟

Share

ویندوز ۸ را جور دیگر باید درک کنیم.

با سلام.

از یک گیک لینوکسی یا شخصی که توزیعی از لینوکس ایجاد کرده یا حتی یک طرفدار لینوکس انتظار تعریف از سیستم عاملهای غیر آزاد یا لااقل ویندوز نمیرود. اما ویندوز در نسخه جدید خود خوبی هایی رو به همراه داشت که اول از همه من رو تحریک به نصب کرد و بعد از اون مدت نسبتا زیادی (در زمانی که روی Developer Preview بودم نهایتا ۲ ساعت بعد همه پارتیشن های مرتبط را پاک میکردم) روی نسخه نهایی موندم. و البته تمام نرم افزارهای مورد نیازم رو دانلود و نصب کردم …

ادامه خواندن ویندوز ۸ را جور دیگر باید درک کنیم.

Share

ویندوز قاصدک!

با سلام.

روا نیست که بیش از حد به چیزی گیر بدیم ، یا سعی در تمسخرش داشته باشیم، ولی فکر کنم اگر خود مایکروسافت هم سیستم عاملی غیر از ویندوز تولید کنه و اسمش رو مثلا بزاره X ، اون رو «ویندوز X » خطاب کنه.

ما حتی انتظار گفتن «لینوکس قاصدک» هم از ایشون نداشتیم ، ولی خب … خودتون ببینید:

 

لینک منبع

Share

وبلاگ شخصی محمدرضا حقیری، برنامه‌نویس، گیک و یک شخص خوشحال