Back to home page

DOS ain't dead

Forum index page

Log in | Register

Back to the forum
Board view  Mix view

nuclear war (Miscellaneous)

posted by kerravon, Ligao, Free World North, 16.11.2022, 23:54

> > What "implementation" do you suggest for small
> > computers to follow, to allow portability at the
> > C90 source code level, above and beyond what C90
> > itself supports? POSIX doesn't cut it. It relies
> > on the existence of virtual memory.
>
> Which should give you an insight to the futility of it. There is simply not
> enough in common, and the separation between OS and application is vague.

Could you elaborate on both of these things please?

There is not enough in common between the different
small OSes, right, e.g. MSDOS and AmigaOS? So it's
not the API that needs standardization first, the
root problem is that people keep writing new OSes
(like AmigaOS) in a way that prohibits having a
standard API?

Was it a mistake for AmigaOS to do that instead of
copying MSDOS?

Is it technically possible to copy MSDOS, with the
only change being to switch processor (to 68000)?

Or would doing so prohibit enhancements?

Was the purpose of a new OS design so that if it
did become popular, Commodore could lock people
in somehow?

It seems that Microsoft is doing something like that.
Instead of making sure that their code works on an
80386 up, or the first x64, they deliberately look
for a new processor feature and make it mandatory.
Which forces people to buy new computers. And the
new computers require a new Windows license which
is how Microsoft then makes money.

IBM are doing something different. They refuse to
sell z/OS on any non-IBM hardware. Cute.

So the second thing - the separation between
application and OS - do you mean the application
is free to directly manipulate the hardware?

Someone made a comment that C gives you the rope
to hang yourself. If that's the issue, I'm not
worried about that. I just want the system to be
logically correct for logically correct programs.
If wild pointers cause everything to crash and
burn, so be it. That's a separate issue to deal
with at a later date. First I just want simple
things to work.

> But I would investigate e.g. FreeRTOS standards. It seems to be the most
> used somewhat portable OS for small systems.

Thanks for that reference!

I found this:

https://www.freertos.org/FreeRTOS-Plus/FreeRTOS_Plus_IO/FreeRTOS_open.html

Their concept is to return an abstract type instead
of an integer handle. I'm not sure whether that is
a good idea or not. Windows does that too. But POSIX
does not.

In addition, it takes two parameters, using data types
from C99. I'm after C90. And those data types preclude
implementation on a 36-bit machine. They should have
used int_least32_t instead of int_32_t, if they wanted
to use the C99 data types.

So, I don't like the look of this API. And I note that
this is a copyrighted product. If they at least made
the API explicitly public domain that would be a good
start.

But they did the exact opposite, explicit copyright
of even a header file:

https://github.com/maniacbug/FreeRTOS/blob/master/FreeRTOS.h

So, your thoughts?

Thanks. Paul.

 

Complete thread:

Back to the forum
Board view  Mix view
22049 Postings in 2034 Threads, 396 registered users, 55 users online (0 registered, 55 guests)
DOS ain't dead | Admin contact
RSS Feed
powered by my little forum