De.coder
471 subscribers
458 photos
44 videos
191 files
300 links
Download Telegram
BUILD ‌YOUR ‌OWN‌ OS

قسمت اول : سیستم عامل

سیستم‌‌عامل یک نرم افزار سیستمی است که وظایف متعددی را بر عهده دارد. سیستم‌‌عامل در وهله‌ی اول به عنوان پلی بین سخت‌افزار و نرم‌افزار عمل می کند و به شما امکان کنترل سخت افزار را می دهد. سیستم‌عامل همچنین بستری را برای اجرای برنامه هافراهم می کند و خدمات لازم را در اختیارشان قرار می دهد. به طور کلی سیستم‌عامل مجموعه‌ای از هسته و برنامه‌های متعدد است که هر برنامه برای تحقق هدفی خاص طراحی شده است . این برنامه‌ها از طریق واسط‌های کاربردی یا فراخوانی سیستمی به خدمات سیستم‌عامل دسترسی دارند. سیستم‌عامل علاوه بر پاسخ به نیاز‌های کاربر یا نرم‌افزار‌ها ، وظیفه مدیریت منابع و حافظه‌ ذخیره سازی را نیز بر عهده دارد و این امکان را فراهم می کند که در زمان لازم داده ها و فضاهای ذخیره‌سازی را به اشتراک بگذارد. سیستم عامل ها همچنین وظیفه‌ی حفظ امنیت را نیز بر عهده دارند.
اما از آنجایی که هدف از تمام این توضیحات این است که شما را در مسیر نوشتن سیستم‌عامل شخصیتان قرار دهیم سعی بر این است که عمده‌ی مطالب به سیستم‌عامل‌های متن باز اختصاص داده شود.
به طور کلی شناخته شده‌ترین سیستم‌عامل‌های متن باز سیستم‌عامل‌های یونیکس و شبه-یونیکس هستند که به تفاوت آنها در مطالب گذشته پرداخته شده است. به طور کلی سیستم عامل های متن باز از یک هسته (KERNEL) و مجموعه ای از ‌برنامه‌ها تشکیل(USERLAND) شده است. این نرم‌افزارها که بخش عمده ای از یک سیستم‌عامل را تشکیل می دهند وظیفه برقراری ارتباط با سخت‌افزار به طور مستقیم یا استفاده از سخت‌افزار به طور غیر مستقیم را برای پاسخ به نیاز‌های کاربر دارند. اما برای دسترسی به سخت‌افزار نیاز به استفاده از دستورات سطح پائین در کد نویسی خود داریم و برای هر برنامه‌ای که نوشته می شود این دستورات باید مجددا تکرار شوند. در این جا است که وجود یک هسته اهمیت پیدا می کند تا نیاز برنامه‌ها برای دسترسی به سخت‌افزار و انتقال اطلاعات را مرتفع سازد
هسته‌‌ها (Kernels)و مجموعه‌های(Userland) فروانی وجود دارد که ترکیب هر یک از آنها با یکدیگر سیستم‌عامل‌های متفاوتی را ایجاد می کند که به آنها در قسمت های بعد می پردازیم.
#parsa
#OS
#BUILD_YOUR_OWN_OS
@de_coder