24.03.2020 (00:23:30)
RayeR
:
Jak sem psal, zalezi jak s tim chces komunikovat, jesi ti staci pres IO nebo chces pametovy okno nebo DMA, podle toho roste slozitost. Pokud jen IO tak neni rozdil jesi IO instrukci ctes/zapisujes do nakyho portu onboard zarizeni, PCI nebo ISA. Pres ruzny bridge system sam vi, kam ma prislusny IO dotaz nasmerovat. Abys moh z userspace sahat na IO, musi se pro tuj proces nastavit IOPL, coz umi treba tato knihovna+driver. V pripade pametovyho okna uz je treba volat naky kernely funkce na mapovani pameti a to asi bez kernel ovladace nepujde. V linuxu je vsechno jednodusi, tam si jako root muzes zavolat iopl() nebo mmap() a ses vysmatej. Mrdkosofti mrdky holt musi vyvojarum nahazet klacky pod nohy, tak se bez kernel driveru neobejdes (u Win10 navic signed enforcement)