Another great feature of the BBB GPIO pins is that you can map some of them to a register on the PRU. Since the PRU runs at 200Mhz, this gives you some really impressive real-time capability. The sysfs technique the article outlines is definitely convenient, but latency can be high, as much as 1ms. Mmaping the GPIO controller and using some real-time extensions to the kernel can get that down to a few us, but using the PRU can take it down to a handful of ns.
The PRU is the unrecognized gem of the BBB. As long as you're not scared of assembly :).