[ماهو] الروت (root) ,الكرنل (kernel) والروم (Rom) ||[توضيح] بعض المفاهيم !


سأتحدث في هذا الشرح عن بعض المفاهيم المتعلقة بنظام الأندرويد

| الروت (ROOT):؟
هو عبارة عن عملية برمجية تتم في نظام الأندرويد لفتح المجال لبعض التطبيقات التي تحتاج صلاحيات روت للوصول الى نواة النظام (المبني على نواة لينوكس (Linux)) بشكل اعمق لتستطيع التغيير او التعديل و إضافة مميزات جديدة على النظام او الإستفادة من الطبقات البرمجية ذات المستوى القريب جدًا من نواة النظام وهو ما يسمى بـ كرنل Kernel النظام.
>أي أنك من خلال الروت تستطيع فعل أي شيء في النظام ,أي شيء بأتم معنى الكلمة...
الروت هو عبارة عن ملف تحت مسمى su و يوجد في مسار system/xbin
أي أن عملية الروت في الهاتف هي بالأساس ايجاد طريقة لادخال ملف الsu في ذلك المسارلكن هذا لا يكفي لأن التطبيقات لا تستطيع التعامل مع ذلك الملف مباشرة فهي تحتاج لوسيط (مع أن بعض التطبيقات تستطيع ذلك).
الوسيط هو عبارة عن تطبيق عادي وهو الذي يكون مسؤول عن التواصل بين التطبيق الذي يطلب صلاحية الروت وملف الsu.اشهر "وسيط" يمكن ذكره هو تطبيق supersu 
*ملاحظة:البعض يعتقد أن الروت هو عملية jailbreak ...
هذا المفهوم ليس له أي أساس من الصحة فالروت ليس عملية كسر حماية بل هو صلاحية تكون في أعلى هرم الصلاحيات(أعلى حتى من صلاحيات الAdministrator) تسمح لصاحب الهاتف بتخصيصه حسب رغبته
>الgoogle لا تمنع مطلقا عملية الروت بل تسمح بها من مبدأ أن المستخدم هو الطرف الوحيد المسؤول عن هاتفه
ويمكنك أن تلاحظ أن الplay store مليء بالتطبيقات التي تتطلب روت فبسماح الgoogle بعمل الروت للنظام كأنها تخبرك بأنك كمستخدم لديكالحرية المطلقة في فعل ما تشاء بهاتفك وهذه هي روعة الأندرويد 
| الكرنل (Kernel):؟
يسمى أيضا نواة النظام وهو العنصر المسؤول عن التواصل بين الهاردوير والسوفتويريعني بين قطع الهاتف كالمعالج,الشاشة.. من جهة و النظام بحد ذاته كبرامج وتطبيقات من جهة أخرىوالكرنل لديه دور مهم في تحديد جودة أداء الهاتفمن خلال عدة معايير كسرعة المعالج CPU/GPU frequency والGovernor...أي أنك بالتغيير الى كرنل أفضل ستحسن من أداء الهاتف
>يمكن تحديد الكرنل ضمن ملفات الروم , هو ذلك الملف المسمى boot.img
| الcustom rom والfirmware/stock rom:؟
التحديث الذي تقدمه الشركة المصنعة للهواتف لهاتف معين مثل الروم التي تقدمها السامسونغ لهاتف galaxy note 4 نطلق عليها اسم firmware أو stock rom
>firmware تعني تماما Stock rom
أما بالنسبة للcustom rom فهي تسمية تطلق على التحديثات التي تطلقها فرق التطوير وهي عبارة عن مجموعة مطورين يجتمعون لبناء روم لجهاز أندرويد انطلاقا من الsource codeالذي توفره صاحبة نظام الأندرويد (الgoogle) بما أن الأندرويد هو نظام مفتوح المصدر..
>أمثلة عن فرق التطوير:cyanogenmod ,omnirom ...
فنقول cyanogenmod rom ولا نقول firmware cyanogenmodوتسمى في العموم رومات مخصصة أو Custom roms
>Stock rom/firmware # Custom rom
| ملاحظة:
البعض يعتقد أن الرومات المخصصة هي تعديل على روم أخرى وأنها ليست احترافية و ستضر بالهاتف لكن هذا مفهوم خاطئ تماما ولا أصل له من الصحة.كما ذركت سابقا فنظام الأندرويد مفتوح المصدر والgoogle عندما تقوم باصدار نسخة جديدة لا تقوم باصداره كروم جاهزة (الا لهواتف النكسس) بل تقوم باصداره ك source code اضافة الى الخطوات التي يجب اتباعها لبناء روم لجهاز ما انطلاقا من تلك الsource codeو يمكن لأي شخص الوصول اليها وبناء الروم(طبعا تتطلب معرفة معمقة بلغات البرمجة كjava و++c).عندما تقوم الgoogle كل سنة في شهر أكتوبر أو نوفمبر بنشر الsource code لاصدار الأندرويد الجديد
تقوم الشركات المصنعة للهواتف كسامسونغ ,سوني وlg.. بتحميلها ومن ثم تقوم ببناء الروماتلأجهزتها التي قررت ترقيتها مع اضافة بعض التغييرات حيث يكون جل التركيز منصبا في أغلب الأحيانعلى تغيير واجهة المستخدمبالاضافة لأشياء أخرى,لذلك تلاحظ اختلاف كبير بينها وبين واجهة الأندرويد الخام.وهذا نفس الأمر الذي تقوم به فرق التطوير كcyanogenmod فهي تقوم ببناء الروم للعديد من الأجهزة انطلاقا من ذلك الsource code.ما أردت قوله هو أن الرومات المخصصة هي روم مبنية من الصفر تماما كال firmware/stock rom الخاص بالشركات المصنعة.
>الرومات المخصصة تكون أخف وأسرع من الfirmware الخاص بالشركات المصنعة
لأنها تكون اقرب ما يكون الى الAOSP يعني نظام الأندرويد الخام .
>تكون تحديثات الرومات المخصصة كثيرة هنالك الnighlty والweekly ...
مما يسمح لمستخدمها بالحصول دائما على أخر التحديثات واالتحسينات الأمنية للنظام
بعكس الشركات المصنعة التي تقوم بتحديث هواتفها مرة أو مرتين في السنة
| لماذا سميت رومات مخصصة (custom roms):؟
سميت بهذا الاسم لأنها تحتوي على العديد من الاضافات و التخصيصات الغير موجودة في نظام الأندرويد الخام AOSP
>يمكن تسمية الCustom rom ب rom فقط ,لكن عند الحديث عن رومات الشركة المصنعة (firmware)
يجب ذكر كلمة stock لتصبح stock rom
يعني يمكن أن نقول cyanogenmod rom ولكن يجب قول samsung stock rom (هذا من باب الاحترافية )
رابط المشاركة المختصر :