Embedded system
એમ્બેડેડ સિસ્ટમ એ કમ્પ્યુટર સિસ્ટમ છે-કમ્પ્યુટર પ્રોસેસર, કમ્પ્યુટર મેમરી અને ઇનપુટ/આઉટપુટ પેરિફેરલ ડિવાઇસનું સંયોજન-જે મોટી યાંત્રિક અથવા ઇલેક્ટ્રોનિક સિસ્ટમમાં સમર્પિત કાર્ય ધરાવે છે. તે વિદ્યુત અથવા ઇલેક્ટ્રોનિક હાર્ડવેર અને યાંત્રિક ભાગો સહિત સંપૂર્ણ ઉપકરણના ભાગ રૂપે જડિત કરવામાં આવે છે. કારણ કે એમ્બેડેડ સિસ્ટમ સામાન્ય રીતે મશીનની ભૌતિક કામગીરીને નિયંત્રિત કરે છે જેમાં તે જડિત હોય છે, તેમાં ઘણીવાર રીઅલ-ટાઇમ કમ્પ્યુટિંગ અવરોધો હોય છે. એમ્બેડેડ સિસ્ટમો સામાન્ય ઉપયોગમાં ઘણા ઉપકરણોને નિયંત્રિત કરે છે. એવો અંદાજ લગાવવામાં આવ્યો હતો કે ઉત્પાદિત તમામ માઇક્રોપ્રોસેસર્સમાંથી 98 ટકા એમ્બેડેડ સિસ્ટમ્સમાં ઉપયોગમાં લેવાતા હતા. આધુનિક એમ્બેડેડ સિસ્ટમો ઘણીવાર માઇક્રોકન્ટ્રોલર્સ પર આધારિત હોય છે (એટલે કે. સંકલિત મેમરી અને પેરિફેરલ ઇન્ટરફેસવાળા માઇક્રોપ્રોસેસર્સ), પરંતુ સામાન્ય માઇક્રોપ્રોસેસર્સ (મેમરી અને પેરિફેરલ ઇન્ટરફેસ સર્કિટ માટે બાહ્ય ચિપ્સનો ઉપયોગ કરીને) પણ સામાન્ય છે, ખાસ કરીને વધુ જટિલ સિસ્ટમોમાં. બંને કિસ્સાઓમાં, ઉપયોગમાં લેવાતા પ્રોસેસર (ઓ) સામાન્ય હેતુથી લઈને ગણતરીના ચોક્કસ વર્ગમાં વિશેષતા ધરાવતા પ્રકારો હોઈ શકે છે, અથવા હાથમાં એપ્લિકેશન માટે ડિઝાઇન કરેલ કસ્ટમ પણ હોઈ શકે છે. સમર્પિત પ્રોસેસર્સનો એક સામાન્ય પ્રમાણભૂત વર્ગ ડિજિટલ સિગ્નલ પ્રોસેસર (DSP) છે. એમ્બેડેડ સિસ્ટમ ચોક્કસ કાર્યો માટે સમર્પિત હોવાથી, ડિઝાઇન ઇજનેરો ઉત્પાદનના કદ અને ખર્ચને ઘટાડવા અને તેની વિશ્વસનીયતા અને કામગીરીમાં વધારો કરવા માટે તેને શ્રેષ્ઠ બનાવી શકે છે. કેટલીક એમ્બેડેડ સિસ્ટમો મોટા પાયે ઉત્પાદિત થાય છે, જે સ્કેલના અર્થતંત્રથી લાભ મેળવે છે. એમ્બેડેડ સિસ્ટમોનું કદ ડિજિટલ ઘડિયાળો અને એમપી 3 પ્લેયર્સ જેવા પોર્ટેબલ વ્યક્તિગત ઉપકરણોથી માંડીને ઘરેલું ઉપકરણો, ઔદ્યોગિક એસેમ્બલી લાઇનો, રોબોટ્સ, પરિવહન વાહનો, ટ્રાફિક લાઇટ નિયંત્રકો અને તબીબી ઇમેજિંગ સિસ્ટમ્સ જેવા મોટા મશીનો સુધી હોય છે. ઘણીવાર તેઓ વિમાનમાં એવિઓનિક્સ અને અવકાશયાનમાં એસ્ટ્રિયોનિક્સ જેવા અન્ય મશીનોની પેટા પ્રણાલીઓની રચના કરે છે. ફેક્ટરીઓ, પાઈપલાઈનો અને વિદ્યુત ગ્રીડ જેવા મોટા સ્થાપનો એકસાથે જોડાયેલા બહુવિધ એમ્બેડેડ સિસ્ટમો પર આધાર રાખે છે. સોફ્ટવેર કસ્ટમાઇઝેશન દ્વારા સામાન્યીકૃત, પ્રોગ્રામેબલ લોજિક કંટ્રોલર્સ જેવી એમ્બેડેડ સિસ્ટમ્સમાં વારંવાર તેમના કાર્યાત્મક એકમોનો સમાવેશ થાય છે. એમ્બેડેડ સિસ્ટમો એક માઇક્રોકન્ટ્રોલર ચિપ સાથે ઓછી જટિલતાથી લઈને બહુવિધ એકમો, પેરિફેરલ્સ અને નેટવર્ક સાથે ખૂબ ઊંચી હોય છે, જે સાધનોના રેક્સમાં અથવા લાંબા અંતરની સંચાર લાઇનો દ્વારા જોડાયેલા મોટા ભૌગોલિક વિસ્તારોમાં રહી શકે છે. ઇતિહાસ પૃષ્ઠભૂમિ માઇક્રોપ્રોસેસર અને માઇક્રોકન્ટ્રોલરની ઉત્પત્તિ એમ. ઓ. એસ. ઇન્ટિગ્રેટેડ સર્કિટમાં શોધી શકાય છે, જે એમ. ઓ. એસ. એફ. ઇ. ટી. (મેટલ-ઓક્સાઇડ-સેમિકન્ડક્ટર ફિલ્ડ-ઇફેક્ટ ટ્રાન્ઝિસ્ટર) માંથી બનાવેલ ઇન્ટિગ્રેટેડ સર્કિટ ચિપ છે અને 1960ના દાયકાની શરૂઆતમાં વિકસાવવામાં આવી હતી. 1964 સુધીમાં, એમ. ઓ. એસ. ચીપો દ્વિધ્રુવીય ચીપો કરતાં વધુ ટ્રાન્ઝિસ્ટર ઘનતા અને ઓછા ઉત્પાદન ખર્ચ સુધી પહોંચી ગઈ હતી. મૂરેના કાયદા દ્વારા આગાહી કરાયેલા દરે એમ. ઓ. એસ. ચીપોની જટિલતામાં વધુ વધારો થયો હતો, જે 1960ના દાયકાના અંત સુધીમાં એક જ એમ. ઓ. એસ. ચિપ પર સેંકડો ટ્રાન્ઝિસ્ટર સાથે મોટા પાયે એકીકરણ (એલ. એસ. આઈ.) તરફ દોરી ગયો હતો. કમ્પ્યુટિંગમાં એમ. ઓ. એસ. એલ. એસ. આઈ. ચિપ્સનો ઉપયોગ એ પ્રથમ માઇક્રોપ્રોસેસર્સ માટેનો આધાર હતો, કારણ કે ઇજનેરોએ ઓળખવાનું શરૂ કર્યું હતું કે સંપૂર્ણ કમ્પ્યુટર પ્રોસેસર સિસ્ટમ કેટલીક એમ. ઓ. એસ. એલ. એસ. આઈ. ચિપ્સ પર સમાવી શકાય છે. પ્રથમ મલ્ટી-ચિપ માઇક્રોપ્રોસેસર્સ, 1969માં ફોર-ફેઝ સિસ્ટમ્સ AL1 અને 1970માં ગેરેટ એર રિસર્ચ MP944, બહુવિધ MOS LSI ચિપ્સ સાથે વિકસાવવામાં આવ્યા હતા. પ્રથમ સિંગલ-ચિપ માઇક્રોપ્રોસેસર ઇન્ટેલ 4004 હતું, જે 1971માં રજૂ થયું હતું. તે ફેડેરિકો ફેગિન દ્વારા તેમની સિલિકોન-ગેટ એમ. ઓ. એસ. તકનીકનો ઉપયોગ કરીને, ઇન્ટેલ ઇજનેરો માર્સિયન હોફ અને સ્ટેન મેઝર અને બુસીકોમ ઇજનેર માસાટોશી શિમા સાથે વિકસાવવામાં આવી હતી. પ્રથમ ઓળખી શકાય તેવી આધુનિક એમ્બેડેડ સિસ્ટમોમાંથી એક એપોલો ગાઇડન્સ કમ્પ્યુટર હતું, જે સીએ દ્વારા વિકસાવવામાં આવ્યું હતું. એમ. આઈ. ટી. ઇન્સ્ટ્રુમેન્ટેશન લેબોરેટરી ખાતે ચાર્લ્સ સ્ટાર્ક ડ્રેપર દ્વારા 1965. પ્રોજેક્ટની શરૂઆતમાં, એપોલો માર્ગદર્શન કમ્પ્યુટરને એપોલો પ્રોજેક્ટમાં સૌથી જોખમી વસ્તુ માનવામાં આવતું હતું કારણ કે તેણે કમ્પ્યુટરના કદ અને વજનને ઘટાડવા માટે તે સમયે નવા વિકસિત મોનોલિથિક સંકલિત સર્કિટનો ઉપયોગ કર્યો હતો. પ્રારંભિક મોટા પાયે ઉત્પાદિત એમ્બેડેડ સિસ્ટમ એ મિનિટમેન મિસાઇલ માટે ઓટોનેટિક્સ ડી-17 માર્ગદર્શન કમ્પ્યુટર હતું, જે 1961માં રજૂ થયું હતું. જ્યારે 1966માં મિનિટમેન IIનું ઉત્પાદન શરૂ થયું, ત્યારે ડી-17ને એક નવા કોમ્પ્યુટર સાથે બદલવામાં આવ્યું હતું, જે ઇન્ટિગ્રેટેડ સર્કિટ્સના પ્રથમ ઉચ્ચ વોલ્યુમના ઉપયોગનું પ્રતિનિધિત્વ કરે છે. 1960 ના દાયકામાં આ પ્રારંભિક એપ્લિકેશનોથી, એમ્બેડેડ સિસ્ટમ્સની કિંમતમાં ઘટાડો થયો છે અને પ્રક્રિયા શક્તિ અને કાર્યક્ષમતામાં નાટ્યાત્મક વધારો થયો છે. પ્રારંભિક માઇક્રોપ્રોસેસર, ઇન્ટેલ 4004 (1971માં રજૂ), કેલ્ક્યુલેટર અને અન્ય નાની સિસ્ટમો માટે ડિઝાઇન કરવામાં આવ્યું હતું પરંતુ હજુ પણ બાહ્ય મેમરી અને સપોર્ટ ચિપ્સની જરૂર હતી. 1980 ના દાયકાની શરૂઆત સુધીમાં, મેમરી, ઇનપુટ અને આઉટપુટ સિસ્ટમ ઘટકોને માઇક્રોકન્ટ્રોલર બનાવતા પ્રોસેસર જેવી જ ચિપમાં એકીકૃત કરવામાં આવ્યા હતા. માઇક્રોકન્ટ્રોલર્સ એવી એપ્લિકેશનો શોધે છે જ્યાં સામાન્ય હેતુ ધરાવતું કમ્પ્યુટર ખૂબ ખર્ચાળ હોય. જેમ જેમ માઇક્રોપ્રોસેસર્સ અને માઇક્રોકન્ટ્રોલર્સની કિંમતમાં ઘટાડો થયો તેમ તેમ એમ્બેડેડ સિસ્ટમોનો વ્યાપ વધ્યો. તુલનાત્મક રીતે ઓછા ખર્ચના માઇક્રોકન્ટ્રોલરને મોટી સંખ્યામાં અલગ ઘટકોની સમાન ભૂમિકાને પૂર્ણ કરવા માટે પ્રોગ્રામ કરી શકાય છે. માઇક્રોકન્ટ્રોલર્સ સાથે, કન્ઝ્યુમર પ્રોડક્ટ્સમાં પણ, મોંઘા નોબ-આધારિત એનાલોગ ઘટકો જેમ કે પોટેન્શિયોમીટર્સ અને માઇક્રોપ્રોસેસર દ્વારા વાંચેલા અપ/ડાઉન બટનો અથવા નોબ્સ સાથે ચલ કેપેસિટર્સને બદલવાનું શક્ય બન્યું. જો કે આ સંદર્ભમાં એમ્બેડેડ સિસ્ટમ સામાન્ય રીતે પરંપરાગત ઉકેલ કરતાં વધુ જટિલ હોય છે, મોટાભાગની જટિલતા માઇક્રોકન્ટ્રોલરમાં જ સમાયેલી હોય છે. બહુ ઓછા વધારાના ઘટકોની જરૂર પડી શકે છે અને ડિઝાઇનનો મોટાભાગનો પ્રયાસ સોફ્ટવેરમાં હોય છે. એમ્બેડેડ પ્રોસેસરનો ઉપયોગ ન કરતી નવી સર્કિટની ડિઝાઇન અને નિર્માણની સરખામણીમાં સોફ્ટવેર પ્રોટોટાઇપ અને પરીક્ષણ ઝડપી હોઈ શકે છે. એમ્બેડેડ સિસ્ટમો સામાન્ય રીતે ગ્રાહક, ઔદ્યોગિક, ઓટોમોટિવ, ઘરેલું ઉપકરણો, તબીબી, દૂરસંચાર, વ્યાપારી, એરોસ્પેસ અને લશ્કરી કાર્યક્રમોમાં જોવા મળે છે. ટેલિકોમ્યુનિકેશન સિસ્ટમો નેટવર્ક માટે ટેલિફોન સ્વીચોથી લઈને અંતિમ વપરાશકર્તા માટે સેલ ફોન સુધીની અસંખ્ય એમ્બેડેડ સિસ્ટમોનો ઉપયોગ કરે છે. કમ્પ્યુટર નેટવર્કિંગ ડેટાને રૂટ કરવા માટે સમર્પિત રાઉટર અને નેટવર્ક બ્રિજનો ઉપયોગ કરે છે. કન્ઝ્યુમર ઇલેક્ટ્રોનિક્સમાં એમપી 3 પ્લેયર, ટેલિવિઝન સેટ, મોબાઇલ ફોન, વિડિયો ગેમ કન્સોલ, ડિજિટલ કેમેરા, જીપીએસ રીસીવરો અને પ્રિન્ટર્સનો સમાવેશ થાય છે. માઇક્રોવેવ ઓવન, વોશિંગ મશીન અને ડિશવશેર જેવા ઘરગથ્થુ ઉપકરણોમાં લવચીકતા, કાર્યક્ષમતા અને સુવિધાઓ પ્રદાન કરવા માટે એમ્બેડેડ સિસ્ટમનો સમાવેશ થાય છે. અદ્યતન ગરમી, વેન્ટિલેશન અને એર કન્ડીશનીંગ (એચવીએસી) પ્રણાલીઓ વધુ સચોટ અને અસરકારક રીતે તાપમાનને નિયંત્રિત કરવા માટે નેટવર્ક થર્મોસ્ટેટનો ઉપયોગ કરે છે જે દિવસ અને મોસમના સમય પ્રમાણે બદલાઈ શકે છે. હોમ ઓટોમેશન વાયર્ડ અને વાયરલેસ-નેટવર્કિંગનો ઉપયોગ કરે છે જેનો ઉપયોગ લાઇટ, આબોહવા, સુરક્ષા, ઓડિયો/વિઝ્યુઅલ, સર્વેલન્સ વગેરેને નિયંત્રિત કરવા માટે થઈ શકે છે, જે તમામ સંવેદના અને નિયંત્રણ માટે એમ્બેડેડ ઉપકરણોનો ઉપયોગ કરે છે. ઉડાનથી ઓટોમોબાઇલ્સ સુધીની પરિવહન પ્રણાલીઓ વધુને વધુ એમ્બેડેડ પ્રણાલીઓનો ઉપયોગ કરે છે. નવા વિમાનોમાં જડતા માર્ગદર્શન પ્રણાલીઓ અને જી. પી. એસ. રીસીવરો જેવા અદ્યતન ઉડ્ડયનશાસ્ત્ર હોય છે જે નોંધપાત્ર સલામતી જરૂરિયાતો પણ ધરાવે છે. અવકાશયાન પ્રક્ષેપવક્ર સુધારણા માટે એસ્ટ્રિયોનિક્સ પ્રણાલીઓ પર આધાર રાખે છે. વિવિધ ઇલેક્ટ્રિક મોટર્સ-બ્રશલેસ ડીસી મોટર્સ, ઇન્ડક્શન મોટર્સ અને ડીસી મોટર્સ-ઇલેક્ટ્રોનિક મોટર કંટ્રોલર્સનો ઉપયોગ કરે છે. ઓટોમોબાઇલ્સ, ઇલેક્ટ્રિક વાહનો અને હાઇબ્રિડ વાહનો કાર્યક્ષમતા વધારવા અને પ્રદૂષણ ઘટાડવા માટે એમ્બેડેડ સિસ્ટમનો વધુને વધુ ઉપયોગ કરે છે. એમ્બેડેડ સિસ્ટમનો ઉપયોગ કરતી અન્ય ઓટોમોટિવ સેફ્ટી સિસ્ટમ્સમાં એન્ટી-લોક બ્રેકિંગ સિસ્ટમ (એબીએસ), ઇલેક્ટ્રોનિક સ્ટેબિલિટી કંટ્રોલ (ઇએસસી/ઇએસપી), ટ્રેક્શન કંટ્રોલ (ટીસીએસ) અને ઓટોમેટિક ફોર-વ્હીલ ડ્રાઇવનો સમાવેશ થાય છે. તબીબી ઉપકરણો દેખરેખ માટે એમ્બેડેડ સિસ્ટમનો ઉપયોગ કરે છે, અને બિન-આક્રમક આંતરિક તપાસ માટે વિવિધ તબીબી ઇમેજિંગ (પોઝિટ્રોન એમિશન ટોમોગ્રાફી (પી. ઈ. ટી.), સિંગલ-ફોટોન એમિશન કમ્પ્યુટેડ ટોમોગ્રાફી (એસ. પી. ઈ. સી. ટી.), કમ્પ્યુટેડ ટોમોગ્રાફી (સી. ટી.) અને મેગ્નેટિક રેઝોનન્સ ઇમેજિંગ (એમ. આર. આઈ.) નો ઉપયોગ કરે છે. તબીબી ઉપકરણોમાં જડિત પ્રણાલીઓ ઘણીવાર ઔદ્યોગિક કમ્પ્યુટર્સ દ્વારા સંચાલિત થાય છે. એમ્બેડેડ સિસ્ટમનો ઉપયોગ એરોસ્પેસ અને સંરક્ષણ ઉદ્યોગોમાં સલામતી-નિર્ણાયક સિસ્ટમો માટે થાય છે. જ્યાં સુધી ઓન-ચિપ 3જી સેલ્યુલર અથવા આઇઓટી દેખરેખ અને નિયંત્રણ હેતુઓ માટેની અન્ય પદ્ધતિઓ દ્વારા વાયર્ડ અથવા વાયરલેસ નેટવર્ક સાથે જોડાયેલ ન હોય ત્યાં સુધી, આ સિસ્ટમોને હેકિંગથી અલગ કરી શકાય છે અને આમ વધુ સુરક્ષિત બની શકે છે. આગ સલામતી માટે, સિસ્ટમોને ઊંચા તાપમાનને નિયંત્રિત કરવાની અને કામ કરવાનું ચાલુ રાખવાની વધુ ક્ષમતા માટે ડિઝાઇન કરી શકાય છે. સુરક્ષા સાથે વ્યવહારમાં, એમ્બેડેડ સિસ્ટમો આત્મનિર્ભર હોઈ શકે છે અને કટ ઇલેક્ટ્રિકલ અને સંચાર સિસ્ટમો સાથે વ્યવહાર કરવામાં સક્ષમ હોઈ શકે છે. મોટ્સ તરીકે ઓળખાતા લઘુચિત્ર વાયરલેસ ઉપકરણો નેટવર્કવાળા વાયરલેસ સેન્સર છે. વાયરલેસ સેન્સર નેટવર્કિંગ અદ્યતન ઇન્ટિગ્રેટેડ સર્કિટ (IC) ડિઝાઇન દ્વારા શક્ય બનેલા લઘુચિત્રકરણનો ઉપયોગ કરીને સંપૂર્ણ વાયરલેસ સબસિસ્ટમ્સને અત્યાધુનિક સેન્સર સાથે જોડી દે છે, જે લોકો અને કંપનીઓને ભૌતિક વિશ્વમાં અસંખ્ય વસ્તુઓને માપવા અને દેખરેખ અને નિયંત્રણ પ્રણાલીઓ દ્વારા આ માહિતી પર કાર્ય કરવા માટે સક્ષમ બનાવે છે. આ મોટ સંપૂર્ણપણે સ્વ-સમાવિષ્ટ હોય છે અને સામાન્ય રીતે બેટરી બદલવાની અથવા ચાર્જ કરવાની જરૂર પડે તે પહેલાં વર્ષો સુધી બેટરી સ્ત્રોત બંધ થઈ જાય છે. લાક્ષણિકતાઓ એમ્બેડેડ સિસ્ટમો ચોક્કસ કાર્ય કરવા માટે રચાયેલ છે, જે બહુવિધ કાર્યો માટે રચાયેલ સામાન્ય હેતુના કમ્પ્યુટર્સથી વિપરીત છે. કેટલાકમાં વાસ્તવિક સમયની કામગીરીની મર્યાદાઓ હોય છે જેને સલામતી અને ઉપયોગીતા જેવા કારણોસર પૂરી કરવી આવશ્યક છે; અન્યમાં કામગીરીની જરૂરિયાતો ઓછી અથવા ન પણ હોઈ શકે, જેનાથી સિસ્ટમ હાર્ડવેરને ખર્ચ ઘટાડવા માટે સરળ બનાવવામાં આવે છે. એમ્બેડેડ સિસ્ટમો હંમેશા એકલ ઉપકરણો હોતી નથી. ઘણી એમ્બેડેડ સિસ્ટમો મોટા ઉપકરણની અંદરનો એક નાનો ભાગ છે જે વધુ સામાન્ય હેતુ પૂરો કરે છે. ઉદાહરણ તરીકે, ગિબ્સન રોબોટ ગિટારમાં તારને ટ્યુન કરવા માટે એક એમ્બેડેડ સિસ્ટમ છે, પરંતુ રોબોટ ગિટારનો એકંદર હેતુ સંગીત વગાડવાનો છે. તેવી જ રીતે, ઓટોમોબાઇલમાં એમ્બેડેડ સિસ્ટમ કારની પેટા પ્રણાલી તરીકે ચોક્કસ કાર્ય પ્રદાન કરે છે. એમ્બેડેડ સિસ્ટમો માટે લખાયેલી પ્રોગ્રામ સૂચનાઓને ફર્મવેર તરીકે ઓળખવામાં આવે છે, અને તે ફક્ત-વાંચી શકાય તેવી મેમરી અથવા ફ્લેશ મેમરી ચિપ્સમાં સંગ્રહિત થાય છે. તેઓ મર્યાદિત કમ્પ્યુટર હાર્ડવેર સંસાધનો સાથે ચાલે છેઃ ઓછી મેમરી, નાના અથવા અસ્તિત્વમાં ન હોય તેવા કીબોર્ડ અથવા સ્ક્રીન. વપરાશકર્તા ઇન્ટરફેસો એમ્બેડેડ સિસ્ટમો કોઈ પણ વપરાશકર્તા ઇન્ટરફેસથી લઈને, એક કાર્યને સમર્પિત સિસ્ટમોમાં, આધુનિક કમ્પ્યુટર ડેસ્કટોપ ઓપરેટિંગ સિસ્ટમો જેવા જટિલ ગ્રાફિકલ વપરાશકર્તા ઇન્ટરફેસો સુધીની શ્રેણી ધરાવે છે. સરળ એમ્બેડેડ ઉપકરણો સરળ મેનુ સિસ્ટમ સાથે બટનો, પ્રકાશ ઉત્સર્જક ડાયોડ (એલઇડી), ગ્રાફિક અથવા અક્ષર પ્રવાહી-સ્ફટિક ડિસ્પ્લે (એલસીડી) નો ઉપયોગ કરે છે. વધુ વ્યવહારદક્ષ ઉપકરણો કે જે ટચ સેન્સિંગ અથવા સ્ક્રીન-એજ સોફ્ટ કીઓ સાથે ગ્રાફિકલ સ્ક્રીનનો ઉપયોગ કરે છે તે ઉપયોગમાં લેવાતી જગ્યાને ઓછી કરતી વખતે લવચીકતા પ્રદાન કરે છેઃ બટનોનો અર્થ સ્ક્રીન સાથે બદલાઈ શકે છે, અને પસંદગીમાં ઇચ્છિત હોય તે તરફ નિર્દેશ કરવાની કુદરતી વર્તણૂકનો સમાવેશ થાય છે. કેટલીક પ્રણાલીઓ શ્રેણીની મદદથી દૂરસ્થ વપરાશકર્તા ઈન્ટરફેસ પ્રદાન કરે છે (દા. ત. આરએસ-232) અથવા નેટવર્ક (દા. ત. ઇથરનેટ) જોડાણ. આ અભિગમ એમ્બેડેડ સિસ્ટમની ક્ષમતાઓને વિસ્તૃત કરે છે, ડિસ્પ્લેની કિંમતને ટાળે છે, બોર્ડ સપોર્ટ પેકેજ (બી. એસ. પી.) ને સરળ બનાવે છે અને ડિઝાઇનરોને પીસી પર સમૃદ્ધ વપરાશકર્તા ઇન્ટરફેસ બનાવવાની મંજૂરી આપે છે. આનું એક સારું ઉદાહરણ એમ્બેડેડ ઉપકરણ (જેમ કે આઇપી કેમેરા અથવા નેટવર્ક રાઉટર) પર ચાલતા એમ્બેડેડ એચટીટીપી સર્વરનું સંયોજન છે. વપરાશકર્તા ઈન્ટરફેસ ઉપકરણ સાથે જોડાયેલા પીસી પર વેબ બ્રાઉઝરમાં પ્રદર્શિત થાય છે. એમ્બેડેડ સિસ્ટમોમાં પ્રોસેસર્સ સામાન્ય હેતુના સમકક્ષો સાથે સરખામણી કરવામાં આવે ત્યારે લાક્ષણિક એમ્બેડેડ કમ્પ્યુટર્સના ગુણધર્મોના ઉદાહરણો, ઓછા વીજ વપરાશ, નાના કદ, કઠોર ઓપરેટિંગ રેન્જ અને એકમ દીઠ ઓછી કિંમત છે. આ મર્યાદિત પ્રક્રિયા સંસાધનોના ભોગે આવે છે. એમ્બેડેડ સિસ્ટમના ઉપયોગ માટે અસંખ્ય માઇક્રોકન્ટ્રોલર્સ વિકસાવવામાં આવ્યા છે. સામાન્ય હેતુના માઇક્રોપ્રોસેસર્સનો ઉપયોગ એમ્બેડેડ સિસ્ટમ્સમાં પણ થાય છે, પરંતુ સામાન્ય રીતે, માઇક્રોકન્ટ્રોલર્સ કરતાં વધુ સપોર્ટ સર્કિટરીની જરૂર પડે છે. તૈયાર કમ્પ્યુટર બોર્ડ પીસી/104 અને પીસી/104 + એ તૈયાર કમ્પ્યુટર બોર્ડ માટેના ધોરણોના ઉદાહરણો છે જે નાના, ઓછા કદના એમ્બેડેડ અને કઠોર સિસ્ટમો માટે બનાવાયેલ છે. આ મોટાભાગે x86-આધારિત હોય છે અને પ્રમાણભૂત પીસીની તુલનામાં ઘણીવાર શારીરિક રીતે નાના હોય છે, જો કે તે હજુ પણ સૌથી સરળ (8/16-બિટ) એમ્બેડેડ સિસ્ટમોની તુલનામાં ખૂબ મોટી છે. તેઓ DOS, ફ્રીબીએસડી, લિનક્સ, નેટબીએસડી અથવા માઇક્રોસી/ઓએસ-II, ક્યુએનએક્સ અથવા વીએક્સવર્ક્સ જેવી એમ્બેડેડ રીઅલ-ટાઇમ ઓપરેટિંગ સિસ્ટમ (આરટીઓએસ) નો ઉપયોગ કરી શકે છે. અમુક એપ્લિકેશનોમાં, જ્યાં નાના કદ અથવા પાવર કાર્યક્ષમતા પ્રાથમિક ચિંતા નથી, ત્યાં ઉપયોગમાં લેવાતા ઘટકો સામાન્ય હેતુ x86 પર્સનલ કમ્પ્યુટર્સમાં ઉપયોગમાં લેવાતા ઘટકો સાથે સુસંગત હોઈ શકે છે. વીઆઇએ (VIA) ઇપીઆઇએ (EPIA) શ્રેણી જેવા બોર્ડ પીસી-સુસંગત પરંતુ અત્યંત સંકલિત, શારીરિક રીતે નાના અથવા અન્ય લક્ષણો ધરાવતા હોવાથી તેમને એમ્બેડેડ ઇજનેરો માટે આકર્ષક બનાવીને અંતરને દૂર કરવામાં મદદ કરે છે. આ અભિગમનો ફાયદો એ છે કે સામાન્ય સોફ્ટવેર વિકાસ માટે ઉપયોગમાં લેવાતા સમાન સોફ્ટવેર વિકાસ સાધનો સાથે ઓછા ખર્ચે કોમોડિટી ઘટકોનો ઉપયોગ કરી શકાય છે. આ રીતે બનેલી સિસ્ટમોને હજુ પણ એમ્બેડેડ તરીકે ગણવામાં આવે છે કારણ કે તે મોટા ઉપકરણોમાં સંકલિત છે અને એક જ ભૂમિકા પૂર્ણ કરે છે. આ અભિગમ અપનાવી શકે તેવા ઉપકરણોના ઉદાહરણો ઓટોમેટેડ ટેલર મશીનો (એટીએમ) અને આર્કેડ મશીનો છે, જેમાં એપ્લિકેશન માટે વિશિષ્ટ કોડ હોય છે. જો કે, મોટાભાગના તૈયાર એમ્બેડેડ સિસ્ટમ બોર્ડ પીસી-કેન્દ્રિત નથી અને ISA અથવા PCI બસોનો ઉપયોગ કરતા નથી. જ્યારે સિસ્ટમ-ઓન-એ-ચિપ પ્રોસેસર સામેલ હોય, ત્યારે અલગ ઘટકોને જોડતી પ્રમાણિત બસ રાખવાથી બહુ ઓછો ફાયદો થઈ શકે છે, અને હાર્ડવેર અને સોફ્ટવેર સાધનો બંને માટેનું વાતાવરણ ખૂબ જ અલગ હોઈ શકે છે. એક સામાન્ય ડિઝાઇન શૈલી નાના સિસ્ટમ મોડ્યુલનો ઉપયોગ કરે છે, કદાચ બિઝનેસ કાર્ડનું કદ, જેમાં એઆરએમ-આધારિત સિસ્ટમ-ઓન-એ-ચિપ પ્રોસેસર અને પેરિફેરલ્સ, સંગ્રહ માટે બાહ્ય ફ્લેશ મેમરી અને રનટાઇમ મેમરી માટે ડીઆરએએમ જેવી ઉચ્ચ ઘનતા ધરાવતી બીજીએ ચિપ્સ હોય છે. મોડ્યુલ વિક્રેતા સામાન્ય રીતે બુટ સોફ્ટવેર પ્રદાન કરે છે અને ખાતરી કરે છે કે ત્યાં ઓપરેટિંગ સિસ્ટમ્સની પસંદગી છે, જેમાં સામાન્ય રીતે લિનક્સ અને કેટલીક વાસ્તવિક-સમયની પસંદગીઓનો સમાવેશ થાય છે. આ મોડ્યુલો તેમના વિશિષ્ટ પરીક્ષણ મુદ્દાઓથી પરિચિત સંસ્થાઓ દ્વારા ઉચ્ચ જથ્થામાં ઉત્પાદિત કરી શકાય છે, અને એપ્લિકેશન-વિશિષ્ટ બાહ્ય પેરિફેરલ્સ સાથે ખૂબ ઓછા વોલ્યુમ કસ્ટમ મેઇનબોર્ડ સાથે જોડાઈ શકે છે. આ અભિગમના અગ્રણી ઉદાહરણોમાં આર્ડિનો અને રાસ્પબેરી પાઇનો સમાવેશ થાય છે. એ. એસ. આઈ. સી. અને એફ. પી. જી. એ. એસ. સી. સોલ્યુશન્સ એ સિસ્ટમ ઓન એ ચિપ (એસ. ઓ. સી.) એક સંપૂર્ણ સિસ્ટમ ધરાવે છે-જેમાં બહુવિધ પ્રોસેસર્સ, મલ્ટિપ્લાયર, કેશ, વિવિધ પ્રકારની મેમરી અને સામાન્ય રીતે વિવિધ પેરિફેરલ્સ જેવા કે એક જ ચિપ પર વાયર્ડ અથવા વાયરલેસ સંચાર માટેના ઇન્ટરફેસનો સમાવેશ થાય છે. ઘણીવાર ગ્રાફિક્સ પ્રોસેસિંગ એકમો (જી. પી. યુ.) અને ડી. એસ. પી. ને આવી ચિપ્સનો સમાવેશ કરવામાં આવે છે. એસ. ઓ. સી. ને એપ્લિકેશન-સ્પેસિફિક ઇન્ટિગ્રેટેડ સર્કિટ (એ. એસ. આઈ. સી.) તરીકે અથવા ફિલ્ડ-પ્રોગ્રામેબલ ગેટ એરે (એફ. પી. જી. એ.) નો ઉપયોગ કરીને અમલમાં મૂકી શકાય છે, જેને સામાન્ય રીતે પુનઃરૂપરેખાંકિત કરી શકાય છે. એએસઆઇસી અમલીકરણ મોબાઇલ ફોન અને સ્માર્ટફોન જેવી ખૂબ-ઉચ્ચ-વોલ્યુમ એમ્બેડેડ સિસ્ટમ્સ માટે સામાન્ય છે. એએસઆઇસી અથવા એફ. પી. જી. એ. ના અમલીકરણનો ઉપયોગ સિગ્નલ પ્રોસેસિંગ પ્રદર્શન, ઇન્ટરફેસ અને વિશ્વસનીયતા જેવી ખાસ જરૂરિયાતો ધરાવતી બિન-ઉચ્ચ-વોલ્યુમ એમ્બેડેડ સિસ્ટમ્સ માટે થઈ શકે છે, જેમ કે એવિઓનિક્સમાં. પેરિફેરલ્સ એમ્બેડેડ સિસ્ટમ્સ પેરિફેરલ્સ દ્વારા બહારની દુનિયા સાથે વાત કરે છે, જેમ કેઃ સીરીયલ કોમ્યુનિકેશન ઇન્ટરફેસ (એસસીઆઈ): આરએસ-232, આરએસ-422, આરએસ-485, વગેરે. સિંક્રોનસ સીરીયલ ઇન્ટરફેસઃ I2C, SPI, SSC અને ESSI (ઉન્નત સિંક્રોનસ સીરીયલ ઇન્ટરફેસ) યુનિવર્સલ સીરીયલ બસ (USB) મીડિયા કાર્ડ્સ (SD કાર્ડ્સ, કોમ્પેક્ટફ્લેશ, વગેરે) નેટવર્ક ઈન્ટરફેસ કંટ્રોલરઃ ઇથરનેટ, વાઇફાઇ, વગેરે. ફિલ્ડ બસોઃ કેન બસ, એલ. આઈ. એન.-બસ, પ્રોફાઇબસ વગેરે. ટાઈમરઃ ફેઝ-લોક લૂપ્સ, પ્રોગ્રામેબલ ઇન્ટરવલ ટાઈમર જનરલ પર્પઝ ઇનપુટ/આઉટપુટ (જી. પી. આઈ. ઓ.) એનાલોગ-થી-ડિજિટલ અને ડિજિટલ-થી-એનાલોગ કન્વર્ટર ડીબગિંગઃ જે. ટી. એ. જી., ઇન-સિસ્ટમ પ્રોગ્રામિંગ, બેકગ્રાઉન્ડ ડીબગ મોડ ઇન્ટરફેસ પોર્ટ, બી. આઈ. ટી. પી. અને ડી. બી. 9 પોર્ટ. સાધનો અન્ય સોફ્ટવેરની જેમ, એમ્બેડેડ સિસ્ટમ ડિઝાઇનર્સ એમ્બેડેડ સિસ્ટમ સોફ્ટવેર વિકસાવવા માટે કમ્પાઇલર્સ, એસેમ્બલર્સ અને ડીબગર્સનો ઉપયોગ કરે છે. જો કે, તેઓ વધુ ચોક્કસ સાધનોનો પણ ઉપયોગ કરી શકે છેઃ સર્કિટ ડિબગર અથવા એમુલેટરમાં (આગળનો વિભાગ જુઓ). પ્રોગ્રામમાં ચેકસમ અથવા સી. આર. સી. ઉમેરવાની ઉપયોગિતાઓ, જેથી એમ્બેડેડ સિસ્ટમ ચકાસી શકે કે પ્રોગ્રામ માન્ય છે કે નહીં. ડિજિટલ સિગ્નલ પ્રોસેસિંગનો ઉપયોગ કરતી સિસ્ટમો માટે, વિકાસકર્તાઓ ગણિતનું અનુકરણ કરવા માટે કોમ્પ્યુટેશનલ નોટબુકનો ઉપયોગ કરી શકે છે. સિસ્ટમ-લેવલ મોડેલિંગ અને સિમ્યુલેશન ટૂલ્સ ડિઝાઇનરોને હાર્ડવેર ઘટકો જેમ કે પ્રોસેસર્સ, મેમરીઝ, ડીએમએ, ઇન્ટરફેસો, બસો અને સોફ્ટવેર બિહેવિયર ફ્લો સાથે સિસ્ટમના સિમ્યુલેશન મોડેલ્સને કન્ફિગર કરી શકાય તેવા લાઇબ્રેરી બ્લોક્સનો ઉપયોગ કરીને સ્ટેટ ડાયાગ્રામ અથવા ફ્લો ડાયાગ્રામ તરીકે બનાવવામાં મદદ કરે છે. પાવર વિ. પર્ફોર્મન્સ ટ્રેડ-ઓફ્સ, વિશ્વસનીયતા વિશ્લેષણ અને અવરોધ વિશ્લેષણ કરીને યોગ્ય ઘટકોની પસંદગી કરવા માટે સિમ્યુલેશન હાથ ધરવામાં આવે છે. લાક્ષણિક અહેવાલો કે જે ડિઝાઇનરને આર્કિટેક્ચરના નિર્ણયો લેવામાં મદદ કરે છે તેમાં એપ્લિકેશન વિલંબતા, ઉપકરણ થ્રુપુટ, ઉપકરણનો ઉપયોગ, સંપૂર્ણ સિસ્ટમનો વીજ વપરાશ તેમજ ઉપકરણ-સ્તરનો વીજ વપરાશનો સમાવેશ થાય છે. એક મોડેલ-આધારિત વિકાસ સાધન ડિજિટલ ફિલ્ટર્સ, મોટર કંટ્રોલર્સ, કોમ્યુનિકેશન પ્રોટોકોલ ડીકોડિંગ અને મલ્ટી-રેટ કાર્યો જેવા ઘટકોના ગ્રાફિકલ ડેટા ફ્લો અને યુએમએલ સ્ટેટ ચાર્ટ આકૃતિઓ બનાવે છે અને તેનું અનુકરણ કરે છે. વિશિષ્ટ હાર્ડવેરને શ્રેષ્ઠ બનાવવા માટે કસ્ટમ કમ્પાઇલર્સ અને લિંકર્સનો ઉપયોગ કરી શકાય છે. એમ્બેડેડ સિસ્ટમની પોતાની વિશેષ ભાષા અથવા ડિઝાઇન ટૂલ હોઈ શકે છે, અથવા ફોર્થ અથવા બેઝિક જેવી હાલની ભાષામાં ઉન્નતીકરણો ઉમેરી શકે છે. બીજો વિકલ્પ આરટીઓએસ અથવા એમ્બેડેડ ઓપરેટિંગ સિસ્ટમ મોડેલિંગ અને કોડ જનરેટિંગ ટૂલ્સ ઉમેરવાનો છે, જે ઘણીવાર રાજ્ય મશીનો પર આધારિત હોય છે. સોફ્ટવેર ટૂલ્સ ઘણા સ્રોતોમાંથી આવી શકે છેઃ સોફ્ટવેર કંપનીઓ કે જે એમ્બેડેડ બજારમાં નિષ્ણાત હોય છે, જે જીએનયુ સોફ્ટવેર ડેવલપમેન્ટ ટૂલ્સમાંથી પોર્ટ કરવામાં આવે છે. કેટલીકવાર, જો એમ્બેડેડ પ્રોસેસર સામાન્ય પીસી પ્રોસેસરની નજીક હોય તો પર્સનલ કમ્પ્યુટર માટેના ડેવલપમેન્ટ ટૂલ્સનો ઉપયોગ કરી શકાય છે. જેમ જેમ એમ્બેડેડ સિસ્ટમ્સની જટિલતા વધે છે, તેમ તેમ ઉચ્ચ-સ્તરના ટૂલ્સ અને ઓપરેટિંગ સિસ્ટમ્સ મશીનરીમાં સ્થળાંતર કરી રહ્યા છે જ્યાં તે અર્થપૂર્ણ બને છે. ઉદાહરણ તરીકે, સેલફોન, વ્યક્તિગત ડિજિટલ સહાયકો અને અન્ય ગ્રાહક કમ્પ્યુટર્સને ઘણીવાર નોંધપાત્ર સોફ્ટવેરની જરૂર પડે છે જે ઇલેક્ટ્રોનિક્સના ઉત્પાદક સિવાય અન્ય વ્યક્તિ દ્વારા ખરીદવામાં આવે છે અથવા પ્રદાન કરવામાં આવે છે. આ સિસ્ટમોમાં, લિનક્સ, નેટબીએસડી, ફ્રીબીએસડી, ઓએસજીઆઈ અથવા એમ્બેડેડ જાવા જેવા ખુલ્લા પ્રોગ્રામિંગ વાતાવરણની જરૂર છે જેથી તૃતીય-પક્ષ સોફ્ટવેર પ્રદાતા મોટા બજારમાં વેચી શકે. ઉપલબ્ધ સુવિધાઓના આધારે એમ્બેડેડ ડિબગીંગ વિવિધ સ્તરે કરી શકાય છે. વિચારણાઓમાં નીચેનાનો સમાવેશ થાય છેઃ શું તે મુખ્ય એપ્લિકેશનને ધીમું કરે છે, ડીબગ કરેલ સિસ્ટમ અથવા એપ્લિકેશન વાસ્તવિક સિસ્ટમ અથવા એપ્લિકેશનની કેટલી નજીક છે, ડીબગિંગ માટે સેટ કરી શકાય તેવા ટ્રિગર્સ કેટલા અભિવ્યક્ત છે (દા. ત., જ્યારે કોઈ ચોક્કસ પ્રોગ્રામ કાઉન્ટર મૂલ્ય સુધી પહોંચે ત્યારે મેમરીનું નિરીક્ષણ કરવું), અને ડીબગિંગ પ્રક્રિયામાં શું નિરીક્ષણ કરી શકાય છે (જેમ કે, ફક્ત મેમરી, અથવા મેમરી અને રજિસ્ટર, વગેરે). સૌથી સરળથી માંડીને સૌથી વધુ વ્યવહારદક્ષ ડિબગીંગ તકનીકો અને સિસ્ટમોને આશરે નીચેના ક્ષેત્રોમાં જૂથબદ્ધ કરવામાં આવે છેઃ ઇન્ટરેક્ટિવ રેસિડેન્ટ ડિબગીંગ, એમ્બેડેડ ઓપરેટિંગ સિસ્ટમ દ્વારા પૂરા પાડવામાં આવેલ સરળ શેલનો ઉપયોગ કરીને (દા. ત. ફોર્થ અને બેઝિક) સોફ્ટવેર-માત્ર ડિબગરોનો ફાયદો એ છે કે તેમને કોઈપણ હાર્ડવેર ફેરફારની જરૂર નથી પરંતુ સમય અને સંગ્રહસ્થાનની જગ્યા બચાવવા માટે તેઓ જે રેકોર્ડ કરે છે તેને કાળજીપૂર્વક નિયંત્રિત કરવું પડે છે. ફ્લેશમાં મોનિટરનો ઉપયોગ કરીને અથવા રેમેડી ડીબગર જેવા ડીબગ સર્વરનો ઉપયોગ કરીને કામગીરીને ટ્રેસ કરવા માટે લોગિંગ અથવા સીરીયલ પોર્ટ આઉટપુટનો ઉપયોગ કરીને બાહ્ય ડીબગિંગ જે વિજાતીય મલ્ટીકોર સિસ્ટમો માટે પણ કામ કરે છે. એક ઇન-સર્કિટ ડિબગર (આઇસીડી), એક હાર્ડવેર ઉપકરણ છે જે જેટીએજી અથવા નેક્સસ ઇન્ટરફેસ દ્વારા માઇક્રોપ્રોસેસર સાથે જોડાય છે. આ માઇક્રોપ્રોસેસરની કામગીરીને બાહ્ય રીતે નિયંત્રિત કરવાની મંજૂરી આપે છે, પરંતુ તે સામાન્ય રીતે પ્રોસેસરમાં ચોક્કસ ડિબગીંગ ક્ષમતાઓ સુધી મર્યાદિત હોય છે. ઇન-સર્કિટ ઇમ્યુલેટર (ICE) માઇક્રોપ્રોસેસરને સિમ્યુલેટેડ સમકક્ષ સાથે બદલે છે, જે માઇક્રોપ્રોસેસરના તમામ પાસાઓ પર સંપૂર્ણ નિયંત્રણ પ્રદાન કરે છે. એક સંપૂર્ણ એમુલેટર હાર્ડવેરના તમામ પાસાંઓનું અનુકરણ પ્રદાન કરે છે, જે તે બધાને નિયંત્રિત અને સંશોધિત કરવાની મંજૂરી આપે છે, અને સામાન્ય પીસી પર ડીબગિંગની મંજૂરી આપે છે. ખામીઓ ખર્ચ અને ધીમી કામગીરી છે, કેટલાક કિસ્સાઓમાં અંતિમ પ્રણાલી કરતાં 100 ગણી ધીમી હોય છે. એસ. ઓ. સી. ડિઝાઇન માટે, લાક્ષણિક અભિગમ એ એફ. પી. જી. એ. પ્રોટોટાઇપ બોર્ડ પર ડિઝાઇનને ચકાસવા અને ડીબગ કરવાનો છે. સર્ટસ જેવા સાધનોનો ઉપયોગ એફ. પી. જી. એ. ના અમલીકરણમાં ચકાસણી દાખલ કરવા માટે થાય છે જે નિરીક્ષણ માટે સંકેતો ઉપલબ્ધ કરાવે છે. આનો ઉપયોગ તર્ક વિશ્લેષક જેવી ક્ષમતાઓ સાથે અમલીકરણમાં બહુવિધ એફ. પી. જી. એ. માં હાર્ડવેર, ફર્મવેર અને સોફ્ટવેર ક્રિયાપ્રતિક્રિયાઓને ડીબગ કરવા માટે થાય છે. જ્યાં સુધી બાહ્ય ડિબગીંગ સુધી મર્યાદિત ન હોય ત્યાં સુધી, પ્રોગ્રામર સામાન્ય રીતે સાધનો દ્વારા સોફ્ટવેરને લોડ અને ચલાવી શકે છે, પ્રોસેસરમાં ચાલી રહેલા કોડને જોઈ શકે છે અને તેની કામગીરી શરૂ અથવા બંધ કરી શકે છે. કોડનો દૃષ્ટિકોણ ઉચ્ચ-સ્તરની પ્રોગ્રામિંગ ભાષા, એસેમ્બલી કોડ અથવા બંનેનું મિશ્રણ હોઈ શકે છે. રીઅલ-ટાઇમ ઓપરેટિંગ સિસ્ટમોનું ટ્રેસિંગ ઘણીવાર ઓપરેટિંગ સિસ્ટમ ઇવેન્ટ્સના ટ્રેસિંગને સપોર્ટ કરે છે. પ્રણાલીના વર્તનના રેકોર્ડિંગના આધારે યજમાન પીસી સાધન દ્વારા ગ્રાફિકલ દૃશ્ય રજૂ કરવામાં આવે છે. ટ્રેસ રેકોર્ડિંગ સોફ્ટવેરમાં, આરટીઓએસ દ્વારા અથવા વિશેષ ટ્રેસિંગ હાર્ડવેર દ્વારા કરી શકાય છે. આરટીઓએસ ટ્રેસિંગ વિકાસકર્તાઓને સોફ્ટવેર સિસ્ટમના સમય અને પ્રદર્શનના મુદ્દાઓને સમજવાની મંજૂરી આપે છે અને ઉચ્ચ-સ્તરની સિસ્ટમ વર્તણૂકોની સારી સમજ આપે છે. એમ્બેડેડ સિસ્ટમ્સમાં ટ્રેસ રેકોર્ડિંગ હાર્ડવેર અથવા સોફ્ટવેર સોલ્યુશન્સનો ઉપયોગ કરીને પ્રાપ્ત કરી શકાય છે. સોફ્ટવેર આધારિત ટ્રેસ રેકોર્ડીંગ માટે વિશિષ્ટ ડિબગીંગ હાર્ડવેરની જરૂર નથી અને તેનો ઉપયોગ તૈનાત ઉપકરણોમાં ટ્રેસ રેકોર્ડ કરવા માટે થઈ શકે છે, પરંતુ તે CPU અને RAM વપરાશ પર અસર કરી શકે છે. આરટીઓએસ વાતાવરણમાં ઉપયોગમાં લેવાતી સોફ્ટવેર-આધારિત ટ્રેસિંગ પદ્ધતિનું એક ઉદાહરણ ખાલી મેક્રોનો ઉપયોગ છે જે કોડમાં વ્યૂહાત્મક સ્થળોએ ઓપરેટિંગ સિસ્ટમ દ્વારા બોલાવવામાં આવે છે, અને હૂક તરીકે સેવા આપવા માટે અમલ કરી શકાય છે. વિશ્વાસપાત્રતા એમ્બેડેડ સિસ્ટમો ઘણીવાર એવા મશીનોમાં રહે છે જે કોઈ ભૂલ વિના વર્ષો સુધી સતત ચાલવાની અપેક્ષા રાખે છે, અને જો કોઈ ભૂલ થાય તો કેટલાક કિસ્સાઓમાં તે જાતે જ પુનઃપ્રાપ્ત થાય છે. તેથી, સોફ્ટવેર સામાન્ય રીતે પર્સનલ કમ્પ્યુટર્સ કરતાં વધુ કાળજીપૂર્વક વિકસાવવામાં આવે છે અને તેનું પરીક્ષણ કરવામાં આવે છે, અને ડિસ્ક ડ્રાઇવ્સ, સ્વીચો અથવા બટનો જેવા અવિશ્વસનીય યાંત્રિક ફરતા ભાગોને ટાળવામાં આવે છે. ચોક્કસ વિશ્વસનીયતાના મુદ્દાઓમાં નીચેનાનો સમાવેશ થઈ શકે છેઃ સિસ્ટમને સમારકામ માટે સુરક્ષિત રીતે બંધ કરી શકાતી નથી, અથવા તે સમારકામ માટે ખૂબ અપ્રાપ્ય છે. ઉદાહરણોમાં સ્પેસ સિસ્ટમ્સ, અન્ડરસી કેબલ્સ, નેવિગેશનલ બીકોન્સ, બોર-હોલ સિસ્ટમ્સ અને ઓટોમોબાઇલનો સમાવેશ થાય છે. સલામતીના કારણોસર સિસ્ટમ ચાલુ રાખવી જોઈએ. નિષ્ફળતાની સ્થિતિમાં ઘટેલી કાર્યક્ષમતા અસહ્ય હોઈ શકે છે. ઘણીવાર બેકઅપ ઓપરેટર દ્વારા પસંદ કરવામાં આવે છે. ઉદાહરણોમાં એરક્રાફ્ટ નેવિગેશન, રિએક્ટર કંટ્રોલ સિસ્ટમ્સ, સેફ્ટી-ક્રિટિકલ કેમિકલ ફેક્ટરી કંટ્રોલ્સ, ટ્રેન સિગ્નલ્સનો સમાવેશ થાય છે. જ્યારે બંધ કરવામાં આવે ત્યારે સિસ્ટમ મોટા પ્રમાણમાં નાણાં ગુમાવશેઃ ટેલિફોન સ્વીચો, ફેક્ટરી નિયંત્રણો, બ્રિજ અને એલિવેટર નિયંત્રણો, ભંડોળ ટ્રાન્સફર અને બજાર નિર્માણ, સ્વચાલિત વેચાણ અને સેવા. ભૂલોમાંથી પુનઃપ્રાપ્ત કરવા માટે કેટલીકવાર સંયોજનમાં વિવિધ તકનીકોનો ઉપયોગ કરવામાં આવે છે-બંને સોફ્ટવેર ભૂલો જેમ કે મેમરી લીક, અને હાર્ડવેરમાં સોફ્ટ ભૂલોઃ વોચડોગ ટાઈમર કે જે સિસ્ટમને ફરીથી સેટ કરે છે અને પુનઃપ્રારંભ કરે છે સિવાય કે સોફ્ટવેર સમયાંતરે વોચડોગ સબસિસ્ટમ્સને સૂચિત કરે. વિશ્વસનીય કમ્પ્યુટિંગ બેઝ (ટી. સી. બી.) આર્કિટેક્ચર સાથે ડિઝાઇનિંગ અત્યંત સુરક્ષિત અને વિશ્વસનીય સિસ્ટમ વાતાવરણની ખાતરી કરે છે એમ્બેડેડ સિસ્ટમ્સ માટે રચાયેલ હાયપરવાઇઝર કોઈપણ સબસિસ્ટમ ઘટક માટે સુરક્ષિત એન્કેપ્સ્યુલેશન પ્રદાન કરવામાં સક્ષમ છે જેથી સમાધાન કરેલ સોફ્ટવેર ઘટક અન્ય સબસિસ્ટમ્સ અથવા વિશેષાધિકૃત-સ્તરના સિસ્ટમ સોફ્ટવેરમાં દખલ ન કરી શકે. આ કેપ્સ્યુલેશન ખામીને એક સબસિસ્ટમમાંથી બીજી સબસિસ્ટમમાં ફેલાતી અટકાવે છે, જેનાથી વિશ્વસનીયતામાં સુધારો થાય છે. આ પેટા પ્રણાલીને આપમેળે બંધ કરવાની અને ખામી શોધવા પર પુનઃપ્રારંભ કરવાની પણ મંજૂરી આપી શકે છે. રોગપ્રતિકારક શક્તિ-જાગૃત પ્રોગ્રામિંગ ઇજનેરોને વધુ વિશ્વસનીય એમ્બેડેડ સિસ્ટમ કોડ બનાવવામાં મદદ કરી શકે છે. MISRA C/C + + જેવા માર્ગદર્શિકાઓ અને કોડિંગ નિયમો વિકાસકર્તાઓને વિવિધ રીતે વિશ્વસનીય, પોર્ટેબલ ફર્મવેરનું ઉત્પાદન કરવામાં મદદ કરવાનો ઉદ્દેશ ધરાવે છેઃ સામાન્ય રીતે કોડિંગ પ્રથાઓ સામે સલાહ આપીને અથવા ફરજિયાત કરીને જે રન-ટાઇમ ભૂલો તરફ દોરી શકે છે (મેમરી લીક, અમાન્ય પોઇન્ટરનો ઉપયોગ), રન-ટાઇમ તપાસ અને અપવાદ હેન્ડલિંગનો ઉપયોગ (રેન્જ/સેનિટી તપાસ, ડિવાઇડ-બાય-ઝીરો અને બફર ઇન્ડેક્સ માન્યતા તપાસ, તર્ક તપાસમાં ડિફોલ્ટ કેસ), લૂપ બાઉન્ડિંગ, માનવ-વાંચી શકાય તેવું, સારી રીતે ટિપ્પણી કરેલ અને સારી રીતે સંરચિત કોડનું ઉત્પાદન, અને ભાષાની અસ્પષ્ટતાઓને ટાળવી જે કમ્પાઇલર-પ્રેરિત વિસંગતતાઓ અથવા આડઅસરો (અભિવ્યક્તિ ક્રમ, પુનરાવર્તન, ચોક્કસ પ્રકારના મેક્રો) તરફ દોરી શકે છે. આ નિયમોનો ઉપયોગ ઘણીવાર કાર્યાત્મક ચકાસણી હેતુઓ માટે કોડ સ્ટેટિક ચેકર્સ અથવા બાઉન્ડેડ મોડેલ ચેકિંગ સાથે થઈ શકે છે, અને કોડ ટાઈમિંગ ગુણધર્મો નક્કી કરવામાં પણ મદદ કરે છે. ઉચ્ચ વિ. ઓછું કદ મોબાઇલ ફોન જેવી ઉચ્ચ કદની પ્રણાલીઓ માટે, ખર્ચ ઘટાડવો એ સામાન્ય રીતે પ્રાથમિક ડિઝાઇન વિચારણા છે. ઇજનેરો સામાન્ય રીતે એવા હાર્ડવેર પસંદ કરે છે જે જરૂરી કાર્યોને અમલમાં મૂકવા માટે પૂરતા પ્રમાણમાં સારા હોય. ઓછી વોલ્યુમ અથવા પ્રોટોટાઇપ એમ્બેડેડ સિસ્ટમ્સ માટે, સામાન્ય હેતુના કમ્પ્યુટર્સને પ્રોગ્રામ્સને મર્યાદિત કરીને અથવા ઓપરેટિંગ સિસ્ટમને આરટીઓએસ સાથે બદલીને અનુકૂલિત કરી શકાય છે. 1978માં નેશનલ ઇલેક્ટ્રિકલ મેન્યુફેક્ચરર્સ એસોસિએશને ICS 3-1978 રજૂ કર્યું હતું, જે પ્રોગ્રામેબલ માઇક્રોકન્ટ્રોલર્સ માટેનું પ્રમાણ છે, જેમાં લગભગ કોઈપણ કમ્પ્યુટર-આધારિત નિયંત્રકો, જેમ કે સિંગલ-બોર્ડ કમ્પ્યુટર્સ, સંખ્યાત્મક અને ઇવેન્ટ-આધારિત નિયંત્રકોનો સમાવેશ થાય છે. સામાન્ય ઉપયોગમાં સોફ્ટવેર આર્કિટેક્ચરના વિવિધ પ્રકારો છે. સરળ નિયંત્રણ લૂપ આ ડિઝાઇનમાં, સોફ્ટવેરમાં ફક્ત એક લૂપ હોય છે જે ઇનપુટ ઉપકરણોનું નિરીક્ષણ કરે છે. લૂપ સબરૂટિનને કૉલ કરે છે, જેમાંથી દરેક હાર્ડવેર અથવા સોફ્ટવેરના એક ભાગનું સંચાલન કરે છે. તેથી તેને સરળ નિયંત્રણ લૂપ અથવા પ્રોગ્રામ કરેલ ઇનપુટ-આઉટપુટ કહેવામાં આવે છે. વિક્ષેપ-નિયંત્રિત પ્રણાલી કેટલીક એમ્બેડેડ પ્રણાલીઓ મુખ્યત્વે વિક્ષેપો દ્વારા નિયંત્રિત થાય છે. આનો અર્થ એ છે કે સિસ્ટમ દ્વારા કરવામાં આવતા કાર્યો વિવિધ પ્રકારની ઘટનાઓ દ્વારા શરૂ થાય છે; વિક્ષેપ પેદા કરી શકાય છે, ઉદાહરણ તરીકે, પૂર્વવ્યાખ્યાયિત અંતરાલ પર ટાઈમર દ્વારા અથવા ડેટા પ્રાપ્ત કરતા સીરીયલ પોર્ટ નિયંત્રક દ્વારા. આ આર્કિટેક્ચરનો ઉપયોગ ત્યારે થાય છે જ્યારે ઇવેન્ટ હેન્ડલર્સને ઓછી વિલંબની જરૂર હોય અને ઇવેન્ટ હેન્ડલર્સ ટૂંકા અને સરળ હોય. આ પ્રણાલીઓ મુખ્ય લૂપમાં પણ એક સરળ કાર્ય ચલાવે છે, પરંતુ આ કાર્ય અનપેક્ષિત વિલંબ માટે ખૂબ સંવેદનશીલ નથી. કેટલીકવાર ઇન્ટરપ્ટ હેન્ડલર કતાર માળખામાં લાંબા કાર્યો ઉમેરશે. બાદમાં, ઇન્ટરપ્ટ હેન્ડલર સમાપ્ત થયા પછી, આ કાર્યો મુખ્ય લૂપ દ્વારા ચલાવવામાં આવે છે. આ પદ્ધતિ સિસ્ટમને અલગ પ્રક્રિયાઓ સાથે મલ્ટીટાસ્કીંગ કર્નલની નજીક લાવે છે. સહકારી મલ્ટીટાસ્કીંગ સહકારી મલ્ટીટાસ્કીંગ એ સરળ નિયંત્રણ લૂપ યોજના જેવું જ છે, સિવાય કે લૂપ API માં છુપાયેલું હોય. પ્રોગ્રામર કાર્યોની શ્રેણીને વ્યાખ્યાયિત કરે છે, અને દરેક કાર્યને ચલાવવા માટે તેનું પોતાનું વાતાવરણ મળે છે. જ્યારે કોઈ કાર્ય નિષ્ક્રિય હોય છે, ત્યારે તે નિષ્ક્રિય દિનચર્યા કહે છે જે અન્ય કાર્યને નિયંત્રણ આપે છે. ફાયદા અને ગેરફાયદા કંટ્રોલ લૂપ જેવા જ છે, સિવાય કે નવું સોફ્ટવેર ઉમેરવું સરળ છે, ફક્ત નવું કાર્ય લખીને અથવા કતારમાં ઉમેરીને. પ્રિએમ્પ્ટિવ મલ્ટીટાસ્કીંગ અથવા મલ્ટી-થ્રેડિંગ આ પ્રકારની પ્રણાલીમાં, કોડનો નિમ્ન-સ્તરનો ભાગ ટાઈમર પર આધારિત કાર્યો અથવા થ્રેડો વચ્ચે બદલાય છે જે વિક્ષેપને આમંત્રણ આપે છે. આ તે સ્તર છે કે જેના પર સિસ્ટમમાં સામાન્ય રીતે ઓપરેટિંગ સિસ્ટમ કર્નલ હોવાનું માનવામાં આવે છે. કેટલી કાર્યક્ષમતા જરૂરી છે તેના આધારે, તે સમાંતર રીતે કલ્પનાત્મક રીતે ચાલતા બહુવિધ કાર્યોને સંચાલિત કરવાની વધુ કે ઓછી જટિલતાઓનો પરિચય આપે છે. કારણ કે કોઈપણ કોડ સંભવિત રીતે અન્ય કાર્યના ડેટાને નુકસાન પહોંચાડી શકે છે (મેમરી મેનેજમેન્ટ યુનિટનો ઉપયોગ કરતી સિસ્ટમો સિવાય) પ્રોગ્રામ્સને કાળજીપૂર્વક ડિઝાઇન અને પરીક્ષણ કરવું આવશ્યક છે, અને વહેંચાયેલ ડેટાની ઍક્સેસને કેટલીક સુમેળ વ્યૂહરચના જેમ કે સંદેશ કતારો, સેમાફોર્સ અથવા બિન-અવરોધિત સુમેળ યોજના દ્વારા નિયંત્રિત કરવી આવશ્યક છે. આ જટિલતાઓને કારણે, સંસ્થાઓ માટે ઓફ-ધ-શેલ્ફ આરટીઓએસનો ઉપયોગ કરવો સામાન્ય છે, જે એપ્લિકેશન પ્રોગ્રામરોને ઓપરેટિંગ સિસ્ટમ સેવાઓને બદલે ઉપકરણ કાર્યક્ષમતા પર ધ્યાન કેન્દ્રિત કરવાની મંજૂરી આપે છે. જો કે, આરટીઓએસનો સમાવેશ કરવાની પસંદગી તેની પોતાની સમસ્યાઓ લાવે છે, કારણ કે એપ્લિકેશન વિકાસ પ્રક્રિયા શરૂ કરતા પહેલા પસંદગી કરવી આવશ્યક છે. આ સમય વિકાસકર્તાઓને વર્તમાન જરૂરિયાતોને આધારે તેમના ઉપકરણ માટે એમ્બેડેડ ઓપરેટિંગ સિસ્ટમ પસંદ કરવા માટે દબાણ કરે છે અને તેથી ભવિષ્યના વિકલ્પોને મોટા પ્રમાણમાં પ્રતિબંધિત કરે છે. એમ્બેડેડ સિસ્ટમોમાં જટિલતાનું સ્તર સતત વધી રહ્યું છે કારણ કે પેરિફેરલ્સ અને સિરિયલ, યુએસબી, ટીસીપી/આઈપી, બ્લુટુથ, વાયરલેસ લેન, ટ્રંક રેડિયો, બહુવિધ ચેનલો, ડેટા અને વૉઇસ, ઉન્નત ગ્રાફિક્સ, બહુવિધ સ્થિતિઓ, બહુવિધ થ્રેડો, અસંખ્ય પ્રતીક્ષા સ્થિતિઓ વગેરે જેવા કાર્યોનું સંચાલન કરવા માટે ઉપકરણોની જરૂર પડે છે. આ વલણો આરટીઓએસ ઉપરાંત એમ્બેડેડ મિડલવેરના વપરાશ તરફ દોરી રહ્યા છે. માઇક્રોકર્નલ અને એક્સોકર્નલ એક માઇક્રોકર્નલ મેમરી ફાળવે છે અને CPU ને એક્ઝેક્યુશનના વિવિધ થ્રેડોમાં ફેરવે છે. વપરાશકર્તા-મોડ પ્રક્રિયાઓ ફાઇલ સિસ્ટમો, નેટવર્ક ઇન્ટરફેસો વગેરે જેવા મુખ્ય કાર્યોને અમલમાં મૂકે છે. એક્સોકર્નલ્સ સામાન્ય સબરૂટિન કૉલ્સ દ્વારા અસરકારક રીતે વાતચીત કરે છે. સિસ્ટમમાં હાર્ડવેર અને તમામ સોફ્ટવેર એપ્લિકેશન પ્રોગ્રામરો માટે ઉપલબ્ધ છે અને વિસ્તૃત કરી શકાય છે. મોનોલિથિક કર્નલ એક મોનોલિથિક કર્નલ પ્રમાણમાં મોટું કર્નલ છે, જે અંતઃસ્થાપિત વાતાવરણને અનુરૂપ અનુકૂળ અત્યાધુનિક ક્ષમતાઓ ધરાવે છે. આ પ્રોગ્રામરોને લિનક્સ અથવા માઈક્રોસોફ્ટ વિન્ડોઝ જેવી ડેસ્કટોપ ઓપરેટિંગ સિસ્ટમ જેવું વાતાવરણ આપે છે, અને તેથી વિકાસ માટે ખૂબ જ ઉત્પાદક છે. નકારાત્મક બાજુએ, તેને નોંધપાત્ર રીતે વધુ હાર્ડવેર સંસાધનોની જરૂર પડે છે, તે ઘણીવાર વધુ ખર્ચાળ હોય છે, અને, આ કર્નલોની જટિલતાને કારણે, તે ઓછી અનુમાનિત અને વિશ્વસનીય હોઈ શકે છે. એમ્બેડેડ મોનોલિથિક કર્નલોના સામાન્ય ઉદાહરણો એમ્બેડેડ લિનક્સ, વીએક્સવર્ક્સ અને વિન્ડોઝ સીઇ છે. હાર્ડવેરમાં ખર્ચમાં વધારો થયો હોવા છતાં, આ પ્રકારની એમ્બેડેડ સિસ્ટમ લોકપ્રિયતામાં વધી રહી છે, ખાસ કરીને વાયરલેસ રાઉટર્સ અને જીપીએસ નેવિગેશન સિસ્ટમ્સ જેવા વધુ શક્તિશાળી એમ્બેડેડ ઉપકરણો પર. વધારાના સોફ્ટવેર ઘટકો કોર ઓપરેટિંગ સિસ્ટમ ઉપરાંત, ઘણી એમ્બેડેડ સિસ્ટમોમાં વધારાના ઉપલા સ્તરના સોફ્ટવેર ઘટકો હોય છે. આ ઘટકોમાં CAN, TCP/IP, FTP, HTTP અને HTTPS જેવા નેટવર્કિંગ પ્રોટોકોલ સ્ટેક્સ અને FAT અને ફ્લેશ મેમરી મેનેજમેન્ટ સિસ્ટમ્સ જેવી સંગ્રહ ક્ષમતાઓનો સમાવેશ થાય છે. જો એમ્બેડેડ ઉપકરણમાં ઑડિઓ અને વિડિયો ક્ષમતાઓ હોય, તો સિસ્ટમમાં યોગ્ય ડ્રાઇવરો અને કોડેક હાજર રહેશે. મોનોલિથિક કર્નલના કિસ્સામાં, આમાંથી ઘણા સોફ્ટવેર સ્તરો કર્નલમાં સામેલ થઈ શકે છે. આરટીઓએસ શ્રેણીમાં, વધારાના સોફ્ટવેર ઘટકોની ઉપલબ્ધતા વ્યવસાયિક રજૂઆત પર આધારિત છે. ડોમેન-વિશિષ્ટ આર્કિટેક્ચર ઓટોમોટિવ ક્ષેત્રમાં, ઓટોસાર એ એમ્બેડેડ સોફ્ટવેર માટેનું પ્રમાણભૂત આર્કિટેક્ચર છે. કોમ્યુનિકેશન્સ સર્વર સાયબર-ફિઝિકલ સિસ્ટમ ઇલેક્ટ્રોનિક કંટ્રોલ યુનિટ ઇન્ફર્મેશન એપ્લાયન્સ ઇન્ટિગ્રેટેડ ડેવલપમેન્ટ એન્વાયર્નમેન્ટ ફોટોનિકલી ઓપ્ટિમાઇઝ્ડ એમ્બેડેડ માઇક્રોપ્રોસેસર્સ મોડ્યુલ પર સિલિકોન કમ્પાઇલર સોફ્ટવેર એન્જિનિયરિંગ સિસ્ટમ સર્વવ્યાપક કમ્પ્યુટિંગ નોંધો સંદર્ભો વધુ વાંચન એમ્બેડેડ યુ ટ્યુબ સાથે બાહ્ય કડીઓ એમ્બેડેડ સિસ્ટમ્સ કોર્સ, 2015 થી ચાલુ સાયબર સિક્યુરિટી અને એમ્બેડેડ સિસ્ટમ્સમાં વલણો ડેન ગીયર, નવેમ્બર 2013 આધુનિક એમ્બેડેડ સિસ્ટમ્સ પ્રોગ્રામિંગ વિડિયો કોર્સ યુ ટ્યુબ, એમ્બેડેડ સિસ્ટમ્સ અને સોફ્ટવેરના તમામ પાસાઓને આવરી લેતી પરિષદો, વર્કશોપ અને ટ્યુટોરિયલ્સ સાથે 2013 એમ્બેડેડ સિસ્ટમ્સ વીક (ESWEEK) વાર્ષિક ઇવેન્ટ, એમ્બેડેડ સિસ્ટમ્સના શૈક્ષણિક પાસાઓને આવરી લેતી વર્કશોપ