
DMA - cinnost
Dobry den, byl by nekdo tak laskav a vysvtelil mi jak funguje DMA ( Direct Memory Access) ? Vím k cemu to je ale princip jak to funguje jaksi nejsem schopen pochopit. Děkuji
Dobry den, byl by nekdo tak laskav a vysvtelil mi jak funguje DMA ( Direct Memory Access) ? Vím k cemu to je ale princip jak to funguje jaksi nejsem schopen pochopit. Děkuji
Zpět do poradny Odpovědět na původní otázku Nahoru
Viz Niko Bellic. Co je na tom nepochopitelného? Zasrané prázdniny?
Ten obrázek od Niko Bellice jsem si prohlížel ze všech stran a nic!
Jestli tohle má vysvětlovat nějakou činnost něčeho, tak umřu neosvícený.
Ale vždyť je obyčejné blokové schéma a navíc s vysvětlivkami?
Mno, měl jsem na mysli ten odkaz na wiki. Přiznám se, že podivuhodný obrázek jsem posmotrel až nyní
.
To mi prozraď, jak jsi to udělal
Možná neznáš některé dílčí pojmy. Jinak se to dá pochopit i z toho slajdu.
Já jsem celkově IT vzděláním moc nepostižený, takže všechny podobné obrázky jsou pro mě španělská vesnice. Ovšem jsem machr v oboru detailního prohlížení. Taky je mi to k ničemu.
Jak funguje DMA?
Jednoduše - přijedeš s náklaďákem na pilu, řekneš "naložte mi 5 tun palivového dřeva" a zatímco dělníci na pile makají, ty se věnuješ jiným svým záležitostem (obvoláváš zákazníky, vytáhneš NB a zaktualizuješ si stránky, ....) Až jsou hotoví, nasedneš do auta a odjedeš. Celé tě to stojí jen pár vět, jinak plně využiješ čas (místo abys tam stál jak trubka a koukal na ně, jestli už budou hotoví).
V počítači - CPU (ty) alokuje místo pro data (náklaďák), zadáš požadavek zařízení (naložte ...) a zatímco zařízení cpe data do RAM (dělníci nakládají) tak CPU dělá jiné věci (stahuje maily, posílá jiná data jinam, cosi počítá). Až je zařízení hotové, tak to ohlásí a CPU ví, že data jsou na svém místě (náklaďák naložený), tak je zpracuje (odveze ho pryč). Nemusí tam čekat a pořád se ptát zařízení "hele, nemáš další byte? Ne? škoda. A co te?D už ho máš? Jo, príma, a další bajt náhodou nemáš? ne? škoda ...)
Nevis. Keby si vedel, tak sa nepytas.
Tak k cemu to je?
DMA - HW procesor (P je SW) specializovaný na určité funkce. Slouží k přenosu mezi blokovými zařízeními (např. mezi harddiskem a pamětí atd.). Má-li dojít k přenosu, nejdříve se nastaví kanál. Nastaví se adresy odkud kam se bude přenášet, co se bude přenášet, počáteční adresu přenosu. Poté DMA oznámí P, že dojde k přenosu a pošle mu žádost o HOLD (zastavení činnosti). P dokončí svou činnost a odpojí se. DMA začne obsluhovat sběrnici a periferie. Je zde čítač počtu Bytů, který se automaticky inkrementuje při každém taktu. Po naplnění tohoto čítače se ukončí přenos. DMA se odpojí od sběrnice a periférií a P začne opět ovládat sběrnici a periférie.
Mohlo by pomoct :)