برای مقابله با مشکلات فایل سیستم های قدیمی دو سیستم فایل جدید به میان آمدند یکی “Xia File System” و دیگری“Second Extended File System” که هر دو در ژانویهی ۱۹۹۳ منتشر شدند. xiafs به شدت براساس Minixfs بود و تعداد کمی قابلیت به این سیستم فایل افزوده شده بود. به طور واضح تر این سیستم فایل اسامی طولانی و پارتیشنهای حجیمتر را به Minix افزوده بود.
از طرفی Ext2fs بر اساس کدهای Extfs بود و تعداد زیادی به روز رسانی و بهبود در آن دیده میشد، در نسخههای ابتدایی Xiafs بسیار پایدارتر از EXt2fs بود اما Ex2fs بیشتر استفاده میشد و Bugهای آن سریعتر رفع میشدند و بهتر پیشرفت میکرد به خصوص در استفادهی از CPU و سرعت پاسخدهی بسیار کاراتر بود. در حال حاضر Ext2 یکی از سیستم فایلهای بسیار پایدار و پیش تنظیم شده در هستهی لینوکس است. فایل سیستم Xia از نسخهی۲٫۱٫۲۱ از کرنل لینوکس حذف شد.
قابلیتهای Ext2
یک فایل سیستم ext2fs از استانداردهای معمول یونیکس مانند فایلها و دایرکتوریها و ابزارها و لینکها پشتیبانی میکند. میتوان توسط این فایل سیستم پارتیشنهای حقیقتاً بزرگی ایجاد نمود که با تلاشهای اخیر مقدار این پارتیشن میتواند تا 4 ترابایت حجم داشته باشد. بنابراین میتوان از دیسکهای حجیم با پارتیشن بندی دلخواه استفاده کرد. پشتیبانی از اسامی طولانی تا ۲۵۵ کاراکتر که در صورت نیاز قابل افزایش تا ۱۰۲۴ کاراکتر است نیز از قابلیتهای دیگری است که درExt2fs موجود است که در فایل سیستمهای معمولی یونیکس وجود ندارند. علاوه بر اینها میتوان از به هنگام سازیهای شبیه BSD یا “BSD-like synchronous update”ها نیز استفاده کرد.
Ext2fs این امکان را به کاربر میدهد تا سایز بلاکهای منطقی را انتخاب کند، این مقدار معمولاً برابر ۱۰۲۴ یا ۲۰۴۸ و ۴۰۹۶ بایت است. استفاده از بلاکهای منطقی بزرگتر میتواند سرعت ورودی یا خروجی را افزایش دهد و نیاز کمتری به کار هدهای دیسک سخت را به ارمغان میآورد. علاوه بر این Ext2fs از “fast symbolic links” یا «لینکهای نرم سریع» پشتیبانی میکند، در این روش لینکها از بلاکهای فایل سیستم استفاده نمیکنند و مقصد لینک در خود inod ذخیره میشود. این امر علاوه بر افزایش سرعت کار، فضای کمتری را در دیسک سخت استفاده میکند. البته اینها تمام مزایای این فایل سیستم نیستند و تنها نمونههایی از مزایای این فایل سیستم هستند.
نحوه کار EXT2
نحوهی کار Ext2fs در ساختار سخت افزاری تأثیر فراوانی از ساختار فایل سیستم BSD گرفته است. یک فایل سیستم شامل گروهی از بلاک هاست.
هر گروه از بلاکها شامل یک کپی افزوده از اطلاعات کنترلی سیستم فایل است و محتوی قسمتی از فایل سیستم شامل نگاشتی از بلوک و نگاشتی از inode و قسمتی از جدول inodeها و بلاکی از دادههاست.
در Ext2fs دایرکتوریها به عنوان یک لیست از ورودیهای با طول متغیر مدیریت می شود. هر ورودی شامل شماره inode و نیز طول ورودی نیز نام فایل و طول آن است. با استفاده از ورودیهای با طول متغیر امکان به کارگیری فایلهایی با نامهای طولانی بدون از دست دادن فضای دیسک سخت ممکن است.
در فایل سیستم جدید Ext3fs نیز از همین ساختار برای ذخیره و بازخوانی فایلها و دایرکتوریها استفاده میشود. برای استفادهی برنامهها از این فایل سیستم و کنترل و تغییر در آن از کتابخانهای به نام libext2fs استفاده شده است. این کتابخانه دارای روتینهای لازم برای آزمایش و تغییر اطلاعات برروی فایل سیستم Ext2 میباشد. ابزارهای مختلفی مانند mke2fs, e2fsck, tune2fs, dumpe2fs و debugfs از همین کتابخانه برای انجام کارهایشان استفاده میکنند. با توجه به ساختار بسیار مناسب و عمومی این کتابخانه نرمافزارهای جدید مورد نیاز برای تغییر در فایل سیستم به راحتی نوشته می شوند.
فایل سیستم XFS
زمانی که SGI در سالهای ۱۹۹۰ نیاز به یک فایل سیستم قدرتمند با بازدهی بالا داشت شروع به توسعهی سیستم فایلی به نام XFS کرد. این سیستم فایل با هدف بالا بردن حجم دیسک سخت و نیز پهنای باند دادهها و تبادل موازی برای استفاده در نرمافزارهای فیلم و صدا و پایگاه دادههای بزرگ توسعه یافت. از مزایای این فایل سیستم بازیابی سریع اطلاعات در صورت صدمه دیدن دیسک سخت و پشتیبانی از فایلهای حجیم و نیز دایرکتوریهای حاوی فایلهای بسیار و بازدهی بسیار خوبش در چنین محیطهایی است. در حال حاضرXFS با تغییراتی در اختیار جامعهی اوپن سورس قرار گرفته و برای لینوکس نیز بازنویسی شده و برای نسخهی ۲٫۴ و ۲٫۶ هستهی لینوکس موجود است. البته نسخهی لینوکسی هنوز تماماً کامل نیست و برخی قابلیتها مانند loop-mounting هنوز با مشکلاتی همراه است.
از مشکلاتی که در حال حاضر XFS با آنها مواجه است ممکن نبودن resize یا تغییر سایز به صورتon-line است و برای تغییر سایز باید از اطلاعات پشتیبان بگیرید و پس از تغییر سایز اطلاعات را بازیابی کنید و یا برای استفاده ازQouata باید هستهی لینوکس را مجدداً کامپایل کنید. اگر از بوت لودرLILO با گزینهی بوت از بوت سکتور استفاده میکنید XFS همراهLILO کار نخواهد کرد. البته با GRUB نسخههای بالاتر از ۰٫۹۹ میتوانید از XFS استفاده کنید. اما مشکلات و رفتار غیر معمول نیز در این حالت گزارش شده است.
اما قابلیتهای جدید نیز در این فایل سیستم وجود دارد برای نمونه این فایل سیستم یک فایل سیستم ۶۴ بیتی است، بنابراین میتوانید فایلهایی با حجم میلیونها ترابایت داشته باشید که این مقدار بسیار بزرگتر از فایل سیستمهایی است که امروزه استفاده می شوند. از طرفی این فایل سیستم سرعت بسیار مطلوبی دارد. چیزی حدود هفت گیگابایت در ثانیه، که این سرعت را مدیون مدل B+Tree است که مدل لیست کردن و دسترسی به فایلهاست. در سیستم فایلهای FFS مانند BSD یا Ext2fs از مدل لیست کردن برای دسترسی به فایلها استفاده میشود اما در این فایل سیستم از مدل بسیار پیچیدهی B+Tree استفاده میشود.
فایل سیستم EXT3
فایل سیستم EXT3 برای کسانی که نمیخواهند فایل سیستم لینوکس خود را تغییر بدهند یک راهکار مناسب است. ext3fs در حقیقت همان ext2fs با همان ساخت و کار است با این تفاوت که قابلیت journaling به آن افزوده شده است. این فایل سیستم همراه کرنل لینوکس ارائه میشود و در لینوکس پشتیبانی کاملی از این فایل سیستم میشود چرا که فایل سیستم محلی و مختص لینوکس است. یکی از قابلیتهای این فایل سیستم پشتیبانی شدن در تقریباً تمام نسخههای کرنل است، حتی نسخههای قدیمی نیز این فایل سیستم را به عنوان ext2fs شناخته و از آن استفاده میکنند. (در واقع با افزودن امکان journaling به ext2fs شما به ext3fs دست یافتهاید!)
در نسخهی ۲.۶ هستهی لینوکس پشتیبانی بسیار خوبی از این فایل سیستم به عمل آمده که سرعت آن را بهبود بسیاری بخشیده به طوری که در برخی امور حتی سریعتر از فایل سیستمهای دیگر عمل میکند. علاوه بر این در این فایل سیستم مجوزهای دیگری نیز وجود دارد که قابلیت انعطاف پذیری سیستم را افزایش میدهد و امنیت فایل سیستم را نیز بیشتر میکند.
خواص فایل سیستم Ext3:
- journal هست پس خاصیت Data Recovery دارد.
- بسیار قدرتمند است.
- سرعت خیلی خوبی دارد.
- قابلیت دسترسی خیلی خوبی در سیستم عامل به ما میدهد.
- خاصیت Data Integrity دارد.
- میتواند فایل ها را تا ۲ ترا بایت ساپورت کند.
- خاصیت Defragmentation دارد و به صورت اتوماتیک و هوشمند دیسک را دیفراگ میکند که سرعت هارد افزایش میابد.
مقایسه فایل سیستم Ext3 و Ext4:
فایل سیستم Ext3 فایلهایی با ۲ ترا بایت و ماکسیمم فضایی که ساپورت میکند ۱۶ ترا بایت است. ولی Ext4 بدلیل سیستم آدرس ۴۸ بیتی این امکان را فراهم میکند که فایل هایی با حجم ۱۶ ترا بایت و ماکسیمم فضای ۱EB را ساپورت کند.
Ext3 به تعداد ۳۲ هزار subdirectory روی یک پارتیشن را برای شما آدرس دهی کند. ولی Ext4 به تعداد نامحدود subdirectory در یک پارتیشن برای شما آدرس دهی کند.
Ext4 در حالت پیش فرض journal هست ولی خاصیت اختیاری یا آپشنال هم دارد. ولی Ext3 خاصیت آپشنال ندارد.
در حال حاضر بیش از ۹۵ درصد توزیع های لینوکس به صورت پیش فرض از فایل سیستم Ext4 استفاده میکنند.
:: بازدید از این مطلب : 1959
|
امتیاز مطلب : 0
|
تعداد امتیازدهندگان : 0
|
مجموع امتیاز : 0