Didn’t expect to see my project on the main page today ‘^^
Right now the build is broken, so you can’t test the full OS, but you can run individual apps with:
Impressive achievements, congrats! You said that your microkernel is "influenced by Zircon". Did you also study other architectures like e.g. sel4, Minix or openQNX? What do you consider the important design choices in your microkernel design? Is there a document where you go into this? Have you done performance measurements, i.e. to which other microkernel design do you think your kernel is comparable in terms of performance?
Thanks! Skift is basically a patchwork of all the OS ideas I like. The UI takes inspiration from SwiftUI/Flutter, the microkernel is influenced by Zircon, and there are some Plan 9 ideas where everything is a URL. A few bits are probably inspired by NT and Darwin too, though I don’t remember exactly which.
Maybe adding some Xerox PARC, Oberon, NeXTSTEP / NeWS style, Powershell ideas could also be interesting, on how the shell, UI, and dynamically loaded code (or OS IPC), makes the whole OS customizable, , just throwing another set of ideas into your bucket.
Hi monax, I would like to hear how you started the project. I am also currently trying to implement my own micro kernel, with hopes of doing something similar to SkiftOS in order to learn OS fundamentals, but I don't know how to start. What are the first things to tackle when taking on such a project?
I don’t know what I can tell you, I think where you start and how you start don’t really matter. The important thing is to keep going. These kinds of projects are a lot of work, and as long as you keep making progress, you’ll eventually get to what you want.
Thank you for the reply, one more thing. Did you study established code bases and/or books to guide you through the architecture process and initial implementation? If so, how do you take advantage of these resources without falling into the trap of "borrowing" implementation while trying to build your vision?
What you did here is really cool and inspiring :).
I always paste this book here when hobby OSes appear. I wrote my own GUI OS in the 90s and I couldn't have done it without this. Copies available on your usual shadow library I would imagine...
```bash ./skift.sh run --release <app-name> ```
on Linux or macOS.
To see all available apps:
```bash ls ./src/apps ```