إكس تي 4

من ويكيبيديا، الموسوعة الحرة
اذهب إلى التنقل اذهب إلى البحث
ext4
مُطوِر Mingming Cao, Andreas Dilger, Alex Zhuravlev (Tomas), Dave Kleikamp,Theodore Ts'o, Eric Sandeen, Sam Naghshineh وغيرهم.
الاسم الكامل (بالإنجليزية: Extended file system 4)
اولج 12 أكتوبر 2008 (لينكس النواة 2.6.28) (لينكس 2.6.28, 2.6.19)
رمز التقسيم 0x83 (في سجل الإقلاع الرئيسي MBR)
Basic Data Partition EBD0A0A2-B9E5-4433-87C0-68B6B72699C7 (جدول التقسيم ذو المعرفات الفريدة الشامل GPT)
البنية
Directory contents Linked list, hashed B-tree
حجز الملفات Extents/Bitmap
الأقسام التالفة Table
المحدودية
أكبر حجم للملف الواحد 16 تيبي بايت TiB
أطول اسم ملف مسموح 255 بايت (حرفًا)
أكبر حجم للقرص 1 اكسبي بايت EiB
الأحرف المتاحة في اسم الملف أي بايت ما عدا NULL و '/'
المميزات
تسجيل التاريخ التعديل (mtime)، وتعديل الصفات (ctime)، والوصول (atime)، والحذف (dtime)، والإنشاء (crtime).
مجال التاريخ من 14 ديسمبر 1901 إلى 25 أبريل 2514
الانشقاقات نعم
Attributes acl, bh, bsddf, commit=nrsec, data=journal, data=ordered, data=writeback, delalloc, extents, journal_dev, mballoc, minixdf, noacl, nobh, nodelalloc,noextents, nomballoc, nouser_xattr, oldalloc, Orlov block allocator (orlov) , user_xattr
تصاريح نظام الملفات بوزيكس
ضغط شفاف لا
الترميز الشفاف لا
أنظمة الملفات المدعومة لينكس، وويندوز (باستخدام ext2fsd)

نظام الملفات الممتد الرابع (بالإنجليزية: Fourth Extended Filesystem) اختصارا EXT4 إ أكس تي 4 من أهم ميزاته الجديدة انه يدعم صحائف نظام الملفات Filesystem Journaling من أجل نظام تشغيل لينكس. وقد طور ليكون خلفًا لنظام ملفات إكس تي 3.

نبذة تاريخة[عدل]

لقد ولد هذا النظام كسلسلة امتدادات لنظام ملفات الأقدم إكس تي 3 , وقد طورت كثيرًا من هذه الامتدادات شركة تسمى Cluster File Systems لنظام الملفات المسمى Lustre (file system) بين عامي 2003 و 2006 , وقد قُصِد بهذه التطويرات توسيع حدود التخزين وإضافة بعض تحسينات الأداء .[1] رغم ذلك , عارض مطورو نواة لينكس الآخرين إضافة هذه التعديلات بسبب عدم استقرار النواة [2] , واقترحوا تفريع الشيفرة المصدرية Fork لنظام الملفات إكس تي 3 تحت مشروعٍ جديدٍ باسم اكس تي 4 ووضع كل التطويرات الجديدة هناك، دون أن يتأثر مستخدمو إكس تي 3 القُدامَى، وقد قوبل هذا الاقتراح بالقبول، وفي 28 يونية 2006 أعلن Theodore Ts'o مطور إكس تي 3 عن خطة تطوير إكس تي 4 الجديدة. بعد تطوير الإصدار التمهيدي لاكس تي 4 تم تضمينه مع نواة لينكس ذات الإصدار 2.6.19. ,[3] وفي 11 أكتوبر 2008 دُمِجت الشيفرات المكملة (Patches) التي جعلت نظام الملفات اكس تي 4 مستقرا مع الشفرة المصدرية (source code ) الخاصة بنواة لينكس ذات الإصدار 2.6.28 في مستودعات تطوير نواة لينكس (repositories) ,[4] واضعةً بذلك نهاية مرحلة التطوير، وبداية مرحلة تبني اكس تي 4 . وقد أصدرت نواة لينكس الإصدار 2.6.28 وهي تحتوي على نظام ملفات اكس تي 4 في 25 ديسمبر 2008 ,[5] وفي 15 يناير 2010 أعلنت شركة غوغل عن ترقية نظام ملفات أقراصها الصلبة من إكس تي 2 إلى إكس تي 4 .[6] وفي 14 ديسمبر 2010 أعلنت أيضًا عن استخدام اكس تي 4 بدلًا من نظام ملفات YAFFS في أندرويد الإصدار 2.3.[7]

مميزاته[عدل]

نظام ملفات كبير[عدل]

نظام ملفات كبير ( Large file system )، يدعم إكس تي 4 ext4 حجم أقسام حتى 1 exbibyte (EiB) اكسبي بايت ، وملفات يصل حجمها إلى tebibytes (TiB) 16 تيبي بايت , نظام التشغيل ريدهات يفضل استخدام نظام ملفات إكس إف إس ( XFS ) بدلا من إكس تي 4 ( Ext4 ) إذا اردت عمل أقسام أكبر من 100 تيرابايت .[8] [9]

التمدد (القدرة على التمدد)[عدل]

القدرة على الإمتداد Extents بدلت مخطط التقليدي القديم block mapping تخزين البيانات لنظامي إكس تي 2 - ext2 وإكس تي 3 - ext3 ببلوكات هذا المخطط الجديد وهو عبارة عن نطاق من البلوكات المتجاورة

التوافق الرجعي (النظم السابقة)[عدل]

التوافق الرجعي ( Backward compatibility )، يتوافق نظام ملفات إكس تي 4 مع الإصدارين السابقين له إكس تي 2 وإكس تي 3 ليمكنك من ضم أحدهما كنظام ملفات إكس تي 4 مما يفيد في بعض الخواص التي يتمتع بها نظام ملفات إكس تي 4 لرفع الأداء بشكل ظاهر مثل خوارزمية توزيع الكتل الجديدة.

يتوافق أيضًا إكس تي 3 بشكل متقدم مع إكس تي 4 فيُمكن ضم نظام ملفات إكس تي 4 على أنه إكس تي 3. لكن إذا كان قسم القرص يستخدم Extents وهي ميزة جديدة في إكس تي 4 فستفقد هذا التوافق ولن تتمكن من ضم إكس تي 4 كإكس تي 3.

التوزيع المسبق والمستمر[عدل]

التوزيع المسبق والمستمر ( Persistent pre-allocation )، يتمتع نظام الملفات إكس تي 4 بقدرته على التوزيع المسبق على القرص لملف. في أنظمة الملفات الأخرى يتم هذا بملئ الملف بالأصفار عند إنشاءه، لكن في نظام الملفات إكس تي 4 (وكذلك إكس إف إس) يمكن استخدام الدالة الجديدة في نواة لينكس وهي fallocate() function لتأدية هذا الغرض. والمساحة الموزعة مسبقًا ستُضمن وستكون متقاربة ومتجاورة. تسخدم هذه الحالة في عدة تطبيقات لبث الوسائط وقواعد البيانات.

تأخير حجز الموقع[عدل]

تأخير حجز الموقع ( Delayed allocation )

زيادة الحد المسموح للمجلدات الفرعية عن 32,000[عدل]

في النظام السابق اكس تي 3 كان أقصى حد للمجلدات الفرعية المسموح بها هو 32,000 , اكس تي 4 سمح بعدد لانهائي من المجلدات الفرعية أو الدليل الفرعي subdirectory ، [10] للسماح بمجلدات أكبر واداء أفضل .

إضافة مجموع تدقيق في نظام الصحائف[عدل]

مجموع تدقيق في نظام الصحائف ( Journal checksumming ) أستخدام مجموع التدقيق checksum ساعد في تحسين دقة النظام ، السبب في ذلك ان ملف الصحائف يعتبر من أكثر الملفات المستخدمة على أي نوع من أنواع المخزنات مثل القرص الصلب لهذا فيجب تدقيقه ليكون صحيح ، وهذه الميزه لها جوانب أخرى مفيدة مثل تجنب الإنتظار للمدخلات والمخرجات للقرص الصلب أثناء عملية Journaling (الصحائف) .

قدرته أسرع على الفحص[عدل]

fsck time/Inode Count(ext3 vs. ext4)

قدرة أسرع على الفحص ( Faster file system checking ) في نظام الملفات اكس تي 4 تكون مجموعات البلوكات Blocks الغير محدد لها مكان في جدول تحديد المواقع للملفات في جدول الفهرسة لنظام لينكس Inode Table (وهو جدول بنظام مؤشرات الفهرسة) وأيضا المقطع sections ، يتم وضع علامات بأنها غير مستخدمة وبالتالي فهذا يسمح لبعض الأوامر المهمة مثل fsck و E2fsck بسرعة العمل وتخطيها وبالتالي بتقليل الوقت المطلوب لفحص نظام الملفات ، بدأ تنفيذ هذه الميزة إبتداء من إصدار لينكس Linux 2.6.24

له ميزة تعدد بلوكات محدد الموقع[عدل]

تعدد بلوكات محدد الموقع ( Multiblock allocator )، عندما كان يتم الإضافة لأي ملف في النظام الأقدم اكس تي 3 كان يتم إستدعاء محدد الموضع للبلوكات block allocator مرة واحدة لكل بلوك block ، بناء على ذلك فلو كان هناك أكثر من كاتب واحد للملف فإن الملف يصبح ببلوكات متفرقة على القسم fragmented ، في النظام الجديد إكس تي 4 تم تفادي هذه المشكلة عن طريق تأخير تحديد الموضع وهذه الطريقة تسمح بحفظ buffer البيانات مؤقتا في مجموعات ليتم تحديد موضعها في وقت واحد كمجموعة من البلوكات

تحسين الختم الزمني[عدل]

تحسين الختم الزمني ( Improved timestamps ) مع مرور الوقت تصبح أجهزة الحاسب أكثر سرعة هذا على وجه العموم ، وعلى وجه الخصوص يصبح نظام لينكس أكثر إستخداما للتطبيقات والبرامج ذات المهمات الحرجة ،

لاحظ مشكلة عام 2038 (Year 2038 problem)

ميزة التشفير الشفاف[عدل]

التشفير الشفاف ( Transparent encryption )، هي طريقة جديد تم دعمها لنظام لينكس ونواة لينكس Linux kernel 4.1 في يونيو 2015 .[11]

حدوده او مقيداته[عدل]

في 2008، انتقد المطور الرئيسي لإكس تي 3 وإكس تي 4 ثيودور Theodore Ts'o هذا النظام، وأعرب عن وجود تحسينات كبييرة في إكس تي 4 لكنها لا تقدم تطورًا كبيرًا فما زالت التقنية المستخدمة قديمة، ويعتقد ثيودور Ts'o أن نظام ملفات بي تي آر إف إس أفضل منه ويتخذ اتجاهاً أفضل، وأنه يوفر تحسينات كبيرة للتدرجية والموثوقية وسهولة الإدارة. يذكر أيضًا أن لدى بي تي آر إف إس كثير من الأفكار التصميمية التي لدى نظام ملفات ريسير أف أس 3/4 ( ReiserFS ) أيضًا.

انظر أيضا[عدل]

مصادر و مراجع[عدل]

  1. ^ Mathur، Avantika؛ Cao، MingMing؛ Bhattacharya، Suparna؛ Dilger، Andreas؛ Tomas، Alex؛ Vivier، Laurent (2007). "The new ext4 filesystem: current status and future plans" (PDF). Proceedings of the Linux Symposium. Ottawa, ON, CA: Red Hat. مؤرشف من الأصل (PDF) في 24 مارس 2012. اطلع عليه بتاريخ 15 يناير 2008. 
  2. ^ Torvalds، Linus (2006-06-09). "extents and 48bit ext3". Linux kernel mailing list. مؤرشف من الأصل في 22 أغسطس 2017. 
  3. ^ Leemhuis، Thorsten (2008-12-23). "Higher and further: The innovations of Linux 2.6.28 (page 2)". Heise Online. مؤرشف من الأصل في 04 مارس 2016. اطلع عليه بتاريخ 09 يناير 2010. 
  4. ^ "ext4: Rename ext4dev to ext4". Linus' kernel tree. اطلع عليه بتاريخ 20 أكتوبر 2008. 
  5. ^ Leemhuis، Thorsten (2008-12-23). "Higher and further: The innovations of Linux 2.6.28". Heise Online. مؤرشف من الأصل في 03 يناير 2009. 
  6. ^ Paul، Ryan (2010-01-15). "Google upgrading to Ext4, hires former Linux Foundation CTO". Ars Technica. مؤرشف من الأصل في 07 يناير 2012. 
  7. ^ "Android 2.3 Gingerbread to use Ext4 file system". The H Open. 14 December 2010. مؤرشف من الأصل في 18 أكتوبر 2017. 
  8. ^ "The Ext4 File System". RedHat Enterprise Linux Performance Tuning Guide. RedHat. مؤرشف من الأصل في February 22, 2014. اطلع عليه بتاريخ 04 فبراير 2014. 
  9. ^ "EXT4 HowTo". Ext4 (and Ext2/Ext3) Wiki. EXT4 Team. مؤرشف من الأصل في 16 مايو 2019. اطلع عليه بتاريخ 03 سبتمبر 2013. 
  10. ^ Ext4 - Linux Kernel Newbies نسخة محفوظة 10 يناير 2018 على موقع واي باك مشين.
  11. ^ Ts'o، Theodore (8 April 2015). "Ext4 encryption". مؤرشف من الأصل في 23 يناير 2019.