Picture of امیرحسین ایلخانی
امیرحسین ایلخانی

Never give up

لینوکس چیست؟

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

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

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

ساختار سیستم عامل لینوکس

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

هسته  

هسته لینوکس (کرنل) بخش اصلی سیستم عامل است که ارتباط را بین سیستم و نرم افزار را بر قرار میکند. هسته چهار مسئولیت مهم در این سیستم عامل را دارد.

  • مدیریت دستگاه

یک سیستم دارای سخت افزارهای زیادی مثل کارت صدا،رم ،کارت شبکه و … است و هسته میداند هر سخت افزار چه کاری انجام می دهد و قادر به کنترل کردن و تنظیم کردن آن ها است

  • مدیرت حافظه

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

  • مدیریت فرآیند

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

  • مدیرت تماس های سیستمی

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

کتابخانه های سیستم

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

 ابزارهای سیستم عامل

سیستم عامل لینوکس دارای ابزار های بسیار متنوع و مفیدی است که در دسترس همه قرار دارد. با کمک دستورات میتوان به پوشه ها،فایل ها و … دسترسی داشت. آن ها را می توان طبق نیاز کاربر ویرایش داد.

سیستم عامل رایگان و منبع باز 

اکثر سیستم عامل ها کدهای منبع شده آن ها در قالب یک برنامه به نام کامپایلر اجرا میشود. کامپایلر کد ها را به زبان سیستم ترجمه می کند که اصلاح این کد ها کار بسیار سختی است.به طور کلی لینوکس سیستم عاملی است که توسط مردم برای مردم است.

امنیت بالا

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

انتخاب مطلوب برای توسعه دهندگان

لینوکس این قابلیت را دارد که از تمام زبان های برنامه نویسی نظیر پایتون،C،C#،روبی،.. را پشتیبانی کند. علاوه بر این توسعه دهندگان معتقد بر این هستند که ترمینال لینوکس بهتر از خط فرمان ویندوز است. مدیریت بسته کمک میکند که تا نحوه انجام کار ها بهتر درک کنند. برنامه نویسی Bash نیز یک ویژگی کاربردی برای برنامه نویسان است. همچنین ، پشتیبانی SSH به مدیریت سریع سرورها کمک می کند.

انواع توزیع های لینوکس

 توزیع های لینوکس زیادی در بازار موجود است طعم متفاوتی از سیستم عامل لینوکس را در اختیار کاربران قرار می دهد ما می توانیم هر توزیعی را با توجه به نیازهای خود انتخاب کنیم. برخی از توزیع های محبوب Ubuntu ، Fedora ، Debian ، Linux Mint ، Arch Linux و بسیاری دیگر است.