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

138

    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. Miksi persuilla ei ole firmoja?

      Kuten vasemmisstolaisilla, esim. Sannalla MA\PI. Eikö ole aika erikoista?
      Maailman menoa
      84
      7132
    2. Persut hommasivat Suomeen 35 000 pientä lasta v. 2015

      Onko Riikka Purra nyt tavoittelemassa tätä samaa historiallista persujen utopiaa? Purram kaksinaamaisessa pelissä vaadit
      Maailman menoa
      27
      7079
    3. Purran tuhoja tuskin saadaan koskaan korjatuksikaan

      Purra on aiheuttanut Suomen taloudelle karmaisevat tuhot. Sen lisäksi Purra on ajanut myös suuren osan Suomen kansasta k
      Maailman menoa
      117
      6215
    4. Persujen kaksoisstandardit: Räsäsen uhkailu paha, Virran uhkailu hyvä

      Tässä taas nähdään kuinka kaksinaamaista porukkaa persut ovat. Mitäs persut tähän?
      Maailman menoa
      45
      5414
    5. Miksette persut irtisanoudu Kirkin lausunnoista?

      Kirkhän muun muassa vaati raiskattuja naisia pidättäytymään abortista ja vaimoja alistumaan aviomiestensä tahtoon. Mik
      Maailman menoa
      84
      5318
    6. Demarikultin uhri kertoo

      Demarikultin uhri kertoo: “En saanut mennä edes suihkuun ilman lupaa” – Seksuaalisen hyväksikäytön uhri kertoo vuosistaa
      Maailman menoa
      63
      5225
    7. Miksi vasemmistolaiset eivät omista yhtään firmaa?

      Vasemmistolaiset eivät omista yhtään firmaa joka työllistäisi ihmisiä. Miksi? No siksi, että jos vasemmistolainen perus
      Maailman menoa
      41
      5120
    8. Sanna valittiin Euroopan huonoimmaksi pääministeriksi

      Sannan kaudella Suomi oli ainut maa missä bkt laski. Kannattaa huomata, että luvut valitsi Sannan huonoimmaksi. Ihmiset
      Maailman menoa
      27
      4605
    9. Purran vuoro kiihoittua Lepomäen sääristä

      "Ulkoministeri Elina sanoo, ettei muuta pukeutumistaan sen mukaan, kenet tapaa, ja että hän ei suostuisi peittämään kasv
      Maailman menoa
      19
      3555
    10. Vasemmistolaiset paskat eivät nousseet seisomaan kun Akaan kaupunginvaltuusto

      vietti hiljaisen hetken Charlie Kirkin muistoksi https://www.aamulehti.fi/uutiset/art-2000011523016.html
      Maailman menoa
      300
      3400
    Aihe