السبت، 16 يناير 2016

ما الفرق بين الروم التي تكون odexed و التي تكون deodexed ؟

16:10

يَعتمِد الأندرويد حُزم التطبيقات (application packages) أو ما يُطلق عليه إختصارا apk ، لِيُخبر نظام التشغيل عَم يَجب ان يقوم بشحنه (إلى الذاكرة العشوائية) و تنفيذه. هذه الحزم نجدها مخزنة في تقسيمتين partition في الذاكرة الداخلية للجهاز: تقسيمة /data التي تحتوي التطبيقات التي تَبثها المستعمل، و تقسيمة /system التي تضم تطبيقات النظام. هذه التقسيمة الأخيرة هي أول ما يتم شحنه عند إقلاع الجهاز ليتم إعطاء الأولوية للتطبيقات التي يَحويها. وهذه الأخيرة ذاتها هي المعنية بموضوع odexed و deodexed.



ماذا تعني Odexed rom ؟

Odex هي إختصار ل: ملف دالفك التنفيذي المحسن Optimized Dalvik Executable File. 
نجد هذه الملفات مرفقة مع جميع تطبيقات النظام داخل المجلد  /system/ ، بحيث أنه لكل تطبيق ملفين: الأصلي ينتهي ب apk. و أخر ينتهي ب odex (كما تلاحظون في الصورة أدناه).



ولكن لِمَ يَصلُح هذا الملف odex. ؟


هذا الملف الذي يحمل معلومات عن مكونات تطبيقاتنا، هو عبارة عن ملف كاش يتم إستدماجه من طرف تطبيق دالفك (الذي من خلاله يتم تشغيل كل التطبيقات) عند إقلاع الجهاز، و ذلك دون بدل جهد لاستخراج تلك البيانات من ملفات apk. 

ما هي إيجابيات odexed rom ؟

- سرعة إقلاع التطبيقات أكبر نظرا لكون المعلومات الأساسية قد تم تخزينها سلفا من طرف النظام في كاش دالفك.


- ملفات apk لا تكون ضخمة و بالتالي تأخد حيزا أقل في الذاكرة العشوائية.

ما هي السلبيات ؟

- في هذه الحالة تغيير التيمات أو التعديل على التطبيقات يصبح صعبا لأن بيانات التطبيق تتواجد الأن في ملفين.
- إذا قمنا بحذف ملف apk فسيتوجب علينا حذف ملف .odex الموافق له تجنبا لأي مشاكل.


و للإشارة فأغلب مصنعي أجهزة الأندرويد يفضلون odexed rom لسببين رئيسيين:
- إمكانية التعديل على ملفات النظام تكون أكثر صعوبة، مما يجعل هذا الأخير أمنا و ثابتا،
- سرعة أكبر في إقلاع النظام لكون الكاش يكون مبنيا كجزء من كاش دالفك.


ماذا تعني Deodexed rom ؟

فيما يخص الروم التي تكون deodexed فكل المعلومات (الكاش) تكون مخزنة داخل ملف apk. في ملف يحمل الاسم classes.dex .



ما هي الإجابيات ؟

- النظام الذي يكون deodexed يكون من السهل تعديله و إنجاز تيمات له، لأن كل البيانات تكون مخزنة ضمن ملف واحد هو apk.
- للتخلص من تطبيقات النظام يكفي حذف ملف واحد هو ال apk.

ما هي السلبيات ؟

- لا يتم تخزين المعطيات سلفا في كاش دالفك، و بالتالي فالنظام يستغرق وقتا لاستخراجها من ملف apk، مما يؤدي إلى إبطاء إقلاع التطبيقات.
- و بالتالي تكون عملية إقلاع النظام ككل أبطأ.

خلاصة القول، إن كانت الروم odexed فإننا نحصل على أمان و سرعة أكبر، و إن كانت الروم deodexed فإننا نحصل على إمكانيات أكبر للتعديل و تغير الواجهة و الثيم.

وفي الواقع فإن الروم عندما تكون deodexed فإنها تكون بطيئة فقط في أول إقلاع لها، وفي ما بعد لا يبقى هناك اي فرق بينهما لانه يتم تخزين بيانات التطبيقات في كاش دالفك. كما أن هذا النوع الأخير لا يخبئ في طياته أي نوع من المشاكل الأمنية.

إذن في النهاية الفارق يكون فقط في إمكانية التخصيص و التعديل من عدمه.

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

هل وفقت في الشرح؟ أتمنى ذلك. 
و السلام عليكم.

2 Comments

يتم التشغيل بواسطة Blogger.