• úvod
  • témata
  • události
  • tržiště
  • diskuze
  • nástěnka
  • přihlásit
    registrace
    ztracené heslo?
    LITTLELIAssembler
    LITTLELI
    LITTLELI --- ---
    to je tak, vylil sem si kybliczek a ted jsem na vsecko nasranej a nejradsi bych vsecko splachnul do hajzlu, uplne vsecko,proste zatahnout za spagatek a vsecky swine zkurveny a vsichni swinaci posrany by byli v pici.
    FERENCZY
    FERENCZY --- ---
    littleli> nejako nechapu, jak to myslis...
    LITTLELI
    LITTLELI --- ---
    ja bych k tomu neco rekl, ale mam tak blbou naladu, ze to radeji neudelam.
    FERENCZY
    FERENCZY --- ---
    uf, uplne me ta anketa vylekala :/
    LITTLELI
    LITTLELI --- ---
    nova anketa
    THEMENT
    THEMENT --- ---
    http://hysteria.sk/thement/lispi-0.tar.gz
    ... interpretr lispu, takova pre verze, ten alokator jsem nakonec vyresil za pouziti phk mallocu (z fbsd)
    THEMENT
    THEMENT --- ---
    _freza_: potrebuju nejakej alocator stringu do asm programku a sekvencni alokaci jako strcpy(p, string); p+=strlen(string); si holt dovolit nemuzu takze hledam neco pouzitelnyho
    _FREZA_
    _FREZA_ --- ---
    thement: projdi si zdrojaky ecosu... ale jako 'jak malloc/free'? chces to na hrubym zeleze? pokud ti staci uplne primitivni alokator, tak by se asi dal pouzit extent(9) z BSD (teda, neni to pametovej alokator, ale al. ciselnejch rozsahu - coz je stejny)
    LITTLELI
    LITTLELI --- ---
    mozna je neco na http://linuxassembly.org
    implementace se daji udelat ruzne, zalezi na pozadavcich na tu implementaci.
    THEMENT
    THEMENT --- ---
    inu a tip na nejakou asm implementaci malloc like fce?
    _FREZA_
    _FREZA_ --- ---
    jojo. no ono i ta asbtrakce bylo nesnadny cteni kdyz sem to videl poprvy. ale zas ma clovek par desitek mega zdrojaku na okoukavani ;-)
    LITTLELI
    LITTLELI --- ---
    _FREZA_: jo a zaplatpanbu za tu abstrakci, by clovek z toho pad na hubu :(
    _FREZA_
    _FREZA_ --- ---
    lili: jo jasny (teda az na i386 detaily, ja znam akorat ARM a to este trochu ;). no u DMA de o to ze programujes brouka nekde mimo na sbernici, takze mu potrebujes dat "sbernicovou/fyzickou adresu" dat co prenasis (a ne tu virtualni). ale od presnejch detailu jsem kernelovejma API do znacny miry odstinenej.
    LITTLELI
    LITTLELI --- ---
    logika je prosta

    linearni adresa -> prepocet (strankovani) -> fyzicka adresa

    pojem fyzicka a linearni adresa splyva prave kdyz PG bit CR0 je nastaven na 0,
    nebo pri praci na 286.

    jak se v takovem pripade vosefujou ty DMA to ted nevim :)
    LITTLELI
    LITTLELI --- ---
    _FREZA_: jo vim o tom, ale mel jsem na mysli neco jineho.
    _FREZA_
    _FREZA_ --- ---
    littleli: "s fyzickou se nepracuje nikdy" no primo mozna ne, ale jak jinak by clovek moh programovat DMA enginy ;-). zpetny mapovani na fyzicky adresy je zasadni ficura.
    LITTLELI
    LITTLELI --- ---
    uf uf ja bych rekl jinak, interrupty v poho,
    akorat pri virtualizaci musi interrupt gate ukazovat na segment existujici v ram
    jinak mas double fault a z toho se uz nevylizes.
    to je asi to ne?

    realna adresa je co? to je mysleno jako fyzicka nebo linearni? s fyzickou se
    v podstate nepracuje nikdy a virtualni pamet to je je takova berlicka ne?
    _FREZA_
    _FREZA_ --- ---
    no, i386 neumim takze nevim presne, ale rek bych ze pred nastavenim mmu interrupty nepotrebujes... ;) no kdyztak to muzu vecer zkusit najit
    _FREZA_
    _FREZA_ --- ---
    jachymko: mno nevim, nedela se to tak ze se vypnou interrupty, nastavi se mmu, zapnou se interrupty? (aspon tusim ze takhle sem to videl pro ARM)
    LITTLELI
    LITTLELI --- ---
    nj ale to se stane :)) zase je dobry, ze je jasny kde to bylo.
    Kliknutím sem můžete změnit nastavení reklam