قطاع الـ MISC وPARA لعمل فورمات للـUserData

DZ-Developer

:: الإدارة R&D ::
إنضم
28 أفريل 2012
المشاركات
6,906
مستوى التفاعل
31,062
النقاط
113
الإقامة
الجزائر الغالية
السلامُ عليكم..

كلنا عارفين اِستخدام قطاع الـ MISC و PARA لعمل فورمات لليوزرداتا. جاء الوقت الذي نفهم فيه كيفية العمل. القطاع ليس إلا قطاع مُساعد ومؤقت يسمح بتنفيذ الأوامر من داخل الريكفري ويتحكم في الجهاز في مرحلة الإقلاع، بحيث يقوم بتوجيه الجهاز للإقلاع المباشر للنظام أو الدخول إلىٰ فاست بوت أو إلىٰ وضع الـ recovery.
القطاع مسؤول عن تنفيذ ما يُسمى بالـ bootloader message.
لو فتحت الملف عن طريق HXD، هتلاقيه بيبدأ بكلمة boot-xxxxx. "بوت" تعني إقلاع الجهاز لوضع معين، و xxxx أحياناً تكون recovery، وبعدها يتم تنفيذ الأمر الذي يليه مباشرة.
أحياناً تكون:
boot-fastboot
boot-bootloader
boot-bootloaderonce

وأحياناً في حالة أجهزة واوي وأونر:
boot-rescue
تحتها مباشرة يكون موجود الأمر المراد تنفيذه، مثلاً عمل تحديث لحزمة داخل النظام أو عمل wipe_data، ومعنى wipe data هو حذف هيدر قطاع اليوزرداتا بحيث يكون خالياً من البيانات و السماح بالاقلاع والفورمات الكامل لاحقاً، أو format_data، وهي بمعنى إعادة بناء الملف من جديد اعتماداً على بعض الأدوات المدمجة داخل الجهاز مثل ext4fs tools و erofs tools و f2fs tool، حسب صيغة القطاع...
واخيراً : wipe_data_factory_lowlevel
الأمر الخاص بفورمات أجهزة واوي و أونر ..
تحتها مباشرة بيكون موجود reason، أو السبب.. وأحيانًا بتكون غير موجودة، وإذا وجدت ستكون بهذه الصورة:
reason=android،
ودي الحالة الطبيعية لاستدعاء امر الفورمات مع استثناء مسار data/media/0 في حاله تم استخدام امر format data.
--reason=MasterClearConfirm
استدعاء ماستر كلير لأجهزة eMMC.
reason=MasterClearConfirm_udisk،
وكانت حالة خاصة بأجهزة UFS.
وأخر بيانات تحت بيكون موجودة القيمة دي:
--locale=zh-CN
--locale=en_US

وهي بتتحكم في اللغة اللي بيتكتب فيها اللوج داخل الريكفري أثناء تنفيذ العملية.
والملف له أكثر من استخدام - الاستخدام الأول والأهم هو عمليات تحديث حزم OTA. يتم وضع الحزمة داخل الكاش أو اليوزرداتا، بعدها يتم كتابة الأمر بالشكل التالي:
command: boot-recovery
recovery: recovery --update_package=/xx/yy/update.zip

أو استخدام حزمة موجودة مسبقًا داخل النظام مثل
command: boot-recovery
recovery: recovery --update_package=/system/etc/restore_all_settings.sh/mode=reset_settings،

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

عن طريق المبدع مفضل محمد سالم
 
السلام عليكم

بارك الله فيك


👌👌👌
 
عودة
أعلى