Yes, it is. I've had embedded systems boot straight into busybox like shells for example. Even more fun, the system didn't have a BIOS at all (it was hard wired to just jump into a location in flash, were we placed the Linux second stage boot loader to uncompress the kernel image to RAM, which then executed the shell immediately. Even the shell was really mostly there to aid debugging - in production use it'd immediately spawn the main app for the system.
As long as the kernel has whatever drivers you need compiled in instead of as modules, and as long as your app either doesn't directly or indirectly spawn lots of child processes or if it does it takes care of wait()'ing for them, and as long as you don't need any getty's (without spawning them yourself) there's no problems tearing out everything and replacing it with a self contained static app.