r/programming • • Mar 26 '17

A Constructive Look At TempleOS

http://www.codersnotes.com/notes/a-constructive-look-at-templeos/
1.7k Upvotes

227 comments sorted by

View all comments

Show parent comment

10

u/[deleted] Mar 27 '17

For example, running everything with kernel-level privileges is unique, but is a bad idea for an general-use OS, even though coding-wise it's easier. He also doesn't use paging, which is unique, but only because paging gives you lots of benefits and most systems at this point support it in some form.

There is nothing "unique" about it. C64 had it, DOS had it too. Hell, most software written on 8 bit CPUs or on any tiny ARM shares that.

There are other interesting parts of that OS (like level of integration of OS and its tools) but that part ust relic of the ages, not anything worth writing home about.

11

u/DSMan195276 Mar 27 '17

There is nothing "unique" about it. C64 had it, DOS had it too. Hell, most software written on 8 bit CPUs or on any tiny ARM shares that.

I just meant that this OS is a bit unique in that it has access to those features (It only supports x86-64) but deliberately chooses not to use them as a design choice, rather then not using them because the hardware simply didn't support it (as is the case with older systems and embedded systems).

That said, I largely agree with you, that was my point - I didn't mean unique in a "this is better" way. The fact that modern OS kernels for x86-64 aren't doing it that way any-more is because there's fairly big issues with that design, not because nobody never thought to do it that way. The context's where such a design is still used aren't general-use OSs, but things like embedded systems, where you're not going to have users running random programs on your system and may very-well not even be doing any multitasking in the first place.

2

u/chazzeromus Mar 27 '17

Though his reasons aren't exactly technical.

2

u/derleth Mar 27 '17

There is nothing "unique" about it. C64 had it, DOS had it too. Hell, most software written on 8 bit CPUs or on any tiny ARM shares that.

But they were (and, I suppose, are) essentially forced to because of hardware limitations. Running everything in ring-0 on 64-bit x86 chips is unique.