When starting a port for a new architecture, it might make sense to first target a paravirtualized environment, that already abstracts away some of the different hardware implementations' quirks.