Booting process of Android devices
એન્ડ્રોઇડ ઉપકરણોની બૂટિંગ પ્રક્રિયા એસઓસી (ચિપ પર સિસ્ટમ) ના પાવર-ઓનથી શરૂ થાય છે અને હોમ સ્ક્રીનની દૃશ્યતા અથવા પુનઃપ્રાપ્તિ અને ફાસ્ટબૂટ જેવા વિશેષ મોડ્સ પર સમાપ્ત થાય છે. એન્ડ્રોઇડ ચલાવતા ઉપકરણોની બુટ પ્રક્રિયા એસ. ઓ. સી. ઉત્પાદકોની ફર્મવેર ડિઝાઇનથી પ્રભાવિત છે. પૃષ્ઠભૂમિ 2018 સુધીમાં, એન્ડ્રોઇડ બજારના 90 ટકા એસઓસી ક્વોલકોમ, સેમસંગ અથવા મીડિયાટેક દ્વારા પૂરા પાડવામાં આવે છે. અન્ય વિક્રેતાઓમાં રોકચિપ, માર્વેલ, એનવીડિયા અને અગાઉ ટેક્સાસ ઇન્સ્ટ્રુમેન્ટ્સનો સમાવેશ થાય છે. એન્ડ્રોઇડ કિટકેટ સાથે હિસ્ટ્રી વેરિફાઇડ બૂટ રજૂ કરવામાં આવ્યું હતું. તબક્કાઓ પ્રાથમિક બૂટલોડર પ્રાથમિક બૂટલોડર (પીબીએલ), જે બૂટ રોમમાં સંગ્રહિત છે તે બૂટ પ્રક્રિયાનો પ્રથમ તબક્કો છે. આ કોડ ચિપસેટ ઉત્પાદક દ્વારા લખવામાં આવ્યો છે. પીબીએલ આગામી તબક્કાની અધિકૃતતાની ચકાસણી કરે છે. સેમસંગ સ્માર્ટફોન પર, સેમસંગ સિક્યોર બૂટ કી (એસએસબીકે) નો ઉપયોગ બૂટ રોમ દ્વારા આગામી તબક્કાઓને ચકાસવા માટે થાય છે. ક્વોલકોમના એસઓસી પર, પ્રાથમિક બૂટલોડરથી ક્વોલકોમ ઇમર્જન્સી ડાઉનલોડ મોડ દાખલ કરવું શક્ય છે. જો ગૌણ બૂટલોડરની ચકાસણી નિષ્ફળ જાય, તો તે EDL દાખલ કરશે. ગૌણ બુટલોડર કારણ કે બુટ રોમમાં જગ્યા મર્યાદિત છે, તેથી ઇ. એમ. એમ. સી. અથવા ઇ. યુ. એફ. એસ. પર ગૌણ બૂટલોડરનો ઉપયોગ થાય છે. ગૌણ બુટલોડર ટ્રસ્ટઝોનને શરૂ કરે છે. ઉદાહરણ તરીકે ક્વોલકોમ MSM8960 પર, સેકન્ડરી બૂટલોડર 1 સેકન્ડરી બૂટલોડર 2 ને લોડ કરે છે. સેકન્ડરી બૂટલોડર 2 ટ્રસ્ટઝોન અને સેકન્ડરી બૂટલોડર 3 ને લોડ કરે છે. એસ. બી. એલ. ને હવે ક્વોલકોમ દ્વારા એક્સ. બી. એલ. કહેવામાં આવે છે અને બીજા તબક્કામાં એન્ડ્રોઇડ સિવાયની ઓપરેટિંગ સિસ્ટમોને બુટ કરવા માટે યુ. ઇ. એફ. આઇ. નો ઉપયોગ કરે છે. અબૂટ ક્વોલકોમ લિટલ કર્નલનો ઉપયોગ કરે છે, મીડિયાટેક દાસ યુ-બૂટનો ઉપયોગ કરે છે. લિટલ કર્નલ એ એમ્બેડેડ ઉપકરણો માટેનું માઇક્રોકર્નલ છે, જેને ક્વોલકોમ દ્વારા એન્ડ્રોઇડ બૂટલોડર તરીકે વાપરવા માટે સુધારવામાં આવ્યું છે. એન્ડ્રોઇડ બૂટલોડર (એબૂટ), જે ફાસ્ટબૂટ ઈન્ટરફેસનો અમલ કરે છે (જે સેમસંગ ઉપકરણોમાં ગેરહાજર છે). અબૂટ બુટ અને પુનઃપ્રાપ્તિ પાર્ટીશનોની અધિકૃતતાની ચકાસણી કરે છે. ચોક્કસ કી સંયોજન દબાવીને, ઉપકરણો પુનઃપ્રાપ્તિ સ્થિતિમાં પણ બુટ કરી શકે છે. અબૂટ પછી નિયંત્રણને લિનક્સ કર્નલમાં સ્થાનાંતરિત કરે છે. કર્નલ અને initramfs initramfs એ એક gzip 'ed cpio આર્કાઇવ છે જેમાં એક નાની રુટ ફાઇલ સિસ્ટમ છે. તેમાં init છે, જે ચલાવવામાં આવે છે. એન્ડ્રોઇડ કર્નલ એ લિનક્સ કર્નલનું સુધારેલું સંસ્કરણ છે. ઇનિસ્ટ પાર્ટીશનોને માઉન્ટ કરે છે. dm-verity એ fstab ફાઇલમાં ઉલ્લેખિત પાર્ટીશનોની અખંડિતતાની ચકાસણી કરે છે. ડીએમ-વેરિટી એ લિનક્સ કર્નલ મોડ્યુલ છે જે ગૂગલ દ્વારા એન્ડ્રોઇડમાં આવૃત્તિ 4.4 થી રજૂ કરવામાં આવ્યું હતું. સ્ટોક અમલીકરણ માત્ર બ્લોક આધારિત ચકાસણીને સમર્થન આપે છે, પરંતુ સેમસંગે ફાઇલો માટે સમર્થન ઉમેર્યું છે. ઝાયગોટ ઝાયગોટ એ init પ્રક્રિયા દ્વારા પેદા થાય છે, જે એન્ડ્રોઇડ એપ્લિકેશન્સ અને સેવા પ્રક્રિયાઓ શરૂ કરવા માટે જવાબદાર છે. તે એવા વર્ગોને લોડ કરે છે અને પ્રારંભ કરે છે જેનો ઉપયોગ ઢગલામાં ઘણી વાર થાય છે. ઉદાહરણ તરીકે, લાઈબ્રેરીઓના ડેક્સ ડેટા સ્ટ્રક્ચર્સ. ઝાયગોટ શરૂ થયા પછી, તે સોકેટ પર આદેશો સાંભળે છે. જ્યારે નવી એપ્લિકેશનો શરૂ થાય છે, ત્યારે ઝાયગોટ પર આદેશ મોકલવામાં આવે છે જે ફોર્ક () સિસ્ટમ કોલ ચલાવે છે. પાર્ટીશન લેઆઉટ એન્ડ્રોઇડ સિસ્ટમ વિવિધ પાર્ટીશનોમાં વહેંચાયેલી છે. ક્વોલકોમ પ્લેટફોર્મ GUID પાર્ટીશન કોષ્ટકનો ઉપયોગ કરે છે, જો કે આ સ્પષ્ટીકરણ UEFI સ્પષ્ટીકરણનો ભાગ છે, તે UEFI ફર્મવેર પર આધારિત નથી. વિન્ડોઝ એક્સપ્લેનેટરી નોટ્સની કોરબૂટ બૂટિંગ પ્રક્રિયા પણ જુઓ સંદર્ભો બાહ્ય લિંક્સ Android.com-બૂટ ફ્લો મેનેજિંગ બૂટ ટાઇમ ક્વોલકોમ બૂટલોડર્સ ક્વોલકોમની ચેઇન ઓફ ટ્રસ્ટ સિક્યોર બૂટ એન્ડ ઇમેજ ઓથેન્ટિકેશન સિક્યોર બૂટ ઓન સ્નેપડ્રેગન 410 એનાલિસિસ ઓફ ક્વોલકોમ સિક્યોર બૂટ ચેઇન્સ એમએસએમ8916-મેઇનલાઇન/ક્યુપસ્ટબ એન્ડ્રોઇડ સિસ્ટમ ઇનિટ પ્રોસેસ સ્ટાર્ટઅપ અને init.rc સંપૂર્ણ વિશ્લેષણ એન્ડ્રોઇડ ઇનિશિયલ લેંગ્વેજ એન્ડ્રોઇડ (ઓપરેટિંગ સિસ્ટમ) બૂટિંગ પ્રક્રિયાઓ બૂટ લોડર્સ