Run any Linux Program?

I have 1 question before I buy a Beagle Bone Black. It might seem stupid, but does it run every linux program? I know it's a development board, and that's where I got confused.

Well it depends on what you mean by every.

Linux run much the same on all the different architectures it is built for,
which varies between little SoCs like the one at the heart of the BeagleBone
Black up to IBM mainframes. The trick is to choose a distribution that
builds packages not just for one architecture (such as the Intel 386 family)
but for all of them. Fortunately Debian - the current default for BBB - does
exactly this.

There are some programs it makes no sense to run on a BBB. Big databases
need lots of disk space, and the BBB only has limited NAND and SD cards or
USB attached devices But in principle, provided the program has not been
written to be architecture dependant (like assuming a particular word length
or endianness) or hardware dependant for something that is not available
on the BBB (PCI cards or SATA disks for example) then you should be fine.

How fast it will run is another matter. The BBB has limited CPU and memory,
and swapping to NAND or SD card is not a good idea.

So the real question is what do you want to run. The answer is probably yes,
but give us some real examples.


“Linux” is not a platform, in the way that, say, Window32 or MacOS X are. You can’t write a program to run “on Linux”. Linux is a program that allows you to create platforms. You might download, for example, the Ubuntu Gnu/Linux operating system for your x86 PC (or perhaps the 64-bit version), and the you would be able to download and run programs written for that platform. Other distributions may or may not be similar enough to allow you to run a program written for one on another; if not, you’ll have to “port” the program, which means modifying its source code and recompiling it for the new platform. The BBB can run several platforms: Android, Angstrom Linux, Debian Linux, Ubuntu Linux, and so on. Also note that it has a ARM processor, so it runs the ARM versions of those. So programs written to run on the platform “Debian Linux/ARM” will generally run (this is the same platform as the Raspberry PI, for example). But of course there are also hardware differences: programs that use the video or sound hardware of the PI may not apply to the BBB which is more limited in that area.