برنامه نویسی

سیستم عامل و مفاهیم آن

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

سیستم عامل چیست؟

یک سیستم عامل به عنوان یک واسطه بین کاربر کامپیوتر و سخت افزار کامپیوتر عمل می کند. سیستم عامل نرم افزاری است که سخت افزار کامپیوتر را مدیریت می کند. سخت افزار باید مکانیسم های مناسبی را برای اطمینان از عملکرد صحیح سیستم کامپیوتری و جلوگیری از تداخل برنامه های کاربر در عملکرد صحیح سیستم فراهم کند.

توابع یک سیستم عامل

سیستم عامل دارای عملکردهای زیر است:

بوت شدن

  • از روال های تشخیصی برای آزمایش خرابی تجهیزات سیستم استفاده کنید.

  • برنامه های بایوس (سیستم ورودی/خروجی پایه) را از تراشه های ROM به حافظه اصلی کپی می کند.

  • سیستم عامل را در حافظه اصلی کامپیوتر بارگذاری می کند.

مدیریت منابع کامپیوتری

  • مکان‌هایی را در حافظه اصلی که برنامه‌ها و داده‌ها در آن ذخیره می‌شوند را ردیابی می‌کند (مدیریت حافظه).

  • داده ها و برنامه ها را از طریق پارتیشن بندی، با استفاده از پیش زمینه، استفاده از مناطق a و پس زمینه و استفاده از بافرها و صف ها بین حافظه اصلی و ذخیره سازی ثانویه به عقب و جلو منتقل کنید.

مدیریت فایل ها

خدمات ارائه شده توسط سیستم عامل

انواع مختلفی از خدماتی که سیستم عامل ارائه می دهد وجود دارد. این خدمات عبارتند از:

اجرای برنامه

  • هدف سیستم کامپیوتری این است که به کاربران اجازه دهد تا برنامه ها را به طور موثر اجرا کنند.

  • سیستم عامل محیطی را فراهم می کند که کاربر بتواند به راحتی این برنامه ها را اجرا کند.

  • برای اجرای یک برنامه، ابتدا باید برنامه در رم بارگذاری شود و سپس زمان اجرای آن به CPU اختصاص داده شود.

عملیات I/O

  • هر برنامه نیاز به یک ورودی دارد و پس از پردازش ورودی ارسال شده توسط کاربر یک خروجی تولید می کند.

  • این شامل کاربر دستگاه های I/O می شود.

  • سرویس I/O توسط برنامه های سطح کاربر قابل ارائه نیست و باید توسط سیستم عامل ارائه شود.

دستکاری سیستم فایل

  • در حین کار بر روی کامپیوتر، معمولاً کاربر باید انواع مختلفی از فایل ها را مانند باز کردن یک فایل، ذخیره یک فایل و حذف یک فایل از دیسک ذخیره سازی دستکاری کند.

  • این یک وظیفه مهم است که توسط سیستم عامل نیز انجام می شود.

ارتباط

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

  • ارتباطات ممکن است از طریق حافظه مشترک پیاده سازی شود، که در آن دو یا چند فرآیند در یک بخش مشترک از حافظه می خوانند و می نویسند.

تشخیص خطا

  • وظیفه اصلی سیستم عامل شناسایی و تشخیص خطاهایی مانند بدسکتور روی هارد دیسک، سرریز حافظه و خطاهای مربوط به دستگاه های ورودی/خروجی و سایر قطعات است.

  • پس از شناسایی خطاها، سیستم عامل اقدام مناسبی را برای محاسبات سازگار انجام می دهد.

تخصیص منابع

  • در محیط چندوظیفه ای، زمانی که چندین فرآیند به طور همزمان در حال اجرا هستند، این وظیفه سیستم عامل است که منابع مورد نیاز هر فرآیند را برای استفاده بهتر از آن تخصیص دهد.

  • این منابع شامل CPU، حافظه اصلی، درایو نوار یا ذخیره سازی ثانویه و غیره است.

حفاظت و امنیت

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

  • چنین امنیتی با الزام هر کاربر به احراز هویت در سیستم، معمولاً با استفاده از رمز عبور، برای دسترسی به منابع سیستم شروع می شود.

نوع سیستم عامل

انواع مختلفی از سیستم عامل ها وجود دارد:

سیستم دسته ای

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

سیستم چند برنامه نویسی

در این نوع سیستم عامل، بیش از یک برنامه در حافظه اصلی قرار می گیرد. سیستم عامل یکی از کارهای موجود در حافظه را انتخاب می کند و شروع به اجرای آن می کند. در نهایت، کار ممکن است مجبور شود برای انجام برخی کارها صبر کند، سیستم عامل به سادگی به کار دیگری تغییر می کند و آن را اجرا می کند. وقتی اولین کار تمام شد، کار انتظار CPU را برمی گرداند. تا زمانی که همیشه کاری برای اجرا وجود داشته باشد، CPU هرگز بیکار نخواهد بود.

سیستم اشتراک زمان

یک سیستم عامل با زمان اشتراک گذاری، به بسیاری از کاربران اجازه می دهد کامپیوتر را به طور همزمان به اشتراک بگذارند. یک سیستم عامل با زمان اشتراک گذاری از برنامه ریزی CPU و برنامه نویسی چندگانه استفاده می کند تا به هر کاربر بخش کوچکی از یک کامپیوتر با زمان اشتراک گذاری را ارائه دهد.

سیستم عامل بلادرنگ

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

تفاوت پوسته و هسته

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

فراخوانی سیستم چیست؟

تماس های سیستمی، رابطی را برای سرویس هایی که توسط یک سیستم عامل در دسترس است، فراهم می کند. این تماس‌ها عموماً به‌عنوان روال‌های نوشته شده در C و C++ در دسترس هستند، اگرچه برخی از وظایف سطح پایین (مثلاً کارهایی که باید مستقیماً به سخت‌افزار دسترسی داشته باشند)، ممکن است نیاز به نوشتن با استفاده از زبان اسمبلی داشته باشند.

در زیر برخی از فراخوانی های سیستمی مورد استفاده در مدیریت فرآیند آورده شده است:

  • چنگال(): برای ایجاد یک فرآیند جدید.

  • exec(): برای اجرای یک برنامه جدید در یک فرآیند.

  • صبر کن(): صبر کنید تا فرآیند ایجاد شده اجرای خود را کامل کند.

  • خروج (): برای خروج از اجرای فرآیند.

  • getpid(): برای به دست آوردن شناسه فرآیند از فرآیند جاری.

  • getppid(): برای دریافت شناسه فرآیند والد.

  • brk(): برای افزایش/کاهش اندازه بخش داده یک فرآیند.

برنامه ریزی CPU چیست؟

زمانبندی CPU مدیریت منابع CPU است. مکانیسم زمان‌بندی بخشی از مدیر فرآیند است که حذف فرآیند در حال اجرا از CPU و انتخاب فرآیند دیگری بر اساس یک استراتژی خاص را انجام می‌دهد. زمان بندی CPU اساس سیستم عامل های چند برنامه ریزی شده است. زمانبند مسئول فرآیندهای چندگانه در CPU است. برنامه ریزی CPU برای افزایش استفاده از CPU استفاده می شود.

بسته شدن

در این مقاله، سیستم عامل چیست، کارکردها، انواع و خدمات آن را توضیح دادم. فراخوانی هسته، پوسته و سیستم چیست؟ و زمانبندی CPU چیست؟ حالا شما کمی درک از هر یک از موضوعات دارید. اگر توضیح بیشتری در مورد این یا موضوع دیگری می خواهید فقط در قسمت نظرات به من اطلاع دهید. و ❤️ مقاله را فراموش نکنید. در قسمت بعدی می بینمت

با من ارتباط برقرار کن

نوشته های مشابه

دیدگاهتان را بنویسید

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

دکمه بازگشت به بالا