Kwaliteit open source-code steeds beter

binaire code

Gepubliceerd: Vrijdag 25 september 2009

Het aantal bugs dat in open source-projecten wordt gevonden gaat steeds verder omlaag. Toch valt er nog veel te verbeteren.

Toon volledig artikel

duco op Vrijdag 25 September 2009 10:26

image

Zo wijst het rapport van Coverity op de NULL Pointer deference, waarbij een programma toegang probeert te krijgen tot geheugen dat niet bestaat.

Dit is niet helemaal correct (en dan heb ik het niet alleen over de schrijfwijze "deference" :-).

Een NULL pointer dereference is iets anders dan een "invalid" of "dangling" pointer. In het eerste geval wordt (zoals de naam al zegt) NULL gedereferenced. Het proces krijgt een klap en dat was dat. Niet zozeer een security-issue. In het tweede geval kan iets geschreven worden op een onverwachte locatie. Als dat geheugen is wat niet bestaat is er nu juist niets aan de hand. Ook dan krijgt het proces een segmentation fault voor zijn kiezen.

Een security probleem heb je vooral met een dangling pointer naar een stukje geheugen wat juist WEL bestaat, zodat de boef daar iets stouts in kan schrijven.

bartek op Vrijdag 25 September 2009 11:01

image

In feite zou elke code zo'n analyse moeten ondergaan en niet enkel Open-Source. Het kan de gebruikers van de software alleen maar ten goede komen.

Al besef ik ook wel dat veel bedrijven niet happig zijn om hun closed-source-code door derden te laten inkijken, ze zouden nogal wat spyware en dergelijke tegenkomen :) Of ze zouden wel eens een slecht rapport kunnen krijgen wat ook niet goed is voor de verkoopscijfers.

MathFox op Vrijdag 25 September 2009 13:05

image

Je wilt niet weten hoeveel (terechte) meldingen een geautomatiseerde code scan geeft als je die de eerste keer op je code draait. (Probeer eens "gcc -Wall".) De dynamische analyse van Coverity gaat weer een stap verder dan dat, maar het zou me niet verbazen als het een fout per 1000 regels vindt in productiecode die goed getest is.
De belangrijkste reden dat dat soort tools weinig wordt toegepast is uit kostenoverwegingen. Niet zozeer de licentie voor de tool, maar de kosten van het verhelpen van alle fouten. (In vrijwel alle gevallen kan de klant opdraaien voor de schade veroorzaakt door bugs in de software die ze gebruikt, er is nauwelijks een financiële druk op een softwareleverancier om een goed product te leveren.)

Shirahama Kenichi op Vrijdag 25 September 2009 15:09

image

Nu ik mijn eerst Nvidia heb gebouwd snap ik het gezeik van opensource wereld wel beetje, maar kom op jou oppergof Mark Shuttelworth of hoe die kerel ook heet, heeft nog niet eens vdpau support toevoegd aan mplayer.

Resultaat ik ben al 2 dagen bezig met mijn Nvidia ion om te zien dat ik toch hd video kan afspelen, nog even en ik ben bezig een Windows 7 erop te zetten, het is toch schaamtevol dat Ubuntu niet in staat is hd video af te spelen.

Nee ze compileren mplayer zonder vdpau support, Linux is mijn favoriet maar heb altijd al mijn twijfels gehad of Ubuntu wel de vga goed benut, want hij werkt zeker, alleen waar is die vdpau support?

Of waarom laat amd64 bij mij maar 3 gb aan memory zien waar ik er 4 heb, vragen die de Ubuntu gemeenschap niet kan beantwoorden blijkbaar.

Ja ik geloof wel dat opensource onveiligere is, vooral onveilig voor jezelf niet zo zeer voor je systeem, nee pas op dat je zelf niet onveilig word door de frustratie die je hebt bij je nieuwe hardware.

Nickname op Vrijdag 25 September 2009 16:43

image

Omdat er niet meer dan 3 GB gebruikt kan worden. Dat is in windows ook zo, en vroeger gaf windows ook 3 GB aan. Maar domme gebruikers zoals jij gingen daarover klagen zoals jij nu ook doet en toen heeft windows besloten om het werkelijke aantal GB dat in de kast zit weer te geven. Maar ook windows kan maar 3 GB gebruiken tenzij je de 64 bit versie installeert. En dat is bij Linux net zo, daar zijn ook 64 bit versies.

eerde op Vrijdag 25 September 2009 21:58

image

http://en.wikipedia.org/wiki/Physical_Address_Extension
Linux
The Linux kernel includes full PAE support starting with version 2.6 enabling access of up to 64 GB of memory on 32-bit machines

Bolleke op Maandag 28 September 2009 10:26

image zomerhack badge 3

Maar ook windows kan maar 3 GB gebruiken tenzij je de 64 bit versie installeert.
Merk verder op dat-ie zelf zegt dat-ie een AMD64 heeft. Als ik hem was zou ik even checken of-ie wel een 64-bits Ubuntu heeft geinstalleerd, of niet toch per ongeluk een 32-bits (i386 ;)). Verder is dit natuurlijk werkelijk waar te off-topic voor woorden, het gaat over security, niet of een video driver wel of niet default geinstalleerd staat.

Ook off-topic @Shirahama Kenichi: doe alsjeblieft een poging minder spelfouten te maken, het zal de leesbaarheid van je bijdrages absoluut ten goede komen.

Anonymous Coward op Vrijdag 25 September 2009 17:10

image

Dit is *TOTAAL* off-topic, maar goed. VDPAU zit inderdaad nog niet in de meeste Ubuntu-pakketten omdat het nogal onstabiel was ten tijde van de 9.04-release. Bij 9.10 verwacht ik 't eigenlijk wel. Hoe dan ook, dat zul je nu dus helaas nog zelf moeten regelen omdat het zo nieuw is. Bijvoorbeeld als volgt (als root):

#apt-get install build-essential linux-headers subversion checkinstall

Nu de broncode van mplayer ophalen:

#svn svn://svn.mplayerhq.hu/mplayer/trunk mplayer

#cd mplayer
#./configure --help

Mogelijk moet je VDPAU handmatig aanzetten met een command-line optie bij ./configure. Zo niet, doe:

#./configure
#make
#checkinstall

Die laatste stap levert je een .deb-pakket op dat ook direct geinstalleerd zal zijn. Op deze manier respecteer je het Ubuntu-pakketbeheer terwijl je toch een maatwerkbinary installeert. Kom je er helemaal niet uit, dan heb ik dit weekend nog wel een .deb voor je van mijn eigen mediacenter (amd64). Die kun je met 1 klik installeren en klaar.

ardje op Vrijdag 25 September 2009 18:20

image

Resultaat ik ben al 2 dagen bezig met mijn Nvidia ion om te zien dat ik toch hd video kan afspelen, nog even en ik ben bezig een Windows 7 erop te zetten, het is toch schaamtevol dat Ubuntu niet in staat is hd video af te spelen.
Dat wordt grappig. Want juist alleen met linux kan je ongegeneerd "premium content" afspelen. Bij windows moet je maar hopen dat al je drivers gecertificeerd zijn door microsoft, want anders gaan ze geen HD voor je afspelen.

Anonymous Coward op Zondag 27 September 2009 20:41

image

Jammer dat het nu stil blijft nadat je eerst op Ubuntu het zitten hakken. Wil je je mplayer package met VDPAU-support nog hebben? Ik kan je er nu nog mee helpen, anders wordt het ergens eind van de week.. Zeg het maar: i386, amd64 of allebei?

thieu op Vrijdag 25 September 2009 12:28

image

...dat open source inherent onveiliger is dan closed source-software. De reden is dat hackers de broncode kunnen bekijken en onderzoeken op fouten. ...dat open source inherent veiliger is dan closed source-software. De reden is dat iedereen de broncode kan bekijken en onderzoeken op fouten.
"given enough eyeballs, all bugs are shallow"

ardje op Vrijdag 25 September 2009 13:03

image

Zo wijst het rapport van Coverity op de NULL Pointer deference, waarbij een programma toegang probeert te krijgen tot geheugen dat niet bestaat.
Dat scheen vroeger ook heel normaal te zijn. Als je refereerde naar NULL kwam je op 0 waar ook 0 in stond. Zo kon je dus heel sneaky het testen op NULL toch een beetje uitstellen.
Dit heeft niks met open of closed te maken, eerder met legacy en tegenwoordig gewoon slecht programmeren.
Gelukkig is de kwaliteit van de open source toch over het algemeen een stuk beter dan closed source. (Closed source betekent dat het gewoon veel langer duurt voordat je de bug gevonden hebt, en als je dat bij de leverancier dan duidelijk maakt, blijkt dat ze zelf niet weten hoe het werkt... zucht :-( ).

Om te kunnen reageren, dient u ingelogd te zijn.

Nieuwsbrief

Ontvang dagelijks een overzicht van het laatste ICT-Nieuws in uw mailbox

Peiling

Loading Poll

Video: World Tech Update: Darpa's robot oorl...

World Tech Update: Darpa's robot oorlogspaard (video)

Verleden nieuws