Do you know any good resources to study this sort of thing from? (any summer programs?) I am a young developer and have been meaning to learn this sort of thing for a while.
If you want to play around with some hardware I'd recommend getting an Arduino board. You can start with the Arduino IDE and work your way down to the metal. It's a relatively simple system but the principles apply pretty much to bigger systems.
Another good platform in the same vein is the BeagleBoard, which is a great way to play with a slightly bigger platform running Linux.