# نظام الملفات

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

## بعض المفاهيم المهمة لأنظمة الملفات
### إدارة المساحات

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

### أسماء الملفات

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

### الدليل

المقال الرئيسي مجلد (الحوسبة)
دليل (بالإنجليزية: Directory)‏، نظم الملفات يمكن أن يوجد بها أكثر من دليل ويطلق عليه أيضا مجلد، والذي يسمح بفصل مجموعة من الملفات ووضعها في مكان واحد، ويتم ذلك عن طريق وضع مشير لهذا الدليل في جدول المحتويات الموجود في نظام الملفات والخاص به كما في جدول الملف الرئيسي (Master File Table) في نظام إن تي إف إس NTFS الخاص بويندوز، ويسمى بمؤشرات الفهرسة في النظم المشابهة لنظام التشغيل يونكس .
هيكل المجلدات أو الأدلة يمكن أن تكون طبقة واحده (Flat ، Linear) أو عدة طبقات (تسمح بالتسلسل) ليحتوي على مجلدات فرعية، أول نظام ملفات سمح بعملية التسلسل للمجلدات كان نظام التشغيل مولتكس (مولتكس هو النظام الذي أثر على العديد من الأنظمة في الوقت الحالي إن لم يكن معظمها مثل يونكس ولينكس )، نظم الملفات الرئيسية المصاحبة لنظم التشغيل المشابهة ليونكس تدعم طريقة التسلسل للأدلة أو المجلدات، فعلى سبيل المثال تدعم نظم ملفات أبل مثل HFS+ النظام التسلسلي في نظم تشغيلها مثل ماك أو إس (مازال HFS+ مستخدم مع ماك اوه اس اكس ) ، وأيضا نظام ملفات فات FAT بداية من نظام إم إس دوس الإصدار 2.0 وما بعده من إم إس دوس إلى نظم ميكوسوفت ويندوز، وأيضا نظام NTFS الذي ظهر مع بدايات ويندوز إن تي ، وفي نظم الملفات مثل ODS-2 (On-Disk Structure-2) ، وفي النظم ذات المستوى الأعلى مثل نظام ملفات فايل-11 $^{[الإنجليزية]}$ في نظام التشغيل المسمى نظام ذاكرة افتراضية مفتوح OpenVMS .

### البيانات الوصفية

البيانات الوصفية (الميتاداتا) (بالإنجليزية: Metadata)‏ وهي المعلومات المهمة الأخرى المطلوب الحفاظ عليها داخل نظم الملفات، مثل حجم الملف بمعنى طول البيانات التي يحتويها الملف والتي تحسب بعدد الكتل 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 .

## أنواع نظم الملفات
### نظم ملفات القرص ووسائط التخزين

تستخدم نظم ملفات القرص (بالإنجليزية: Disk file systems)‏ لتخزين البيانات على جهاز تخزين المعطيات، ومنها:
* نظم جدول توزيع الملف (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

### نظم ملفات الفلاش

تستخدم نظم ملفات الفلاش (بالإنجليزية: Flash file systems)‏ لتنظيم الملفات على وحدات الذاكرة الوميضية.

### نظم ملفات قواعد البيانات

تستخدم نظم ملفات قواعد البيانات (بالإنجليزية: Database file systems)‏ في نظم إدارة قواعد البيانات لترتيب وتخزين بيانات قواعد البيانات.

### نظم ملفات الشبكات

تستخدم نظم ملفات الشبكات (بالإنجليزية: Network file systems)‏ في شبكات الحاسوب لتيسير الوصول للملفات واستخدامها عبر الشبكة.

### نظم ملفات القرص المشترك

في نظم ملفات القرص المشترك (بالإنجليزية: Shared disk file systems)‏ تشترك عدة حواسب في استخدام قرص خارجي واحد. ويقوم نظام الملفات بمنع التداخل فيما بينهم عند كتابة البيانات على القرص.

## انظر أيضا

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

## مراجع

* ↑ Arpaci-Dusseau، Remzi H.؛ Arpaci-Dusseau، Andrea C. (2014)، تطبيقات نظام الملفات (PDF)، Arpaci-Dusseau Books، مؤرشف من الأصل (PDF) في 2019-12-14
* ↑ Arpaci-Dusseau، Remzi H.؛ Arpaci-Dusseau، Andrea C. (2014)، نظام الملفات الشبكية لصن ميكروز سيستم SUN (PDF)، Arpaci-Dusseau Books، مؤرشف من الأصل (PDF) في 2019-04-03
* ↑ computerhope. Slack Space. مؤرشف من الأصل في 2017-04-30.
* ↑ R. C. Daley؛ P. G. Neumann (1965). "A General-Purpose File System For Secondary Storage". Fall Joint Computer Conference. AFIPS. ص. 213–229. DOI:10.1145/1463891.1463915. مؤرشف من الأصل في 2019-10-02. اطلع عليه بتاريخ 2011-07-30.
* بوابة علم الحاسوب
* بوابة تقانة المعلومات
* بوابة برمجيات