HDG توضیح می دهد: یونیکس چیست؟

سه تا از محبوب ترین سیستم عامل ها در سراسر جهان ویندوز(Windows) ، مک(Mac) و لینوکس(Linux) هستند. این سه سیستم عامل همه مطبوعات را دریافت می کنند، دو سیستم عامل اولی بیشتر از دومی، و احتمالاً تنها سیستم هایی هستند که در مورد خودتان شنیده اید.

اگر به شما بگویم که دو مورد از سه سیستم عامل محبوب در واقع فلسفه های اصلی چیزی به نام یونیکس(UNIX) را در خود جای داده اند، چه می شود ؟ این فلسفه ها مفاهیم اساسی یک سیستم اشتراک زمانی هستند که به چندین کاربر اجازه می دهد همزمان به یک رایانه مرکزی واحد دسترسی داشته باشند.

یونیکس(UNIX) که در سال 1970 توسعه یافت و به عنوان یک سیستم کوچک و انعطاف پذیر طراحی شد که منحصراً توسط برنامه نویسان مورد استفاده قرار می گرفت، به سرعت به یک سیستم عامل پیشرو برای ایستگاه های کاری تبدیل شد. اما واقعا چقدر در(you) مورد یونیکس می دانید؟

HDG توضیح می دهد: یونیکس چیست؟

سیستم عامل های یونیکس(UNIX) و یونیکس مانند(UNIX-like) قوی ترین و محبوب ترین سیستم عامل های چند کاربره و چند وظیفه ای در بازار هستند. چندین نسل از یونیکس(UNIX) برای ماشین‌های مختلف در طول سال‌ها از جمله سیستم‌های مدرن POSIX مانند لینوکس(Linux) ، انواع مختلف آن و سیستم‌عامل مک توسعه یافته‌اند(Mac OS) . باورش سخت(Hard) است که چیزی به این قدرتمندی بتواند چنین آغاز فروتنی داشته باشد.

یونیکس که در (UNIX)آزمایشگاه‌های (Laboratories)تلفن(Bell Telephone) بل یا آزمایشگاه‌های بل(Bell Labs) توسط تعداد کمی از برنامه‌نویسان توسعه داده شد، به زبان برنامه‌نویسی C نوشته شد. این امکان را به آن می داد که عملاً روی هر رایانه ای که دارای کامپایلر C باشد نصب شود. این به تنهایی قابلیت حمل، انعطاف پذیری طبیعی  یونیکس را به همراه داشت و خود را به عنوان یک گزینه نسبتاً قدرتمند به عنوان یک سیستم عامل به ارمغان آورد.(UNIX)

علاوه بر ارزان بودن، آزمایشگاه بل(Bell Labs) سیستم عامل را به شکل زبان مبدأ آن توزیع کرد و به هر کسی که آن را در دست داشت اجازه می داد آن را برای اهداف خود تغییر داده و سفارشی کند. این ده ها نسخه مختلف یونیکس(UNIX) را در طول یک دهه به وجود آورد که در سایت های مختلف اجرا می شدند.

آزمایشگاه‌های بل(Bell Labs) در نهایت در سال 1984 از هم پاشیدند(UNIX) . آنها چیزی را توسعه دادند که بسیاری آن را بسیار محدودکننده می دیدند، یکی از آنها ریچارد استالمن(Richard Stallman) ، مسئول پروژه گنو(GNU) بود. پروژه گنو(GNU) اساس لینوکسی(Linux) است که امروزه می شناسیم زیرا از هسته لینوکس(Linux) تشکیل شده است و نه هسته یونیکس(UNIX) .

با این حال، لینوکس از (Linux)MINIX الهام گرفته شد ، که یک سیستم عامل یونیکس مانند بود که برای اهداف آموزشی ایجاد شد. این امر منجر به یک نوع اثر دومینو برای اکثر سیستم عامل های موجود امروزی شده است. GNU/Linux برگرفته از طراحی یونیکس است و به نوبه خود، بسیاری از سیستم عامل‌های امروزی، از جمله اندروید(Android) ، کروم(Chrome OS) ، سیستم عامل Steam(Steam OS) و تعداد زیادی از سیستم‌عامل‌های تعبیه‌شده برای دستگاه‌ها، بر پایه لینوکس(Linux) هستند.

استاندارد یونیکس

استانداردی به وجود آمد، اما بر اساس هیچ چیزی توسط AT&T نبود. امروزه، علامت تجاری "UNIX" متعلق به The Open Group است. همین امر را می توان در مورد مشخصات یونیکس واحد(Single UNIX Specification) نیز گفت . هر(Any) سیستم عاملی که از یونیکس(UNIX) استفاده می کند باید توسط The Open Group تایید شده باشد و با (Open Group)مشخصات یونیکس واحد(Single UNIX Specification) مطابقت داشته باشد .

همانطور که توسط The Open Group نشان داده شده است: 

برای هر کسی که علاقه مند به بازدید از پیوند در تصویر است، اینجاست(here it is) .

(POSIX)همانطور که قبلا ذکر شد POSIX یک خانواده استاندارد است که توسط موسسه مهندسین برق و الکترونیک (IEEE)(Institute of Electrical and Electronic Engineers (IEEE)) مشخص شده است. آنها برای شفاف سازی و یکنواخت کردن رابط های برنامه نویسی کاربردی ارائه شده توسط سیستم عامل های مشابه یونیکس خدمت می کنند.

این باعث می شود که وقتی برنامه ای متکی به استانداردهای POSIX می نویسید ، قابلیت حمل و کارکرد در میان خانواده بزرگ مشتقات یونیکس مانند Linux و Mac OS آسان می شود. استفاده از API یا کد غیر استاندارد به عنوان بخشی از POSIX برای سیستم‌عامل‌های مشابه یونیکس،(UNIX-like) قابلیت حمل به سایر سیستم‌های مشابه یونیکس را به(UNIX-like) طور فزاینده‌ای دشوارتر می‌کند.

برنامه ها(Programs) ، سیستم(Systems) ها و زیرسیستم(Subsystems) های یونیکس چیست؟

(UNIX)دستورات یونیکس بر روی یک رابط خط فرمان ارائه شده توسط یک پوسته(shell) اجرا می شوند. این پوسته برنامه‌ای است که دستورات وارد شده را می‌خواند و یا خودش اجرا می‌کند یا به هسته(kernel) ارسال می‌کند.

«هسته هسته» چیزی است که سیستم‌های یونیکس(UNIX) پیرامون آن ساخته شده‌اند که سیستم و سایر فرآیندها را مدیریت می‌کند. این هسته سیستم عامل یونیکس(UNIX) است و به طور مستقیم با سخت افزار زیرین برای ارائه مجموعه ای از خدمات استاندارد تعامل دارد. زیرسیستم های هسته(Kernel) ممکن است شامل مدیریت فرآیند، مدیریت فایل، مدیریت حافظه، مدیریت شبکه و غیره باشند.

چند فلسفه اصلی، از جمله الزاماتی مانند تک منظوره، قابلیت همکاری، و کار با یک رابط متنی استاندارد، چیزی است که برنامه های یونیکس(UNIX) در مورد آن طراحی شده اند. 

هنگامی که صحبت از ویژگی های یونیکس(UNIX) می شود، در اینجا لیستی از چند ویژگی برجسته آورده شده است:

  • اجازه می دهد تا استفاده از منابع یکسان توسط کاربران مختلف در یک سیستم واحد به اشتراک گذاشته شود.
  • چند وظیفه ای را ارائه می دهد(Provides) که در آن هر کاربر می تواند چندین فرآیند را همزمان اجرا کند.
  • اولین سیستم عاملی است که به زبانی سطح بالا نوشته شده است و به آسانی می توان آن را به ماشین های دیگر با حداقل تطبیق ها منتقل کرد.
  • ساختار فایل سلسله مراتبی که امکان دسترسی و نگهداری آسان تر از داده ها را فراهم می کند.
  • توابع شبکه داخلی برای تبادل آسان اطلاعات بین کاربران.

چرا یونیکس اهمیت دارد؟

جدای از ویندوز(Windows) و سیستم‌های مبتنی بر ویندوز(Windows) ، اکثریت سیستم‌عامل‌هایی که می‌بینید دارای فلسفه‌های مبتنی بر یونیکس(UNIX) هستند. اگر به ترمینال یا فایل سیستم Mac OS X(Mac OS X) نگاهی بیندازید ، متوجه شباهت قابل توجهی به لینوکس(Linux) خواهید شد. که هر دو(Both) کاملاً با ویندوز(Windows) متفاوت هستند . این به این دلیل است که لینوکس(Linux) و سیستم عامل مک سیستم‌هایی شبیه (Mac OS)یونیکس(UNIX) هستند .

درک این موضوع به شما کمک می کند تا درک کنید که یونیکس(UNIX) چقدر مهم بوده و بوده است. یکی از اصلی‌ترین فلسفه‌های یونیکس(UNIX) که امروزه مورد استفاده قرار می‌گیرد، ایجاد ابزارهای کوچک و مدولار برای انجام یک کار منحصر به فرد در سطح استثنایی از کارایی است. آشنایی با ترمینال سیستم عامل مک(Mac OS Terminal) باعث می شود با ترمینال لینوکس(Linux Terminal) و بالعکس آشنا شوید. به طور خلاصه این یونیکس است.(UNIX)

سیستم‌های مشابه یونیکس(UNIX) برای برقراری ارتباط برنامه‌ها با یکدیگر به یک فایل سیستم تکیه می‌کنند. سیستم های ویندوز مانند به DOS(DOS) متکی هستند . به همین دلیل است که فقط سیستم های ویندوز مانند دارای حروف درایو هستند. همه سیستم عامل های دیگر آن را دارند به طوری که هر فایل روی سیستم بخشی از یک سلسله مراتب دایرکتوری واحد است. باز هم(Again) ، همه به لطف فلسفه های یونیکس .(UNIX)

یونیکس(UNIX) را می‌توان در معماری سیستم‌عامل‌هایی مانند BSD ، Linux و Mac OS کاملاً با طراحی مشاهده کرد. می توان گفت که بدون یونیکس(UNIX) ، هیچ سیستم عامل مک(Mac OS) وجود نخواهد داشت ، و احتمالاً همین امر را می توان در مورد رقبای آن، از جمله ویندوز(Windows) ، گفت .

واضح است که ما در اینجا هذلولی هستیم. با(Though) این حال، باید اعتراف کنید که یونیکس(UNIX) نقش مهمی در توسعه هر سیستم عاملی که امروزه استفاده می شود، ایفا کرده است. اگر این اهمیت یونیکس(UNIX) و فلسفه های آن را نشان نمی دهد، مطمئن نیستم که چه خواهد شد.



About the author

من یک متخصص کامپیوتر هستم که تجربه کار با نرم افزارهای Microsoft Office از جمله Excel و PowerPoint را دارم. من همچنین با کروم که یک مرورگر متعلق به گوگل است، تجربه دارم. مهارت های من شامل ارتباط نوشتاری و کلامی عالی، حل مسئله و تفکر انتقادی است.



Related posts