TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

I spent 5 years writing my own operating system

939 pointsby halfer53almost 4 years ago

29 comments

teleforcealmost 4 years ago
In the era when system research is dying [1], the only saving graces are the Nix&#x2F;Guix for OS management improvement and perhaps eBPF for OS performance enhancement. The Winix OS is a breath of fresh air in term of potential OS directions.<p>Like they have always said, timing is everything and probably this is the project similar to Apple&#x27;s Newton project that have many goods in it but just born several years too early.<p>Winix targets RISC architecture and with RISC-V taking off exponentially at the very moment, having RISC biased OS will definitely provide edges and advantages for the platform, similar to x86 quirks to Linux, and Linux taking advantages when x86-32 and x86-64 took off.<p>This year when Linus was asked for the best Linux achievement compared to other OS, Linus has pointed out the innovative Linux based lock-free filesystem [2]. Winix has built-in innovative POSIX compatible in-memory file-system (IMFS) by default. Imagine an OS with IMFS that&#x27;s also natively compatible with the increasingly popular Arrow and TileDB in-memory format. With Terabyte (TB) RAM computers becoming the norm in the near future this can easily be the fastest OS with the state-of-the-art filesystem around. Fuschia is another latest OS on-the-block but by focusing on the mobile rather than desktop it will probably optimized for the former, unlike Winix.<p>[1]<a href="https:&#x2F;&#x2F;tianyin.github.io&#x2F;misc&#x2F;irrelevant.pdf" rel="nofollow">https:&#x2F;&#x2F;tianyin.github.io&#x2F;misc&#x2F;irrelevant.pdf</a><p>[2]<a href="https:&#x2F;&#x2F;www.tag1consulting.com&#x2F;blog&#x2F;interview-linus-torvalds-linux-and-git" rel="nofollow">https:&#x2F;&#x2F;www.tag1consulting.com&#x2F;blog&#x2F;interview-linus-torvalds...</a>
评论 #27651263 未加载
评论 #27647908 未加载
评论 #27653411 未加载
评论 #27650656 未加载
评论 #27650480 未加载
评论 #27649894 未加载
评论 #27649522 未加载
评论 #27650818 未加载
评论 #27649443 未加载
评论 #27652585 未加载
评论 #27650212 未加载
akkartikalmost 4 years ago
I&#x27;m curious about the hardware it runs on, and didn&#x27;t immediately find answers on Google. Could you talk about what hardware is on a usual system and what device drivers need to do for screen, serial port, disk drives, etc.? Does the CPU use floating point?<p>The reason I ask: for the past six months I&#x27;ve been dipping my toes in OS development for x86 with BIOS, SVGA and ATA interfaces: <a href="https:&#x2F;&#x2F;github.com&#x2F;akkartik&#x2F;mu" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;akkartik&#x2F;mu</a> And I&#x27;m <i>way</i> out of my depth. I have this suspicion that x86 might be one of the more difficult environments for device drivers, so I&#x27;m curious to hear what other hardware looks like.
评论 #27647660 未加载
sgt101almost 4 years ago
I shared a co-working space with a guy who had written a distributed OS for rendering; it was quite neat - but about 1000 man years from being usable.<p>I felt sad for him - he&#x27;d poured his heart into it for more than 10 years (he said) and had no idea of how to turn it into anything other than a hobby project. He hadn&#x27;t open sourced it, his aspiration was that &quot;Facebook will buy it&quot;. I haven&#x27;t seen him since the pandemic kicked in.
评论 #27650628 未加载
评论 #27651193 未加载
ZephyrBlualmost 4 years ago
Hey, another Kiwi!<p>The about section says &quot;A UNIX-style Operating System for the Waikato RISC Architecture Microprocessor (WRAMP)&quot;. Did you study at Waikato?<p>I&#x27;m curious what you think about tech in general in NZ as well. Compared to the US it feels like there&#x27;s practically no community :&#x2F;.
评论 #27648543 未加载
评论 #27648344 未加载
评论 #27655376 未加载
jacquesmalmost 4 years ago
Congratulations. I did the same thing in the early 90&#x27;s and I still think it is the project that I learned by far the most from. I never released it because I think its time has passed but it was a fun exercise. Debugging the early stages of such development is super hard, especially if you are doing it on bare metal instead of on a VM.<p>Do you have a plan behind this or was it just to scratch an itch?
评论 #27647677 未加载
erhkalmost 4 years ago
Request:<p>Make a blog post on the experience. What does the heatmap of changes look like over 5 years? I cant imagine you burnt the candle on both ends for that whole time.<p>What is the final lines of code?<p>What blockers did you not anticipate that killed a lot of time? Hardest problem?<p>I think you&#x27;ve got a treasure of interesting retrospectives to share :)
评论 #27647914 未加载
评论 #27647362 未加载
评论 #27652987 未加载
评论 #27648799 未加载
ericlsalmost 4 years ago
This looks like one of the most interesting and fulfilling game one can play
ashdevalmost 4 years ago
I just generally have tremendous respect for someone who even attempts to build an OS from scratch. You kept at it and didn&#x27;t give up. Great work.
46756ealmost 4 years ago
As someone who wants to get into systems programming, this is very inspiring.
cbzehneralmost 4 years ago
Incredible!<p>What was the hardest part?<p>What did you learn that you weren’t expecting?
评论 #27647340 未加载
评论 #27647388 未加载
评论 #27647369 未加载
devetecalmost 4 years ago
...wow. Congratulations!
sytelusalmost 4 years ago
5 years is a long time. If I recall correctly, Linus took one year to churn out his first usable Unix clone. I wonder why this project took so much more time.<p>PS: This is not a criticism but genuine curiocity why basic OS projects are so expensive given so much already out there. Also, Linus spent majority of hours each day for a year while this might be just a side gig for you.
评论 #27649922 未加载
评论 #27650034 未加载
peter_d_shermanalmost 4 years ago
Related: Waikato RISC Architecture Microprocessor (WRAMP)<p><a href="https:&#x2F;&#x2F;wramp.wand.nz&#x2F;" rel="nofollow">https:&#x2F;&#x2F;wramp.wand.nz&#x2F;</a><p><a href="https:&#x2F;&#x2F;github.com&#x2F;wandwramp&#x2F;" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;wandwramp&#x2F;</a>
kumarjsingh6almost 4 years ago
initial commit <a href="https:&#x2F;&#x2F;github.com&#x2F;halfer53&#x2F;winix&#x2F;commit&#x2F;e3cd6ecb37511801840408b6ba353544c795720d" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;halfer53&#x2F;winix&#x2F;commit&#x2F;e3cd6ecb37511801840...</a>
dane-pgpalmost 4 years ago
Can it run tcc and self-host?
评论 #27647327 未加载
评论 #27647242 未加载
imvetrialmost 4 years ago
Nice job. It&#x27;s not easy for everyone to be dedicated to get things done.
mathgladiatoralmost 4 years ago
Neat. Well done.
ChrisMarshallNYalmost 4 years ago
That&#x27;s great! Thanks for sharing it.<p>I&#x27;ll probably never have a use for it, myself, but I am always in support of passion projects.<p>Good luck!
readonthegoappalmost 4 years ago
I&#x27;m sorry, you&#x27;re lacking the requisite expertise for this entry level developer position.<p>Well, I wrote my own operating system.<p>Sorry.
评论 #27648586 未加载
评论 #27648564 未加载
mryalamanchialmost 4 years ago
Is there a possibility of integrating GCC compiler and adding support for ELF executables?<p>If yes, then how?
评论 #27650690 未加载
juicexmachinaalmost 4 years ago
Has submitted the &#x27;does it run crisis&#x27; issue yet?
andyxoralmost 4 years ago
Awesome, but how does it even work with so few tests
felixthecat543almost 4 years ago
How did you get started with this project?
knorkeralmost 4 years ago
&quot;Visual&quot; memory?
评论 #27650896 未加载
kebmanalmost 4 years ago
Awesome work! Very inspiring! :D
failwhalesharkalmost 4 years ago
Oh my. Minix1. That predates me and my gray hairs.<p>I at least got Minix 2 with the printed source code in AST&#x27;s book. Minix 2 was so annoying on real PC hardware that I had to stick a keyboard repeat rate and delay patch whenever I used it. It was all straightforward and the lab assignments on it were easy because it was built for tinkering rather than efficiency.<p>My uni replaced FreeBSD as the teaching operating system of choice. They also go rid of Oracle DBMS# for Postgres.<p># Many, many moons ago I nearly got Aaron Swartz&#x27;ed. This is because I tried browsing &quot;proprietary&quot; docs using a Java-based internet proxy to bypass IP ACLs from my &quot;off-campus&quot; location. It was clearly located in North Korea. Then, the browsing was so slow (like Tor but even worse), I figured: <i>Why not mirror it locally instead?</i> And, what kind of documentation &quot;toilet-paper&quot; police are going to sit there watching interactively or SNORT monitor what happens to &quot;precious&quot; corporate documentation they forced me to use?
hosejaalmost 4 years ago
How do you feel about the agents of the CIA?
ktm8almost 4 years ago
I&#x27;m mildly annoyed by line 30 in include&#x2F;posix_include&#x2F;stdio.h
评论 #27650838 未加载
评论 #27648738 未加载
RandyRandersonalmost 4 years ago
Ok, I&#x27;ll ask - why?<p>You have made it POSIX-ish but wouldn&#x27;t one goal be to create something new ? I imagine that you just wanted to use a bunch of POSIX tools but won&#x27;t that limit you in some way?
评论 #27649941 未加载