I'm playing around with coreboot and that gives me ability to embed Linux kernel. The problem is we're limited by the amount of ROM chip which is between 4MiB to 16MiB depending on the specific device. The one I'm working on got 12MiB, about 3 is taken in order to boot normally, leaving me with 9 to play around.
Enter buildroot, (arguably) a Linux distro that allows you to have kernel, busybox, minimum libc, along with whatever software you'd choose.
While it's easy to include only what's needed to have a working system (busybox provides working shell as well as the coreutils), you'd need to get rid of stuff you don't need, such as drivers for hardware you wouldn't have.
Aside from that, you'd end up with better running kernel in general if you know what you're doing. I run Gentoo and have kept a working config that I tweak from time to time (especially on version upgrade).