الكثير منا قد يتملكه الفضول من النتائج التي تظهر لك بعد عمل properties لأي ملف كان أو مجلد , فهذه النتائج تخبرك بوجود حجمين لنفس الملف الأول هو Size و الثاني هو Size On Disk , و دائما ما نجد أن قيمة الحجم أي Size تكون أقل من الحجم على القرص الصلب أي " Size On Dsik ", و كغريزة إنسانية لابد و أنه قد أصابك الفضول من اختلاف حجمين لملف واحد , لكن اليوم سأشفي فضولك بالسبب العلمي لهذا الاختلاف , فأساس كل هذا مرتبط بنظام الملفات المستخدم على النظام و ألية تخزينه للبينات و حتى يسهل عليك فهم هذا , أقترح عليك أن تطلع في أول الأمر على الفرق بين الفورمات بـ FAT , FAT32 , NTFS , REFS , exFAT , حتى يسهل عليك فهم ألية التخزين و السبب الذي قد يدفع النظام لزيادة حجم الملف أصلي بعد تخزينه , و لكن و حتى تفهم هذا أكثر و تعرف الفرق بين هذان الحجمين فبقي معي .
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjiDFdD65LUgQpSC5ktCCG8tiVbxXovCBFJRM82fvoafnYzKdcdGs-shUE83V-9UKwSR-sgd4V-enVj9HlyitnvkpIMpm926k2w_WhgQ7csYD4u_CFkl5pJZmGywjIEixNrEKXX5FiceEhd/s1600-rw/size-gx.png.png)
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjbVDgYCSOIPm2QwmHoLuPpCk7zP6eXH6pfsAYPw-_lY5RyyKsEoVCwR5smd4B0tYGfvUGIC5u6ef_ptbU_AN24kSvPYY1Ft8uI1nFsW8JSwd9DO0aVJFFcHkE2PwhK3j115qzzQmfDvDZ3/s1600-rw/2.png)
و مثال أخر لتعزيز الفهم , مثلاً لدينا قرص صلب بي 4 غيغا تم تهيئته (فرمتته) على أساس Fat 16 سيكون حجم Cluster الواحدة 32 كيلو بايت، تخيلو معي كيف سيخزن ملف بحجم 1 كيلو في هذا القرص سيحجز لوحده Cluster ويبقى 31 كيلو دون استخدام , لأن Cluster لا يتشارك في التخزين أكثر من ملف , وكذلك ملف حجمه 68 كيلو سيحجز 3 Cluster أول اثنتين منهم ستكونان ممتلئتين والثالثة ستحجز 4 كيلو ويبقى 28 كيلو دون استخدام هذا الكلام سيؤدي بالنتيجة إلى تراكم مساحات غير موظفة وغير قابلة للاستخدام , و هذا هو السبب الذي يجعل حجم الملف و حجمه على القرص الصلب مختلف .
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh-eCDwgomSczo2gMEZlZNUy-AksbdbdmLWvadvu2ITJLCf5utXZhSM9tzJLKjB8yazNgsTpe72p8iqKz9IvmFimYitXoEcLXMQOI5Ev0sKBiFay-moPZu4A6sAGjzL05_-0F3cwbJYvFEE/s1600-rw/1.png)
و لكي أشرح لماذا قلت أن كل هذا مرتبط بنظام الملفات , فل نتخذ مثال بنظام ملفات لنظام أخر وهو EXT4 مثلا وهو نظام متطور نسبيا يستخدم بكثر ألان على لينكس , من مميزاته أنه يقوم بالكتاب على القرص الصلب أو القسم المعد به بشكل منظم فمثلا قمنا بنقل ملف عليه و أخد 3 Cluster و بقي من كلوستر 3 جزء فارغ عند الكتاب مرة أخرى سيكمل من حيث توقف و يملأ القطاع الثالث الذي مازال فيه مساحة فارغ و ينتقل إلى الذي بعده مما يمنع ضياع المساحة و بتالي حجم موحد بين الذي هو على القرص الصلب و كذالك الأصلي .
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiC-nGOTmCxkw2uB-_XAy37gx_Y3ABsVWdEKLcvzKwGOX_m0R6PxPh1mTPaWQAkDTGwDBSpNCzxY4FhrE2Xh5x2TIwf9mSelLF_bODXn2AZrhBtqNyJPmJvh1460Bpbhh4JyUKK67fLS52V/s1600-rw/4.png)
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjiDFdD65LUgQpSC5ktCCG8tiVbxXovCBFJRM82fvoafnYzKdcdGs-shUE83V-9UKwSR-sgd4V-enVj9HlyitnvkpIMpm926k2w_WhgQ7csYD4u_CFkl5pJZmGywjIEixNrEKXX5FiceEhd/s1600-rw/size-gx.png.png)
الفرق بين حجم الملف و حجمه على القرص الصلب :
أولا وجب أن تعرف أن أي نظام تشغيل يقوم بتهيئة القرص الصلب الخاص بك لاستخدامه سواء لتخزين البيانات أو غيره و ذلك بتقسيمه إلى قطاع وعند تخزين البيانات يتم تخزينها في هذه القطاعات وهذه القطاعات تسمي Cluster , و كل نظام ملفات يتعامل بحجم مختلف لهذه القطاعات فمثلا حجم الكلستر في نظام ملفات FAT 16 يساوي 64 Kbs و في NTFS يساوي 4 Kbs , و لنفهم هذا أكثر , تخيل معي أن القرص الصلب لدبك هو مكتبة و هذه المكتبة مكونة من رفوف كل رف يستطيع أن يحمل عدد محدد من الكتب نقول أنه 7 كتب , و لدينا موسوعة من الكتب مكون من 16 كتاب على سبيل المثال , إذن عندما أقوم بوضع هذه الكتب في الرفوف فسنستعمل 3 منهما إثنين تملأن أي 7 + 7 = 14 و 16 - 14 = 2 و الكتابان الباقيان سيأخذان رف كامل , لماذا إذا ؟ و سيبقا لنا 5 كتب يمكن إضافتها إلى الرف الثالث ؟ نعم هذا صحيح لكن هكذا يعمل نظام الملفات إن ملء جزء بسيط من قطاع ما فلن يعيد الكتاب عليه بل ستحتسب المساح الفارغ منه مع مساحة الملف , و لو طبقنا هذا على مثالنا فحجم الموسوعة في المكتبة هو 21 كتاب بينما حجمها الحقيقي 16 كتاب , و هكذا فإن حجم الملف الحقيقي هو Size و و الحجم الذي يأخذ الملف من القطاعات هو Size On Disk .![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjbVDgYCSOIPm2QwmHoLuPpCk7zP6eXH6pfsAYPw-_lY5RyyKsEoVCwR5smd4B0tYGfvUGIC5u6ef_ptbU_AN24kSvPYY1Ft8uI1nFsW8JSwd9DO0aVJFFcHkE2PwhK3j115qzzQmfDvDZ3/s1600-rw/2.png)
و مثال أخر لتعزيز الفهم , مثلاً لدينا قرص صلب بي 4 غيغا تم تهيئته (فرمتته) على أساس Fat 16 سيكون حجم Cluster الواحدة 32 كيلو بايت، تخيلو معي كيف سيخزن ملف بحجم 1 كيلو في هذا القرص سيحجز لوحده Cluster ويبقى 31 كيلو دون استخدام , لأن Cluster لا يتشارك في التخزين أكثر من ملف , وكذلك ملف حجمه 68 كيلو سيحجز 3 Cluster أول اثنتين منهم ستكونان ممتلئتين والثالثة ستحجز 4 كيلو ويبقى 28 كيلو دون استخدام هذا الكلام سيؤدي بالنتيجة إلى تراكم مساحات غير موظفة وغير قابلة للاستخدام , و هذا هو السبب الذي يجعل حجم الملف و حجمه على القرص الصلب مختلف .
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh-eCDwgomSczo2gMEZlZNUy-AksbdbdmLWvadvu2ITJLCf5utXZhSM9tzJLKjB8yazNgsTpe72p8iqKz9IvmFimYitXoEcLXMQOI5Ev0sKBiFay-moPZu4A6sAGjzL05_-0F3cwbJYvFEE/s1600-rw/1.png)
و لكي أشرح لماذا قلت أن كل هذا مرتبط بنظام الملفات , فل نتخذ مثال بنظام ملفات لنظام أخر وهو EXT4 مثلا وهو نظام متطور نسبيا يستخدم بكثر ألان على لينكس , من مميزاته أنه يقوم بالكتاب على القرص الصلب أو القسم المعد به بشكل منظم فمثلا قمنا بنقل ملف عليه و أخد 3 Cluster و بقي من كلوستر 3 جزء فارغ عند الكتاب مرة أخرى سيكمل من حيث توقف و يملأ القطاع الثالث الذي مازال فيه مساحة فارغ و ينتقل إلى الذي بعده مما يمنع ضياع المساحة و بتالي حجم موحد بين الذي هو على القرص الصلب و كذالك الأصلي .
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiC-nGOTmCxkw2uB-_XAy37gx_Y3ABsVWdEKLcvzKwGOX_m0R6PxPh1mTPaWQAkDTGwDBSpNCzxY4FhrE2Xh5x2TIwf9mSelLF_bODXn2AZrhBtqNyJPmJvh1460Bpbhh4JyUKK67fLS52V/s1600-rw/4.png)
أتمنا أن هذا كان كافي لكي تفهم السبب الذي يجعل حجم الملف الأصلي و الحجم على القرص الصلب مختلف , و أن أكون قد أشبعت فضولك , شكرا على المتابعة و إلى موضوع جديد بإذن الله .
شرح مبسط و مفهوم جزاكم الله خيرا .بالتوفيق ان شاء الله
ردحذفشرح رائع شكرا للتوضيح ,,
ردحذفشكرا جزيلا
ردحذف