
The Sortix Operating System - fabrice_d
https://sortix.org/
======
bshimmin
I'm always disappointed when I see a new operating system on here if being
able to talk directly to God isn't one of its core features.

(But seriously, purely from the feature list, this looks like an incredible
achievement.)

~~~
ChikkaChiChi
I write to /dev/null all the time. You should try it.

~~~
oscargrouch
So in the beginnings of time it was /dev/null, but /dev/null felt so empty and
lonely; so he created init... but init was envied by his brother systemd, that
killed him..

~~~
ChikkaChiChi
Careful. This story is plagued with daemons and forks.

------
moron4hire
>> There's a lot of technical debt that needs to be paid, but it's getting
better.

You should just leave these sort of statements out of your introduction. It's
generally assumed all projects have some degree of technical debt, and you'll
lose more users (i.e. most) than you'd gain (i.e. 0) by trying to treat the
subject with candor.

In other words, don't sell yourself short. Speak directly to why someone would
want Sortix right away. In your intro, speak as if Sortix exists, fully
formed, and complete. Let people come to their own conclusions about the
quality.

For example, I'd rewrite the opening sentence from

    
    
        Sortix is a small self-hosting Unix-like operating system developed since 2011 aiming 
        to be a clean and modern POSIX implementation.
    

To

    
    
        Sortix is a clean and modern POSIX implementation.
    

Believe me, I've never released a project that I thought was complete. That's
not because I've never released a project, it's because I'll probably never
consider any of my projects "complete". There will always be more to add, more
to take away, more to do. It adds nothing to my description to call my
projects incomplete. The game is thus figuring out when to cut my engineering-
self off and engage my sales-self.

~~~
wolfgke
Being German, I think rather differently (probably this is a different
culture; US citizens might think differently) about this. Consider

    
    
        Sortix is a small self-hosting Unix-like operating system developed since 2011 aiming 
        to be a clean and modern POSIX implementation.
    

vs.

    
    
        Sortix is a clean and modern POSIX implementation.
    

If it isn't yet a clean POSIX implementation, the second one is a blatant lie
to a potential user (which they will and should not forgive). On the other
hand, the first one is quite honest in that is clearly tells what is there and
the clear commitment to reach a clean and modern POSIX implementation - sounds
fair and honest.

~~~
moron4hire
I don't think BMW, with their slogan "The Ultimate Driving Machine", shares
your notion of what it means to be German, then. Or even Volkswagen with "Das
Auto", is it really _the_ car, or just _a_ car?

It'd be lying if he were to say "we have 100% POSIX compliance." Very few OS
projects can claim that. It needs to also be version-qualified, as there are
several POSIX standards and even Windows can claim compliance with some of the
versions.

My point is that this information of the current state of the project does not
belong in the _introduction_ to the project. The fact that it is a Zero-Point-
Something version number is information enough that the project is incomplete.

SpaceX "...DESIGNS, MANUFACTURES AND LAUNCHES ADVANCED ROCKETS AND
SPACECRAFT". They don't add caveats about completeness or design flaws or
anything of that sort _in their introduction_.

And my reduction is just a call-out. The introductory section of the site is
three paragraphs and a sentence long. It's not an introduction at all, at that
point. All of these extraneous details are specifically making the
introduction _less_ clear, not more.

~~~
TurkTurkleton
> I don't think BMW, with their slogan "The Ultimate Driving Machine", shares
> your notion of what it means to be German, then.

Or maybe they understand that different marketing approaches are required in
different cultures. The slogan BMW uses in German-speaking markets is "Freude
am Fahren" (roughly, "driving pleasure", or to be somewhat more literal,
"pleasure while driving"), which is a bit more modest than "The Ultimate
Driving Machine".

~~~
wolfgke
So true. "The Ultimate Driving Machine" would rather be seen as confirmation
of the "swaggerer image" that BMW sometimes has (and BMW is in my observation
trying to get away from).

------
bjackman
Cool! Why?

(I have also spent the last year working on a homebrew OS kernel, so please
trust that my "why" isn't intended as an attack! For me, the answer was simply
"to see if I can", and I really enjoyed the project, but I'd love to know what
motivated you in particular - especially as you seem to have achieved a very
impressive amount)

~~~
bitwize
To paraphrase Cave Johnson, OS dev isn't about why, it's about why not!

~~~
sortie
Also to get your OS into space. That's definitely on the bucket list.

------
zokier
I have always wondered why so many hobby operating systems seem to be so POSIX
focused? Why not explore other designs or make your own?

~~~
sortie
I assure you there are plenty of room for designing your own operating system
even if you implement POSIX. POSIX is a pretty reasonable minimal system
interface for C programs. I osdev for fun and to challenge myself and I find a
very ample supply of interesting things to work on. If I went and did
something different, perhaps in another language, it would likely be
equivalent to the POSIX system concepts largely, except custom and probably
worse. If I really wanted a custom design, I would want it to be at least a
magnitude better.

~~~
zupa-hu
Sortie, would you share what POSIX reference you used for the implementation?
I wanted to read and understand it for a while, but I never made through the
only one I found [1]. Maybe there are alternative sources?

[1]
[http://pubs.opengroup.org/onlinepubs/9699919799/nframe.html](http://pubs.opengroup.org/onlinepubs/9699919799/nframe.html)

~~~
sortie
I use that POSIX 2008 edition myself, and the PDF edition that I got through
my university library subscriptions. I simply look up interfaces and headers
in it. It's not a gentle introduction though to POSIX programming. But if you
know the basics, it's useful to look up in. I generally use the
[http://wiki.osdev.org/Cross-Porting_Software](http://wiki.osdev.org/Cross-
Porting_Software) method when porting new stuff, that is, I just cross-compile
it. I see what doesn't compile, look it up in POSIX, and implement it.

~~~
zupa-hu
I see, thanks a lot. That osdev wiki seems a great source in general. Woohoo!
:)

------
TaterJack117
I always see the person who made this post on OS dev wiki. They are
brilliantly helpful and a champion of the hobby OS community.

------
heywire
I've been watching your posts for quite a while at osdev.org, sortie. Great
job sticking with this! So many people (myself included) start on an OS dev
project only to get bored or give up a few months in. For anyone interested in
hobby OS development who isn't familiar with osdev.org, check it out! They
have a great wiki with tutorials, as well as discussion forums.

------
charliefg
Very cool. I _love_ seeing these home made operating systems. Nice to see an
in-house C implementation! The feature list is very impressive. Screen shot of
GCC running in the terminal is straight up smooth!

------
FreeFull
I haven't been able to get chvideomode to work under Virtualbox. The OS itself
is rather cool, I think I will try to write a simple graphical demo to try it
out.

~~~
sortie
I appreciate you actually trying my OS and leaving a comment. chvideomode
really should work under VirtualBox. If there's a bug on my end, I would
really like to fix it. Could you show up in #sortix on Freenode IRC for a
debugging session?

------
breakingcups
Very cool that it managed to become self-hosting.

------
chipsy
Why does the logo critter have trapezoid feet?

~~~
sortie
Who ate the Apple logo?

------
ape4
Off topic, I always thought libm was a bit too brief a name for the math
library.

------
zyngaro
In C++!. that's cool! But I laughed by just thinking at what Linus Torvalds
would say lol.

------
ra1n85
That logo...

~~~
fit2rule
.. is lovely: [https://users-cs.au.dk/~sortie/sortix/screenshots/sortix-
nee...](https://users-cs.au.dk/~sortie/sortix/screenshots/sortix-needs-a-
better-shell.png)

------
zupa-hu
It's amazing how far you got alone. Respect. I'm also too curious on the
"why". While I greatly respect the achievement, I'm sad to think it's wasted
effort. I deeply wish you have a secret strategy - while I doubt.

~~~
sortie
My utility function is to write a good operating system that I like. Any
effort towards that goal is not wasted. If I can use it on my computers, which
I can, I'm happy. Note the existence of secondary benefits. Sortix libz is a
cleaner fork of zlib, and other portable replacement libraries are underway.
Other hobbyist OS developers learn from my work and advise. I make third party
projects more portable and file upstream bugs. These things benefit all of us,
regardless of the market share of my OS.

~~~
zupa-hu
I see, cool. Thank you for explaining, I think I didn't get the point. Last
point of the Roadmap [1] is hilarious.

[1] [https://gitlab.com/sortix/sortix/wikis/home#roadmap-
to-0-9-r...](https://gitlab.com/sortix/sortix/wikis/home#roadmap-
to-0-9-release)

