Memoria kerdes

Andras Tantos andras_tantos at yahoo.com
Fri Jun 18 00:05:07 CEST 2004


Hali!

> > Ezt kellene megoldani, szerintem. Ha user-mode-bol teszed, akkor a lock
utan
> > mar meg van a memoria logiaki cime (ezt adja vissza a virtual-lock),
csak az
> > a kerdes, hogy hogy lesz ebbol fizikai cim. Ha kernel-modeban dolgozol,
>
> Ezt meg en is meg tudom csinalni, akar a winio is megmondja.

Ja, mert leszalad kernel szintre, es vissza adja neked az eredmenyt. Vegulis
ez is egy megoldas.

> De Tiszai Istvan kollega is megirta a listara a lenyeget, gondosan el
> is mentettem valahova.

Biztos, hogy a listara ment? En baromira nem talalom, hiaba keresem. El
tudnad (vagy Istvan, esetleg) ujra kuldeni?

> > Ez az eldugas nem a legjobb otlet, plane, ha termeket akarsz csinalni,
es
> > nem csak 'egyszer kiprobalni valamit'. Meg kell beszelni a Windows-al,
hogy
> > neked sok memoria kell, es kesz.
>
> Igaz. De ez mindenkeppen speci kutyu lesz, lehet hogy gepet is adunk
> vele, talan meg az sem lenne nagy baj, ha at kene forrasztani valamit
> az alaplapon. De jobb lenne elkerulni, en is erre torekszem, ha enelkul
> is meg lehet oldani a mai operacios rendszerek alatt.
>
> > Az mas volt, ha jol emlekszem, es meg az ISA/Win3.1-es idokben volt ra
> > szukseg.
>
> Lehet! Egy kollega meselte, es video digitalizalot emlegetett, es azt
> hogy a folytonos memoria miatt kellett. Volt egyaltalan ISA framegrabber?

Volt, persze. Nyilvan nem 1024x768, 32-bit, 50Hz, de volt. Nem is annyira a
folyamatos memoria volt a lenyeg (a DMA kontroller csak 128kB blokkot tudott
egyben kezelni, azt is csak 16-bites csatornakon), hanem az, hogy az also
16MB-ban kellett lennie. Ezt volt nagyon nehez garantalni, ha mar egyszer a
memoria-manager betoltodott, es elkezdett mindenkinek memoriat osztogatni.

A masik problema veluk abban az idoben az volt, hogy a DMA kontroller tul
keson jelezte, hogy vegzett a memoria feltoltesevel, es mire az IRQ atjott
(plane windows alatt virtualis IRQ managerren) es lekezelted, es
ujraprogramoztad a DMA kontrollert az uj bufferre, addigra regen keso volt,
mert egy csomo adatod elveszett. Ez aztan oda vezetett, hogy volt egy
(aranylag kis) DMA buffer, amibe cirkularisan raktad az adatokat, es a
Windows felallasa idejen foglaltad, fixen a memoria aljan, es innen az EOD
interrupt kezelo rakosgatta at SW-ben az applikacio bufferebe. Nem eppen
elegans megoldas, es persze nem sokkal gyorsabb, mint, ha nem is hasznalnal
DMA-t. A masik megoldas persze a kartya oldali buffereles (FIFO) lett volna,
dehat abban az idoben az olyan draga volt, hogy csak nagyon kevesen
engedhettek meg maguknak.

> > Hat pedig, ha ilyen dolgokba kezdesz, akkor azert a 64-bit mar elegge
> > realitas. Ugy ertem, aki ilyen kartyat akar hasznalni, mar jo esellyel
4GB
> > koruli memorival fog dolgozni, esetleg eleve 64-bites procin.
>
> Milyen procira gondolsz? Uj PPC? Koszi az infokat!

Nem. AMD64 (mi is lett a nevuk, talan Athlon64, vagy ilyesmi?), meg Intel
CT. Meg persze joval tobbert ott az Itanium is, bar az mar nem annyira PC
(*personal* computer) kategoria.

--
Udv,
Tantos Andras
<http://andrast.tantos.homedns.org>




More information about the Elektro mailing list