Hello there,
After reading LDD and LKD, I feel ready to start some actual kernel hacking. Therefore I wanted to ask you what environment I should use in the beginning. I have several options, but I'm not sure on which one to set up my workspace:
- I could develop directly on and against my main machines (desktop/laptop) – This is probably not a good idea, since they are used in „production“ and I don't want to mess things up there
- I could go with a virtual machine on one of my main machines – But I'm not quite sure whether the hardware-abstraction will give me troubles when hacking on hardware drivers (which I want to start with)
- I could also use my Raspberry Pi – I'm only afraid that the slightly different environment (SD card instead of hard disk, ARM instead of x86, limited I/O) could turn out to be a larger obstacle than I thought
- I have some pretty old stand alone desktops which I could use – But the hardware is so old (2004ish)
I think my preference is the Raspberry Pi, because I would work on actual modern hardware without worrying about messing things up. Are there some drawbacks I'm not considering? Or am I just overthinking this? What did you use in the beginning?
Best regards,
Philipp
Raspberry Pi is better option since you can add customization by using unallocated pin.