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

125

    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. Huomenta ihana

      Kauniskasvoinen ihanuus 😘 saan sut vielä
      Ikävä
      45
      7382
    2. Hei rakas...

      Miten on työpäivä sujunut? Rakastan sinua 💗
      Ikävä
      32
      4078
    3. Ei tämä etene ikinä

      Kun kumpikaan ei enää ota yhteyttä. Mä en ainakaan uskalla.
      Ikävä
      57
      3615
    4. Edelleen sitä on vaikea uskoa

      Että olisit oikeasti rakastunut muhun
      Ikävä
      50
      3130
    5. Vitsi mihin menit. Heti takasin.

      Mä näin sut tuu takasin! Oli kiire, niin en ehtiny sin perään!
      Ikävä
      17
      2806
    6. Voi ei! Jari Sillanpää heitti keikan Helsingissä - Hämmästyttävä hetki lavalla...

      Ex-tangokuningas on parhaillaan konserttikiertueella. Hän esiintyi Savoy teatterissa äitienpäivänä. Sillanpää jakoi kons
      Suomalaiset julkkikset
      51
      2324
    7. Miksi et irrota otettasi

      Suhteeni?
      Ikävä
      53
      2307
    8. Toiveikas vai toivoton

      torstai? Ajatuksia?
      Ikävä
      37
      2258
    9. Koko ajan olet

      Senkin suhteen kiusannut. Halut on ihan mielettömät olleet jo pitkään
      Ikävä
      43
      2258
    10. Mukavaa päivää

      Mun rakkauden kohteelle ❤️ toivottavasti olet onnellinen
      Ikävä
      16
      2236
    Aihe