Slashdot Mirror


Webservice Debugs Linux Binaries While-U-Wait

null-und-eins writes "A new webservice offers automatic debugging of Linux binaries. It takes a (with "-g" compiled) binary and two invocations where one fails and the other doesn't. The service repeatedly runs the two programs and tries to find the smallest difference between the two that causes the failure. Nice google-like interface with statistics about its own performance."

219 comments

  1. Let me get this straight... by Theatetus · · Score: 4, Funny

    ...these guys allow me to upload any linux executable, which they will then execute in a gdb context?

    Alfred, prepare the rootkit!

    --
    All's true that is mistrusted
    1. Re:Let me get this straight... by Hentai · · Score: 4, Insightful

      Let no good deed go unpunished.

      Hopefully they've thought of this and won't let it screw them up too badly. A shame that human nature is such that the first thing people think about when they see a nifty new service is how to shit in it and ruin it for everyone else. (witness /.)

      --
      -Hentai [in vita non pacem est]
    2. Re:Let me get this straight... by Space+cowboy · · Score: 4, Informative

      It mentions that the whole thing runs in debian 'woody' sandboxes when the code is run. Presumably you can only 'rootkit' the sandbox ...

      Simon

      --
      Physicists get Hadrons!
    3. Re:Let me get this straight... by Anonymous Coward · · Score: 1, Funny
      This coming from someone with the username "Hentai".

      GOAT!

    4. Re:Let me get this straight... by TedCheshireAcad · · Score: 2, Insightful
      Oh man these guys are gonna get pummeled.

      Most web servers cant handle the http requests associated with the Slashdot effect, and these guys are accepting uploads and running executables .

      perl -e 'while(true){ fork; }'
    5. Re:Let me get this straight... by Creepy+Crawler · · Score: 1

      And thats the fun part!

      --
    6. Re:Let me get this straight... by Anonymous Coward · · Score: 1, Informative

      Yeah, because Linux sandboxes are SO hard to break out of. *groan*

    7. Re:Let me get this straight... by grolschie · · Score: 1

      I see that you've visited the wiki-pedia. ;-)

    8. Re:Let me get this straight... by ultranova · · Score: 1

      If you think about this, it should make an excellent opportunity to search for bugs / exploits in the kernel. No better way to test an armor than nuke it till it glows ;).

      --

      Forget magic. Any technology distinguishable from divine power is insufficiently advanced.

    9. Re:Let me get this straight... by Breakfast+Pants · · Score: 0, Flamebait

      "I have a job programming computers and I don't make enough money to feed myself; but hey, that's free market economy." Unless you are posting this from a computer at the library, shut the fuck up.

      --

      --

      WHO ATE MY BREAKFAST PANTS?
    10. Re:Let me get this straight... by Anonymous Coward · · Score: 0

      Wait for it....wait for it...there it is!

      You have been SIG TROLLED

    11. Re:Let me get this straight... by Jah-Wren+Ryel · · Score: 1

      A shame that human nature is such that the first thing people think about when they see a nifty new service is how to shit in it and ruin it for everyone else.

      Better it be the first thing so that it can be addressed than only discovered after some dedicated "evil-doer" realizes it in a private burst of creativity then abuses the hell out of it and all the work and money that had been invested must go to waste.

      --
      When information is power, privacy is freedom.
    12. Re:Let me get this straight... by Feztaa · · Score: 1

      I have a job programming computers and I don't make enough money to feed myself

      No wonder, you're not very good (j/k) :)

      perl -e 'while(true){ fork; }'

      perl -e 'fork while true'

      Ah, much better :)

    13. Re:Let me get this straight... by iamacat · · Score: 1

      Would you care to elaborate? Some bugs (like mounted device files and mistakenly inherited resources) could cause an chroot()ed environment to be vunerable, but I haven't heard of any *general* reasons why they are not safe in general.

      Of course you might need kernel patches to restrict network access for some user ids, but someone must have done it already.

    14. Re:Let me get this straight... by Safiire+Arrowny · · Score: 1

      You could do that with a Linux kernel modual by hooking netfilter. Easier.

    15. Re:Let me get this straight... by Hentai · · Score: 1

      Better it be the first thing so that it can be addressed than only discovered after some dedicated "evil-doer" realizes it in a private burst of creativity then abuses the hell out of it and all the work and money that had been invested must go to waste.

      Amen to that.

      --
      -Hentai [in vita non pacem est]
  2. One down, one to go by Space+cowboy · · Score: 4, Funny

    Now we've got it debugging the code, we only need to get it started writing the code, and we're sorted :-)

    Simon

    --
    Physicists get Hadrons!
    1. Re:One down, one to go by einstein · · Score: 1, Funny

      oh dear no... you'll put all those Indians out of work!

    2. Re:One down, one to go by Anonymous Coward · · Score: 0
      ... we only need to get it started writing the code, and we're sorted :-)

      Automated algorithm design

    3. Re:One down, one to go by Anonymous Coward · · Score: 0

      God, i dont care if my job does get exported if it opens the door for humor like this. Bravo.

    4. Re:One down, one to go by fitten · · Score: 3, Funny

      So... we finally know what the 2. ???? is...

  3. Why... by O2n · · Score: 4, Funny

    Why ask Igor when you can ask slashdot? :-)

    1. Re:Why... by Anonymous Coward · · Score: 0

      Because slashdot doesn't provide an easy service for me to upload a root kit, duh.

    2. Re:Why... by Anonymous Coward · · Score: 0

      Igor doesn't make you wait 20 seconds for a response...

  4. Is it just me ... by mauriatm · · Score: 0, Offtopic

    ... or does it seem that many of the recent Slashdot posts are not very newsworthy? Read "Stuff that matters" lest you forget.

    1. Re:Is it just me ... by Anonymous Coward · · Score: 0

      Get a life, will you? I mean hell, you can't be bored because you couldn't even whip off a witty zinger.

      There's plenty of places to bitch about slashdot, on slashdot. Offtopic in a discussion isn't one of em.

    2. Re:Is it just me ... by mauriatm · · Score: 1

      Get a life? Not sure I see the relevance. I'd hardly call that "bitching". Wit wasn't the intention nor was I bored, but I guess I can't please every anonymous coward. ... Get a nick, will you?

  5. Why is there a need for this? by Amsterdam+Vallon · · Score: 2, Funny

    One thing I've learned from working on and encouraging students to use GPL programs is that they are largely much higher in quality than other standard programming code deliverables.

    Therefore, I challenge the author of this article to state why Linux code would need to be debugged.

    I mean, honestly -- have YOU ever seen a function or class or subroutine in Linux that WASN'T damn near perfectly coded?

    --

    Reply or e-mail; don't vaguely moderate. Ex-O'Reilly/MIT employee, now a full-time Google employee.
    1. Re:Why is there a need for this? by fitten · · Score: 1

      I see some folks left work early today to head to the bars...

      either that or the sarcasm is a little too subtle in this one...

    2. Re:Why is there a need for this? by Anonymous Coward · · Score: 0

      You've clearly never been on the fringe of open source. Remember, anyone can release anything. There's a lot of really scary open source code out there. I agree that popular projects are very nicely programmed, but it's wrong to assume that all open source is like that. Have you seen the printer driver I wrote? Alpha release is too generous.

    3. Re:Why is there a need for this? by Anonymous Coward · · Score: 0

      One of many research projects for automated bug-finding. (Researchers often like to use Linux to feed to their toys since it's a large and reasonably realistic code base.) This particular paper reports over 500 bugs in Linux found by analysis for some simple conditions for bugs like:

      - failure to check for NULL before using the allocated block
      - memory leaks
      - use of pointer after memory was freed
      - allocating (and using) a smaller block than the pointer points to, which is to say a memory overwrite
      - deadlocks from calling blocking functions while interrupts are masked
      - unloading dynamically loaded kernel modules while they are in use
      - failure to release acquired locks
      - releasing a lock multiple times
      - paths that fail to re-enable interrupts

      In short, a whole laundry list of the usual mistakes people make repeatedly.

      Open source programmers are just as human as anyone else. And just because people could look at the source doesn't mean they actually do.

    4. Re:Why is there a need for this? by SSpade · · Score: 2, Interesting

      I mean, honestly -- have YOU ever seen a function or class or subroutine in Linux that WASN'T damn near perfectly coded?

      Yes, most of it. The majority of recent open-source software is badly-written, non-portable dreck that'll build, sometimes, on a short list of Linux platforms.

      All the worlds a RedHat box is as bad an assumption as all the world's a Sun or all the world's a VAX.

      The redeeming factor is that a major reason for this is that there's so much open source code. So while the fraction that is well written, stable and portable isn't that high the absolute amount is pretty large and climbing.

    5. Re:Why is there a need for this? by Anonymous Coward · · Score: 0

      You obiviously haven't seen any of the gnome code. If you want to see some _very_ crappy code, look at gnome sources ;)

    6. Re:Why is there a need for this? by Anonymous Coward · · Score: 0

      Now wait: are you trying to tell me that Gnome has bugs in it? I thought Gnome was supposed to work, and now you are saying that I should not trust it to be perfect?!?

      Sheesh! Now you'll start telling me that I shouldn't trust my stock advisor and mutual fund companies.

    7. Re:Why is there a need for this? by Anonymous Coward · · Score: 0

      "Welcome" back, ekrout.

  6. uh by Anonymous Coward · · Score: 0

    what are you, fucking retarded?

    [img]?

    what the fucking hell is that?

    1. Re:uh by BrynM · · Score: 1
      [img]? what the fucking hell is that?
      BBCode. I guess the AC didn't know that /. is running Slashcode and not phpBB. /. won't show any images for good reason.
      --
      US Democracy:The best person for the job (among These pre-selected choices...)
    2. Re:uh by Anonymous Coward · · Score: 0

      exactly. goatse.cx anyone?

  7. Why "Igor"? by McLoud · · Score: 0
    From the FAQ:

    Igor is the lab assistant in several Frankenstein movies. He does the dumb and ugly work, while being absolutely loyal to his master. For us, Igor was just the perfect name for an automated debugging gofer. "Igor! Go for bugs!" Actually, Igor (pronounced EE'gore) is a common russian first name, originating from ancient Scandinavian "Ivor", meaning "bow warrior". You might also think of Igor as a hero who hits even the most difficult target.

    --
    sign(c14n(envelop(this)), x509)
    1. Re:Why "Igor"? by sfjoe · · Score: 1

      Actually, Igor (pronounced EE'gore)...

      Everybody knows it's pronounced 'Eye-gore'. Just ask Frau Bluecher.

      --
      It's simple: I demand prosecution for torture.
    2. Re:Why "Igor"? by red+floyd · · Score: 1

      NEIIGGHHH!!!

      --
      The only reason we have the rights we have is that people just like us died to gain those rights. -- Cheerio Boy
    3. Re:Why "Igor"? by Anonymous Coward · · Score: 0

      Yep, thought the same. :-)

      Come, Igor, take this program and see if there is something ab normal...

    4. Re:Why "Igor"? by PReDiToR · · Score: 1

      You could probably ask Hyacinth Bucket too, but only if you knew who she was.

      --

      Do not meddle in the affairs of geeks for they are subtle and quick to anger
    5. Re:Why "Igor"? by Anonymous Coward · · Score: 0

      Oh no! The bucket woman!

  8. If I only had it two weeks ago.. by Kadagan+AU · · Score: 3, Interesting

    ...When I was trying to figure out what the hell was making my program crash! I figured it out, and got it fixed, but it took me 6 hours to pin point it! Something like this can (hopefully) be very useful next time I have a program that unexpectedly seg faults! =)

    --
    This space for rent, inquire within.
    1. Re:If I only had it two weeks ago.. by Anonymous Coward · · Score: 0

      Segfault? If you write crappy code...

    2. Re:If I only had it two weeks ago.. by Anonymous Coward · · Score: 0

      ha .. six hours and you COMPLAIN? Most real programmers have war stories about trying to
      trackdown things for days or months without luck.

      Six hours just means you don't know what you are doing.

    3. Re:If I only had it two weeks ago.. by Kadagan+AU · · Score: 1

      I've had bugs like that too, but since I became a sys admin, I don't write as much code :-P It was about a 150 line program, but everything looked fine to me at the time.

      --
      This space for rent, inquire within.
    4. Re:If I only had it two weeks ago.. by Trepalium · · Score: 1

      Yes, and many of them end with them finally asking someone else, and the other person pointing it out within 10 seconds.

      --
      I used up all my sick days, so I'm calling in dead.
    5. Re:If I only had it two weeks ago.. by Anonymous Coward · · Score: 0

      any idea if someone will debug the rare linux version of winamp? which came as binary only. ;)

    6. Re:If I only had it two weeks ago.. by Anonymous Coward · · Score: 0

      That is sooo true.

    7. Re:If I only had it two weeks ago.. by iabervon · · Score: 2, Informative

      Between valgrind and ddd, I haven't had any bugs which I couldn't identify in a half hour, and only ones where there is something that the tools are bad at take more than a few minutes. Of course, that doesn't include programs that run fine but produce results which are simply not what I wanted and actually coming up with a way to fix the bug.

      Valgrind, in particular, is really promising; the core architecture is now being used to identify potential race conditions (cases where different threads access the same memory without having the same lock), as well as identifying memory errors (including leaks).

    8. Re:If I only had it two weeks ago.. by Jah-Wren+Ryel · · Score: 1

      Yes, and many of them end with them finally asking someone else, and the other person pointing it out within 10 seconds.

      The best ones end with the author discovering the error in the middle of explaining the code and symptoms to the other person.

      "So then it checks if the return value is... oh damn I left out the second equals sign!!"

      --
      When information is power, privacy is freedom.
    9. Re:If I only had it two weeks ago.. by quigonn · · Score: 1

      This is because when you explain code to another person, you are forced to think about it. That's why it's usually very useful to do code reviews by explaining the code you wrote to another person.

      --
      A monkey is doing the real work for me.
    10. Re:If I only had it two weeks ago.. by Anonymous Coward · · Score: 0

      Duh! Thanks for clearing that one up.

    11. Re:If I only had it two weeks ago.. by cant_get_a_good_nick · · Score: 1

      If you check the FAQ page out, you'll see that one of "the people behind AskIgor" is Andreas Zeller, the guy who co-created DDD.

      This is a tool, nothing more. Computers are deterministic state machines, but the state machine is essentially infinite. Anything that cuts down the number of states you need to look at is good.

  9. ATTENTION ALL NEGROES by Anonymous Coward · · Score: 0

    Please leave the country immediately, you are no longer welcome here. Please take the beaners and chinks with you.

    Thank you.

    [ and now, the ebonics version ]

    Yall bes be steppin les you wan ussa poppa cap in yo black ass. Get up on out ahere and bring dem messicans and china mans wichall.

    Word.

  10. SFW by Anonymous Coward · · Score: 0, Informative

    It takes a (with "-g" compiled) binary and two invocations where one fails and the other doesn't. The service repeatedly runs the two programs and tries to find the smallest difference between the two that causes the failure.

    Wow! Diff.

    Yeah yeah, this works on binaries. If you don't have the source, who cares what the problem is, anyway. It's not like you're going to fix it.

  11. poor admin... by Dreadlord · · Score: 3, Interesting

    I site's admin configured the site to forward visitors to the google cache of the site, but if you actually try to debug something, you get back to the real site, poor admin, he thought he could get away from /.ing!

    --
    The IT section color scheme sucks.
    1. Re:poor admin... by happyfrogcow · · Score: 1

      I site's admin configured the site to forward visitors to the google cache of the site, but if you actually try to debug something, you get back to the real site, poor admin, he thought he could get away from /.ing!

      but how many people are going to submit code right away? they might look at it, bookmark it, and some time later *maybe* try it out.

      i thought it was a good idea to do that.

    2. Re:poor admin... by Dreadlord · · Score: 1
      News for Nerds. Stuff that matters.

      I'm pretty sure lots are going to submit binaries to test it, it's /. after all ;)

      --
      The IT section color scheme sucks.
    3. Re:poor admin... by Anonymous Coward · · Score: 0

      Most of the bandwidth from a slashdotting is people clicking the links out of curiosity, to find out what it's all about. I sincerely doubt that any significant fraction of /. readers will upload binaries.

    4. Re:poor admin... by happyfrogcow · · Score: 1

      some of us work and wouldn't submit company code to an arbitrary webservice.

      oh wait, it is slashdot. who here works? O_o

    5. Re:poor admin... by Andreas+Zeller · · Score: 5, Informative

      Most people coming from /. just have a look at the main site. By redirecting, we reduce traffic by about 50% and Apache load by 75%. If you want to go beyond (and maybe submit some buggy program), you're welcome!

      --

      www.askigor.org - automated debugging service

    6. Re:poor admin... by TheViciousOverWind · · Score: 1

      I'd expect the percentage reduced to be much lower than that, since images isn't cached by google (Which I'd expect to account for most of the traffic).

      --
      My <1000 UID is with a hot chick
    7. Re:poor admin... by josephpate · · Score: 1

      Guess this explains how the Half-Life 2 source code got out.

    8. Re:poor admin... by goranb · · Score: 1

      Actually I think this was a very reasonable thing to do...
      How many slashdotters do you think actually went and subbmitted a program?

  12. So... by Jooly+Rodney · · Score: 2, Insightful

    If you have a working version, why do you need the debugger?

    1. Re:So... by damiam · · Score: 1

      If it works with one set of arguments and not with another.

      --
      It's hard to be religious when certain people are never incinerated by bolts of lightning.
    2. Re:So... by Stalemate · · Score: 1

      The summary is confusing, but from looking at askigor.com I think what it means is that you give it two sets of input, one that works and one that doesn't, and it executes the program both ways and tries to find the differences so you can look to those places as potential bugs.

    3. Re:So... by Anonymous Coward · · Score: 0

      If you have a working car, why do you need a mechanic?

    4. Re:So... by bogado · · Score: 2, Informative

      Read again, it is two diferent runs, one that will work and the other that will segfault. For instance, if program is called "foo" and you call it with the line "foo bar" and all goes fine, but then you call it "foo baar" and it goes boink. The site can magicly tell what's wrong.

      --
      []'s Victor Bogado da Silva Lins

      ^[:wq

    5. Re:So... by RighteousFunby · · Score: 1

      To find why the program went wrong, and to find out WTF went wrong so it can be avoided later.

    6. Re:So... by bmorris · · Score: 5, Funny

      FYI, your problem is the extra "a" in "baar".

    7. Re:So... by Anonymous Coward · · Score: 0
      Read again, it is two diferent runs, one that will work and the other that will segfault.

      gdb -c core my_shitty_program

      /duh

    8. Re:So... by S.Lemmon · · Score: 1

      Ok this is the part I don't understand. If you already need to have a version that works, then why do you need to debug it?

    9. Re:So... by Qeantk · · Score: 1

      Same version different input. You need to be able to track down why one set of input crashes the program. It is easy to get a program to run for one specific input.

    10. Re:So... by ryanvm · · Score: 1

      Hehe - that was pretty funny.

    11. Re:So... by Anonymous Coward · · Score: 0

      Man I am glad you are not my mechanic.

      AC: My car works fine when I'm in park, but when I shift into gear, the engine catches fire.
      S.Lemmon: Well, if it already works in park, then why do you need a mechanic?

    12. Re:So... by S.Lemmon · · Score: 1

      Ah, but I thought it was "here's a car that broken, and here's a car that's not - find the difference!"

  13. neat! by Anonymous Coward · · Score: 0

    I am the original author of that little number, and it makes me really happy to see it's still around.

    Thanks a bunch, AC.

  14. hmmmmmmm by D-Cypell · · Score: 1

    Linux developers and soap....

    back to the drawing board guys!

    1. Re:hmmmmmmm by Anonymous Coward · · Score: 0

      ROFL!

  15. wellsir by SweetAndSourJesus · · Score: 2, Insightful

    Your program may fail if invoked one way and work if you invoke it some other way.

    Hence this.

    --

    --
    the strongest word is still the word "free"
  16. Well, I'm OFFENDED! by Anonymous Coward · · Score: 0
    I copied and pasted that into my address bar, and it's not even a real goatse link!

    You bastard!

  17. YOU LAZY TROLLS HAVE LET ME DOWN! by Anonymous Coward · · Score: 0

    I guess I should just give up on my dream of ever finding some prurient Jessica Lynch slash fiction here on slashdot, huh?

  18. Re:Anyone else suddenly get ting this message: by Anonymous Coward · · Score: 0

    /. is messed up, this happened to me today too. just for BSD and YRO though, not the apple headlines. looks like something is messed up. everything else works though.

  19. This is cool but by Safiire+Arrowny · · Score: 5, Insightful

    I think this is a neat idea, but I wonder why it isn't a standalone program you can run yourself as well as/instead of a web interface.

    This is because I wonder why he wants to run the risk of running foreign binaries (sandbox or not) when he could have just not done that. There doesn't seem to be any advertising on the page, so that isn't it.

    Oh well, maybe he just thinks it's cooler this way, actually it kinda is, so long as it's safe for him I guess.

    1. Re:This is cool but by damiam · · Score: 1

      They're developing a standalone program (and a set of Eclipse plugins), but they're not ready for release yet.

      --
      It's hard to be religious when certain people are never incinerated by bolts of lightning.
    2. Re:This is cool but by GigsVT · · Score: 3, Funny

      Easy answer: So he can steal your programs!

      (OK, maybe not steal, but you know what I mean)

      --
      I've had enough abrasive sigs. Kittens are cute and fuzzy.
    3. Re:This is cool but by Vaevictis666 · · Score: 3, Interesting

      They actually might be ready - somewhere on the site it says that they'll release a standalone version (for local runs) once Igor debugs 1000 programs. This way the get a decent-sized test so they can squish more bugs. And yes, they use Igor to delta debug itself :)

    4. Re:This is cool but by Andreas+Zeller · · Score: 5, Informative
      We're running AskIgor as a Web service (instead of a standalone program) for two reasons:
      • We get a set of programs for regression testing.
      • We get some ratings about the quality of our work.
      Although we did our best to give AskIgor a decent interface, it's still a research prototype, and there's many possible ways to go. Your submissions help us making these decisions, and guide our future development.
      --

      www.askigor.org - automated debugging service

    5. Re:This is cool but by Anonymous Coward · · Score: 0

      I think it's pretty likely he just doesn't want to share his code. It's the difference between a guy who tells you what time it is, and a guy who builds a clock.

    6. Re:This is cool but by Steveftoth · · Score: 1

      Since they use it to debug itself it should have no bugs... right? Right?!

    7. Re:This is cool but by ThisIsFred · · Score: 3, Funny

      If you find this service useful...

      I'm going to set-up a new MP3-checking site. It inspects the MP3s you upload and tells you whether or not they are protected by copyright. If the MP3s contain copyrighted material, the server informs the user, then saves a copy of the file for, uh, ahem, closer long-term inspection by the site administrator. Contacting the RIAA won't be necessary since it's already been established that the content is copyrighted, and the user warned. It's like RIAA copyright infringer amnesty, but without the legal gotchas!

      Why take chances? Do a batch upload of all your MP3s and save yourself from a lot of legal hassles!

      p.s. Please upload only MP3s encoded at 160Kbps/high quality or better. Quality is very important to the copyright determination process.

      --
      Fred

      "A fool and his freedom are soon parted"
      -RMS
    8. Re:This is cool but by a+whoabot · · Score: 1

      I just finished ripping a 1h20m long session by Deep Dish at 192kbps. Before that i did a 320kbps of the 50 minute long Hands of Caravaggio by the Music in Motion Electronic Orchestra. And I'm not done for today. When you download from me, you're downloading the best.

    9. Re:This is cool but by kubrick · · Score: 1

      When you're done, uh, inspecting those MP3s, you'll feel much better if you send them back.

      --
      deus does not exist but if he does
    10. Re:This is cool but by nudicle · · Score: 1
      Damn, Zeller, you are getting some MAD karma action out of this clever plot.

      I, for one, salute you.

    11. Re:This is cool but by Krellan · · Score: 2, Informative

      Funny that you should mention MP3's. I looked at AskIgor's site, and a key patent for their technology is owned by... Fraunhofer!

      http://www.st.cs.uni-sb.de/askigor/faq.php#paten t

      I'd look at their technology and admire it, but keep a good distance away, unless you want to get shaken down for huge sums of money at a later date!

    12. Re:This is cool but by Reziac · · Score: 1

      Aside from being just plain useful, I can see this being educational for inexperienced coders, as a way to get examples of how to fix their work. Nice.

      --
      ~REZ~ #43301. Who'd fake being me anyway?
    13. Re:This is cool but by Vaevictis666 · · Score: 1

      no, it just means that they think it's good enough that it can work for them :)

  20. For the love of God, PLEEEEEASE!!!! by Anonymous Coward · · Score: 0

    I'd even settle for a copy/paste job on "Old Ike" by now!

  21. now now now by Anonymous Coward · · Score: 0

    with so many different Linux distros, and versions how is this thing going to be really effective???

    like if i am running Slackware-9, or Redhat, or Mandrake, and this debugger is using Debian Woody wont it only debug it from a Debian Woody point of view??? and not consider the other distros that are out there

  22. Ok igor... by retro128 · · Score: 2, Funny

    The program I'm trying to run that is causing my computer to fail is "rm -rf". What's wrong?

    --
    -R
    1. Re:Ok igor... by Andreas+Zeller · · Score: 5, Informative

      No problem. Igor runs your program in a sandbox whose contents get restored with each new submission.

      --

      www.askigor.org - automated debugging service

    2. Re:Ok igor... by Hoi+Polloi · · Score: 1

      Try running it as root

      --
      It is by the juice of the coffee bean that thoughts acquire speed, the teeth acquire stains. The stains become a warning
    3. Re:Ok igor... by retro128 · · Score: 2, Interesting

      Well that fine for the file system, but does it have protected memory space for each session? If so, wouldn't that get kind of demanding on the system? If not, how do you stop people from messing with the core OS?

      --
      -R
    4. Re:Ok igor... by TwistedSquare · · Score: 1

      Let me guess - it ran fine the first time but failed the second time saying "rm: command not found"? ;-)

    5. Re:Ok igor... by treat · · Score: 1

      Any Unix already provides the protected memory space protecting from messing with the core OS. Assuming that it's run as a regular user that doesn't have access to use the network (I think netfilter can do this) and you have reasonable filesystems everywhere, it's pretty safe. To prevent DOS attacks he'll also need a per-user process and memory limit. Not sure if any unix can do a per user memory limit, but at least a user can't use more than (max number of processes * max size per process) of memory.

      Something like user mode linux would be safest. But people who really care about security run each daemon in a separate uml environment.

    6. Re:Ok igor... by retro128 · · Score: 1

      Forgive me, but I know very little about UNIX programming. Does this mean that if you were to write a program that tweaks memory addresses that don't belong to it, it will be stopped?

      --
      -R
    7. Re:Ok igor... by LordNimon · · Score: 1

      Yes. This is a feature of the CPU, which the operating system takes advantage of.

      --
      And the men who hold high places must be the ones who start
      To mold a new reality... closer to the heart
    8. Re:Ok igor... by ShipIt · · Score: 1

      Yep, you get a segmentation fault and a nice core file with lots of good information like a stack trace, registers, globals, etc.

      A quick example:

      main()
      {
      unsigned char *com1_control_register = (unsigned char *)0x3fc;
      *com1_control_register=0;
      }

    9. Re:Ok igor... by Darren.Moffat · · Score: 1

      Solaris has per user, group and project limits on many resources including virtual memory.

    10. Re:Ok igor... by krbvroc1 · · Score: 1

      Perhaps the 'sandbox' is just a computer that boots a read-only filesystem with writeable RAMDISK via PXE. After each submission it reboots. Any damage is wisked away.

  23. Re:damnit just missed first post! by Anonymous Coward · · Score: 0

    wtf?? and it's still at +1, mod down, who the hell cares that you'll try it anyway??

  24. Re:A memo from LA county by Anonymous Coward · · Score: 0

    They prefer Dom/Sub in LA.

  25. Re:A memo from LA county by Anonymous Coward · · Score: 0

    Even worse, the color coding on the IDE Master/Slave cable is backwards - The MASTER is Black, while the SLAVE is grey/white. why not just call them "Honky" and "Nigger", respectively?

  26. Re:Anyone else suddenly get ting this message: by yotaku · · Score: 1

    I have this problem too. But I suspect it is because my proxy bangs on the server much more often than every 30mins. But thats what happens when you work at a very large company.

  27. You're welcome! by Anonymous Coward · · Score: 0

    One day Jessica Lynch was maiming her clit with a horseshoe when suddenly Saddam Hussein ran up to her and shoved his pointy ear up her butt. "What is this for!" the fag soldier said. "FAGS FOR YOU AALL!L!!!" the ancient despot howled as suddenly he farted and Jessica Lynch twirled around in a daze and her nipples twisted and his kidney stones turned into wooden beads. He pulled out his pistol and shot lasers at his chastity belt and suddenly he hurdled his dick into Jessica Lynch"s bellybutton and it tore her flesh while Saddam fucked her stomach. Jessica hollered out loud and Saddam Hussein threw his shoes to the floor and wrinkled his penis until Jessica bellowed out to make it stop. A maelstom of shit whizzed around the HUMVEE and suddenly a giant fag appeared out side and the HUMMVEE went up her butt. "Oh what the hell have you gotten us into NOW!" Jessica Lynch said as she oozed a condom back out of her ass and put her panties back on. "OOH!H!!!!!!" Saddam Hussein started fucking her again and shoved his phazer up her butt. He dissolved her glands and exploded her turds and finally a queer Saudi hurdled through the door and smashed Jessica with his butt hairs. A maniac sucked her tits and suddenly Saddam Hussein fagged Jessica so hard that her intestines burst open and she died.

  28. Quick, someone upload Sendmail by SpaceCadetTrav · · Score: 4, Funny

    Find out what's wrong with that crap.

    1. Re:Quick, someone upload Sendmail by Anonymous Coward · · Score: 0

      The problem is, you have to find an input where sendmail works properly. That would include the sendmail.cf file.

  29. Open-Source Community: Beta=Flaky, Mature=Stable by phorm · · Score: 5, Insightful

    You must be joking. While some of the more "mature" projects are definately solidly coded, some of the others are nightmares. Try mixing several different coding styles, nights coding on only caffeine, starting, stopping, and losing your place...leaving debug to-fix-later code in by accident...

    Open source suffers the same problems as closed. In some projects moreso, as the variance of different coding styles/standards-adherance can lead to very interesting things happening. Even some mature projects have this problem, I've heard of some common ones where a rewrite was considered, because as the code evolved and was added to, the author(s) learned much better coding as it progressed but left the core a bit flaky.

  30. Why? by El · · Score: 1

    This site wouldn't happen to also, uh... keep a copy of the working code?

    --

    "Freedom means freedom for everybody" -- Dick Cheney

  31. Cyber Jake the Retriever? by cant_get_a_good_nick · · Score: 1

    Is this trying to replace the cardboard cutout dog as everyone's favorite debugging tool?

  32. I guess a "google-like interface" by Anonymous Coward · · Score: 0

    means one where the drop shadows and antialiasing are so fuzzy you can tell it was made by The Gimp.

  33. It's a bit more complex than just "diff" by mbessey · · Score: 3, Informative

    Please read the article.

    The tool executes your program multiple times, and examines the internal state of the program (variable values and memory contents) at various stages in the execution.

    It then automatically isolates the root cause of the failure. This is pretty cool stuff, and ought to save a lot of time tracking down complex bugs.

    -Mark

    1. Re:It's a bit more complex than just "diff" by Anonymous Coward · · Score: 0

      I dunno. If you have a reproducible error in a command line function, is it really that hard to just run ndb/gdb/whateverdb by hand and find the error?

    2. Re:It's a bit more complex than just "diff" by mbessey · · Score: 2, Informative

      That depends on the bug, and on the application. If you have any kind of complexity at all, it's hard to know where to start looking for the problem.

      This program basically spins away, then gives you a list of places in the source to inspect to find the error. You might still have to break out gdb, but you're saved the first stage of debugging - figuring out where the problem is.

      That's the theory, anyway.

      -Mark

    3. Re:It's a bit more complex than just "diff" by Anonymous Coward · · Score: 0

      If you have any kind of complexity at all, it's hard to know where to start looking for the problem.

      You start at symptom of the bug. If it's a crash, you start at the line that caused the crash. If it's incorrect output, you start at the variable which produced the output.

      This program basically spins away, then gives you a list of places in the source to inspect to find the error. You might still have to break out gdb, but you're saved the first stage of debugging - figuring out where the problem is.

      If we're talking about a reproducible bug (and we are, cause that's all this software works on), then you already know where the problem is.

    4. Re:It's a bit more complex than just "diff" by Anonymous Coward · · Score: 0
      Think of a program that does a lot of work on the same data until the data is somehow "done" and it's then output.

      Say, a compiler that takes in source code and then does parsing, semantic analysis, type checking, 50 different optimization passes, then code generation. The output is a bit wrong. At which stage did the program go off?

      Sometimes a bug of this kind is easy to find, but often you have no idea where to start. The basic property that makes Igor useful is if the input goes through a complex set of transformations before you get the output. It'll be interesting to see whether it actually is of any help...

  34. Why "Igor"? Why? Why? by frovingslosh · · Score: 1
    Igor is the lab assistant in several Frankenstein movies.

    I would like to know what those "several movies" are. Igor is certainly not in the book. In the 1930's clasic movie the lab assistant is "Fritz", not Igor. The only "Frankenstein movie" that I know that used Igor was the spoof by Mel Brooks. Perhaps this website is trying to associate it's debugging with a spoof!

    --
    I'm an American. I love this country and the freedoms that we used to have.
    1. Re:Why "Igor"? Why? Why? by wed128 · · Score: 1

      yea, but in almost all cartoons/take offs/referances, igor is the assistant, not fritz

    2. Re:Why "Igor"? Why? Why? by tarquin_fim_bim · · Score: 2, Informative

      Actually the characters name was Ygor, a role made famous by Bela Lugosi in Son of Frankenstein and The Ghost of Frankenstein, late 30's early 40's. Hope this helps.

    3. Re:Why "Igor"? Why? Why? by C10H14N2 · · Score: 1

      There were a few other instances of Igor, although some slightly modified from the original adaptation. Really, how could you forget such monumental cultural contributions as She-Demons, Monsters Crash the Pajaman Party and La Orgia des los Muertos?

      House of Wax, 1953
      Frankenchicken, 1995
      Frankenstein all'italiana, 1975
      Flesh for Frankenseitn, 1985
      Mistress Frankenstein, 2000
      Monsters Crash the Pajama Party, 1965
      Frankensteins Tante, 1990
      Toonsylvania, 1998
      Son of Dracula, 1974
      Les Charlots contre Dracula, 1980
      Count Duckula, 1988
      La Orgia des los Muertos, 1973
      The Munster's Revenge, 1981
      Inspector Gadget, 1999
      Van Helsing, 2004
      History of Frankenstein, 1995
      Hilarious House of Frankenstein, 1971
      She-Demons, 1958
      Dr. Krankenstein, 1987
      Little Dracula, 1991
      Everything you always wanted to know about sex but were afraid to ask, 1972

    4. Re:Why "Igor"? Why? Why? by PReDiToR · · Score: 2, Funny

      Read some Terry Pratchett Discworld books.

      Yeth Mathter.

      eBooks available on eMule, but Hardcopy are worth the currency.

      --

      Do not meddle in the affairs of geeks for they are subtle and quick to anger
    5. Re:Why "Igor"? Why? Why? by Anonymous Coward · · Score: 0

      Well, for some reason nowadays the assistant of a mad scientist is almost invariably called Igor, and is hunchbacked, of low intelligence, ugly and clumsy, but very loyal. When a mad scientist needs a brain for an experiment, he just needs to ask Igor and Igor goes find one at once, without grumbling. Check out Gary Larson, or Dr Fun, or just search for mad scientists on google.

  35. Question by pavon · · Score: 2, Interesting

    I presume igor had some bugs when you were writing it. Was it able to find it's own problems? :)

    1. Re:Question by Andreas+Zeller · · Score: 5, Informative
      The core technology behind Igor is delta debugging, a general method to determine the difference between a working and a failing scenario.

      While not applying AskIgor (being a huge mix of Python, PHP, and SQL) on itself, we have applied delta debugging on various parts of AskIgor to detect failure-inducing code changes, and especially failure-inducing GDB commands.

      We're currently working on Eclipse plugins written in Java, and working on Java - and these will work 100% on themselves.

      --

      www.askigor.org - automated debugging service

    2. Re:Question by IdleTime · · Score: 1

      The service is all fine and dandy, but it is useless if the program you have a problem with is an interactive program. This can only handle programs with parameters and where the parameters causes the problem. That is probably the cause of failure in 0.00001% of all programs.

      --
      If you mod me down, I *will* introduce you to my sister!
    3. Re:Question by Anonymous Coward · · Score: 0

      There's lots of capture/replay tools that allow for automatic execution of interactive programs.

    4. Re:Question by gibson_81 · · Score: 1

      OK, I've only read up to your post, and have _not_ checked out the site mentioned, but for command-line interactions, you can use chat scripts (do you remember those? you used them to set up you SLIP connection ...); and for GUI intercation, I believe they're working on porting Igor to Java, in witch case they can use "Robots" (or something similar, not sure of the name) to test ... it is a Java package designed just to test UIs ...

  36. Google-like... wait a second... by Elwood+P+Dowd · · Score: 4, Interesting

    Smart kids. Redirecting to their google cache.

    I wonder what happens on google's next cache update, if you're doing something like that. Do you get a google cache within a google cache? Or does google just forget about you?

    --

    There are no trails. There are no trees out here.
    1. Re:Google-like... wait a second... by Andreas+Zeller · · Score: 5, Informative

      We're redirecting only if you come from /.

      --

      www.askigor.org - automated debugging service

    2. Re:Google-like... wait a second... by kasperd · · Score: 2, Informative

      Do you get a google cache within a google cache?

      Google like any decent web crawler respects the robot exclusion protocol. Google have a robots.txt file, and the cached pages are included in that listning. That means no crawler is allowed to download pages from the google cache. You would expect google to respects their own robots.txt listning, so a google cache page will never turn up as a search result or a cached page on google.

      Other search engines have been less smart and on one I actually have seen cases where the top hit for some keyword was their own search page for that exact keyword. Unfortunately I don't remember which searchengine it was.

      --

      Do you care about the security of your wireless mouse?
    3. Re:Google-like... wait a second... by Inuchance · · Score: 1

      Ooo, that's a good idea. Though I do wonder what would happen if you didn't have something like that...

    4. Re:Google-like... wait a second... by Andreas+Zeller · · Score: 2

      I just removed the Google redirection. It turns out our server still easily handles the /. load while running the Igor daemons and its Amanda backup at the same time. I can happily sleep now.

      --

      www.askigor.org - automated debugging service

    5. Re:Google-like... wait a second... by Anonymous Coward · · Score: 0

      Looks like your own site could use some re-directing :)

      It's Dead as in dead.

    6. Re:Google-like... wait a second... by LordNimon · · Score: 1

      Technically, that technique is probably a valid patent, from the USPO's point-of-view.

      --
      And the men who hold high places must be the ones who start
      To mold a new reality... closer to the heart
    7. Re:Google-like... wait a second... by Anonymous Coward · · Score: 0

      yes, tomorrow, I'm going to patent my new technique of chewing multiple times before swallowing.

  37. Very Clever by MonkeyCookie · · Score: 3, Interesting

    We're redirecting only if you come from /.

    That's very clever! Smart cookies.
    It certainly mitigates the awesome server-melting power of the slashdot effect

  38. fork() is a big problem for gdb by Anonymous Coward · · Score: 1, Insightful
    int main () {
    int pid;

    pid = fork();
    if (pid == 0) { .. }
    ..
    }

    $ gcc -g -o my_prog my_prog.c
    $ gdb my_prog
    (gdb) b fork
    (gdb) r
    (gdb) n
    HA HA HA HA, half for you and another half for me.

    open4free

  39. Welcome back, Amsterdam Vallon by Anonymous Coward · · Score: 0
    He's back with a generic vengence - generic statements, generic questions, generic karma whoring. Wow, you're so generically right, as usual!

    Please do look through his comment history...

    1. Re:Welcome back, Amsterdam Vallon by Anonymous Coward · · Score: 0

      Not to mention even bothering to do a Google Search on his college. Some people will fall for ANYTHING.

  40. Terrific idea by Anonymous Coward · · Score: 0

    I just wrote a small program to test. One thing I don't get from your documentation--how pass/fail is determined and, as a corollary, how segfaults are handled.

    Your docs are highly confusing on this point. It looks like I should return 0 if I succeed *or* fail.

    1. Re:Terrific idea by Andreas+Zeller · · Score: 1
      Your two runs must result in a different output or a different exit status. AskIgor will determine the cause-effect chain that leads to this difference.

      Igor initially guesses which part of the difference constitutes "pass" vs. "fail"; this guess is adequate in almost all cases. If you want to be 100% sure, make your program (or a wrapper) output just "pass" or "fail".

      I have updated the usage guide accordingly. Thanks!

      --

      www.askigor.org - automated debugging service

  41. Problems with upload.... by Anonymous Coward · · Score: 3, Funny

    I notice that Fedora Linux is full of bugs, however this site won't let me upload the entire first cd.

  42. algorithmic and automatic debugging by penguin7of9 · · Score: 3, Interesting

    This fields has decades of history. A good starting point, should you like to explore it, is here.

  43. What Lump? by Ann+Elk · · Score: 1

    I keep thinking of Marty Feldman's protrayal of Igor (that's EE-Gore) from "Young Frankenstein"...

  44. Doesn't seem that useful. by MisterFancypants · · Score: 1, Insightful
    Honestly, not to belittle the effort here, but in my experience if you've gotten to the point where you absolutely know that some input to your program will cause a crash it is very easy to find the bug and fix it.

    The REAL problem bugs are the ones where the same input on different machines will give different results, or the same input on the same machine will give different results during different runs.

    Kinda cool technology, I guess, but speaking as someone who has programmed in C/C++ professionally for about 9 years now, I just don't see this as being useful in 99.99% of debugging cases, and the ones where it might be useful are pretty easy to solve just by tracing the stack once you know what the 'problem' input is.

    1. Re:Doesn't seem that useful. by egomaniac · · Score: 1

      Kinda cool technology, I guess, but speaking as someone who has programmed in C/C++ professionally for about 9 years now, I just don't see this as being useful in 99.99% of debugging cases, and the ones where it might be useful are pretty easy to solve just by tracing the stack once you know what the 'problem' input is.

      I agree. I have ten years' professional experience, and I honestly can't recall a single instance in which something like this would have been useful. The really tough problems are usually more like "funny, it works on my machine...".

      99% of the effort in my experience has been figuring out what causes something to fail, not finding the failure itself.

      Again, not trying to belittle the effort -- this does sound neat. Just not terribly practical.

      --
      ZFS: because love is never having to say fsck
    2. Re:Doesn't seem that useful. by Andreas+Zeller · · Score: 3, Insightful
      We're talking about two different issues here - reproducing the bug and actually understanding how it came to be. Most bugs are easy to reproduce and easy to understand, just by re-invoking them and looking at the stack trace.

      Some bugs, though, are hard to reproduce, which means that you should set up appropriate isolation and monitoring layers in your program. The recent issue of Communications of the ACM, for instance, has a nice article on record/replay of program executions, which solves all problems of reproducing runs - in principle, that is, because such tools are not readily available yet.

      Now there's some bugs that are hard to understand, especially those where there's a long delay between the defect being executed and the experienced failure. Think about a compiler that generates bad code. This is not an issue of reproduction; nor can the problem be solved by examining the stack trace. You have to work your way backwards all through the execution to understand the cause-effect chain. This is where AskIgor can really help you.

      And, yeah, I got 12 years of C/C++ programming and debugging experience, too :-)

      --

      www.askigor.org - automated debugging service

    3. Re:Doesn't seem that useful. by Andreas+Zeller · · Score: 1
      "99% of the effort in my experience has been figuring out what causes something to fail, not finding the failure itself."

      That's what delta debugging is about - finding failure causes automatically. These causes can be in the input, in the configuration, in the program changes - and eventually in the program state, as determined by AskIgor.

      --

      www.askigor.org - automated debugging service

    4. Re:Doesn't seem that useful. by MisterFancypants · · Score: 1, Interesting
      But unless I'm wrong, for Igor to work you need to give it an input which crashes the program, correct?

      I don't recall ever getting to the point where I could crash a program at will, with some given input, and yet the bug wasn't fairly obvious and easy to find just from a stack trace and maybe 2-3 minutes of line by line stepping.

      Neat technology, very little real world use. IMO.

    5. Re:Doesn't seem that useful. by Andreas+Zeller · · Score: 2, Informative

      I totally agree with your observation. But the program doesn't have to crash for Igor to work. If the program simply outputs, say, "fail" instead of "pass" (as in the working run), AskIgor will narrow down the cause-effect chain that leads to the "fail".

      --

      www.askigor.org - automated debugging service

  45. Hmm... by AlXtreme · · Score: 2, Informative
    However, Passau University has filed international patents for the automatic isolation of cause-effect chains from computer programs--that is, Delta Debugging applied to program states. This is the core technology of AskIgor. This means that if you want to make money out of AskIgor technologies, you'll have to license the patent.
    AskIgor FAQ

    Arg, I thought us Euro's didn't have to worry about software patents anymore. Then again, isn't it a bit weird to have AskIgor licensed under the GPL and filing patents on it at the same time? IANAL, but is this possible? You file a patent to make cash from it by licensing it to others (or using the technique yourself), or you make it opensource and give it away freely. They say that "Delta Debugging" isn't patented, but when it's applied to program states it is (will be).

    Gotta love IP...

    --
    This sig is intentionally left blank
    1. Re:Hmm... by Andreas+Zeller · · Score: 2, Informative

      We are well-aware that this is a conflict, and we're currently working on this. Sorry, no further comment on this matter.

      --

      www.askigor.org - automated debugging service

    2. Re:Hmm... by Darren.Moffat · · Score: 1

      In some cases the GPL and patents actualy achieve similar end goals. They both allow someone to publish work and let others use it that would otherwise have been kept a trade secret.

      Personally I don't believe that the GPL and patents conflict. In particular you can give a license to use your patented technology freely as long as it is used in the GPL'd code. You can then also charge licenses for the patented technology for non GPL usage cases.

    3. Re:Hmm... by TubeSteak · · Score: 1

      every heard of pre-emptive patents? You can patent something before company X does and then give out licenses freely within whatever terms you want eg the usage must also be GPLed. wouldn't it be nice if someone had done that with one-click purchasing or a variety of other 'obvious' patents.

      --
      [Fuck Beta]
      o0t!
    4. Re:Hmm... by jensend · · Score: 1

      The GPL basically says "if you distribute software with this license and you have patents governing methods used in the software, you grant a perpetual patent license to anybody who obtains, in accordance with this license, the software or any legitimate derivative works, which patent license extends at least to the use and/or distribution of such."

      In other words, if you use the gpl'd delta debugging software or its derivatives in a way which complies with the GPL, Passau University can't sue you for patent infringement because they distributed it under the GPL. However, if you violate the GPL they can sue you for patent infringement as well as copyright violation.

      As to the benefits to Passau: if you want to use the patented process in proprietary or other non-gpl software you have to work out a patent license with Passau U (for which they may want you to pay them). In addition, the patent ensures the safety from third-party patent claims of the gpl'd software and any other software Passau makes or decides to license the patent for.

    5. Re:Hmm... by Anonymous Coward · · Score: 0

      No conflict. See my comment above (7534266).

      -jensend

  46. google-like interface? by 3Suns · · Score: 4, Funny

    Nice google-like interface...

    What, you mean like a textbox?

    --

    -3Suns

    ~~~~
    The Revolution will be Slashdotted
  47. Such a program replay tool exists by Convergence · · Score: 3, Interesting

    I remember reading a rant about a year ago. Someone wrote a replay tool for program executions for under linux, I think 2.0 or 2.2. They dropped it because nobody cared about it (probably because nobody knew about it), and they got sick of updating it constantly for new IOCTL's as the kernel constantly changed.

    I think it was Carmack lamenting its loss.

  48. That's a segmentation fault. by pr0ntab · · Score: 2, Informative

    Good old SIGSEGV. That's what happens when you deference null pointers, write to memory that's not yours, etc. It's the most common crash-n-burn error an application will experience. Windows calls these "Program Errors" or something now in XP. I forget. It use to call them "Access Violations". IIRC only Windows ME->98->95 had the "feature" that you could destroy other program's memory if you didn't follow all the rules.

    --
    Fuck Beta. Fuck Dice
  49. When does it become self aware... by gatkinso · · Score: 1

    ...and launch the premptive strike?

    --
    I am very small, utmostly microscopic.
  50. provide user input? by pr0ntab · · Score: 1

    1) invoke command like this:
    $ your binary input
    2) upload input in the "files" section
    3) wait...

    The restriction is your program must be capable of running in a demand based mode by the contents of a file.

    --
    Fuck Beta. Fuck Dice
  51. As you can see, we've had our eye on you for some by rice_burners_suck · · Score: 1
    Hmmm... That sounds like a really good deal. But I think I got a better one: How about a special webserver with an artificial intelligence engine and a database containing a description of every bug in every program ever made. All you have to do when you have a problem, no matter what that problem is, is write an email that goes along the lines of, "I installed a program and it didn't work," and the server looks in its database, figures out some AI stuff, and sends a reply that tells *exactly* where the problem is, with a detailed procedure down to the keystroke that explains how to fix it on the user's particular system and software configuration. No information is needed other than, "I installed a program and it didn't work." Heck, it'll even figure out which program you're talking about.

    You could also write emails to it about your girlfriend problems (by writing something like, "my girlfriend is mad at me"), and it'll send back a list, compiled for your particular situation, of things to say and do, down to the finest detail, designed to appeal to all levels of the conscious, subconscious, and unconscious mind of the female in question.

    How does it work? All matter and energy in the universe comes in the form of waves at various frequencies and whatnot. The vibration of these waves is actually what produces everything we know. Even the fabric of space is part of this cosmic symphony. Every vibration has an effect on everything around it. So all they have to do is make up a piece of hardware, which I'll describe presently, and some drivers to support it under Linux. The hardware will include two sensors. In one, there's a single atom of hydrogen. Its vibrations are measured. The other is a gravitational sensor that senses where all the stars are in the universe. The information from these sensors goes into a simple mathematical formula that figures out exactly what is going on everywhere in the universe at any given moment in the past, present, or future. That information is then indexed like a lookup table to find the exact problem you're talking about in your email to the thing, and, knowing that this server will produce the correct answer, all it has to do is look into its own future to see whta that answer is. Essentially, the information comes from nowhere. Building the two sensors and the mathematical formula I described is elementary and left as an exercise for the reader.

    Artificial Intelligence. It's what's for dinner.

  52. That's good, but how about by DraconPern · · Score: 2, Interesting

    multithreaded programs? Does it catch race conditions and such?

  53. damn by c4ffeine · · Score: 1

    I KNEW that I had to step up my efforts to DDOS, erm slashdot, that website. Whatever you do, please don't block all the IP's submitting random chunks of massive code, OK? I'm ... uh... trying to study the slashdot effect here, m'kay?

    --
    "73% of quotes on the Internet are made up" -Ben Franklin
  54. Patents by Quelain · · Score: 2, Insightful

    Igor FAQ:

    "The Eclipse plug-ins are licensed under the GNU public license." ...

    "The basic Delta Debugging technique (narrowing down relevant circumstances by experiments) is not covered by any patent (as far as we know); in fact, we have released Delta Debugging plug-ins for Eclipse under a GNU license.

    However, Passau University has filed international patents for the automatic isolation of cause-effect chains from computer programs--that is, Delta Debugging applied to program states. This is the core technology of AskIgor. This means that if you want to make money out of AskIgor technologies, you'll have to license the patent. (That's how Passau University attempts to get some revenue from its research.) Patent licenses are handled by the Fraunhofer Society in the BayernPatent initiative. "

    GPL:

    "For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program."

    WTF?

    Maybe there is some difference between what the Eclipse plugins do and what AskIgor does, but it's not very clear from the FAQ if that is the case.

    --
    Cthulhu loves you.
  55. Re:As you can see, we've had our eye on you for so by Bruj0 · · Score: 1

    I want some of that weed man, its hard core. ;)

    --
    http://securityportal.com.ar
  56. Compromise by Espectr0 · · Score: 1

    So, it comes out! This is what happens when you toy with your system ;)

  57. Doesn't work by Permission+Denied · · Score: 1
    some-linux-box% cat tst.c
    #include <string.h>

    int main(int argc, char **argv)
    {
    if (strcmp(argv[1], "gezuntereit") == 0) {
    char *c = (char *)0;
    *c = "gloodorf";
    }
    sleep(5);
    exit(0);
    }

    some-linux-box% uname -a
    Linux some-linux-box 2.4.20 #2 Mon Mar 17 22:02:15 PST 2003 i686 unknown
    some-linux-box% gcc -v
    Reading specs from /usr/lib/gcc-lib/i386-slackware-linux/3.2.2/specs
    Configured with: ../gcc-3.2.2/configure --prefix=/usr --enable-shared --enable-threads=posix --enable-__cxa_atexit --disable-checking --with-gnu-ld --verbose --target=i386-slackware-linux --host=i386-slackware-linux
    Thread model: posix
    gcc version 3.2.2
    some-linux-box% ls -l /lib/libc.so.6
    lrwxrwxrwx 1 root root 13 Jun 7 13:39 /lib/libc.so.6 -> libc-2.3.1.so
    some-linux-box% gcc -g tst.c -o tst

    This gives me:

    Igor could not debug your program. While debugging, Igor encountered an internal error during execution.

    The AskIgor maintainers have been notified. This is an urgent problem which will be fixed soon. Any new diagnosis will be shown on this page.

  58. Replay under linux--or how to single step backward by Convergence · · Score: 2, Interesting

    This program (which needs updating to more recent kernels) allows one to replay a binary execution.

    http://old.lwn.net/1999/0121/kernel.php3

    http://lwn.net/1999/0121/a/mec.html

    Apparently its been out for *8* years, and has had exactly 3 people download it. Horrible -- its a feature I'd kill to have, and a feature linux should have.

  59. Our sandbox crashed - sorry! by Andreas+Zeller · · Score: 2, Informative
    Our sandbox crashed around 4AM, while all maintainers were sleeping. Thus, all 45 later submissions got these "internal errors". I have restarted Igor to recompute all failed submissions, including the one above; just try again later.

    I'm sorry for the inconvenience, and have made sure this problem won't happen again. But remember that this is a research project, and we can't sit besides the machine 24/7.

    --

    www.askigor.org - automated debugging service

    1. Re:Our sandbox crashed - sorry! by Permission+Denied · · Score: 1
      Hey, no problem. I just posted the information in case my submission did something bizaare and you needed to ... "debug" igor.

      By the way, the papers are pretty interesting.

    2. Re:Our sandbox crashed - sorry! by cant_get_a_good_nick · · Score: 1

      For those who didn't recognise the name, this fine gentleman is responsible for DDD. which has saved me (and a lot of other developers I've known in school and professionally) lots and lots of hours of debugging time.

      Andreas, I'd just like to say thanks.

      Andreas is mentioned with a blurb in the FAQ, but I know most Slashdot readers don't read the main page in the article, much less links off the main page. It should have been mentioned in the submission.

  60. Re:As you can see, we've had our eye on you for so by Safiire+Arrowny · · Score: 1

    Why the hell isn't this modded +1000 hilarious?

  61. Deterministic? by cmason · · Score: 1

    Does this assume that the program is deterministic? By this I mean that the program always follows the same code path for the same inputs, or, put another way, that no randomness is involved.

    -c
    --
    "If you are an idealist it doesn't matter what you do or what goes on around you, because it isn't real anyway."-R.P.W.
    1. Re:Deterministic? by cant_get_a_good_nick · · Score: 1

      Computers are deterministic state machines. The problem is just that they have essentially an ifinite number of states.

  62. Were you thinking of jwz? by Sits · · Score: 2, Interesting

    In January, Jamie Zawinski made a post about the possibility of running a debugger backwards...

  63. Alternatively, delta debugging on your own system by Ed+Avis · · Score: 1

    Ask Igor seems to be an implementation of delta debugging. You can use the delta program to implement this on your own system. You choose a test program (or 'harness') and an input that causes the harness to exit with success; for example your harness might run some executable and test to see if it segfaults - if so success. Then you give an initial input that passes the test (eg causes the segfault). Delta chops out lines of text to find a minimal (or at least 1-minimal, see the website) test case that passes the test (causes the segfault).

    This is slightly different to Ask Igor, which takes two different files and finds the important difference between them. But similar in spirit (if much simpler). Apparently the Ask Igor code will be made available for download after it has been used 1000 times from the website.

    --
    -- Ed Avis ed@membled.com