Welcome, Guest. Please login or register.

Author Topic: Request about OS Development  (Read 35705 times)

Description:

0 Members and 1 Guest are viewing this topic.

Offline psxphill

Re: Request about OS Development
« on: November 21, 2017, 05:33:42 PM »
Quote from: LoadWB;833398
Eh, PPC doesn't run 680x0 natively, does it?  Doesn't MorphOS and AmigaOS4 have an emulation layer for this?  Why can't AROS?


You can get big endian PowerPC chips, you can't get big endian x64 chips.

It's possible to create an x64 compiler which deals with the endian conversion (bonus points if you can figure out how to make it only do the endian conversion for data that really matters).

This is how amithlon added support for native code. Recreating it with the ability to use Amiga OS 3.1 and the 68k PCI libraries to use network/graphics cards etc would be a start. Then duplicate the way of switching from 68k to x86 from amithlon & you can start replacing 68k libraries with x64 versions (potentially from aros).
 

Offline psxphill

Re: Request about OS Development
« Reply #1 on: November 22, 2017, 06:39:57 PM »
Quote from: LoadWB;833428
I simply asked if anyone had done an analysis of what Apple did and realistically applied it to what could or would need to be done with AmigaOS.


The first thing they did was write an emulator, the first version http://apple.wikia.com/wiki/System_7.1.2 only contained 10% native code.

You'd start with a UEFI bootable x64 68k emulator which only emulates the hardware well enough for os legal software to work.

Then allow the emulator access to real hardware and start writing replacements for things like serial.device, scsi.device etc and use Remus to create a custom kickstart.

You hit problems running native code if you want to target little endian (x86/x64) which apple didn't have to deal with for the PowerPC versions of MacOS. So you'd need to build a compiler that deals with it (you're essentially recreating Amithlon)

When they switched to intel they threw out MacOS and replaced it with MacOSX. This it the equivalent of installing Linux with an Amiga themed window manager and running AROS Hosted on it.
 

Offline psxphill

Re: Request about OS Development
« Reply #2 on: November 23, 2017, 12:47:24 PM »
Quote from: kolla;833499
Again, no. OS-X was when porting *to* PowerPC was finished, not porting to Intel. Sigh.

You're a drama queen, my point is valid. MacOS X always ran on Intel, they just didn't sell it. MacOS X was essentially a reskinned NextStep, it ran on x86 before it ran on PowerPC. https://www.youtube.com/watch?v=pQaqDQx3Lo8

MacOS X didn't need 68k & x64 structures to be compatible as the 68k code was running in an emulator. In classic MacOS they were able to keep all memory structures compatible because they were both big endian CPUs.

Quote from: bloodline;833493
Which is exactly what should have happened to the Amiga 20 years ago.

AROS is more than 20 years old. It's biggest problem was that people hated x86 back then, people even made Intel Outside stickers. It was too late by the time the user base had conceded defeat on the CPU. Apple had the revenue, nobody else did.

The "if commodore had survived, they would have .... " argument is also kinda difficult to make. IMO if they had paid the xor patent fee so that they could import CD32 into the US and then be able to pay the factory who made them then they might have survived for a little longer. But the PlayStation would have eaten their lunch. Commodore didn't really know what to do after they launched the a500.
« Last Edit: November 23, 2017, 01:15:52 PM by psxphill »
 

Offline psxphill

Re: Request about OS Development
« Reply #3 on: November 23, 2017, 09:39:50 PM »
Quote from: kolla;833518
Exactly, this time you got it right :)


So getting me to expand my answer for your pedantry was worthwhile?
 

Offline psxphill

Re: Request about OS Development
« Reply #4 on: November 24, 2017, 10:11:53 AM »
Quote from: bloodline;833534
when running on AROS, all the OS data structures an Amiga App running in that space expects to find will be present and so the App will run (just as it does on 68k AROS).

How do you solve the problem of

DWORD x=0x12345678;
char *y=hello";

char a = [(char *)&x)[0];
char b = y[0];

a is different on a big endian cpu to a little endian cpu.

Have you essentially created a little endian 68k so it will work with native AROS structures when accessing the data with the same size as it was defined? That might work in some situations, but it's trivial to create an example where it would fail.

[QUOTE="bloodline;833534]The big problem comes when trying to run the 68000 App on a 64bit processor like the x86_64, then the Amiga App can only see the first 4gig of memory, but all the the OS data structures and even the Application itself could be anywhere in a multi terabyte address space (this is address space, not simply installed RAM)... so it will fail and there is no way around this.

The 68k Amiga is firmly trapped in a 32bit world.[/QUOTE]

Where the OS structures are is irrelevant, they will contain 64 bit pointers so the offsets will be all wrong. You could however create an x32 https://en.wikipedia.org/wiki/X32_ABI AROS build.

This would have most of the benefits of x64 (see previous link) but still allow 68k code to run, potentially as well as legacy Power PC apps (if you write another emulator). If you have solved the endian issue (and I'm looking forward to your explanation) then you might be able to throw in a way of switching to x86 code as well as supporting this on x86 builds of AROS, otherwise you need an x32 big endian ABI.

You could create another method for allocating memory > 64gb for ramdisk & file system caches where you can guarantee the pointers won't need to be accessed outside the task. Which could be used on x32 builds and x86 builds using PAE.

Apple & Microsoft have gone through similar issues.

Also, how did you handle switching between x86->68k->x86 because it would be nice if exec/SetFunction could be used from both x86 & 68k code and have it be called transparently.
« Last Edit: November 24, 2017, 10:23:13 AM by psxphill »
 

Offline psxphill

Re: Request about OS Development
« Reply #5 on: November 29, 2017, 10:25:20 PM »
Quote from: kreciu;833618
I know, but somewhere behind my head I have this sentiment that AmigaOS could takeover whole world :).


According to Commodore UK there were 5 million Amiga sold in UK and USA.

Sony sold 100 million PlayStation, 155 million PlayStation 2, 80 million PlayStation 3, 67 million PlayStation 4.

Amiga has no hope of taking over anything.
 

Offline psxphill

Re: Request about OS Development
« Reply #6 on: November 30, 2017, 09:49:25 PM »
Quote from: AmigaNG;833633
I think there is still a small chance that such a community could be built.


Build it and see. But how will it be different to Linux?
 

Offline psxphill

Re: Request about OS Development
« Reply #7 on: December 01, 2017, 03:19:11 PM »
Quote from: sim085;833661
Is there any OS feature which is better in AmigaOS than in Linux or Unix? And I am not speaking about the 80s. I mean now; something that Amiga OS still does better than the other more developed operating systems out there. Something which is fundamental to AmigaOS and done differently in other operating systems and AmigaOS way of doing this is still better than how the other operating systems are doing it.

Not really. Everything was designed to work within the confines of the hardware.

If you don't have access to an mmu then you can't make use of it, so you may as well make the most of all programs being able to read and write all memory. Now you have an MMU, that falls apart.

If today's hardware was available in the 80's then you wouldn't design amigaos the same way.

The one feature I used to miss was drive names rather than letters and being able to use volume labels instead. But there are issues with the way amigaos did that as well, it's greatest use was with using removable media for working storage & we don't tend to use that now.

Quote from: stefcep2;833660
http://www.popularmechanics.com/technology/infrastructure/a16010/30-year-old-computer-runs-school-heat/

You'll always find examples like that. I knew someone who had been using a BBC micro for running a custom lighting rig for 30 years. Like the amiga running an air conditioner, it didn't really make much sense. You could use something more modern, more reliable, more supportable.
« Last Edit: December 01, 2017, 03:32:30 PM by psxphill »
 

Offline psxphill

Re: Request about OS Development
« Reply #8 on: December 02, 2017, 08:55:23 AM »
Quote from: Thomas Richter;833691
Unfortunately - and this is a typical Linux thing - so many multiply different that solve so many multiply different problems that it is close to useless.

Amiga datatypes have the same problem, as soon as you go out of their scope then you have to reinvent the wheel.

Quote from: stefcep2;833704
To replace it the quote is $1.5 million to $2 million.  When asked why it hasn't been replace a spokesman said "because it just works".  I hear that said about Linux, but this time it really is true.

"the computer and the associated system will be replaced at a cost of around $2 million"

It's the radio modems between the 19 sites that are the problem. According to the article it doesn't "just work" at all.

Quote
"Because they share the same frequency as our maintenance communications radios and operations maintenance radios - it depends on what we're doing - yes, they do interfere," Hopkins said.

If that happens, "we have to clear the radio and get everyone off of it for up to 15 minutes."

It would be possible to replace the modems with something like a raspberry pi which takes the data from the amiga and transmits the data over the internet instead, but then why do you need the amiga at all?

They are currently reliant on an ex pupil who set it up, that happens to still live in the area.

Without a breakdown of what they are going to spend the 2 million dollars on, it's hard to know whether it's value for money. The Amiga replaced an earlier computer, so it's very likely that a lot of the equipment is much older & also in need of replacement.

If a salesman comes in and says we can replace it all for 2 million dollars and we'll support it, or if you want to keep individual parts then you better write us a blank cheque and any problems will be on your own head then most people will pay the 2 million. The people making the decision are probably sick of the "sorry can't do any work, got to wait 15 minutes because of the air conditioning computer".
« Last Edit: December 02, 2017, 09:29:25 AM by psxphill »