27 মার্চ, 2025 থেকে, আমরা AOSP তৈরি করতে এবং অবদান রাখতে aosp-main এর পরিবর্তে android-latest-release ব্যবহার করার পরামর্শ দিচ্ছি। আরও তথ্যের জন্য, AOSP-তে পরিবর্তনগুলি দেখুন।
সেভ করা পৃষ্ঠা গুছিয়ে রাখতে 'সংগ্রহ' ব্যবহার করুন
আপনার পছন্দ অনুযায়ী কন্টেন্ট সেভ করুন ও সঠিক বিভাগে রাখুন।
অ্যান্ড্রয়েড 10 এবং 11-এ, প্রথম পর্যায়ের র্যামডিস্কে প্রথম পর্যায়ের init বাইনারি (যা fstab এন্ট্রি দ্বারা নির্দিষ্ট করা প্রাথমিকভাবে মাউন্ট করা হয়) এবং ভেন্ডার fstab ফাইল রয়েছে। (অ্যান্ড্রয়েড 9 এবং তার পরবর্তী সংস্করণের মতো, system.img$TARGET_ROOT_OUT এর বিষয়বস্তু রয়েছে।)
একটি boot-ramdisk (Non-A/B) সহ ডিভাইসগুলির জন্য, প্রথম পর্যায়ের init হল একটি স্ট্যাটিক এক্সিকিউটেবল যা /init এ অবস্থিত। এই ডিভাইসগুলি system.img/system হিসাবে মাউন্ট করে, তারপর /system এ মাউন্টকে / এ সরানোর জন্য একটি সুইচ রুট অপারেশন করে। রামডিস্কের বিষয়বস্তু মাউন্ট করার পরে মুক্ত করা হয়।
রামডিস্ক হিসাবে পুনরুদ্ধার ব্যবহার করে এমন ডিভাইসগুলির জন্য, প্রথম পর্যায়ের init রিকভারি ramdisk-এর মধ্যে /init এ অবস্থিত। এই ডিভাইসগুলি পরিবেশ থেকে পুনরুদ্ধারের উপাদানগুলি সরানোর জন্য প্রথমে /first_stage_ramdisk এ রুট স্যুইচ করে, তারপরে একটি boot-ramdisk সহ ডিভাইসগুলির মতোই এগিয়ে যান (অর্থাৎ, /system হিসাবে system.img মাউন্ট করুন, মাউন্টটিকে / এ সরানোর জন্য রুটটি স্যুইচ করুন, এবং মাউন্ট করার পরে বিনামূল্যে রামডিস্ক সামগ্রী)। যদি androidboot.force_normal_boot=1 কার্নেল কমান্ড লাইনে উপস্থিত থাকে (অথবা Android 12 এর পর থেকে বুট কনফিগ), ডিভাইসগুলি পুনরুদ্ধার মোডে বুট করার পরিবর্তে স্বাভাবিকভাবে (অ্যান্ড্রয়েডে) বুট হয়।
প্রথম পর্যায় init শেষ হওয়ার পরে, এটি সিস্টেমে SELinux কম্পাইল এবং লোড করার জন্য selinux_setup আর্গুমেন্টের সাথে /system/bin/init চালায়। অবশেষে, init /system/bin/init আবার second_stage আর্গুমেন্টের সাথে চালায়। এই মুহুর্তে, init-এর প্রধান পর্যায়টি init.rc স্ক্রিপ্ট ব্যবহার করে বুট প্রক্রিয়া চালিয়ে যায়।
নিম্নলিখিত বিভাগগুলি Android 10 এর আগে এবং পরে নন-A/B ডিভাইসগুলির জন্য পার্টিশন লেআউটের পার্থক্যের বিশদ বিবরণ দেয়৷
পার্টিশন লেআউট (নন-এ/বি ডিভাইস)
নিম্নলিখিত বিভাগগুলি Android 10 এর আগে এবং পরে নন-A/B ডিভাইসগুলির জন্য পার্টিশন লেআউটের পার্থক্যের বিশদ বিবরণ দেয়৷
এই পৃষ্ঠার কন্টেন্ট ও কোডের নমুনাগুলি Content License-এ বর্ণিত লাইসেন্সের অধীনস্থ। Java এবং OpenJDK হল Oracle এবং/অথবা তার অ্যাফিলিয়েট সংস্থার রেজিস্টার্ড ট্রেডমার্ক।
2025-07-29 UTC-তে শেষবার আপডেট করা হয়েছে।
[[["সহজে বোঝা যায়","easyToUnderstand","thumb-up"],["আমার সমস্যার সমাধান হয়েছে","solvedMyProblem","thumb-up"],["অন্যান্য","otherUp","thumb-up"]],[["এতে আমার প্রয়োজনীয় তথ্য নেই","missingTheInformationINeed","thumb-down"],["খুব জটিল / অনেক ধাপ","tooComplicatedTooManySteps","thumb-down"],["পুরনো","outOfDate","thumb-down"],["অনুবাদ সংক্রান্ত সমস্যা","translationIssue","thumb-down"],["নমুনা / কোড সংক্রান্ত সমস্যা","samplesCodeIssue","thumb-down"],["অন্যান্য","otherDown","thumb-down"]],["2025-07-29 UTC-তে শেষবার আপডেট করা হয়েছে।"],[],[],null,["# Ramdisk partitions\n\n| **Note:** This page applies to Android 11 and lower. For Android 12 and greater, see [Generic boot\n| partition](/docs/core/architecture/bootloader/partitions/generic-boot).\n\nIn Android 10 and 11,\nthe first stage ramdisk\ncontains the first stage init binary (which performs early mounting as specified\nby fstab entries) and vendor fstab files. (As in Android 9 and lower,\n`system.img` contains the contents of `$TARGET_ROOT_OUT`.)\n\n- For devices with a boot-ramdisk (non-A/B), first stage init is a static\n executable located at `/init`. These devices mount `system.img` as `/system`,\n then perform a switch root operation to move the mount at `/system` to `/`.\n The contents of the ramdisk are freed after mounting has completed.\n\n- For devices that use recovery as a ramdisk, first stage init is located at\n `/init` within the recovery ramdisk. These devices first switch root to\n `/first_stage_ramdisk` to remove the recovery components from the environment,\n then proceed the same as devices with a boot-ramdisk (that is, mount\n `system.img` as `/system`, switch root to move that mount to `/`, and free\n ramdisk contents after mounting). If `androidboot.force_normal_boot=1` is\n present in the kernel command line (or bootconfig from Android\n 12 onward), devices boot normally (into Android)\n instead of booting into recovery mode.\n\nAfter first stage init finishes, it executes `/system/bin/init` with the\n`selinux_setup` argument to compile and load SELinux onto the system. Finally,\ninit executes `/system/bin/init` again with the `second_stage` argument. At this\npoint, the main phase of init runs and continues the boot process using the\n`init.rc` scripts.\n| **Note:** Android 10 replaces ramdisk contents with a first stage init executable, which is incompatible with how previous ramdisks booted the system.\n\nThe following sections detail differences in partition layouts for non-A/B\ndevices before and after Android 10.\n\nPartition layouts (non-A/B devices)\n-----------------------------------\n\nThe following sections detail differences in partition layouts for non-A/B\ndevices before and after Android 10.\n\n### boot.img\n\n| Ramdisk *(Android 8.x and lower)* | System as root *(Android 9)* | Ramdisk *(Android 10 and 11)* |\n|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| Contains a kernel and a `ramdisk.img`. ``` ramdisk.img -/ - init.rc - init - etc -\u003e /system/etc - system/ (mount point) - vendor/ (mount point) - odm/ (mount point) ... ``` | Contains a normal boot kernel only. | Contains a kernel and `ramdisk.img`. ``` ramdisk.img -/ - init - vendor fstab files - system/ (mount point) - vendor/ (mount point) - odm/ (mount point) ... ``` |\n\n### recovery.img\n\nContains a recovery kernel and a recovery `ramdisk.img`\n\n### system.img\n\n| Ramdisk *(Android 8.x and lower)* | System as root *(Android 9)* | Ramdisk *(Android 10 and 11)* |\n|---------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| Contains a `system.img`. ``` system.img -/ - bin/ - etc - vendor -\u003e /vendor - ... ``` | Contains the merged contents of `$TARGET_SYSTEM_OUT` and `$TARGET_ROOT_OUT`. ``` system.img -/ - init.rc - init - etc -\u003e /system/etc - system/ - bin/ - etc/ - vendor -\u003e /vendor - ... - vendor/ (mount point) - odm/ (mount point) ... ``` | Contains the merged contents of `$TARGET_SYSTEM_OUT` and `$TARGET_ROOT_OUT`. ``` system.img -/ - init.rc - init -\u003e /system/bin/init - etc -\u003e /system/etc - system/ - bin/ - etc/ - vendor -\u003e /vendor - ... - vendor/ (mount point) - odm/ (mount point) ... ``` |\n\nPartition layouts (A/B devices)\n-------------------------------\n\nThe following sections detail differences in partition layouts for A/B devices\nbefore and after Android 10.\n\n### boot.img\n\n| System as root *(Android 9)* | Ramdisk *(Android 10 and 11)* |\n|------------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| Contains normal boot kernel and recovery-ramdisk (`BOARD_USES_RECOVERY_AS_BOOT := true`). Recovery-ramdisk is used only to boot into recovery. | Contains normal boot kernel and recovery-ramdisk (`BOARD_USES_RECOVERY_AS_BOOT := true`). Recovery-ramdisk is used to boot into both recovery and Android. ``` ramdisk.img -/ - init -\u003e /system/bin/init - first_stage_ramdisk - vendor fstab files - etc -\u003e /system/etc - system/ (mount point) - vendor/ (mount point) - odm/ (mount point) ... ``` |\n\n### system.img\n\nContains the merged contents of `$TARGET_SYSTEM_OUT` and `$TARGET_ROOT_OUT`. \n\n system.img\n -/\n - init.rc\n - init -\u003e /system/bin/init\n - etc -\u003e /system/etc\n - system/\n - bin/\n - etc/\n - vendor -\u003e /vendor\n - ...\n - vendor/ (mount point)\n - odm/ (mount point)\n ..."]]