←back to thread

309 points LorenDB | 2 comments | | HN request time: 0s | source
Show context
Santosh83 ◴[] No.42637177[source]
Read somewhere that it is relatively easy to adapt NetBSD's drivers into a custom kernel... maybe Serenity folks can go that way? Device drivers are huge obstacle for any fledgling OS.
replies(6): >>42637487 #>>42638178 #>>42638309 #>>42639168 #>>42642231 #>>42665209 #
mysterydip ◴[] No.42637487[source]
> Device drivers are a huge obstacle for any fledgling OS.

I've wondered if new/hobby OSes would fare better by starting out targeting a popular single board computer like a raspberry pi? A mostly fixed set of hardware to make/get drivers for and test your system on.

replies(6): >>42637523 #>>42638258 #>>42639203 #>>42639284 #>>42639368 #>>42646433 #
junon ◴[] No.42639203[source]
That implies AArch64 support which many hobby OSes don't have, usually because the introductory osdev material is written largely for x86.

But yes, raspi is a good platform if you are targeting arm.

As I'm also designing an OS, my biggest piece of advice for anyone seriously considering it is to target two archs at once, in parallel. Then adding a third becomes much easier.

replies(2): >>42639325 #>>42649587 #
kelnos ◴[] No.42639325[source]
Raspberry Pi has a bizarre boot sequence and bringup process, much of it which is not open and not implemented in open source code. I think it's probably not a great platform for this sort of thing, despite it being decently well-documented.

(And even then, its USB controller, for example, has no publicly-available datasheet. If you want to write your own driver for it, you have to read the Linux driver source and adapt it for your needs.)

replies(2): >>42641524 #>>42643315 #
1. rollcat ◴[] No.42643315{3}[source]
You could probably skip some of the difficult parts if you bring in an existing bootloader that can provide a UEFI environment (it's how Linux & the BSDs boot on ARM Macs). But Serenity is all about DIY/NIH
replies(1): >>42651309 #
2. Aaron2222 ◴[] No.42651309[source]
openSUSE does the same to boot on Raspberry Pi as well. Probably a few other distros as well.