Video-ohjelmiston (omatekoinen) debuggaus, miten ?

Anonyymi

Joskus (useita vuosia sitten) yritin debugata itse tekemääni video-ohjelmistoa.

Yritykseksi jäi!

Miksikö?

Siksi, että koneen näytönohjaimen ajurissa on debuggausesto, ja vaikka se (ainakin virallisesti) on ilmeisesti tarkoitettu suojelemaan näytönohjainvalmistajan liikesalaisuuksia, niin huonosti toteutettuna se esti myös oman ohjelmani debuggauksen !

Sikäli olen yllättynyt, että oma ohjelmani oli sinänsä aivan normaali windows -ohjelma (eli toimii ns. UserLand -tilassa).

Näytönohjaimen ajurit taas käsittääkseni toimivat ns. "Kernel -tilassa" koska niissä on esim. keskeytyskäsittelijäaliohjelmia.

Järkevästi toteutettuna tuollaisen debuggauseston siis pitäisi estää ainoastaan "Kernel -tilassa" toimivien ohjelmaosien debuggaus, ja jos mahdollista, siitäkin eston piirissä pitäisi olla vain itse näytönohjaimen ajurikoodin debuggaus, eli muuta osaa kernel -koodista voi silti debugata, ja ns. UserLand -tilassa toimiva koodi pitäisi kaikki olla debugattavissa rajoituksetta.

Mutta minkäs teet, kun näytönohjaimen (ajurin) valmistaja toteuttaa debuggausestonsa niin, että se estää myös UserLand -tilassa toimivan koodin debuggauksen, jos koodi sisältää liikkuvan videokuvan tulostamista näytölle.

Eli:

Miten omatekoista video-ohjelmistoa voisi debugata ilman, että näytönohjaimen (ajurin) valmistajan debuggausesto estää debuggaamisen ?

Jos asia on niin ikävästi, että joillain näytönohjaimilla ja niiden joillain ajureilla vastaus on "ei mitenkään", niin saako jostain:

a) optimoimattomia ajureita samalle näytönohjaimelle (sillä jos oikein ymmärrän, niin juuri ne optimoinnit on niitä asioita, joita valmistajat pitävät liikesalaisuutena, ja siksi harrastavat moisia debuggausestoja).

TAI

b) sellaisen näytönohjaimen, jossa ei käytetä mitään niin edistyksellistä teknologiaa, että sitä pitäisi tuollaisella debuggausestolla suojella.

Vinkkejä siis joko näytönohjaimen ja/tai sen ajurin valintaan, jos haluaa moisista debuggausestoista eroon ?

Onko Windowsille saatavana yhtään ns. avoimen lähdekoodin näytönohjainajuria ?

Ehkäpä tuollaisesta saisi version ilman debuggausestoa ?

Taustatietoa:

Samalla tietokoneella (jossa dualbuuttausmahdollisuus, eli virran kytkemisen jälkeen saa valita, käynnistyykö windows vai linux), niin windowsissa CPU -kuormitus pysyy alhaalla ja kone viileänä myös pitkän (eli yli tunnin mittaisen) videotiedoston aikana, mutta linuxilla videota toistettaessa CPU -kuorma on yli 90% koko ajan videota toistettaessa, ja prosessori käy kuumana.

Ilmeisesti windows -näytönohjaimen ajureissa on juurikin joitakin optimointeja, joiden ansiosta videon katseluun riittää vähäisempikin CPU -kuormitus, kun taas avoimen lähdekoodin linux -ajureissa ei moisia optimointeja ole, kun näytönohjaimen valmistaja kieltäytyy antamasta avoimen lähdekoodin koodareille teknisiä tietoja siitä, miten näytönohjaimen laitteistopuolella ovat optimointimahdollisuudet saadaan parhaiten käyttöön (eli linuxissa niitä ei saada käyttöön ollenkaan).

Tuo debuggausesto siis vaikuttaa windowsissa, toki JOS laitevalmistaja jakaa linuxiin suljetun lähdekoodin optimointejasisältäviä ajureita, niin sitten niissä voi olla sama ongelma kuin windowsissakin, eli tahallaan tehty debuggausesto.

Esto siis estää (aiheettomasti) myös UserLand -tilassa ajettavan ohjelmiston debuggaamisen !

1

133

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Anonyymi

      Siis ei täällä ole ilmeisesti yhtään sen tason osaajaa, että tästä asiasta jotain tietäisi.

      t: ketjun aloittaja.

    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Ikävöin sinua kokoyön!

      En halua odottaa, että voisin näyttää sinulle kuinka paljon rakastan sinua. Toivon, että uskot, että olen varsin hullun
      Ikävä
      57
      3982
    2. KALAJOEN UIMAVALVONTA

      https://www.kalajokiseutu.fi/artikkeli/ei-tulisi-mieleenkaan-jattaa-pienta-yksinaan-hiekkasarkkien-valvomattomalla-uimar
      Kalajoki
      92
      2351
    3. Jos sinä olisit pyrkimässä elämääni takaisin

      Arvelisin sen johtuvan siitä, että olisit taas polttanut jonkun sillan takanasi. Ei taida löytyä enää kyliltä naista, jo
      Tunteet
      45
      2012
    4. Älä mahdollisesti ota itseesi

      En voinut tietää. Sitäpaitsi.. niin
      Ikävä
      22
      1783
    5. Kadonnut poika hukkunut lietteeseen mitä kalajoella nyt on?

      Jätelautta ajautunut merelle ja lapsi uponnut jätelautan alle?
      Kalajoki
      26
      1551
    6. Ota nainen yhteyttä ja tee Tikusta asiaa?

      Niin sitten minä teen Takusta asiaa.
      Ikävä
      28
      1516
    7. Joku hukkui Hyrynsalmella?

      Oliko mökkiläinen taas?
      Hyrynsalmi
      15
      1182
    8. Metsästysmökki

      Metsästyskortti saapui. Lisäksi metsästysmökki varata!
      Kuhmo
      31
      1128
    9. Mitä sinä mietit

      Mies?
      Ikävä
      109
      1084
    10. Emme voi elää velaksi, sanoi Riikka

      Valtionvelan odotetaan nousevan 86,3 prosenttiin bruttokansantuotteesta vielä kuluvan vuoden aikana. https://www.iltale
      Perussuomalaiset
      79
      1042
    Aihe