FMUSER Wirless lähettää videota ja ääntä helpommin!
es.fmuser.org
it.fmuser.org
fr.fmuser.org
de.fmuser.org
af.fmuser.org -> Afrikaans
sq.fmuser.org -> albania
ar.fmuser.org -> arabia
hy.fmuser.org -> Armenian
az.fmuser.org -> azerbaidžanilainen
eu.fmuser.org -> baski
be.fmuser.org -> valkovenäläinen
bg.fmuser.org -> Bulgaria
ca.fmuser.org -> katalaani
zh-CN.fmuser.org -> kiina (yksinkertaistettu)
zh-TW.fmuser.org -> Kiina (perinteinen)
hr.fmuser.org -> kroatia
cs.fmuser.org -> tšekki
da.fmuser.org -> tanska
nl.fmuser.org -> Dutch
et.fmuser.org -> viro
tl.fmuser.org -> filippiiniläinen
fi.fmuser.org -> suomi
fr.fmuser.org -> French
gl.fmuser.org -> galicialainen
ka.fmuser.org -> Georgian
de.fmuser.org -> saksa
el.fmuser.org -> Greek
ht.fmuser.org -> Haitin kreoli
iw.fmuser.org -> heprea
hi.fmuser.org -> Hindi
hu.fmuser.org -> Unkari
is.fmuser.org -> islanti
id.fmuser.org -> indonesia
ga.fmuser.org -> irlantilainen
it.fmuser.org -> Italian
ja.fmuser.org -> japani
ko.fmuser.org -> korea
lv.fmuser.org -> latvia
lt.fmuser.org -> Liettua
mk.fmuser.org -> makedonia
ms.fmuser.org -> malaiji
mt.fmuser.org -> maltalainen
no.fmuser.org -> Norja
fa.fmuser.org -> persia
pl.fmuser.org -> puola
pt.fmuser.org -> portugali
ro.fmuser.org -> Romania
ru.fmuser.org -> venäjä
sr.fmuser.org -> serbia
sk.fmuser.org -> slovakki
sl.fmuser.org -> Slovenian
es.fmuser.org -> espanja
sw.fmuser.org -> swahili
sv.fmuser.org -> ruotsi
th.fmuser.org -> Thai
tr.fmuser.org -> turkki
uk.fmuser.org -> ukraina
ur.fmuser.org -> urdu
vi.fmuser.org -> Vietnam
cy.fmuser.org -> kymri
yi.fmuser.org -> Jiddiš
Sovelluskehitystä varten: C-kieli, tietorakenne, JAVA jne. On opittava hyvin. Sulautettujen sovellusten kehittämisessä ja PC: n sovelluskehityksessä ei ole mitään erityistä huomiota. Ehkä sanot, että sinun on optimoitava sulautettu järjestelmä, kyllä, sinun on optimoitava, mutta optimoimaton ohjelma ei eroa PC: n ohjelmakehityksestä. Lisäksi kun sinulla on kyky optimoida, et ole enää tottunut esittämään tätä kysymystä. Erityisessä esimerkissä, kuten kehitysrajapinnassa, käytämme VC: tä tietokoneessa; sulautetussa Linuxissa voimme käyttää QT: tä ja Androidia. Tällä hetkellä sinun pitäisi oppia QT- ja Android-ohjelmointi. Mutta säätiö on edelleen C tai JAVA, ja tutustu tältä pohjalta niiden käyttöliittymiin. Jos olet oppinut VC: n, näiden luokkien ja hallintalaitteiden ymmärtäminen vie aikaa.
Jos haluat oppia taustalla olevan järjestelmän, tämä on erikoisuuteni, mutta voin sanoa vähän.
Ennen kuin vastaan tähän kysymykseen, anna minun vastata: Monet ihmiset kysyvät minulta, onko se oppia ajamaan vai oppimaan soveltamaan? Voin vain sanoa, että se perustuu kiinnostukseen, eikä ohjaimet ja sovellukset ole täysin erillisiä.
1. Ajurit, joista puhumme, eivät rajoitu laitteistotoimintoihin, vaan myös käsitteisiin, kuten käyttöjärjestelmän periaatteisiin sekä prosessin lepo- ja herätysaikatauluihin. Jos haluat kirjoittaa hyvän sovelluksen ja haluat ratkaista paremmin sovelluksen kohtaamat ongelmat, sinun tulisi ymmärtää tämä tieto
2. Alhaiset sovelluksen esteet, erityisesti nykyinen ANDROID, puhdas JAVA. Henkilökohtaisesti olen sitä mieltä, että sovelluskehityspolku on taitava liiketoiminnassa. Esimerkiksi viestintä-, IPTV- ja matkapuhelinteollisuudessa ymmärrät alan tarpeet. Siksi johtajat ovat enimmäkseen sovelluksia.
3. Aja ajaa. Itse en halua kutsua sitä "kuljettajaksi", mutta haluan kutsua sitä "matalan tason järjestelmäksi". Kun se on tehty, se tappaa kaikki teollisuudenalat. Olen työskennellyt useita vuosia ja tehnyt matkapuhelimia, IPTV: tä ja kokous-TV: tä, mutta nämä tuotteet eivät tee minulle mitään eroa, koska teen vain alimman kerroksen. Heidän liiketoiminnallaan ei ole mitään tekemistä kanssani. Kun sovelluksessa on ongelma ja he eivät pysty ratkaisemaan sitä, annan heille idean ytimen näkökulmasta ja annan heille työkaluja. Olen henkilökohtaisesti sitä mieltä, että olen tekninen asiantuntija alakerroksen kehityssuunnassa.
4. Itse asiassa ei ole mitään rajaa alemman kerroksen tekemisen tai sovelluksen tekemisen välillä. Jos sinulla on alakerroksen kokemus, tunnet olosi hyvin levolliseksi, kun teet sovelluksen. Yrityskokemuksen avulla voit tutustua alimpaan kerrokseen ja pystyt pian muodostamaan tiimin.
Takaisin kysymykseen oppimisesta. Mitä upotettuun Linux-järjestelmään sisältyy? Älä huoli, tiedät sen antamalla esimerkin.
1. Kuka näyttää nämä liitännät, kun tietokoneeseen kytketään virta? Se on BIOS, mitä se tekee? Jotkut itsetarkistukset, lukevat sitten ikkunat kiintolevyltä ja käynnistävät sen. Vastaavasti tämä BIOS vastaa sulautetun Linuxin käynnistyslatainta. Tämän käynnistyslataimen täytyy lukea Linux-ydin Flashissa ja käynnistää se.
2. Mikä on Windowsin käynnistämisen tarkoitus? Tietysti se on online-chattailu tai jotain. Missä nämä Internet- ja chat-työkalut ovat? C- ja D-asemilla. Siksi Windowsin on ensin tunnistettava C- ja D-asema. Kutsumme sitä juuritiedostojärjestelmäksi Linuxissa.
3. Windows tunnistaa C- ja D-asemat, joten sen on kyettävä lukemaan ja kirjoittamaan kiintolevy. Asiaa kutsutaan kuljettajiksi. Tietenkin se ei ole vain kiintolevy, vaan myös verkkokortti, USB ja niin edelleen. Sulautettu Linux voi lukea ja suorittaa sovelluksia Flashista, ja sillä on oltava myös Flash-ohjaimet. Tietenkään se ei ole vain Flash.
Puhutaan ensin siitä, upotettu LINUX sisältää neljä pääosaa: käynnistyslataimen, ytimen, ohjaimen ja juuritiedostojärjestelmän.
Yksi, bootloader
Se on hieman monimutkaisempi paljas lautaohjelma. Mutta ei ole helppoa ymmärtää ja kirjoittaa tätä paljas lautaohjelmaa. Hyödylliset työkalut Windowsin alla heikentävät ohjelmointikykyämme.
Monet ihmiset käyttävät ADS: ää ja KEIL: ää heti, kun he pelaavat upotettuna. Voitko vastata näihin kysymyksiin?
1. Mistä CPU hakee suorituksen jälkeen virran ollessa päällä?
Vastaus: Yleensä ohje on Flashiltä.
2. Mutta Flashia voi lukea vain eikä suoraan kirjoittaa. Jos käytän globaaleja muuttujia, missä nämä globaalit muuttujat ovat?
Vastaus: Globaalien muuttujien tulisi olla muistissa
3. Kuka siis tallentaa globaalit muuttujat muistiin?
Vastaus: Voitteko vastata ystävälle, joka on käyttänyt ADS ja KEIL pitkään? Tämä edellyttää "uudelleensijoittamista". Nämä työkalut valmistava yritys kirjoittaa ADS- tai KEIL-tiedostossa muutoskoodin sinulle. Oletko koskaan lukenut sitä?
4. Muisti on niin suuri, mistä tiedän, minkä osoitteen luen "alun perin Flashiin tallennetun sisällön" muistiin?
Vastaus: Tämä osoite määritetään "linkkikomentosarjalla", ADS: ssä on sirontatiedostoja ja vastaavia tiedostoja KEIL: ssä. Mutta oletko tutkinut sitä?
5. Sanoit, että uudelleensijoittaminen on ohjelman kopioiminen Flashista muistiin, jotta tämä ohjelma voi lukea Flashia? Vastaus: Kyllä, sinun on pystyttävä käyttämään Flashia. Tietysti paitsi nämä, myös kellon asettaminen järjestelmän toiminnan nopeuttamiseksi ja niin edelleen. Kysymme ensin ja vastaamme tässä, paljaalla aluksella olevalla käynnistyslataimella on itse asiassa kolme pääkohtaa:
1. Laitteiston käyttö
2. Ymmärtäminen ARM-prosessoreista
3. Ohjelman peruskäsitteet: uudelleensijoittaminen, pino, koodisegmentti, tietosegmentti, BSS-segmentti ja niin edelleen.
Laitteiston käyttöä varten sinun on tarkasteltava kaaviota ja sirun käsikirjaa. Tämä vaatii tietyn määrän tietoa laitteistosta. Se ei edellytä sinun pystyvän suunnittelemaan laitteistoa, mutta ainakin ymmärtämään sitä; se ei vaadi kykyä ymmärtää analogisia piirejä, mutta ymmärtää digitaalisia piirejä. Olen oppinut tämän kyvyn koulussa. Kaksi kirjaa (unohdetun kirjan nimi) riittää. Mutta epäilen, että sinulla on kärsivällisyyttä lopettaa näiden kahden kirjan lukeminen. En tiedä, onko nyt nopeampi kirja. Jos haluat tehdä sen nopeasti, päästä irti ensin ja jos et ymmärrä, kysy vain Googlelta ja lähetä viesti.
Lisäksi sirun käyttöopas on luettava, älä etsi kiinaa, katso vain englantia. Se oli aluksi erittäin tuskallista, mutta myöhemmin, kun kielioppi ja sanasto ovat tuttuja, on helppo lukea minkä tahansa sirun käyttöohjetta.
Katso ARM-järjestelmäprosessoreiden ymmärtäminen Du Chunleilta. Se puhuu kokoonpano-ohjeista, poikkeustiloista, MMU: sta jne. Vain nämä 3 sisältöä sinun täytyy ymmärtää.
Ohjelman peruskäsite on tietysti kuningas tarkastelemaan kokoamisen periaatteita. Valitettavasti tämäntyyppiset kirjat ovat ehdottomasti taivaallisen kirjatason. Suosittelen, ettet katso sitä, ellet ole supernero. Katsokaa vain ja ensimmäinen video, jonka kirjoitin, älä huoli, älä kuluta rahaa. Videon seuraamisen ja laitteistokokeiden tekemisen jälkeen nämä käsitteet selviävät. En ole löytänyt toista sarjaa kirjoja tai videoita, joissa puhutaan näistä käsitteistä, joten voin ylpeillä siitä sokeasti. Käynnistyslatainta varten katselin sitä ensin opiskellessani, ja sitten kirjoitin ohjelman itse ja tein kaikki kokeilut erilaisille laitteistoille, kuten GPIO, kello, SDRAM, UART ja NAND. Jos teet ne selkeiksi, u-boot on helppo ymmärtää ryhmittelemällä ne yhteen. Yhteenvetona, jotta ymmärrät laitteistokaavion ja sirun käsikirjan, sinun on löydettävä tiedot itse. Seuraa loput vain kappaleiden luettelosta ja videon ensimmäinen vaihe oppia.
Kaksi, ydin
Niiden, jotka haluavat aloittaa, tulisi ensin ohittaa ytimen oppiminen ja oppia kirjoittamaan ohjaimet suoraan.
Jotta päälliköksi tulisi, ytimellä on oltava syvä ymmärrys. Huomaa, että puhun ymmärryksestä, minulla ei ole ylimääräistä toivoa kirjoittaa ydin.
Ymmärtää ajoitusmekanismi, muistinhallintamekanismi, tiedostonhallintamekanismi jne.
Suosittele kahta kirjaa:
1. Lue läpi, lue ohut kirja (Kelluva yhteiskunta korostaa nopeutta)
2. Valitse lukea, haluat tietää, mikä osa lukea mikä osa
Kolme, aja
Ohjain koostuu kahdesta osasta: itse laitteiston toiminnasta ja ohjaimen kehyksestä.
Se on jälleen laitteisto. Kaavio ja sirun käsikirja on edelleen ymmärrettävä. Harjoittele enemmän. Kuljettajan kehyksestä puhuttaessa on joitain kirjoja sen esittelemiseksi. Ulkomaalaisen kirjoittama kirja LDD3 esittelee monia käsitteitä ja on lukemisen arvoinen. Sen rooli rajoittuu kuitenkin käsitteiden käyttöönottoon. Käytin sitä pohjimmiltaan perehtyäkseni käsitteisiin ennen aloittamista ja heittänyt sen sitten aloituksen jälkeen.
Kuljettajan kattavamman esittelyn tulisi olla Song Baohuan. Ollakseni rehellinen, luin vain luettelon. Monet ihmiset sanoivat kyllä, suosittelen sitä täällä.
Jos haluat ymmärtää tietyn alueen perusteellisesti, se on ehdottomasti super 5 tähden suositus. Et aio lukea sitä, yli 1,800 sivua, kaksi äänenvoimakkuutta ylös ja alas. Kun en ole varma tietystä alueesta, katson sen läpi. Mikä tahansa tämän kirjan osa voi kattaa kaksi tai kolmesataa sivua, mikä on hyvin yksityiskohtaista. Ja jotta voit analysoida ytimen lähdekoodin tietyllä tavoitteella. Se ottaa esimerkkinä linux 2.4: n, mutta periaate on sama, ja sitä voidaan soveltaa myös muihin linux-versioihin. Onko muita esittelyjä? Tietysti on, toinen numero Wei Dongshan Linux Video. "Upotetun Linux-sovelluskehityksen täydellinen käsikirja" ei puhu paljon ohjaimesta, eikä se ole riittävän perusteellinen.
Yritä kirjoittaa ohjain kaikille kehityskortillesi kuuluville laitteistoille. Jos sinulla on ongelmia, sinun tulisi ensin "ajatella tuskallisesti". Ajatteluprosessissa yhdistät paljon merkityksetöntä tietoa ja saat sen lopulta läpi.
Neljänneksi juuritiedostojärjestelmä
Oletko koskaan ajatellut näitä kahta kysymystä:
1. Linuxin valmistamille tuotteille jotkut käytetään seurantaan, jotkut matkapuhelimina ja jotkut tabletteina. Joten mikä ydin pitäisi käynnistää ytimen käynnistämisen jälkeen, kun juuritiedostojärjestelmä on asennettu?
Vastaus: Ydin ei tiedä tai ei välitä, mikä käyttäjäohjelma tulisi käynnistää. Se käynnistää vain init-sovelluksen, joka vastaa / sbin / init.
Tämän sovelluksen on tietysti luettava määritystiedosto ja käynnistettävä käyttäjäohjelma (valvonta, manuaalinen käyttöliittymä, tablet-käyttöliittymä jne.) Kokoonpanotiedoston mukaan. Tämä kysymys muistuttaa meitä siitä, että tiedostojärjestelmän sisällöllä on joitain käytäntöjä, kuten / sbin / init, tarvitaan kokoonpanotiedosto.
2. Oletko koskaan ajatellut, kuka on toteuttanut kirjoittamasi hello- ja maailma-ohjelmissa käytetyn printf: n?
Vastaus: Tätä toimintoa ei toteuta sinä, vaan kirjastotoiminto. Kun se suoritetaan, sen on löydettävä kirjasto.
Tämä kysymys muistuttaa meitä siitä, että tiedostojärjestelmässä on vielä kirjastoja. Tässä on yksinkertainen kysymys ja vastaus. Jos haluat tietää enemmän, voit katsoa busyboxin init.c: stä tietääksesi, mitä init-prosessi tekee. Tietysti näet myös luvun juuritiedostojärjestelmän rakentamisesta .
Oppimiskokemukseni
1. Kun olin koulussa, opiskelin fysiikkaa ja elektroniikkaa. Itse en opettanut piirien suunnittelua kurssilla, vaan opetin vain jonkin verran tietoa elektronisista piireistä. PCB: n suunnittelun opetin itse laboratoriossa. Suunnittelin vain kaksikerroksisen levyn, ja nyt unohdan sen melkein. Mutta se säilyttää kyvyn lukea kaaviokuva ja sirun käsikirja.
2. Valmistuin ohjelmistosta ja olen hyvin kiinnostunut ohjelmistosuunnittelusta, mutta opin vain C-kielen ja tietokannan. Tein paljon kilpailukysymyksiä mielenkiinnolla. En voi osallistua kilpailuun, mutta minulla on vankka C-kielen käytäntö.
3. Laboratoriossa suunnittelin ensimmäisessä yrityksessä yksinkertaisia PCI-kortteja ja kirjoitin Windows-ohjaimen
4. Toisessa yrityksessä, joka käytti 51 yhden sirun mikrotietokonetta autopuhelimena, alkoi ryhtyä puhtaiden ohjelmistojen tiellä.
5. Aloin tuntea yhden sirun mikrotietokoneen puutteet. Eroin puoli vuotta opiskellakseni Linuxia suljettujen ovien takana, alkaen siitä, kuinka punaista hattua käytetään. Vaihe on tarkastella sitä ensin, sitten kirjoittaa paljas lautaohjelma laitteiston käyttämiseksi ja analysoida sitten u-boot. Samaan aikaan minulla on jonkinlainen käsitys LINUX-kehyksestä.
Kun kirjoitat paljaita tauluja, on suositeltavaa vahvistaa ymmärrystä keskeytyksistä. Ydin käyttää keskeytyksiä eri toimintojen suorittamiseen.
6. Kun olet analysoinut u-boot, käynnistä yksinkertainen ohjaimen ohjelmointi. Tällä hetkellä kyky on edelleen hyvin heikko.
7. Alkoi työskennellä ZTE: ssä, työskenteli 2 vuotta, kirjoitti kaikenlaisia kuljettajia, ratkaisi kaikenlaisia ongelmia (ajo-ongelmat, apu sovellusongelmien löytämisessä) ja kyky karkaistu.
|
Kirjoita sähköpostiosoite saadaksesi yllätyksen
es.fmuser.org
it.fmuser.org
fr.fmuser.org
de.fmuser.org
af.fmuser.org -> Afrikaans
sq.fmuser.org -> albania
ar.fmuser.org -> arabia
hy.fmuser.org -> Armenian
az.fmuser.org -> azerbaidžanilainen
eu.fmuser.org -> baski
be.fmuser.org -> valkovenäläinen
bg.fmuser.org -> Bulgaria
ca.fmuser.org -> katalaani
zh-CN.fmuser.org -> kiina (yksinkertaistettu)
zh-TW.fmuser.org -> Kiina (perinteinen)
hr.fmuser.org -> kroatia
cs.fmuser.org -> tšekki
da.fmuser.org -> tanska
nl.fmuser.org -> Dutch
et.fmuser.org -> viro
tl.fmuser.org -> filippiiniläinen
fi.fmuser.org -> suomi
fr.fmuser.org -> French
gl.fmuser.org -> galicialainen
ka.fmuser.org -> Georgian
de.fmuser.org -> saksa
el.fmuser.org -> Greek
ht.fmuser.org -> Haitin kreoli
iw.fmuser.org -> heprea
hi.fmuser.org -> Hindi
hu.fmuser.org -> Unkari
is.fmuser.org -> islanti
id.fmuser.org -> indonesia
ga.fmuser.org -> irlantilainen
it.fmuser.org -> Italian
ja.fmuser.org -> japani
ko.fmuser.org -> korea
lv.fmuser.org -> latvia
lt.fmuser.org -> Liettua
mk.fmuser.org -> makedonia
ms.fmuser.org -> malaiji
mt.fmuser.org -> maltalainen
no.fmuser.org -> Norja
fa.fmuser.org -> persia
pl.fmuser.org -> puola
pt.fmuser.org -> portugali
ro.fmuser.org -> Romania
ru.fmuser.org -> venäjä
sr.fmuser.org -> serbia
sk.fmuser.org -> slovakki
sl.fmuser.org -> Slovenian
es.fmuser.org -> espanja
sw.fmuser.org -> swahili
sv.fmuser.org -> ruotsi
th.fmuser.org -> Thai
tr.fmuser.org -> turkki
uk.fmuser.org -> ukraina
ur.fmuser.org -> urdu
vi.fmuser.org -> Vietnam
cy.fmuser.org -> kymri
yi.fmuser.org -> Jiddiš
FMUSER Wirless lähettää videota ja ääntä helpommin!
Ota yhteyttä
Osoite:
Nro 305 huone HuiLan-rakennus nro 273 Huanpu Road Guangzhou Kiina 510620
Kategoriat
Uutiskirje