MAHDIAR
17th November 2009, 03:00 PM
مفاهیم اولیه در گنو/لینوکس
admin | ۱۷:۰۶
در ایـن مقاله کوتاه سـعی داریـم تا مفاهیم اولیهای را که هر کاربر تازهکار گنو/لینوکس در ابتدای کار با آنها برخورد و تعامل خواهد داشت را به طور اجمالی شرح دهیم. آشنایی با این مفاهیم میتواند تا حد زیادی راهنمای کاربرانی باشد که از سیستمعاملهای دیگر به گنو/لینوکس مهاجرت میکنند.
● هسته لینوکس http://www.gnu.org/graphics/babies/GnuTuxSoftRevolution-v1.jpg (http://www.gnu.org/graphics/babies/GnuTuxSoftRevolution-v1.jpg)
هسته لینوکس بخــش مــرکــزی تشکــیلدهنده سیسـتـمعامل گنو/لینوکس اسـت. بخشــی کـه بـه طــور مستقیم با سختافزار سیستـم شما در ارتباط است و امکان استفاده از قابلیتهای سختافزار را برای کــاربر فــراهــم میکنــد. هسته لینوکس نخستینبار توسط "لینوس توروالدز" دانشجوی فنلاندی در سال ۱۹۹۱ منتشر و سپس کاربران شروع به استفاده و توسعه آن کردند و با ترکیب آن به همراه ابزارهای پروژه گنو، سیستمعامل گنو/لینوکس متولد شد.
● ابزارهای پروژه گنو
ابزارهای ایجاد شده توسط پروژه گنو هستند که با ترکیب هسته لینوکس تشکیل یک سیستـمعامل کامل موسوم به گنو/لینوکس را میدهند. برخــی از ایــن ابــزارها عبــارتند از: کتابخانه زبان C، مجموعه کامپایلرهای GCC، ویرایشگر متن، پوسته فرمان یا مفسر خط فرمان و… . این ابزارها توسط پروژه گنو که در سال ۱۹۸۴ توسـط "ریچــارد استـالمن" آغـــاز شد، توسعه پیدا میکنند.
● پوسته فرمان
پوسته فرمان یا خط فرمان مهمتــرین ویژگی مشترک بین سیستمعاملهای سازگار با یونیکس است. پوسته فرمان توسط ابزارهایی موسوم به مفسر خط فرمان کنترل میشوند. در گنو/لینوکس مفسر پیشگزیده خط فرمان مفسر Bash به شمار میرود که از ابزارهای توسعهیافته توسط پروژه گنو است. در برابر امکانات، ویژگیها و سهولت کارکردی که در پوسته فرمانهای سیستمعاملهای خانواده یونیکس وجود دارد، خط فرمان سیستمعاملهایی مانند داس و ویندوز بازیچهای بیش نیستند. بسیاری از کارهایی را که با استفاده از ابزارهای گرافیکی میتوانید انجام دهید، از طریق پوسته فرمان نیز قابل انجام هستند.
● محیط X
محیط X یا X Window ایجادکننده زیرساختارهای لازم بـرای برنامههای با رابط کاربری گرافیکی و میزکارهای مختلف است. برای مثال، این X است که نحوه کشیدن پنجرهها روی صفحهنمایش یا عملیات ماوس و صفحهکلید را روی پنجرهها در سطوح پایین کنترل میکند. با استفاده از این امکانات است که میـزکارهای مختلف مانند GNOME و KDE میتوانند کار کنند. X برای نخستین بار در سال ۱۹۸۴ در دانشگاه MIT ایجاد شد. توزیعهای جدید گنو/لینوکس از سیستم X.Org که نواده سیستم X اولیه است استفاده میکنند.
● میزکارهای گرافیکی
همانطور که در بالا اشاره شد، میزکارهای گرافیکی رابط کاربری هستند کــه از آنها بـرای تعامــل بــا سیـستم اسـتفـاده میشود. تعداد زیادی میزکار گرافیکی بــرای گنــو/لینوکس و سیــستمعاملهای ســازگــار با یونیکس وجــود دارد کــه مهمترین آنها عبارتند از: GNOME، KDE، xFCE و IceWM.
● ساختار فایل سیستم
سیستم فایل هر کامپیوتر، امکان ذخیرهسازی فایلها و اطلاعات را روی آن فراهم میکند. هنگامی که از داخل برنامه واژهپرداز خود سندی را ذخیره میکنید، این سیستم فایل است که تعیین میکند سند چگونه و کجا ذخیره شود.
ابزارهای ذخیرهسازی مانند فلاپی دیسکها، دیسکهای سخت، درایوهای CD-ROM، درایوهای Zip و… تا پیش از اینکه سیستمعامل سیستمفایل را روی آنها تشکیل دهد، قابل استفاده نیستند.
سیستمفایلهای گوناگونی برای سیستمعاملهای مبتنی بر یونیکس و گنو/لینوکس ارایه شدهاند که برخی از آنها عبارتند از: ext۲،ext۳،xfs،reiserfs. این سیستمفایلها در جزئیات فنی تفاوتهایی با یکدیگر دارند، اما از نظر ساختاری که ایجاد میکنند مشابه هستند و تفاوت چندانی با هم ندارند.
در دنیای یونیکس و گنو/لینوکس، سیستمفایل همانند یک درخت دارای شاخههای گوناگون است. مفهوم درایوهایی مانند Cو D که در سیستمعاملهایی مانند داس و ویندوز با آنها برخورد داشتهاید، اینجا بیمعنی هستند. تمامی پارتیشنها و دیسکرانها در محلهایی در زیر شاخههایی در این درخت متصل میشوند.
● پارتیشنها
دیسکهای سخت در سیستمفایل سیستمعاملهای مبتنی بر گنو/لینوکس و یونیکس، میتوانند پارتیشـنهای متعددی داشته باشند. در این صورت هر پارتیشن دارای یک نقطه اتصال یا mount point است که در آن نقـطـه بـه درخت سیستم فایل متصل میشود.
● پارتیشن swap
هنگام نصب گنو/لینوکس، پارتیشنی به نام swap میسازید. این پارتیشن تحت ساختار سیستمفایل به جایی متصل نمیشود و محل قرارگیری حافظه مجازی روی دیسک سخت است. بهتر است حجم آن را برابر یا دو برابر حافظه سیستم خود تعیین کنید. از فضای swap میتواند به عنوان حافظه مجازی استفاده کرد.
● مفاهیم مجوزهای دسترسی و سیستم چند کاربره
یکی از پارامترهای امنیتی گنو/لینوکس مجوزهای دسترسی است که روی فایلها و پوشهها اعمال میشوند. بر اساس این مجوزها، فایلها و پوشهها دارای مالکی هستند که این مالکیت در قالب کاربر، گروه کاربری و سایر کاربران مصداق پیدا میکند. مجوزها نیز به سه دسته خواندن، نوشتن و اجرا تقسیم میشوند که برای هر فایل یا پوشه امکان تخصیص هر کدام از این سه حالت به گروههای سهگانه کاربر، گروه کاربری و سایر کاربران وجود دارد.
گنو/ لینوکس مانند جدش یونیکس، از ابتدا به صورت یک سیستم چند کاربره طراحی و پیادهسازی شده و هر کاربر سیستم دارای حساب کاربری مجزایی برای استفاده از سیستم است.
● فایلهای پیکربندی
یکی از مزیتهای سیستمعامل گنو/لینوکس و سیستمعاملهای خانواده یونیکس در این است که تنظیمات برنامههای کاربردی و سرویسدهندههای مختلف در فایلهای متنی ساده ذخیره میشوند. فایلهای متنی ساده، فایلهای پیکربندی (Configuration Files) نامیده میشوند. بنابراین در هر شرایطی با یک ویرایشگر متنی ساده نیز میتوان اشکالات ایجاد شده در تنظیمات را برطرف یا تنظیمات جدید را به سرعت و سادگی اضافه کرد.
● مفهوم کتابخانه (Library)
بسیاری از برنامههای کاربردی وجود دارند که برای پیادهسازی بخشی از عملکردهای خود یا ایجاد اقلامی مانند رابط کاربری، از توابعی استفاده میکنند که در برنامههای دیگری گنجانده شدهاند. برای مثال، واژهنامه چند زبانه xFarDic که بعدها با آن آشنا خواهید شد، برای ایجاد رابط کاربری خود از توابعی که برنامه wxGTK در اختیار قرار میدهد استفاده میکند. به اینگونه برنامههایی که برنامههای کاربردی دیگر از آنها برای ایجاد و پیادهسازی بخشی از امکانات خود استفاده میکنند، کتابخانه (Library) اطلاق میشود. وجود این کتابخانهها فرآیند برنامهنویسی را تسهیل میکنند
admin | ۱۷:۰۶
در ایـن مقاله کوتاه سـعی داریـم تا مفاهیم اولیهای را که هر کاربر تازهکار گنو/لینوکس در ابتدای کار با آنها برخورد و تعامل خواهد داشت را به طور اجمالی شرح دهیم. آشنایی با این مفاهیم میتواند تا حد زیادی راهنمای کاربرانی باشد که از سیستمعاملهای دیگر به گنو/لینوکس مهاجرت میکنند.
● هسته لینوکس http://www.gnu.org/graphics/babies/GnuTuxSoftRevolution-v1.jpg (http://www.gnu.org/graphics/babies/GnuTuxSoftRevolution-v1.jpg)
هسته لینوکس بخــش مــرکــزی تشکــیلدهنده سیسـتـمعامل گنو/لینوکس اسـت. بخشــی کـه بـه طــور مستقیم با سختافزار سیستـم شما در ارتباط است و امکان استفاده از قابلیتهای سختافزار را برای کــاربر فــراهــم میکنــد. هسته لینوکس نخستینبار توسط "لینوس توروالدز" دانشجوی فنلاندی در سال ۱۹۹۱ منتشر و سپس کاربران شروع به استفاده و توسعه آن کردند و با ترکیب آن به همراه ابزارهای پروژه گنو، سیستمعامل گنو/لینوکس متولد شد.
● ابزارهای پروژه گنو
ابزارهای ایجاد شده توسط پروژه گنو هستند که با ترکیب هسته لینوکس تشکیل یک سیستـمعامل کامل موسوم به گنو/لینوکس را میدهند. برخــی از ایــن ابــزارها عبــارتند از: کتابخانه زبان C، مجموعه کامپایلرهای GCC، ویرایشگر متن، پوسته فرمان یا مفسر خط فرمان و… . این ابزارها توسط پروژه گنو که در سال ۱۹۸۴ توسـط "ریچــارد استـالمن" آغـــاز شد، توسعه پیدا میکنند.
● پوسته فرمان
پوسته فرمان یا خط فرمان مهمتــرین ویژگی مشترک بین سیستمعاملهای سازگار با یونیکس است. پوسته فرمان توسط ابزارهایی موسوم به مفسر خط فرمان کنترل میشوند. در گنو/لینوکس مفسر پیشگزیده خط فرمان مفسر Bash به شمار میرود که از ابزارهای توسعهیافته توسط پروژه گنو است. در برابر امکانات، ویژگیها و سهولت کارکردی که در پوسته فرمانهای سیستمعاملهای خانواده یونیکس وجود دارد، خط فرمان سیستمعاملهایی مانند داس و ویندوز بازیچهای بیش نیستند. بسیاری از کارهایی را که با استفاده از ابزارهای گرافیکی میتوانید انجام دهید، از طریق پوسته فرمان نیز قابل انجام هستند.
● محیط X
محیط X یا X Window ایجادکننده زیرساختارهای لازم بـرای برنامههای با رابط کاربری گرافیکی و میزکارهای مختلف است. برای مثال، این X است که نحوه کشیدن پنجرهها روی صفحهنمایش یا عملیات ماوس و صفحهکلید را روی پنجرهها در سطوح پایین کنترل میکند. با استفاده از این امکانات است که میـزکارهای مختلف مانند GNOME و KDE میتوانند کار کنند. X برای نخستین بار در سال ۱۹۸۴ در دانشگاه MIT ایجاد شد. توزیعهای جدید گنو/لینوکس از سیستم X.Org که نواده سیستم X اولیه است استفاده میکنند.
● میزکارهای گرافیکی
همانطور که در بالا اشاره شد، میزکارهای گرافیکی رابط کاربری هستند کــه از آنها بـرای تعامــل بــا سیـستم اسـتفـاده میشود. تعداد زیادی میزکار گرافیکی بــرای گنــو/لینوکس و سیــستمعاملهای ســازگــار با یونیکس وجــود دارد کــه مهمترین آنها عبارتند از: GNOME، KDE، xFCE و IceWM.
● ساختار فایل سیستم
سیستم فایل هر کامپیوتر، امکان ذخیرهسازی فایلها و اطلاعات را روی آن فراهم میکند. هنگامی که از داخل برنامه واژهپرداز خود سندی را ذخیره میکنید، این سیستم فایل است که تعیین میکند سند چگونه و کجا ذخیره شود.
ابزارهای ذخیرهسازی مانند فلاپی دیسکها، دیسکهای سخت، درایوهای CD-ROM، درایوهای Zip و… تا پیش از اینکه سیستمعامل سیستمفایل را روی آنها تشکیل دهد، قابل استفاده نیستند.
سیستمفایلهای گوناگونی برای سیستمعاملهای مبتنی بر یونیکس و گنو/لینوکس ارایه شدهاند که برخی از آنها عبارتند از: ext۲،ext۳،xfs،reiserfs. این سیستمفایلها در جزئیات فنی تفاوتهایی با یکدیگر دارند، اما از نظر ساختاری که ایجاد میکنند مشابه هستند و تفاوت چندانی با هم ندارند.
در دنیای یونیکس و گنو/لینوکس، سیستمفایل همانند یک درخت دارای شاخههای گوناگون است. مفهوم درایوهایی مانند Cو D که در سیستمعاملهایی مانند داس و ویندوز با آنها برخورد داشتهاید، اینجا بیمعنی هستند. تمامی پارتیشنها و دیسکرانها در محلهایی در زیر شاخههایی در این درخت متصل میشوند.
● پارتیشنها
دیسکهای سخت در سیستمفایل سیستمعاملهای مبتنی بر گنو/لینوکس و یونیکس، میتوانند پارتیشـنهای متعددی داشته باشند. در این صورت هر پارتیشن دارای یک نقطه اتصال یا mount point است که در آن نقـطـه بـه درخت سیستم فایل متصل میشود.
● پارتیشن swap
هنگام نصب گنو/لینوکس، پارتیشنی به نام swap میسازید. این پارتیشن تحت ساختار سیستمفایل به جایی متصل نمیشود و محل قرارگیری حافظه مجازی روی دیسک سخت است. بهتر است حجم آن را برابر یا دو برابر حافظه سیستم خود تعیین کنید. از فضای swap میتواند به عنوان حافظه مجازی استفاده کرد.
● مفاهیم مجوزهای دسترسی و سیستم چند کاربره
یکی از پارامترهای امنیتی گنو/لینوکس مجوزهای دسترسی است که روی فایلها و پوشهها اعمال میشوند. بر اساس این مجوزها، فایلها و پوشهها دارای مالکی هستند که این مالکیت در قالب کاربر، گروه کاربری و سایر کاربران مصداق پیدا میکند. مجوزها نیز به سه دسته خواندن، نوشتن و اجرا تقسیم میشوند که برای هر فایل یا پوشه امکان تخصیص هر کدام از این سه حالت به گروههای سهگانه کاربر، گروه کاربری و سایر کاربران وجود دارد.
گنو/ لینوکس مانند جدش یونیکس، از ابتدا به صورت یک سیستم چند کاربره طراحی و پیادهسازی شده و هر کاربر سیستم دارای حساب کاربری مجزایی برای استفاده از سیستم است.
● فایلهای پیکربندی
یکی از مزیتهای سیستمعامل گنو/لینوکس و سیستمعاملهای خانواده یونیکس در این است که تنظیمات برنامههای کاربردی و سرویسدهندههای مختلف در فایلهای متنی ساده ذخیره میشوند. فایلهای متنی ساده، فایلهای پیکربندی (Configuration Files) نامیده میشوند. بنابراین در هر شرایطی با یک ویرایشگر متنی ساده نیز میتوان اشکالات ایجاد شده در تنظیمات را برطرف یا تنظیمات جدید را به سرعت و سادگی اضافه کرد.
● مفهوم کتابخانه (Library)
بسیاری از برنامههای کاربردی وجود دارند که برای پیادهسازی بخشی از عملکردهای خود یا ایجاد اقلامی مانند رابط کاربری، از توابعی استفاده میکنند که در برنامههای دیگری گنجانده شدهاند. برای مثال، واژهنامه چند زبانه xFarDic که بعدها با آن آشنا خواهید شد، برای ایجاد رابط کاربری خود از توابعی که برنامه wxGTK در اختیار قرار میدهد استفاده میکند. به اینگونه برنامههایی که برنامههای کاربردی دیگر از آنها برای ایجاد و پیادهسازی بخشی از امکانات خود استفاده میکنند، کتابخانه (Library) اطلاق میشود. وجود این کتابخانهها فرآیند برنامهنویسی را تسهیل میکنند