Opanga mapulogalamu, pitani ku zoyankhulana

Opanga mapulogalamu, pitani ku zoyankhulana
Chithunzichi chikutengedwa mu kanema kuchokera pa tchanelo "Militant AmethystsΒ»

Ndinagwira ntchito yokonza makina a Linux kwa zaka pafupifupi 10. Awa ndi ma module a kernel (kernel space), ma daemoni osiyanasiyana ndikugwira ntchito ndi hardware kuchokera kumalo ogwiritsira ntchito (malo ogwiritsira ntchito), ma bootloaders osiyanasiyana (u-boot, etc.), firmware yolamulira ndi zina zambiri. Ngakhale nthawi zina zidachitika kudula mawonekedwe a intaneti. Koma nthawi zambiri zinkachitika kuti ndimayenera kukhala ndi chitsulo chosungunula ndikuyanjana ndi osindikiza a board board. Imodzi mwamavuto ndi ntchito yotereyi ndikuti ndizovuta kuyesa kuchuluka kwa luso lanu, chifukwa mutha kudziwa ntchito imodzi mozama, koma mwina simungadziwe ina konse. Njira yokhayo yokwanira yomvetsetsa komwe mungapite komanso mafunde omwe alipo tsopano ndikupita kukafunsa mafunso.

M'nkhaniyi ndikufuna kufotokoza mwachidule zomwe ndinakumana nazo pofunsana ndi munthu woti apeze ntchito ngati Linux system programmer, zenizeni za kuyankhulana, ntchito, ndi momwe mungadziwire chidziwitso chanu poyankhulana ndi olemba ntchito amtsogolo komanso zomwe simuyenera kuchita. yembekezerani kwa izo.

Nkhaniyi idzaphatikizapo mpikisano wochepa wokhala ndi mphoto.

Makhalidwe a ntchito

Wopanga mapulogalamu, m'gawo lomwe ndidagwirako ntchito, ndi wokhazikika wathunthu: Ndidayenera kulemba ma code ndi kukonza zolakwika. Ndipo nthawi zambiri pankafunika kugulitsa chinachake nokha. Nthawi ndi nthawi, zidachitika kuti zosintha zanga ku hardware zidasamutsidwa kwa opanga. Chifukwa chake, kuti mugwire ntchito m'derali mufunika chidziwitso chabwino, pazantchito zama digito komanso pamapulogalamu. Chifukwa cha izi, zoyankhulana za malo opangira pulogalamu nthawi zambiri zimawoneka ngati kufunafuna katswiri wamagetsi.

Opanga mapulogalamu, pitani ku zoyankhulana
Njira yodziwika bwino yogwirira ntchito kwa wopanga mapulogalamu.

Chithunzi pamwambapa chikuwonetsa momwe ndimagwirira ntchito ndikuwongolera madalaivala. logic analyzer imasonyeza kulondola kwa mauthenga opatsirana, oscilloscope imayang'anira mawonekedwe a m'mphepete mwa chizindikiro. Ndiponso, jtag debugger sinaphatikizidwe mu chimango, chomwe chimagwiritsidwa ntchito pamene zida zowonongeka sizikugwiranso ntchito. Ndipo muyenera kukhala okhoza kugwira ntchito ndi zida zonsezi.

Nthawi zambiri zimachitika kuti ndizofulumira komanso zosavuta kugulitsanso zinthu zina ndikuwongolera zolakwika za topology nokha kuposa kutenga chinthucho kwa oyika. Kenako malo ogulitsira amakhazikikanso kuntchito kwanu.

Chinthu china cha chitukuko pa dalaivala ndi hardware mlingo ndi kuti Google si kuthandiza. Nthawi zambiri mumayenera kuyang'ana zambiri pavuto lanu, ndipo pali maulalo atatu, awiri omwe ndi mafunso anu pabwalo lina. Kapena choyipa kwambiri, mukakumana ndi funso kuchokera kwa munthu wosauka yemweyo yemwe adafunsa zaka 5 zapitazo pamndandanda wamakalata a kernel ndipo sanayankhidwe. Mu ntchitoyi, kuwonjezera pa zolakwika pamapangidwe a hardware ndi mapulogalamu, zolakwika zolembedwa nthawi zambiri zimakumana - izi mwina ndizovuta kwambiri komanso zosasangalatsa. Nthawi zina zolembera zimafotokozedwa molakwika, kapena palibe kufotokoza kwa iwo nkomwe. Mavuto oterowo amatha kuthetsedwa polowetsa manambala mwachisawawa m'marejista ena (mtundu wina wosintha). Nthawi zambiri zimachitika kuti purosesa imakhala ndi magwiridwe antchito, koma palibe amene adagwiritsa ntchito izi (makamaka ngati purosesa ndi yatsopano). Ndipo izi zikutanthauza kuyenda m'munda ndi chokwatula, 70% mwacho ndi cha ana. Koma pakakhala zolembedwa, ngakhale ndi zolakwika, izi ndizopita kale. Nthawi zambiri zimachitika kuti palibe zolemba, ndipo ndipamene kuyenda m'minda yamigodi kumayambira pomwe chitsulo chikuyaka. Ndipo inde, ndinathetsanso bwinobwino mavuto amenewa.

Mafunso

Lingaliro langa ndikuti muyenera kupita kukafunsa mafunso kamodzi pa miyezi isanu ndi umodzi iliyonse, ngakhale mutakonda ntchito yanu ndipo simukufuna kuyisintha. Kuyankhulana kumakupatsani mwayi womvetsetsa mlingo wanu ngati katswiri. Ndikukhulupirira zoyankhulana zamtengo wapatali ndizo zomwe zimalephera. Ndiwo omwe amawonetsa molondola zomwe zili m'mabotolo m'chidziwitso chanu chomwe chiyenera kukonzedwa.

Chinthu china chochititsa chidwi ndi khalidwe la zoyankhulana. Izi ndi zomwe ndikuwona, ndipo si zoona, ndikuvomereza kuti ndinali ndi mwayi chabe. Ngati kuyankhulana kukuyenda molingana ndi zochitika:

  • tiuzeni za inu nokha;
  • Tili ndi ntchito zotere;
  • mumakonda?

Ndipo ngati pambuyo pa zokambiranazi mumakondana wina ndi mzake, mumapita kuntchito, ndiye, monga lamulo, kampaniyo ndi ntchito zimakhala zosangalatsa komanso zokwanira. Ngati kuyankhulana kukufanana ndi kudutsa gehena 12: kuyankhulana koyamba ndi HR, ndiye kuyankhulana ndi gulu la olemba mapulogalamu, ndiye wotsogolera, ntchito zapakhomo, ndi zina zotero, ndiye kuti monga lamulo awa anali mabungwe olephera omwe sindinagwire nawo ntchito. kwa nthawi yayitali. Apanso, izi ndizowona zaumwini, koma monga lamulo, maulamuliro ochuluka kwambiri ndi ndondomeko yolembera anthu ntchito imasonyeza kuti njira zomwezo zimachitika mkati mwa kampani. Zosankha zimapangidwa pang'onopang'ono komanso mopanda mphamvu. Panalinso zosiyana, pamene panali maulendo oyankhulana gehena, ndipo kampaniyo inakhala yaikulu, ndipo pamene, pambuyo pa kugunda pa dzanja, kampaniyo inakhala dambo, koma izi ndizosowa.

Ngati mukuganiza kuti zochitika: anakumana, anandiuza za inu nokha ndi ganyu, alipo okha makampani ang'onoang'ono, ndiye ayi. Ndaziwona izi m'makampani akuluakulu omwe amalemba ntchito anthu oposa mazana ambiri ndipo amaimiridwa pamisika yapadziko lonse. Iyi ndi njira yabwinobwino, makamaka ngati muli ndi mbiri yabwino ndipo muli ndi mwayi woyimbira mabwana anu akale ndikufunsani za inu.

Kwa ine, ndi chizindikiro chabwino kwambiri cha kampani pamene akufunsa kusonyeza zitsanzo za ntchito zawo ndi code. Mlingo wa maphunziro a wopemphayo akuwonetsedwa nthawi yomweyo. Ndipo, monga ine, posankha osankhidwa, iyi ndi njira yabwino kwambiri yosankhira kusiyana ndi zoyankhulana zowonetsera. M'malo mwake, mutha kulephera kuyankhulana ndi chisangalalo, kapena, m'malo mwake, tulukani pa adrenaline. Koma mu ntchito yeniyeni, simungathe kulimbana ndi ntchito zenizeni. Ndipo ndinakumananso ndi izi pamene ndinafunsa anthu ndekha. Katswiri amabwera, amadziwonetsa kuti ndi wabwino kwambiri, ndimamukonda, amatikonda. Ndipo ndinalimbana ndi vuto losavuta kwa mwezi umodzi, ndipo zotsatira zake, wolemba mapulogalamu wina anathetsa m'masiku angapo. Ndinayenera kusiyana ndi wopanga mapulogalamu uja.

Ndimayamikira kwambiri ntchito zamapulogalamu muzoyankhulana. Ndipo zomwe ziyenera kuthetsedwa bwino pamisonkhano, pansi pa kupsinjika, ndi homuweki. Yoyamba ikuwonetsa momwe mwakonzekera mwamsanga komanso molondola kuthetsa mavuto pazovuta komanso mwadzidzidzi. Chachiwiri chikuwonetsa luso lanu komanso kuthekera kofufuza zambiri ndikuthana ndi mavuto omwe alipo.

Ntchito zosangalatsa kwambiri zomwe ndinali nazo zinali zachitetezo cha dziko lathu. Ndikugwira ntchito, ndimayenera kuthana ndi mavuto osangalatsa omwe opanga mapulogalamu amalonda sanawaganizirepo. Makompyuta apamwamba, kupanga ma routers, machitidwe osiyanasiyana omenyera ma node - izi ndizosangalatsa kwambiri. Mukakhala pagulu mukuwona zovuta zomwe zimasunga nambala yanu, ndizabwino kwambiri. Chodabwitsa, kuyankhulana ndi makampani oterowo nthawi zambiri kumakhala kosavuta, kwenikweni kumabwera, monga izo, kuvomerezedwa (mwinamwake zenizeni za asilikali, omwe sakonda kuyankhula kwambiri), ndizopamwamba. Mavuto amene ndinakumana nawo kumeneko analidi osangalatsa ndi ovuta. Ndi zokumana nazo, zidapezeka kuti ndiabwino kuphunzira kukhala pulogalamu yapamwamba kwambiri. Palinso kuipa, ndipo izi si ngakhale zochepa malipiro. Pakadali pano, malipiro muchitetezo chachitetezo ndiwabwino, ali ndi mabonasi ndi zopindulitsa. Monga lamulo, pali maulamuliro ambiri, nthawi yayitali yogwira ntchito, ntchito zopanda malire, ndikugwira ntchito mopanikizika kwambiri. Nthawi zina, chinsinsi sichingathetsedwe, zomwe zimawonjezera mavuto ena oyendayenda kunja. Komanso, ndithudi, nkhanza za mabwana, ndipo izi, tsoka, zimachitikanso. Ngakhale chidziwitso changa chogwira ntchito ndi oyimira makasitomala ndichosangalatsa kwambiri. Izi ndikuwonetsa magulu atatu osiyanasiyana ofufuza ndi makampani okhudzana ndi chitetezo cha boma.

Zofunsa mafunso

Kuti ndipewe kusamvana komanso kuti ndisawulule makampani omwe ndidawafunsa, sindingayese tsogolo ndikuwonetsa zambiri. Koma ndimayamika kuyankhulana kulikonse, chifukwa cha nthawi yomwe anthu adakhala pa ine, chifukwa cha mwayi wodziyang'ana ndekha kuchokera kunja. Ndikhoza kunena kuti ntchitozo zinali za makampani akuluakulu apadziko lonse omwe amaimiridwa m'mayiko osiyanasiyana.

Ndikukuuzani chinthu chosangalatsa kwambiri: ndi ntchito ziti zomwe zimaperekedwa panthawi yofunsa mafunso. Nthawi zambiri, mafunso omwe amafunsidwa kwambiri pakusowa ntchito kwa wopanga mapulogalamu ndi microcontroller ndi magwiridwe antchito pang'ono, m'mitundu yonse yotheka. Choncho, dzikonzekereni bwino pankhaniyi.

Mutu wachiwiri wochititsa chidwi kwambiri ndi zikwangwani, izi ziyenera kudumpha kuchoka pamano. Kuti akudzutseni pakati pausiku ndipo mutha kudziwa ndikuwonetsa zonse.

Ndinaba mafunso ofunsidwa angapo m'mutu mwanga, ndipo ndiwawonetsa pano, chifukwa ndimawapeza osangalatsa. Ine mwadala sindimapereka mayankho a mafunsowa kotero kuti owerenga akhoza kuyankha mafunsowa okha mu ndemanga ndi kukhala ndi ufa pang'ono podutsa kuyankhulana kwenikweni.

Mafunso No. 1

I. Kudziwa za SI. Kodi zolemba zotsatirazi zikutanthawuza chiyani:

const char * str;

char const * str;

const * char str;

char * const str;

const char const * str;

Kodi zonse ndi zolondola?

II. N'chifukwa chiyani pulogalamuyi idzasokoneza gawo?

int main ()
{
       fprintf(0,"hellon");
       fork();
       return(0);
}

III. Kukhala wanzeru.

Pali ndodo yaitali mita imodzi. Nyerere khumi zimagwera pa iye, zikukwawa mbali zosiyanasiyana. Liwiro la kuyenda kwa nyerere imodzi ndi 1 m/s. Nyerere ikakumana ndi nyerere ina, imatembenuka n’kukwawira mbali ina. Kodi ndi nthawi iti yomwe muyenera kudikirira kuti nyerere zonse zigwe pandodo?

Kuyankhulana kotsatira kunali kolephereka kwa ine, ndipo ndimaiona kukhala yothandiza kwambiri pakukonza mapulogalamu anga. Zinasonyeza kuzama kwa kusakhoza kwanga. Asanayambe kuyankhulana kumeneku, ndinkadziwa mafunso onsewa ndipo nthawi zonse ankabwera m'machitidwe anga, koma mwanjira ina sindinawawonetse kufunika kwa iwo, ndipo motero, sindinawamvetse bwino. Choncho ndinalephera mayesowa mwamanyazi. Ndipo ndine wokondwa kwambiri kuti kulephera koteroko kunachitika, ndipo kunandikhudza kwambiri. Mukuganiza kuti ndinu katswiri wabwino, mukudziwa kapangidwe ka dera, mawonekedwe, ndikugwira ntchito ndi kernel. Ndiyeno muli ndi mafunso enieni ndipo mumayandama. Ndiye tiyeni tiwone.

Mafunso #2

Mavuto a Hardware.

  • Momwe mafoni amtundu wa linux amasanjidwira muchilankhulo chosonkhana pa purosesa ya ARM, pa x86. Kodi pali kusiyana kotani?
  • Ndi zida ziti zolumikizirana nazo? Ndi zida ziti zolumikizira zomwe zingagwiritsidwe ntchito mkati mwazosokoneza, zomwe sizingathe, ndipo chifukwa chiyani?
  • Kodi pali kusiyana kotani pakati pa basi ya i2c ndi spi bus?
  • Chifukwa chiyani pa basi ya i2c pali zotsekera ndipo mtengo wake ndi wotani?
  • Kodi mawonekedwe a RS-232 angagwire ntchito POKHA pa mawaya awiri: RX ndi TX? Apa ndipereka yankho: Zikuwonekera kuti ndizoyipa, ku 9600, koma zitha !!!
  • Ndipo tsopano funso lachiwiri: chifukwa chiyani?
  • Ndi njira iti yabwino yokonzera mizere yazizindikiro ndi mphamvu pama board a multilayer ndipo chifukwa chiyani? Mphamvu mkati mwa zigawo, kapena mizere yolumikizira mkati mwa zigawo? (Funso nthawi zambiri limakhudza kapangidwe ka dera).
  • Chifukwa chiyani mizere yosiyana ili ndi mayendedwe omwe amapita palimodzi kulikonse?
  • RS-485 basi. Nthawi zambiri pa mzere wotere pamakhala zotsekera. Komabe, tili ndi nyenyezi yozungulira, yokhala ndi ma module osinthika a plug-in. Ndi njira ziti zopewera kugundana ndi kusokoneza zomwe ziyenera kugwiritsidwa ntchito?
  • Kodi mitengo yofiira ndi ya binary ndi chiyani?
  • Momwe mungagwiritsire ntchito ndi cmake?
  • Mafunso okhudza kumanga yocto Linux.

Zolinga za kuyankhulana uku:

1. Lembani ntchito yomwe imatembenuza uint32_t zonse ziwiri. (kugwira ntchito ndi ma bits ndikotchuka kwambiri pamafunso, ndikupangira)
2.

int32_t a = -200;
uint32_t b = 200;
return *(uint32_t) * (&a)) > b;

Kodi ntchitoyi ibwerera chiyani? (yankho papepala, popanda kompyuta)

3. Ntchito yowerengera tanthauzo la masamu a manambala awiri int32_t.

4. Ndi njira ziti zotulutsa mumapulogalamu, kuphatikiza. mu mtsinje wa zolakwa.

Kusankhidwa kwachitatu kunali kwaposachedwa, ndipo sindingadabwe ngati pali mafunso oterowo, kotero sindidzaulula kampaniyo kuti ndisawaulule ... Koma mwachidule ndipereka chitsanzo. za mafunso otheka, ndipo ngati mwazindikira mafunso anu, ndiye kuti moni :).

Mafunso #3

  1. Chitsanzo cha kachidindo ka mtengo kaperekedwa; m'pofunika kunena zomwe zikuchitika mu code iyi ndikuwonetsa zolakwika.
  2. Lembani chitsanzo cha ls utility. Ndi njira yosavuta "-l".
  3. Perekani chitsanzo cha momwe mungapangire static ndi dynamic linking. Kodi pali kusiyana kotani?
  4. Kodi RS-232 imagwira ntchito bwanji? Kodi pali kusiyana kotani pakati pa RS-485 ndi RS-232? Kodi pali kusiyana kotani pakati pa RS-232 ndi RS-485 pamalingaliro a wopanga mapulogalamu?
  5. Kodi USB imagwira ntchito bwanji (kuchokera kwa wopanga mapulogalamu)?
  6. Kumasulira kwa zolemba zaukadaulo kuchokera ku Chirasha kupita ku Chingerezi.

Kuyankhulana kopambana si chitsimikizo cha ntchito yopambana

Mutuwu mwina si wa opanga mapulogalamu (ngakhale kwa iwonso), koma zambiri za HR. Makampani okwanira kwambiri samayang'ana mosamalitsa zotsatira za zoyankhulana. Si zachilendo kulakwitsa; nthawi zambiri amawona momwe munthu amadziwira kuthetsa mavuto ndi kulingalira.

Imodzi mwazovuta zazikulu ndikuti wosankhidwayo amathetsa bwino mavuto panthawi yofunsa mafunso, amadziwonetsa kuti ndi katswiri wabwino kwambiri, koma amalephera pa ntchito yeniyeni yoyamba. Sindiname, izi zidandichitikiranso. Ndinadutsa bwino mabwalo onse a gehena, ndinathetsa ntchito zonse zoyesa, koma muzochitika zenizeni ntchitoyo inakhala yovuta kwambiri chifukwa cha kusadziwa kosavuta. Kukwera sitima si ntchito yovuta kwambiri. Chovuta kwambiri ndikukhalabe pakampaniyi.

Chifukwa chake, ndikukhulupirira makampani ambiri omwe amachita zoyankhulana zosavuta ndi wosankhidwayo ndikuti: pambuyo pa mwezi woyamba wa ntchito, zidzadziwikiratu ngati ndinu oyenera kwa ife kapena ayi. Iyi ndiyo njira yokwanira kwambiri, inde, mwina yotsika mtengo, koma nthawi yomweyo imadziwika kuti ndani.

Palinso njira ina yofunsa mafunso: mukamadutsa bwino, koma kutengera zotsatira za kuyankhulana mumamvetsetsa kuti bwanayo ndi wosakwanira. Nthawi yomweyo ndimakana ntchito ngati ndipatsidwa ntchito yochita bizinesi payekha, ndikulonjeza ndalama zambiri. Iyi ndi njira yozembera misonkho ku bungwe lomwe limagwira ntchito, ndipo chifukwa chiyani mavuto a abwana ayenera kundidetsa nkhawa ngati wolemba mapulogalamu? Njira ina ndi mabungwe osiyanasiyana aboma. Ndinali ndi kuyankhulana, zomwe zinachititsa kuti andipatse malipiro abwino, koma adanena kuti wolemba pulogalamu wam'mbuyoyo anasiya, anadwala, anamwalira, amadya kwambiri chifukwa cha ntchito, ndipo tsiku lanu logwira ntchito limayamba 8 m'mawa. . Kuchokera pamalo oterowo adathamanganso kotero kuti zidendene zake zidawala. Inde, HR, chonde dziwani kuti opanga mapulogalamu ali okonzeka kukana ngakhale ntchito yokoma kwambiri ngati tsiku logwira ntchito liyenera kuyamba m'mawa.

Pamapeto pake, ndipereka kanema wabwino kwambiri wosankha mapulogalamu, chithunzi chomwe chaperekedwa koyambirira kwa nkhaniyi. Ndinakhalanso ndi kuyankhulana koteroko kangapo. Ngati muwona nkhanza pa siteji ya mafunso, dzilemekezeni nokha, nyamukani, tengani zinthu zanu ndikuchoka - izi ndi zachilendo. Ngati HR ndi manejala adzinenera kuti akulipirani panthawi yofunsa mafunso, izi zikuwonetsa kuti kampaniyo ndi yapoizoni ndipo simuyenera kugwira ntchito pamenepo pokhapokha ngati mukufuna mabwana osakwanira.

anapezazo

Opanga mapulogalamu, pitani ku zoyankhulana! Ndipo nthawi zonse yesetsani kukwezedwa. Tiyerekeze ngati mutapeza ndalama za N, ndiye kuti mupite kukafunsidwa osachepera N * 1,2, kapena bwino N * 1,5. Ngakhale simutenga mwayi uwu nthawi yomweyo, mudzamvetsetsa zomwe zimafunikira pamlingo wolipira.
zomwe ndaona zasonyeza kuti kudziwa bwino chinenero English, mokwanira olemera zinachitikira makampani ndi kudzidalira kusankha. Yotsirizira ndiye khalidwe lalikulu, monga kulikonse m'moyo. Monga lamulo, munthu wodzidalira kwambiri amatha kuchita bwino pakufunsidwa, ngakhale atalakwitsa zambiri, kuposa wochita bwino, koma wamanyazi komanso wolimbikira ntchito. Zabwino zonse ndi zoyankhulana zanu!

Mpikisano wa P/S

Ngati muli ndi zitsanzo zosangalatsa zamavuto omwe HR adakuletsani nawo, landirani mu ndemanga. Takonzekera mpikisano wawung'ono - mikhalidwe ndi yosavuta: mumalemba ntchito yachilendo kwambiri yomwe mudakhala nayo panthawi yofunsa mafunso, owerenga amayesa (kuphatikiza), ndipo pakatha sabata timawerengera zotsatira ndikulipira wopambana ndi zinthu zosangalatsa.

Opanga mapulogalamu, pitani ku zoyankhulana

Opanga mapulogalamu, pitani ku zoyankhulana

Source: www.habr.com

Kuwonjezera ndemanga