نظام الملفات

في الحوسبة، نظام الملفات  هي طريقة في نظام التشغيل تستخدم للتحكم في كيفية تخزين واسترجاع وتنظيم وإدارة ملفات الحاسوب والبيانات التي تحتوى عليها تلك الملفات لتسهيل إيجادها واستخدامها، أنظمة الملفات قد تستعمل جهاز تخزين البيانات مثل القرص الصلب والقرص المضغوط، بدون نظام الملفات فإن المعلومات الموجودة في القرص الصلب ستكون كأنها قطعة واحدة من البيانات التي لايمكن التفريق بينها ومعرفة أين بداية أي جزء منها ونهايته وما الجزء التالي له من البيانات، أما إذا إستخدمنا نظام الملفات فنستطيع أن نفصل بين أجزاء المعلومات ونعطي كل جزء منها اسم وبالتالي فيسهل الفصل بين الملفات وإعطاء كل منها معرف ومؤشر لها، اسم نظام الملفات جاء من أن كل مجموعة من البيانات هي ملف (File) ولها بناء وقواعد يتم إدارتها بواسطة نظام (System) فيكون الأسم النهائي هو ملفات النظام (FileSystem)، هناك العديد من الأنواع المختلفة لنظم الملفات، كل واحد منها له بناء وخواص منطقية وسرعة مختلفة وأيضا مرونة وأمان وحجم مختلف الخ، بعض نظم الملفات تم تصميمها للاستخدام مع تطبيقات معينة، على سبيل المثال نظام ملفات أيزو 9660 تم تصميمه للاقراص البصرية، نظم الملفات يمكن استخدامها في العديد من أنواع الأجهزة ووسائط التخزين التي تستخدم أنواع مختلفة المواد، أشهر أنواع أجهزة التخزين حاليا هي القرص الصلب، وهو عبارة عن أقراص (Platters) مطلية بغشاء مغناطيسي، يتم الكتابة على هذه الأغشية بأرقام بالنظام الثنائي Binary ( نظام يستخدم رقمي صفر وواحد فقط للعد ) ويتم ذلك عن طريق إرسال نبضات كهربية إلى رؤس مغناطيسية أعلى وأسفل القرص الصلب للقراءة منه والكتابة عليه، وهناك أنواع أخرى من المخزنات الثانوية مثل الذاكرة الفلاشية USB والشريط المغناطيسي والقرص الضوئي، في بعض نظم الملفات مثل tmpfs يتم استخدام المخزنات الرئيسية مثل الذاكرة العشوائية (RAM) لإنشاء نظام ملفات مؤقت للاستخدامات السريعة غير الدائمة، بعض نظم الملفات تستخدم محليا أو داخل أجهزة تخزين البيانات، والبعض الآخر يمدنا بطريقه للوصول للمخازن عن طريق برتوكولات الشبكة ( كبرتوكولات NFS، و SMB، و 9P clients ).
بعض نظم الملفات يكون افتراضيا Virtual بمعنى أن الملفات الممدودة (يطلق عليها virtual files) يتم حسابها أو التعامل معها عند الطلب (مثل ) أو ببساطه يتم تخطيطها Mapping في نظام ملفات مختلف يطلق عليه مخزن معاون Backing store .

بعض المفاهيم المهمة لأنظمة الملفات

إدارة المساحات 

مذكرة : يتم تطبيق التالي فقط على نظم الملفات المستخدمه في المخازن كالقرص الصلب

تحدد نظم الملفات مساحات ومواقع الملفات على المخازن مثل القرص الصلب بواسطة وحدات واقعية حقيقية مادية Physical units ، نظام الملفات مسؤل عن تنظيم الملفات والمجلدات داخل القسم الواحد ويتتبع المساحات على القرص لمعرفة أيها فارغ وأيها مستخدم ويحتوي على بيانات (ملفات) ، مثال في دوس نظام أبل  في أوائل الثمانينيات كان حجم القطاع Sector هو 256 بايت وعلى القرص المرن بحجم 140 كيلوبايت .

أسماء الملفات 
المقال الرئيسي اسم ملف

اسم الملف  يستخدم لتعريف مكان التخزين للملف على نظام الملفات (filesystem)، معظم نظم الملفات تضع قيود على أسماء الملفات، ففي بعض نظم الملفات يكون ليس له حساسية حالة الأحرف (كمثال كلمة FOO وكلمة Foo وكلمة foo تدل على ثلاث أسماء ملفات مختلفة )

الدليل 
المقال الرئيسي مجلد (الحوسبة)

دليل ، نظم الملفات يمكن أن يوجد بها أكثر من دليل ويطلق عليه أيضا مجلد، والذي يسمح بفصل مجموعة من الملفات ووضعها في مكان واحد، ويتم ذلك عن طريق وضع مشير لهذا الدليل في جدول المحتويات الموجود في نظام الملفات والخاص به كما في جدول الملف الرئيسي (Master File Table) في نظام إن تي إف إس NTFS الخاص بويندوز، ويسمى بمؤشرات الفهرسة في النظم المشابهة لنظام التشغيل يونكس .

هيكل المجلدات أو الأدلة يمكن أن تكون طبقة واحده (Flat ، Linear) أو عدة طبقات (تسمح بالتسلسل) ليحتوي على مجلدات فرعية، أول نظام ملفات سمح بعملية التسلسل للمجلدات كان نظام التشغيل مولتكس (مولتكس هو النظام الذي أثر على العديد من الأنظمة في الوقت الحالي إن لم يكن معظمها مثل يونكس ولينكس )، نظم الملفات الرئيسية المصاحبة لنظم التشغيل المشابهة ليونكس تدعم طريقة التسلسل للأدلة أو المجلدات، فعلى سبيل المثال تدعم نظم ملفات أبل مثل HFS+ النظام التسلسلي في نظم تشغيلها مثل ماك أو إس (مازال HFS+ مستخدم مع ماك اوه اس اكس ) ، وأيضا نظام ملفات فات FAT بداية من نظام إم إس دوس الإصدار 2.0 وما بعده من إم إس دوس إلى نظم ميكوسوفت ويندوز، وأيضا نظام NTFS الذي ظهر مع بدايات ويندوز إن تي ، وفي نظم الملفات مثل ODS-2 (On-Disk Structure-2) ، وفي النظم ذات المستوى الأعلى مثل  نظام ملفات  في نظام التشغيل المسمى نظام ذاكرة افتراضية مفتوح OpenVMS .

البيانات الوصفية 
 البيانات الوصفية (الميتاداتا) 
وهي المعلومات المهمة الأخرى المطلوب الحفاظ عليها داخل نظم الملفات، مثل حجم الملف بمعنى طول البيانات التي يحتويها الملف والتي تحسب بعدد الكتل Blocks المحددة للملف (ويمكن أن تحصى بالبايت) ، أيضا آخر وقت تم فيه الإضافة للملف ويحسب أو يخزن بنظام الختم الزمني بمعنى الوقت والتاريخ، يمكن أن يحتفظ نظام الملفات أيضا ببيانات وصفية ( ميتاداتا ) بوقت إنشاء أي ملف وآخر وقت تم الوصول فيه للملف وحتى آخر وقت تم تغير الميتاداتا نفسها وآخر وقت تم عمل نسخة احتياطية للملف وبعض المعلومات الأخرى مثل ملفات الأجهزة، ملف الجهاز Device File هو ملف للربط بين الدائرة الإكترونية (مثل كرت الشاشة) وبين واجهة الحاسوب أو برامج الحاسوب أو نظام التشغيل، ملف الجهاز ( له اسم آخر وهو الملف المتميز Special file ) يسمح للتفاعل بين البرمجيات مع مكونات الجهاز بنظام الإستدعاء من وحدات الإدخال والإخراج I/O System call وهذا يسهل الكثير من المهام، ملف الجهاز يمكن أن يكون ( block ، character ، socket ، subdirectory، الخ ) ومعرف المستخدم user ID و معرف المجموعة Group ID وسماحيات الوصول لها access permission والسمات File attribute الأخرى مثل هل الملف للقراءة فقط read-only هل هو تنفيذي executable الخ .

نظام الملفات يحتفظ بكل البيانات الوصفية لكل ملف من ملفات الجهاز بما في ذلك اسم الملف وطول محتوياته وموقعه في البناء التسلسلي داخل المجلدات، كل السابق منفصل عن محتويات الملف، معظم نظم الملفات تحتفظ بأسماء كل الملفات في دليل واحد وفي مكان واحد يسمى جدول الادلة، ويخزن غالبا كأي ملف آخر، العديد من نظم الملفات يضع فقط بعض البيانات الوصفية في جدول الأدلة أما باقي البيانات الوصفية ففي مكان آخر منفصل تماما مثل ما يطلق عليه مؤشر الفهرسة Inode .

أنواع نظم الملفات

نظم ملفات القرص ووسائط التخزين 
تستخدم نظم ملفات القرص  لتخزين البيانات على جهاز تخزين المعطيات، ومنها:
 نظم جدول توزيع الملف (FAT)
 إكس تي 2 ( ext2 )
 إكس تي 3 ( ext3 )
 إكس تي 4 ( ext4 )
 إن تي إف إس ( NTFS )
 وين إف إس ( WinFS )
 نظام إدارة الملفات على يونكس نظام إدارة الملفات على يونكس
 إكس إف إس
 بترفس (btrfs)
 أيزو 9660 ( ISO 9660 )
 ريسير أف أس ( ReiserFS )
 exFAT
 HFS
 HFS+
 HPFS
 Files-11
 Veritas File System
 VMFS
 ZFS
 UDF

بعض انظمة ملفات يمكن أن تكون نظم الملفات ذات صحائف journaling file system أو نظام ملفات متعدد النسخ (الإصدارات) versioning file system

نظم ملفات الفلاش 
تستخدم نظم ملفات الفلاش  لتنظيم الملفات على وحدات الذاكرة الوميضية.

نظم ملفات قواعد البيانات 
تستخدم نظم ملفات قواعد البيانات  في نظم إدارة قواعد البيانات لترتيب وتخزين بيانات قواعد البيانات.

نظم ملفات الشبكات 
تستخدم نظم ملفات الشبكات  في شبكات الحاسوب لتيسير الوصول للملفات واستخدامها عبر الشبكة.

نظم ملفات القرص المشترك 
في نظم ملفات القرص المشترك  تشترك عدة حواسب في استخدام قرص خارجي واحد. ويقوم نظام الملفات بمنع التداخل فيما بينهم عند كتابة البيانات على القرص.

انظر أيضا 
 ملف حاسوب
 جدول توزيع الملف
 إكس تي 2 ( ext2 )
 إكس تي 3 ( ext3 )
 إكس تي 4 ( ext4 )
 إن تي إف إس ( NTFS )
 وين إف إس ( WinFS )
 نظام ملفات التخزين السحابي CloudStore
 نظم الملفات ذات صحائف Journaling file system
 مورد مشترك (حوسبة) shared resource

مراجع 

أنظمة ملفات الحاسوب
حوسبة