Înapoi la articole →

Cel mai recent articol

Ultima verificare

Urmăritori 0 urmăritori
Articole: 98
  1. reptyr (announced recently on this blog) takes a process that is currently running in one terminal, and transplants it to a new terminal. reptyr comes from a proud family of similar hacks, and works in the same basic way: We use ptrace(2) to attach to a t…

  2. Over the last week, I’ve written a nifty tool that I call reptyr. reptyr is a utility for taking an existing running program and attaching it to a new terminal.

  3. Some Android reverse-engineering tools

    I’ve spent a lot of time this last week staring at decompiled Dalvik assembly.

  4. Dan Rosenberg recently released a privilege escalation bug for Linux, based on three different kernel vulnerabilities I reported recently.

  5. Most of you reading this blog probably remember CVE-2010-3081.

  6. Why scons is cool

    I’ve recently started playing with scons a little for some small personal projects.

  7. I love VMware workstation.

  8. Using Haskell's 'newtype' in C

    A common problem in software engineering is avoiding confusion and errors when dealing with multiple types of data that share the same representation.

  9. amd64 and va_arg

    A while back, I was poking around LLVM bugs, and discovered, to my surprise, that LLVM doesn’t support the va_arg intrinsic, used by functions to accept multiple arguments, at all on amd64.

  10. A brief look at Linux's security record

    After the fuss of the last two weeks because of CVE-2010-3081 and CVE-2010-3301, I decided to take a look at a handful of the high-profile privilege escalation vulnerabilities in Linux from the last few years.

  11. I really like Twitter.

  12. How is duct tape like the force?

    I’m at Dragon*Con this weekend, my second time here now.

  13. Basically anyone who’s used Linux for any amount of time eventually comes to know and love the strace command. strace is the system-call tracer, which traces the calls that a program makes into the kernel in order to interact with the outside world.

  14. Navigating the Linux Kernel

    In response to my query last time, ezyang asked for any tips or tricks I have for finding my way around the Linux kernel.

  15. I haven’t been feeling very motivated to blog lately – I’ve missed the last two weeks of Iron Blogger, and I’m not totally enthusiastic about any of the items on my “to blog” list.

  16. Some musings on ORMs

    I’m pretty sure every developer who has ever worked with a modern database-backed application, particularly a web-app, has a love/hate relationship with their ORM, or object-relational mapper.

  17. Last time, I announced Check Plus, a declarative language for defining Check tests in C.

  18. Check is an excellent unit-testing framework for C code, used by a number of relatively well-known projects.

  19. A few weeks ago, I wrote that software engineers should keep lab notebooks as they work, in addition to just documenting things after the fact.

  20. One of the major reasons I can’t stand webapps is because I’m a serious emacs junkie, and I can’t edit text in anything that doesn’t have decent emacs keybindings.

  21. Most of the projects I've been working on today have fairly strict code review policies.

  22. If you’re reading this blog, I probably don’t have to explain why I love GNU screen.

  23. Getting carried away with hack value

    Recently, I’ve been working on some BarnOwl branches that move more of the core functionality of BarnOwl into perl code, instead of C (BarnOwl is written in an unholy mix of C and perl code that call each other back and forth obsessively).

  24. The Window Manager I Want

    Since I first discovered ratpoison in 2005 or so, I've basically exclusively used tiling window managers, going through, over the years, StumpWM, Ion 3, and finally XMonad.

  25. Software engineers, as a rule, suck at writing things down.

  26. Some thoughts on Quora

    With the announcement this week that Quora had taken $11 million in VC at an $86 million valuation, there’s been an awful lot of attention on Quora.

  27. About two months ago, Linux saw CVE-2010-0307, which was a trival denial-of-service attack that could crash essentially any 64-bit Linux machine with 32-bit compatibility enabled.

  28. The fundamental tool of any engineering discipline is the notion of abstraction.

  29. Followup to "A Very Subtle Bug"

    After my previous post got posted to reddit, there was a bunch of interesting discussion there about some details I’d handwaved over.

  30. A Very Subtle Bug

    6.033, MIT’s class on computer systems, has as one of its catchphrases, “Complex systems fail for complex reasons”.

  31. Iron Blogger: Blogging for Beer

    So, you may have noticed that I suddenly started updating this blog for the first time in a while.

  32. Versioning dotfiles in git

    I’ve been looking for a good solution for versioning and synchronizing my dotfiles between machines for some time.

  33. CVE-2007-4573 is two years old at this point, but it remains one of my favorite vulnerabilities.

  34. Git in pictures

    In my previous blog post, I discussed how git is distinctive among version control system in the way in which it makes the backend model that is being used to store data the most important element of the tool, and that experts use it by having the complete

  35. On git and usability

    I’ve been helping a number of people get started working with git over the last couple of weeks, as Ksplice has brought on some new interns, and we’ve had to get them up to speed on our internal git repositories.

  36. (This is part three of a multi-part introduction to termios and terminal emulation on UNIX.

  37. (This is part two of a multi-part introduction to termios and terminal emulation on UNIX.

  38. A Brief Introduction to termios

    If you’re a regular user of the terminal on a UNIX system, there are probably a large number of behaviors you take mostly for granted without really thinking about them.

  39. wpa_supplicant: GUI and wpa_action

    I’ve made two new interesting discoveries about wpa_supplicant since writing my last blog post on the subject.

  40. autocutsel

    As most of you probably know, X has several different mechanisms for copy-paste, used by different applications in different ways.

  41. New Blog Location

    I finally got fed up with Blogger, and am moving this blog to live on Wordpress hosted off of scripts.mit.edu.

  42. Using wpa_supplicant on Debian/Ubuntu

    I’ve been using wpa_supplicant to manage wifi on my Ubuntu laptop for a while, and have found that it’s pretty close to what I want for managing wireless — closer than anything else I’ve found, at least.

  43. Automounting sshfs

    For some time now, many of us around MIT have noticed just how awesome sshfs is.

  44. Conkeror

    I’ve recently switched to Conkeror as my primary browser.

  45. todo.pl ratmenu

    broder has been hacking on some better quicksilver integration for Hiveminder using todo.pl.

  46. A week with the iPhone

    I’ve had a new iPhone for about a week now, so I figure it’s time to write up some thoughts about it.

  47. DEF CON

    I’m sitting in the airport in Las Vegas on the way back from DEF CON 15.

  48. 6.170, CVS, and SVN

    I’m taking 6.170 Lab in Software Engineering this semester.