I would think developing an OS kernel would be most convenient on a simulator (see last paragraph) rather than a real computer. That said, this page seems like a nice brief introduction to the BCM2835 SoC that drives the pi.
The Raspberry Pi seems attractive as an entry level system to develop on. However, I am worried that this system may not be a good enough approximation to a modern computer.
I don't think it would be particularly different than a regular x86 machine (it is a "modern computer"), except, as you point out, it is single core. Although it is not so long ago most desktops were too.
The linux kernel predominantly used on the pi does not appear to be significantly modified beyond adaptation to the hardware, and the userland is completely standard. So that's a modern, multi-tasking, multi-user, multi-executing (except, again, there's actually only one core in this case), general purpose OS, the source code for which is freely available.
In short, I don't think there's anything special about the pi with regard to this purpose, either in the sense that it would be especially good or especially bad.
However, one thing to keep in mind is that if you want to compile on the pi, it's slow. Way, way slower than a decent desktop. Cross-compiling is not a problem, but if for some reason you want to use a simulator, your choices are going to be limited because it is an uncommon architecture (although a lot of older android devices, including the original Samsung Galaxy, are armv6). On the other hand, "limited" doesn't mean non-existent, since QEMU apparently has a
-cpu arm1176 option.
hardware support for implementing virtual memory
You could probably implement virtual memory with or without hardware support, but in any case, the processor has an integrated MMU, etc. to make things easier and/or more efficient.
I think the major advantage to using the pi here would be that it is small and cheap. If you wanted to do the work on one machine (a desktop or laptop) and apply it on another, which would probably make things easier, not using a full size system for the latter would be convenient. You could take this project to a coffee shop easily, etc. Of course, it's probably even more practical to just use a simulator in the first place, in which case you might as well write for x86.