Hvornår har du sidst været til LAN?
1. jul. 2010 14:35Når det kommer til softwareudvikling, vil der altid opstå fejl, og der findes mange værktøjer, som kan hjælpe med at finde og eliminere disse. Et af dem er Coccinelle, der bl.a. er udviklet i Danmark.
Coccinelle er netop blevet inkluderet i Linux-kernens udviklingstræ, hvilket er en stort skulderklap til softwaren og ikke mindst til udviklerne bag. En af dem er Rene Rydhof Hansen, adjunkt ved Institut for Datalogi på Aalborg Universitet, og til Version2 oplyser han, at det sikkert vil få flere til at benytte værktøjet.
Det ser vi som en klar blåstempling fra udviklerne af Linux-kernen, og det betyder nok, at flere udviklere vil begynde at bruge Coccinelle fremover.Rene Rydhof Hansen til Version2
Inkluderingen i udviklingstræet betyder ikke, at Coccinelle bliver en del af selve kernen, men at det bliver muligt at køre Coccinelle på et udviklersnapshot af kernen, da den nødvendige funktionalitet til dette er tilføjet de såkaldte Make-filer.
Coccinelle har gennem tiden stået bag mere end 600 fejlrettelser til Linux-kernen.
1. jul. 2010 14:54
Nu har jeg et par gange hørt Julia Lawall tale om Coccinelle og som jeg forstår det er det ikke helt korrekt at kaldet det et værktøj til fejlsøgning.
Der er nærmere tale om en generalisering af 'patch' begrebebet fra at være noget der handler om at lavet søg/erstat i tekstfiler og til at være noget der opererer semantisk på abstrakt syntaks.
Når man opdager en fejlagtig måde at håndtere noget på, så kan man således lave en patch som beskriver hvordan koden ændres til noget der behandler det på, og så kan man rette fejlen alle de steder hvor den findes.
1. jul. 2010 16:57
#1 : Lyder lidt ala de patch systemer visse spil har/haft, hvor patchen kun bestod af ændringerne i de filer der skulle patches, og ikke bare overskrev hver fil med nyt indhold. Spændende. :)
This is my opinion. There are many like it, but this one is mine...
1. jul. 2010 17:02
#1 : Lyder lidt ala de patch systemer visse spil har/haft, hvor patchen kun bestod af ændringerne i de filer der skulle patches, og ikke bare overskrev hver fil med nyt indhold. Spændende. :)HerrMansen (#3)
Forstil dig størrelsen på patches til World of Warcraft hvis hele filer skulle overskrives.
4-5Gb patches for ikke at tænke på Content patches :p
1. jul. 2010 22:24
#1 : Lyder lidt ala de patch systemer visse spil har/haft, hvor patchen kun bestod af ændringerne i de filer der skulle patches, og ikke bare overskrev hver fil med nyt indhold. Spændende. :)HerrMansen (#3)
Ikke rigtigt. Det du beskriver er en simpel binary patch. Coccinelle er betydelig mere kompliceret.
2. jul. 2010 00:52
#4 : Ligesom i de fleste tidlige betaspil builds? Ja uha...
#5 : Det kan du bilde mig ind. :)
This is my opinion. There are many like it, but this one is mine...
2. jul. 2010 01:02
Hmm, jeg vidste godt nok at Rene er inkarneret Linux fan boy, fra det kursus han har undervist i det forgangne semester, men vidste faktisk ikke at han gik og rodede med noget så avanceret i den retning.
Sjovt han aldrig har nævnt det, så ofte som han ellers promoverer Linux, det er på grænsen til indoktrinering :P
2. jul. 2010 01:55
#2 & 7
Er toolet ikke et generalt C tool som kan anvendes lige så godt på *nix og Windows?
Og at det er "tilfældigt" at Linux kernel teamet har valgt at bruge det fremfor at MS har ringet til ham og betalt ham XX millioner fro toolet?
2. jul. 2010 08:07
#2 & 7
Er toolet ikke et generalt C tool som kan anvendes lige så godt på *nix og Windows?
Og at det er "tilfældigt" at Linux kernel teamet har valgt at bruge det fremfor at MS har ringet til ham og betalt ham XX millioner fro toolet?arne_v (#8)
Uden at vide det, så vil jeg tro, at MS har noget lignende in-house :)
2. jul. 2010 08:39
Coccinelle is a program matching and transformation engine which provides the language SmPL (Semantic Patch Language) for specifying desired matches and transformations in C code. Coccinelle was initially targeted towards performing collateral evolutions in Linux. Such evolutions comprise the changes that are needed in client code in response to evolutions in library APIs, and may include modifications such as renaming a function, adding a function argument whose value is somehow context-dependent, and reorganizing a data structure. Beyond collateral evolutions, Coccinelle is successfully used (by us and others) for finding and fixing bugs in systems code.
http://about.me/windcape
2. jul. 2010 08:41
Uden at vide det, så vil jeg tro, at MS har noget lignende in-house :)XorpiZ (#9)
Og IBM har sikkert noget lign. til OS/400.
Der er vist helt normalt at have værktøjer til patching og fejlretning af kernel code.
http://about.me/windcape
4. jul. 2010 03:40
Uden at vide det, så vil jeg tro, at MS har noget lignende in-house XorpiZ (#9)
Sikkert.
Linux kernel kunne sikkert også finde et andet.
Men ingen af delene udelukker jo at dette produkt er bedre.
Nu har jeg ikek den fjerneste anelse om hvad MS bruger til den slags.
Min pointe var kun at så vidt jeg kan se er det et tool til C kode. Om det er Linux kernel eller Windows kernel eller Oracle DB kerne eller mit hello world program bør egentligt ikke betyde noget.
Værdien af toolet er dog nok størst ved større kode mængder, så min hello world app er nok trods alt ikke så god.
Men ...
Det er gratis, og du binder dig ikke til noget.
Når du er oprettet som bruger, får du adgang til en lang række af sidens andre muligheder, såsom at udforme siden efter eget ønske og deltage i diskussionerne.