Yintoni i-OpenEmbedded kunye nendlela eguqula ngayo uphuhliso lweLinux

  • I-OpenEmbedded ikuvumela ukuba udale iinkqubo zeLinux ezilungiselelwe ngokupheleleyo nezinokuveliswa kwakhona.
  • Iprojekthi yeYocto isebenzisa i-OpenEmbedded njengesiseko senkqubo yayo yokwakha, iququzelela intsebenziswano kunye nokugcinwa.
  • Imodeli ye-OpenEmbedded elayishiweyo kunye neresiphi ibonelela ngokuguquguquka okukodwa kunye nobukhulu kuphuhliso oluzinzisiweyo.
  • Uluntu olusebenzayo kunye nenkxaso yeshishini iqinisekisa uhlaziyo lwexesha elide, amaxwebhu, kunye nokuhambelana.

VulaEmbedded

Ngaba ukhe wazibuza ukuba zenziwa njani iinkqubo zeLinux esizifumana kwizixhobo ezininzi zemihla ngemihla? Ukusuka kwiirotha, oomabonwakude, kunye nee-smartphones ukuya kwiinkqubo zemizi-mveliso kunye neemoto ezikrelekrele: zonke zihlala zisebenza ngokusasazwa kweLinux elungiselelwe ngokukodwa iimfuno zabo. Emva kwale nkqubo yohlengahlengiso kukho iiprojekthi ezifana VulaEmbedded kunye Iprojekthi yeYocto, amaqhekeza aphambili okwenyani kwihlabathi lesoftware elungisiweyo.

Kweli nqaku, uya kufunda nzulu ukuba yintoni i-OpenEmbedded, inxulumana njani neYocto Project, kwaye kutheni ibaluleke kangaka kuphuhliso lwezixhobo zombane ezikrelekrele. Sizakuhamba nawe kumacandelo ayo aphambili, izibonelelo, iikhonsepthi eziphambili, kunye nendlela eluguqule ngayo uphuhliso lweenkqubo zeLinux zesiko kwihardware ethile.

Yintoni i-OpenEmbedded?

I-OpenEmbedded yinkqubo yokwakha ezenzekelayo kunye nemeko-bume yokudibanisa esetyenziselwa ukudala ukuhanjiswa kwe-Linux kwizixhobo ezizinzisiweyo. Yenziwe ngokusesikweni ngo-2003 luluntu lwe-OpenEmbedded. Umsebenzi ophambili wale meko yenza lula wonke umsebenzi wokwakha imifanekiso yenkqubo yeLinux elungiselelwe iimfuno ezithile zehardware eza kusetyenziswa.

Le nkqubo yokuqokelela ixhomekeke kwiifayile ezibizwa zokupheka (iindlela zokupheka), ezilawulwa ngesixhobo BitBake. Ezi ndlela zokupheka zichaza Ihlanganiswe njani ipakethe nganye yesoftware, ukuxhomekeka kwayo, yeyiphi ikhowudi yokukhuphela, kunye nendlela yokudibanisa kumfanekiso wokugqibela.

I-OpenEmbedded ikuvumela ukuba wenze iibhinary kubuninzi boyilo lwezakhiwo kwaye upakishe isoftware enesiphumo kwezona fomati ezaziwayo (ipk, deb, rpm), kunye nokuvelisa imifanekiso yesiqalo elungele ukusetyenziswa kwibhodi ekujoliswe kuyo. Oku kuyenza ibe yinkqubo yokwakha ecetyiswayo yeProjekthi yeYocto, esebenzisana nayo ngokusondeleyo kakhulu.

I-OpenEmbedded kunye neProjekthi yeYocto inxulumene njani?

IProjekthi yeYocto linyathelo lentsebenziswano elivulelekileyo eliqhutywa yiLinux Foundation ukusukela ngo-2010, injongo yayo ikukwenza kube lula ukuyilwa kweendlela zokusebenza zeLinux ezilungiselelweyo kunye nezixhobo ze-IoT. Nangona abantu abaninzi becinga ngeYocto njengosasazo lweLinux, eneneni yiseti yezixhobo ezikuvumela ukuba wakhe ezi zinikezelo ukusuka ekuqaleni, zenziwe ngokwezifiso ngokupheleleyo.

Intsebenziswano phakathi kweeprojekthi zombini ibonakala kuloo nto Iprojekthi yeYocto isebenzisa i-OpenEmbedded njengenjini yokwakhaIinxalenye eziphambili zenkqubo yokwakha i-OpenEmbedded (i-BitBake kunye ne-OpenEmbedded-Core) zigcinwa ngokudibeneyo zombini iiprojekthi. Ukongeza, iYocto ibonelela nge ukuphunyezwa kwereferensi ebizwa ngokuba yiPoky, equka inkqubo yokwakha ye-OpenEmbedded kunye neeseti zeeresiphi kunye neeleya ezilungele ukwenziwa ngokwezifiso.

Ke, xa inkampani okanye umphuhlisi efuna ukwenza usasazo oluthile lweLinux kwimveliso yabo, I-Yocto kunye ne-OpenEmbedded zibonelela ngezixhobo, ukuhamba komsebenzi, kunye nokuguquguquka okufunekayo ukwenza into ekhethekileyo, ekwazi ukuvelisa, kunye nokugcinwa..

Amacandelo aphambili: I-BitBake, iPoky, iileya kunye neeresiphi

Ukuqonda ukuba isebenza njani i-OpenEmbedded (kwaye, ngokongezwa, iYocto) ngokwenene, kubalulekile ukwazi izinto zayo eziphambili:

  • BitBake: Yinjini yokwakha etolika iiresiphi, isombulule ukuxhomekeka, kwaye yenza imisebenzi ukwenza umfanekiso wokugqibela. Isebenza ngokufanayo kwezinye izixhobo ezizenzekelayo ezifana ne-Make, kodwa ijoliswe kwihlabathi leenkqubo ezizinzisiweyo kwaye inikezela ukuguquguquka okubalaseleyo.
  • Poke: Olu lunikezelo lwereferensi olubonelelwa nguYocto. Ayisiyonkqubo yokugqibela yokuvelisa, kodwa yindawo yokuqala (umzekelo osebenzayo) onokuhlengahlengiswa kwaye wandise ngokudibanisa iileya ezintsha kunye neeresiphi.
  • I-OpenEmbedded-Core (OE-Core): Imele ingundoqo yemethadatha eqinisekisiweyo kunye neendlela zokupheka, eziqhelekileyo kwiinkqubo ezininzi kunye nokuhanjiswa okuvela. Ibonelela ngengqokelela esisiseko yeenkcazo ekwabelwana ngazo, iiklasi, kunye noqwalaselo.
  • Izinongo: Iresiphi nganye ichaza indlela yokwakha ipakethe okanye icandelo: indawo yokuyikhuphela, indlela yokuyiqokelela, ngawaphi amabala okufakwa kuwo, kunye nendlela yokuyifaka.
  • Iileya: Ziyingqokelela yeeresiphi ezinxulumeneyo okanye imethadatha. Enkosi kwi imodeli yomaleko, kunokwenzeka ukwahlula ulwazi (umzekelo, enye ingqimba ye-GUI, enye yabaqhubi, enye yezicelo, njl.), Ukuququzelela ukusetyenziswa kwakhona kunye nokwenza ngokwezifiso.

Imodeli elayishiweyo: intsebenziswano kunye nokwenza ngokwezifiso kwinqanaba eliphezulu

Enye yeempumelelo ezinkulu ze-OpenEmbedded kunye neYocto zezabo imodeli yophuhliso esekwe kumalekoLe nkqubo ivumela:

  • Sebenzisana ngokulula, njengoko amaqela amaninzi angasebenza kwiileya ezizimeleyo (abaqhubi, i-middleware, izicelo, njl.) kwaye zidibanise ngokweemfuno zeprojekthi.
  • Yenza ngokwezifiso yonke inkqubo ngokwahlula ingqiqo yenkqubo engaphantsi nganye. Ngokomzekelo, sihlala sifumana umaleko othile woqwalaselo lonikezelo (i-distro layer), ezinye zokuxhasa iibhodi ezithile (i-BSP layers), kunye nemigangatho eyongezelelweyo yezicelo, ujongano lwegraphical, i-middleware, njl.
  • Kuthintele ungquzulwano kwaye wenze lula ulungiso: Iileya zinokubhala ngaphezulu okanye zongeze imiyalelo ukusuka kumaleko asezantsi, okukhokelela kulawulo olusebenzayo ngakumbi.

Ngombulelo kule ndlela, abaphuhlisi banokuphinda basebenzise iileya ezenziwe ngabahlali okanye bazenze zilungele iimfuno zemveliso nganye.

Isetyenziselwa ntoni i-OpenEmbedded/Yocto? Ukusetyenziswa kwehlabathi lokwenyani

Zombini i-OpenEmbedded kunye neYocto Project zisetyenziswa kwiinkalo ezininzi ezahlukeneyo kunye neemveliso., njenge:

  • Iirobhothi zemizi-mveliso
  • Iimoto (ulwazi, iiyunithi zolawulo, iinkqubo ze-ADAS, njl.njl.)
  • Izixhobo zonyango
  • Izixhobo ezifanelekileyo
  • IoT Gateways
  • Ii-electronics zabathengi (umabonwakude, iirotha, iibhokisi ezibekwe phezulu, njl.njl.)
  • Equipos de telecomunicaciones
  • Iisistim zolawulo lofikelelo kunye ne-automation yasekhaya ephezulu

Iinkampani ezifana ne-Intel, i-ARM, i-NXP, i-Seed Studio, i-iWave Systems kunye nezinye ezininzi zisebenza ngokubambisana kuphuhliso kunye nokugcinwa kwe-OpenEmbedded kunye neYocto. I-ecosystem ibanzi kwaye ibhalwe kakuhle kangangokuba namhlanje kukho amashumi ezigidi zezixhobo eziqhuba ukuhanjiswa okwenziwe ngezi zixhobo.

Zeziphi iingenelo eziphambili ze-OpenEmbedded?

I-OpenEmbedded kunye nokudityaniswa kwayo neProjekthi yeYocto ibonelela ngenani leenzuzo ezinamandla zophuhliso oluzinzisiweyo:

  • Ukulungiswa okugqithisileyo: Kuyenzeka ukuvelisa unikezelo lweLinux olulungelelaniswe ngokugqibeleleyo kwihardware efunwayo kunye nokusebenza, ukuphelisa amacandelo angeyomfuneko kunye nokwandisa izixhobo.
  • Ukuguquguquka kweqonga: Baxhasa izakhiwo ezininzi ze-CPU (ARM, x86 / x64, PowerPC, MIPS ...) kwaye zivumela ukuhamba komsebenzi okufanayo ukuba kulungiswe kwizixhobo ezahlukeneyo.
  • Ukuveliswa kwakhona kunye nolawulo lwenguqulelo: Yonke inkqubo yokwakha inoguqulelo kwaye iphinde iphinde iphinde iphindeke. Iqinisekisa ukuba lonke iqela lophuhliso lakha umfanekiso ofanayo, ukubonelela ngokhuseleko kunye nokuququzelela ukuhlanganiswa okuqhubekayo (CI / CD).
  • Inkxaso esebenzayo yoluntu kunye neshishini: Izixhobo zinoluntu lwehlabathi olusebenzayo kakhulu, kunye nenkxaso yeenkampani ezinkulu. Kukho amasebe e-LTS anenkxaso yexesha elide, ukuhlaziywa rhoqo, kunye nokuvela rhoqo.
  • Ulawulo lwelayisenisi yobuqu: Inkqubo iququzelela ulawulo, uphicotho-zincwadi, kunye namaxwebhu eelayisensi ezisetyenziswa kumfanekiso okanye ipakethe nganye, evumela ukudalwa kokubonakaliswa kwesiko.

Ekugqibeleni, i-OpenEmbedded sesinye sezona zisombululo zinamandla kwaye ezinobunzima kwiiprojekthi ezizinzisiweyo zabo nabuphi na ubungakanani.

Amacandelo awongezelelweyo kunye nezixhobo zenkxaso

Ukongeza kwizinto ezingundoqo ezikhankanywe ngasentla, zombini i-Yocto kunye ne-OpenEmbedded ziyadibanisa okanye zivumele ukongezwa kwe:

  • Isixhobo: I-Web interface ye-BitBake kunye ne-OpenEmbedded, ilungele ukuqwalasela, ukusungula ukwakha, kunye nokujonga izibalo.
  • IZIZALO: Isikhokelo esisekwe kwisikhongozeli seDocker, esiququzelela uphuhliso olunqamlezileyo kwiinkqubo ezahlukeneyo zokusebenza (iWindows, Linux, Mac OS).
  • I-SDK Eyongezelelweyo (eSDK): Ikuvumela ukuba uphuhlise izicelo zesiko kwaye uzivavanye kwi-hardware ekujoliswe kuyo ngokwayo, uququzelele ukuhlanganiswa nomfanekiso owenziweyo.
  • Inkxaso ye-QEMU: Kuyenzeka ukulinganisa ulwakhiwo olujoliswe kuyo ngaphandle kwesidingo sezinto eziphathekayo enkosi kwi-QEMU.
  • Ukuqinisekisa kunye nezixhobo zokuvavanya: Ukudityaniswa kovavanyo oluzenzekelayo, ukuhlehla, kunye nokuhlolwa kwemfezeko kulwakhiwo ngalunye.
ngo-2024
Inqaku elidibeneyo:
ISammit yoMthombo oVulekileyo oNgenelweyo 2024 (EOSS 2024): Yintoni oyibonayo kolu hlelo olutsha lomcimbi?

Umsebenzi osisiseko usebenzisa i-OpenEmbedded kunye neYocto

Inkqubo eqhelekileyo yokwenza umfanekiso wesiko weLinux usebenzisa ezi zixhobo zinokushwankathelwa ngolu hlobo lulandelayo:

  1. Chaza ulwakhiwo, imigaqo-nkqubo kunye nolungelelwaniso kwiifayile zeprojekthi.
  2. Khuphela ikhowudi yemvelaphi kunye nezixhobo ezifunekayo (i-tarballs, i-git repositories, njl.).
  3. Faka iipetshi kunye nemithombo yolwazi kwindawo ekwanti.
  4. Qokelela isoftware kwaye upakishe ii-binaries kwifomati ekhethiweyo (deb, rpm, ipk).
  5. Qhuba ulawulo lobulunga (uvavanyo lwengqondo/ukuhlehla) kunye nokuvelisa iingxelo.
  6. Yenza inkqubo yefayile yengcambu kunye nemifanekiso yokuqalisa ukulayisha kwisixhobo ekujoliswe kuso.

Ngenxa yokuguquguquka okukhulu kwenkqubo kunye nombutho ngokwamaleko, Unokuphinda usebenzise iinxalenye ezinkulu zomsebenzi wakho kwezinye iiprojekthi, uhlaziye imifanekiso ngokulula, okanye ufake izinto ezintsha ngaphandle kokwakha kwakhona inkqubo yonke ukusuka ekuqaleni..

Uluhlu lwamagama aqhelekileyo

  • Izinongo: Bachaza indlela isoftware enikezelweyo ehlanganiswe ngayo kwaye ipakishwe. Zigcinwa ngokwemigangatho kwaye zingafumana ilifa okanye zibhale ngaphezulu ulwazi olusuka kwiiresiphi zangaphambili.
  • Iileya: Badibanisa iiresiphi ezinxulumeneyo, iiklasi, kunye noqwalaselo. Ziyi-hierarchical kwaye ziququzelela ukumodareyitha.
  • Idatha: Iifayile ezichaza iiresiphi, ulungelelwaniso, kunye nalo lonke ulwazi olufunekayo ukwakha umfanekiso. Ziquka imiyalelo yokuba zeziphi iinguqulelo eziza kusetyenziswa, zeziphi iipetshi ezinokusetyenziswa, ukuxhomekeka, njalo njalo.
  • Poke: Ukuhanjiswa kwereferensi kubandakanyiwe kwiYocto, ilungele ukuba nesiqalo esisebenzayo.
  • BitBake: Isixhobo sokwakha esingundoqo. Icubungula iiresiphi kwaye iqhube umsebenzi wonke.
  • I-BSP (iPhakeji yeNkxaso yeBhodi): Iseti yesoftware kunye neeresiphi ezithile kwibhodi ethile okanye ulwakhiwo.

Ungaqalisa njani nge-OpenEmbedded kunye neYocto?

Isinyathelo sokuqala kukuba ne-Linux PC, umthamo owaneleyo wokugcina (ngaphezu kwe-80 GB yamahhala) kunye ne-CPU cores ezininzi. Ubuntu okanye iDebian ziyacetyiswa ukuba zihambelane, nangona ezinye izinikezelo zikwaxhaswa. Ungayiqhuba kumatshini obonakalayo okanye nge-WSL kwiWindows, nangona ukusebenza kuya kuba sezantsi.

Into eqhelekileyo kukukhuphela ireferensi Gcoba, hlanganisa iileyile eziyimfuneko (umzekelo, i-meta-raspberry ukuba ufuna ukusebenza kunye ne-Raspberry Pi), yongeza okanye uguqule iindlela zokupheka ezifanelekileyo, kwaye uqalise ukuhlanganiswa kunye ne-BitBake. Xa umfanekiso wenziwe, utshiswe kwindawo yokugcina isixhobo ekujoliswe kuyo okanye ikhadi, kwaye emva kokuqalisa ikhompyutha, silungele ukusasazwa kwethu.

Eminye imingeni kunye neengqwalasela

Nangona uluhlu lwezibonelelo zikhulu, kufuneka kuthathelwe ingqalelo oko igophe lokufunda linokuba ngumnqantsa ukuba awunalo ulwazi lwangaphambili lweLinux, ukubhala, iBash, okanye ukuhlanganisa. Ukongezelela, inkqubo yokwakha i-resource-intensive (RAM, CPU, disk) kwaye inokuthatha ixesha elide.

Nangona kunjalo, xa iziseko ziqondwa, Amathuba okwenziwa ngokwezifiso kunye nokwenza ngcono makhulu kakhulu, ungenza ngokuzenzekelayo ukudityaniswa komfanekiso kunye nohlaziyo, ukusetyenziswa kwelayisensi yophicotho, ukwenza ukutya kwepakethe yokubini, kunye nokuqinisekisa ubungakanani bokwenyani kumaqela ophuhliso.

Namhlanje, zombini i-OpenEmbedded kunye neProjekthi yeYocto zimele isiseko apho uninzi lweenkqubo zeLinux ezizinzisiweyo zakhiwe. Bavumela isethi ye-hardware kunye neemfuno zesoftware ukuba zitshintshwe zibe yinkqubo yokusebenza ngokupheleleyo, ephuculweyo, kwaye ilungele ukusetyenziswa kuyo nayiphi na i-electronic device, ukusuka kwi-sensor encinci ukuya kwi-industrial power plant okanye isithuthi esixhunyiwe.