Nem csak ezert mert OS limit, ott van is neha ertleme, nagy gepen kevesbe.
micro controller orajele nagyon alacsony es memoria is tobb portos is lehet,
csak core -ok nem is biztos, hogy el tudjak foglalani a teljes lehetseges savszelt.
Egy desktopon, egyetlen szal is megkozelitheti a max memoria savszelleseget, 2 -nel meg el is fogyott.
Kis adat menyiseg eseten, DMA -nak elmagyarazni, hogy csinaljon valamit tobbe kerulhet.
Tegyuk fel hogy egy PC/server -ben raveszed a DMA enginet, hogy masoljon neked,
cserebe elveszi toled a memoria hozza ferrest (vagy csak a savszel nagyat).
Mit nyertel ? lehet hogy mar mW -al kevesebbet fogyaszt, nem latszik a topban, hogy a process enne CPU -t, de
ha tobb szalu az appod, az a szal var a masolasra aminek tenyleg kell, valoszinuleg semmit sem vesztettel.
Ha eszkot kersz meg bus mastringre, akkor neki a savszellesege joval alacsonyabb (PCIe vs memory bandwith).
- jobban kihasznalja a PCIe busz adta frame meret lehetosegid
- (*mov*,..) utasitas altal masolas device access latency -t kapna, ami joval hoszabb varakozas, mint a memoria eleres.
(spicialis cache flagek kellenek ahhoz, hogy okosan flusoljon, egyebken eleg buta, eszkoze valogatja)
A lassabb eszkozok DMA -val valo kezelese micro controlleren is megeri -> kevesebb core wakeup kell.
Tobnyire pont hogy a lassu eszkozoknel erdekes ;-)