FMUSER Wirless Kusambaza Video Na Sauti Ni Rahisi Zaidi!
es.fmuser.org
it.fmuser.org
fr.fmuser.org
de.fmuser.org
af.fmuser.org -> Kiafrikana
sq.fmuser.org -> Kialbeni
ar.fmuser.org -> Kiarabu
hy.fmuser.org -> Kiarmenia
az.fmuser.org -> Kiazabajani
eu.fmuser.org -> Kibasque
be.fmuser.org -> Kibelarusi
bg.fmuser.org -> Kibulgaria
ca.fmuser.org -> Kikatalani
zh-CN.fmuser.org -> Kichina (Kilichorahisishwa)
zh-TW.fmuser.org -> Wachina (Jadi)
hr.fmuser.org -> Kikroeshia
cs.fmuser.org -> Kicheki
da.fmuser.org -> Kidenmaki
nl.fmuser.org -> Kiholanzi
et.fmuser.org -> Kiestonia
tl.fmuser.org -> Kifilipino
fi.fmuser.org -> Kifini
fr.fmuser.org -> Kifaransa
gl.fmuser.org -> Kigalisia
ka.fmuser.org -> Kijojiajia
de.fmuser.org -> Kijerumani
el.fmuser.org -> Kiyunani
ht.fmuser.org -> Kikrioli cha Haiti
iw.fmuser.org -> Kiebrania
hi.fmuser.org -> Kihindi
hu.fmuser.org -> Kihungari
is.fmuser.org -> Kiaislandi
id.fmuser.org -> Kiindonesia
ga.fmuser.org -> Kiayalandi
it.fmuser.org -> Italia
ja.fmuser.org -> Kijapani
ko.fmuser.org -> Kikorea
lv.fmuser.org -> Kilatvia
lt.fmuser.org -> Kilithuania
mk.fmuser.org -> Kimasedonia
ms.fmuser.org -> Kimalesia
mt.fmuser.org -> Kimalta
no.fmuser.org -> Kinorwe
fa.fmuser.org -> Kiajemi
pl.fmuser.org -> Kipolishi
pt.fmuser.org -> Kireno
ro.fmuser.org -> Kiromania
ru.fmuser.org -> Kirusi
sr.fmuser.org -> Mserbia
sk.fmuser.org -> Kislovakia
sl.fmuser.org -> Kislovenia
es.fmuser.org -> Kihispania
sw.fmuser.org -> Kiswahili
sv.fmuser.org -> Kiswidi
th.fmuser.org -> Thai
tr.fmuser.org -> Kituruki
uk.fmuser.org -> Kiukreni
ur.fmuser.org -> Kiurdu
vi.fmuser.org -> Kivietinamu
cy.fmuser.org -> Kiwelsh
yi.fmuser.org -> Yiddish
Kwa maendeleo ya programu: Lugha ya C, muundo wa data, Java, nk inahitaji kujifunza vizuri. Hakuna kitu maalum cha kuzingatia maendeleo ya programu iliyoingia na maendeleo ya programu kwenye PC. Labda unasema kuwa unahitaji kuboresha mfumo uliowekwa, ndio, unahitaji kuboresha, lakini programu isiyo na kipimo haina tofauti na maendeleo ya programu kwenye PC. Kwa kuongezea, wakati una uwezo wa kuboresha, hutumiwi tena kuuliza swali hili. Kwa mfano maalum, kama muundo wa maendeleo, tunatumia VC kwenye PC; katika Linux iliyoingia, tunaweza kutumia QT na Android. Kwa wakati huu, unapaswa kujifunza programu ya QT na Android. Lakini msingi bado ni C au JAVA, na kwa msingi huu, ujue na maingiliano yao. Ikiwa umejifunza VC, inachukua muda kuelewa darasa hizo na udhibiti.
Ikiwa unataka kujifunza mfumo wa msingi, huu ni utaalam wangu, lakini naweza kusema kidogo.
Kabla ya kujibu swali hili, wacha nijibu: Watu wengi wananiuliza, ni kujifunza kuendesha gari au kujifunza kuomba? Ninaweza kusema tu kwamba inategemea maslahi, na madereva na programu sio tofauti kabisa.
1. Madereva tunayozungumza hayazuiliwi na utendaji wa vifaa, lakini pia dhana kama kanuni za mfumo wa uendeshaji na mchakato wa kulala na kuamka upangaji. Ikiwa unataka kuandika programu nzuri, na unataka kusuluhisha vizuri shida zilizojitokeza na programu, unapaswa kuelewa maarifa haya
2. Vizuizi vya chini vya matumizi, haswa ANDROID ya sasa, JAVA safi. Mimi binafsi nadhani kuwa njia ya maendeleo ya maombi ni stadi katika biashara. Kwa mfano, katika tasnia ya mawasiliano, tasnia ya IPTV, na tasnia ya simu za rununu, unaelewa mahitaji ya tasnia hiyo. Kwa hivyo, watu ambao ni viongozi ni maombi.
3. Kuendeshwa. Kwa kweli, sitaki kuiita "kuwa dereva", lakini nataka kuiita "kuwa mfumo wa kiwango cha chini". Mara baada ya kumaliza, hii itaua viwanda vyote. Nimefanya kazi kwa miaka kadhaa na nimetengeneza simu za rununu, IPTV, na Runinga ya mkutano, lakini bidhaa hizi hazina tofauti kwangu kwa sababu mimi hufanya safu ya chini tu. Biashara yao haina uhusiano wowote na mimi. Wakati kuna shida na programu na hawawezi kuitatua, nitawapa wazo kutoka kwa mtazamo wa kernel na kuwapa zana. Mimi mwenyewe nadhani kuwa mimi ni mtaalam wa kiufundi katika mwelekeo wa maendeleo wa safu ya chini.
4. Kwa kweli, hakuna mpaka kati ya kufanya safu ya chini au kufanya programu. Ikiwa una uzoefu wa safu ya chini, utahisi raha sana unapofanya programu. Ukiwa na uzoefu wa biashara, unaweza kujua safu ya chini, na hivi karibuni utaweza kuunda timu.
Rudi kwenye swali la jinsi ya kujifunza. Ni nini kinachojumuishwa katika mfumo wa msingi wa Linux uliowekwa? Usijali, utaijua kwa kutoa mfano.
1. Wakati kompyuta imewashwa, ni nani anayeonyesha viunganishi hivyo? Ni BIOS, inafanya nini? Baadhi ya ukaguzi wa kibinafsi, kisha soma windows kutoka kwa diski ngumu na uianze. Vivyo hivyo, BIOS hii inalingana na bootloader kwenye Linux iliyoingia. Bootloader hii inahitaji kusoma kernel ya Linux kwenye Flash na uianze.
2. Ni nini kusudi la kuanzisha windows? Kwa kweli ni mazungumzo ya mkondoni au kitu chochote. Ziko wapi hizi zana za mtandao na mazungumzo? Kwenye gari C na D gari. Kwa hivyo, windows lazima kwanza itambue gari la C na D gari. Tunaiita mfumo wa faili ya mizizi chini ya Linux.
3. Windows inaweza kutambua gari la C na D, kwa hivyo lazima iweze kusoma na kuandika gari ngumu. Vitu vinavyohusika huitwa madereva. Kwa kweli, sio diski ngumu tu, lakini pia kadi ya mtandao, USB, na kadhalika. Linux iliyoingia inaweza kusoma na kutekeleza programu kutoka Flash, na lazima pia iwe na madereva ya Flash. Kwa kweli, sio Flash tu.
Wacha tuzungumze juu yake kwanza, iliyoingizwa LINUX ina sehemu nne kuu: bootloader, kernel, dereva, na mfumo wa faili ya mizizi.
Moja, bootloader
Ni mpango ngumu zaidi wa bodi isiyo wazi. Lakini si rahisi kuelewa na kuandika mpango huu wa bodi isiyo wazi. Zana muhimu chini ya Windows hudhoofisha uwezo wetu wa programu.
Watu wengi hutumia ADS na KEIL mara tu wanapocheza kupachikwa. Je! Unaweza kujibu maswali haya?
1. Mara tu umeme umewashwa, CPU inachukua wapi maagizo ya utekelezaji?
Jibu: Kwa ujumla, maagizo hutoka kwa Flash.
2. Lakini Flash inaweza kusomwa tu na sio kuandikwa moja kwa moja. Ikiwa ninatumia anuwai ya ulimwengu, hizi anuwai za ulimwengu ziko wapi?
Jibu: Viwango vya ulimwengu vinapaswa kuwa kwenye kumbukumbu
3. Kwa hivyo ni nani anayeweka anuwai ya ulimwengu kwenye kumbukumbu?
Jibu: Je! Unaweza kumjibu rafiki ambaye ametumia ADS na KEIL kwa muda mrefu? Hii inahitaji "kuhamishwa". Katika ADS au KEIL, nambari ya kuhamisha imeandikwa kwako na kampuni inayotengeneza zana hizi. Umewahi kusoma?
4. Kumbukumbu ni kubwa sana, ninajuaje anwani ipi ya kusoma "yaliyomo hapo awali yaliyohifadhiwa kwenye Flash" kwenye kumbukumbu?
Jibu: Anwani hii imedhamiriwa na "kiunga cha hati", kuna faili za kutawanya katika ADS, na faili sawa katika KEIL. Lakini, umeisoma?
5. Umesema kuwa kuhamishwa ni kunakili programu kutoka Flash hadi kumbukumbu, kwa hivyo programu hii inaweza kusoma Flash? Jibu: Ndio, unahitaji kuwa na uwezo wa kutumia Flash. Kwa kweli sio hizi tu, bali pia kuweka saa ili kufanya mfumo uendeshe haraka na kadhalika. Wacha tuulize na tujibu hapa kwanza, bootloader, mpango wa ubao wa wazi, kwa kweli ina alama kuu tatu:
1. Uendeshaji wa vifaa
2. Uelewa wa wasindikaji wa mfumo wa ARM
3. Dhana za kimsingi za programu: kuhamishwa, stack, sehemu ya nambari, sehemu ya data, sehemu ya BSS na kadhalika.
Kwa uendeshaji wa vifaa, unahitaji kuona mchoro wa skimu na mwongozo wa chip. Hii inahitaji kiasi fulani cha maarifa ya vifaa. Haihitaji uweze kubuni vifaa, lakini angalau kuielewa; hauitaji kuweza kuelewa nyaya za analog, lakini kuelewa nyaya za dijiti. Uwezo huu nilijifunza shuleni. Vitabu viwili (kichwa cha kitabu nilichosahau) vinatosha. Lakini nina shaka una subira ya kumaliza kusoma vitabu hivi viwili. Sijui ikiwa kuna kitabu cha haraka zaidi sasa. Ikiwa unataka kuifanya iwe haraka, acha hii kwanza, na ikiwa hauelewi, uliza tu Google na chapisha.
Kwa kuongezea, mwongozo wa chip lazima usome, usitafute Wachina, angalia tu Kiingereza. Ilikuwa chungu sana mwanzoni, lakini baadaye, sarufi na msamiati utakapojulikana, ni rahisi kusoma mwongozo wowote wa chip.
Kwa uelewa wa wasindikaji wa mfumo wa ARM, tafadhali angalia ya Du Chunlei. Inazungumza juu ya maagizo ya mkutano, njia za ubaguzi, MMU, nk Vile vipande vitatu tu vya yaliyomo vinahitaji kuelewa.
Dhana ya kimsingi ya mpango, kwa kweli, mfalme ni kuangalia kanuni za mkusanyiko. Kwa bahati mbaya, aina hii ya kitabu hakika ni ya kiwango cha vitabu vya mbinguni. Nakushauri usiiangalie isipokuwa wewe ni fikra bora. Angalia tu na video ya kwanza niliyoandika, usijali, usitumie pesa. Kufuatia video na kufanya majaribio yanayohusiana na vifaa, dhana hizi zitakuwa wazi. Sijapata seti ya pili ya vitabu au video ambazo huzungumza juu ya dhana hizi, na niruhusu kujivunia juu yake bila upofu. Kwa mzigo wa boot, niliiangalia kwanza wakati nilikuwa nasoma, na kisha niliandika programu mwenyewe na kufanya majaribio yote kwenye vifaa anuwai, kama vile GPIO, saa, SDRAM, UART, na NAND. Ukiwafanya wazi, ni rahisi kuelewa u-boot kwa kujipanga pamoja. Kwa jumla, kuelewa mchoro wa skimu ya vifaa na mwongozo wa chip, unahitaji kupata habari hiyo mwenyewe. Kwa wengine, fuata orodha ya sura ya na awamu ya kwanza ya video ya kujifunza.
Mbili, punje
Wale ambao wanataka kuanza wanapaswa kuruka kujifunza kernel kwanza na kujifunza jinsi ya kuandika madereva moja kwa moja.
Ili kuwa bwana, punje lazima iwe na uelewa wa kina. Kumbuka kuwa nazungumza juu ya uelewa, sina tumaini kubwa la kuandika kernel.
Kuelewa utaratibu wa upangaji, utaratibu wa usimamizi wa kumbukumbu, utaratibu wa usimamizi wa faili, n.k ndani.
Pendekeza vitabu viwili:
1. Soma, tafadhali soma kitabu chembamba (Jamii inayoelea inasisitiza kasi)
2. Chagua kusoma, unataka kujua ni sehemu gani ya kusoma ni sehemu gani
Tatu, endesha gari
Dereva ina sehemu mbili: uendeshaji wa vifaa yenyewe na mfumo wa dereva.
Ni vifaa tena. Bado ni muhimu kuelewa mchoro wa skimu na mwongozo wa chip. Jizoeze zaidi. Akizungumzia mfumo wa dereva, kuna vitabu kadhaa vya kuitambulisha. LDD3, kitabu kilichoandikwa na mgeni, huanzisha dhana nyingi na inafaa kusoma. Walakini, jukumu lake ni mdogo kwa kuanzisha dhana. Nilitumia kimsingi kujitambulisha na dhana kabla ya kuanza, na kisha kuitupa baada ya kuanza.
Utangulizi kamili wa dereva unapaswa kuwa wa Maneno ya Baohua. Kusema kweli, nilisoma tu katalogi. Watu wengi walisema ndio, ninapendekeza hapa.
Ikiwa unataka kuelewa eneo fulani kwa kina, hakika ni pendekezo la nyota 5 bora. Hautarajii kuisoma, zaidi ya kurasa 1,800, juzuu mbili juu na chini. Wakati sina uhakika juu ya eneo fulani, nitaangalia kupitia. Sehemu yoyote ya kitabu hiki inaweza kufunika kurasa mia mbili au tatu, ambayo ina maelezo mengi. Na kukupeleka kuchambua nambari ya chanzo ya kernel na lengo fulani. Inachukua linux 2.4 kama mfano, lakini kanuni hiyo ni sawa, na inatumika pia kwa matoleo mengine ya linux. Utangulizi mwingine wowote? Kwa kweli kuna, toleo la pili la Video ya Wei Dongshan Linux. "Kitabu kamili cha Maendeleo ya Maombi ya Linux" haizungumzii sana juu ya dereva, na sio ya kutosha.
Jaribu kuandika dereva kwa vifaa vyote vinavyohusika kwenye bodi yako ya maendeleo. Ikiwa una shida, unapaswa "kufikiria kwa uchungu" kwanza. Katika mchakato wa kufikiria, utaunganisha maarifa mengi yasiyofaa na mwishowe uyapitie.
Nne, mfumo wa faili ya mizizi
Je! Umewahi kufikiria juu ya maswali haya mawili:
1. Kwa bidhaa zilizotengenezwa na Linux, zingine hutumiwa kwa ufuatiliaji, zingine hutumiwa kama simu za rununu, na zingine hutumiwa kama vidonge. Kwa hivyo baada ya kernel kuanza, baada ya kuweka mfumo wa faili ya mizizi, ni programu ipi inapaswa kuanza?
Jibu: Kernel haijui au haijali ni programu gani ya mtumiaji inapaswa kuanza. Inaanza tu programu ya init, ambayo inalingana na / sbin / init.
Kwa wazi, programu tumizi hii inapaswa kusoma faili ya usanidi na kuanza programu ya mtumiaji (ufuatiliaji, kiolesura cha mwongozo, kiolesura cha kibao, nk) kulingana na faili ya usanidi. Swali hili linatukumbusha kuwa yaliyomo kwenye mfumo wa faili yana mikataba kadhaa, kama vile / sbin / init, faili ya usanidi inahitajika.
2. Je! Umewahi kufikiria juu ya nani alitumia printa iliyotumiwa katika programu za hello na za ulimwengu ulizoandika?
Jibu: Kazi hii haitekelezwi na wewe, bali na kazi ya maktaba. Wakati inaendesha, inapaswa kupata maktaba.
Swali hili linatukumbusha kuwa bado kuna maktaba katika mfumo wa faili. Hapa kuna swali rahisi na jibu. Ikiwa unataka kujua zaidi, unaweza kuangalia init.c ya busybox kujua nini mchakato wa init hufanya. Kwa kweli, unaweza pia kuona sura juu ya kujenga mfumo wa faili ya mizizi katika .
Uzoefu wangu wa kujifunza
1. Nilipokuwa shuleni, nilisomea fizikia na elektroniki. Kwa kweli, sikufundisha jinsi ya kuunda nyaya kwenye kozi hiyo, lakini nilifundisha tu maarifa juu ya nyaya za elektroniki. Ubunifu wa PCB ulifundishwa na mimi mwenyewe katika maabara. Niliunda bodi ya safu mbili tu, na sasa karibu nisahau. Lakini inabaki na uwezo wa kusoma mchoro wa skimu na mwongozo wa chip.
2. Nilichukua digrii katika programu, na ninavutiwa sana na usanifu wa programu, lakini nilijifunza tu lugha ya C na hifadhidata. Nilifanya maswali mengi ya mashindano na riba. Siwezi kushiriki kwenye mashindano, lakini nina mazoezi thabiti ya lugha C.
3. Katika maabara, katika kampuni ya kwanza, nilitengeneza kadi rahisi za PCI na kuandika dereva wa windows
4. Katika kampuni ya pili, kwa kutumia kompyuta ndogo ya chip-moja 51 kama simu ya gari, ilianza kuingia kwenye barabara ya programu safi.
5. Nilianza kuhisi mapungufu ya kompyuta-ndogo ya chip moja. Nilijiuzulu kwa nusu mwaka ili kujifunza Linux nyuma ya milango iliyofungwa, kuanzia na jinsi ya kutumia kofia nyekundu. Hatua ni kuiangalia kwanza, kisha andika mpango wa bodi isiyo na vifaa vya kutumia vifaa, na kisha uchanganue u-boot. Wakati huo huo, nina uelewa wa mfumo wa LINUX.
Wakati wa kuandika bodi zilizo wazi, inashauriwa uimarishe uelewa wako wa usumbufu. Kernel hutumia kukatiza kukamilisha kazi anuwai.
6. Baada ya kuchambua u-boot, anza programu rahisi ya dereva. Kwa wakati huu, uwezo bado ni dhaifu sana.
7. Nilianza kufanya kazi katika ZTE, nilifanya kazi kwa miaka 2, niliandika kila aina ya madereva, nikatatua shida za kila aina (shida za kuendesha gari, kusaidia kupata shida za matumizi), na uwezo ulipunguzwa
|
Ingiza barua pepe kupata mshangao
es.fmuser.org
it.fmuser.org
fr.fmuser.org
de.fmuser.org
af.fmuser.org -> Kiafrikana
sq.fmuser.org -> Kialbeni
ar.fmuser.org -> Kiarabu
hy.fmuser.org -> Kiarmenia
az.fmuser.org -> Kiazabajani
eu.fmuser.org -> Kibasque
be.fmuser.org -> Kibelarusi
bg.fmuser.org -> Kibulgaria
ca.fmuser.org -> Kikatalani
zh-CN.fmuser.org -> Kichina (Kilichorahisishwa)
zh-TW.fmuser.org -> Wachina (Jadi)
hr.fmuser.org -> Kikroeshia
cs.fmuser.org -> Kicheki
da.fmuser.org -> Kidenmaki
nl.fmuser.org -> Kiholanzi
et.fmuser.org -> Kiestonia
tl.fmuser.org -> Kifilipino
fi.fmuser.org -> Kifini
fr.fmuser.org -> Kifaransa
gl.fmuser.org -> Kigalisia
ka.fmuser.org -> Kijojiajia
de.fmuser.org -> Kijerumani
el.fmuser.org -> Kiyunani
ht.fmuser.org -> Kikrioli cha Haiti
iw.fmuser.org -> Kiebrania
hi.fmuser.org -> Kihindi
hu.fmuser.org -> Kihungari
is.fmuser.org -> Kiaislandi
id.fmuser.org -> Kiindonesia
ga.fmuser.org -> Kiayalandi
it.fmuser.org -> Italia
ja.fmuser.org -> Kijapani
ko.fmuser.org -> Kikorea
lv.fmuser.org -> Kilatvia
lt.fmuser.org -> Kilithuania
mk.fmuser.org -> Kimasedonia
ms.fmuser.org -> Kimalesia
mt.fmuser.org -> Kimalta
no.fmuser.org -> Kinorwe
fa.fmuser.org -> Kiajemi
pl.fmuser.org -> Kipolishi
pt.fmuser.org -> Kireno
ro.fmuser.org -> Kiromania
ru.fmuser.org -> Kirusi
sr.fmuser.org -> Mserbia
sk.fmuser.org -> Kislovakia
sl.fmuser.org -> Kislovenia
es.fmuser.org -> Kihispania
sw.fmuser.org -> Kiswahili
sv.fmuser.org -> Kiswidi
th.fmuser.org -> Thai
tr.fmuser.org -> Kituruki
uk.fmuser.org -> Kiukreni
ur.fmuser.org -> Kiurdu
vi.fmuser.org -> Kivietinamu
cy.fmuser.org -> Kiwelsh
yi.fmuser.org -> Yiddish
FMUSER Wirless Kusambaza Video Na Sauti Ni Rahisi Zaidi!
Wasiliana nasi
Anwani:
Nambari 305 Chumba cha HuiLan Jengo Na. 273 Huanpu Road Guangzhou Uchina 510620
Jamii
Jarida