Welcome, Guest. Please login or register.

Author Topic: Will OS4 have SMP after all  (Read 32755 times)

Description:

0 Members and 1 Guest are viewing this topic.

Offline minator

  • Hero Member
  • *****
  • Join Date: Jan 2003
  • Posts: 592
    • Show all replies
    • http://www.blachford.info
Re: Will OS4 have SMP after all
« on: July 24, 2013, 08:42:43 PM »
Quote from: spirantho;741778
My understanding is that AmigaOS is basically not great friends with SMP, because of the way that it works.

Simply put the existing Amiga OS design is incompatible with the whole idea of SMP.

The Amiga uses a single address space for everything including the OS.  There is also no real memory protection for apps or the OS.  Apps have direct access to the OS internals.

If you have more than one app running simultaneously on different processors both can write to the internals of the OS at the same time.  When this happens the OS will very rapidly crash due to data corruption.

Quote
For this reason, Hyperion are aiming at getting multi-processor support in without SMP - which is quite possible.

There is probably a way to hack on some form of multi-processing using OS proxies but this is going to slow things down.  Alternatively you could use an AMP systems that gives you a series of psuedo-independent OS instances (i.e. one copy of the system per processor).

Quote
Would people notice the difference between this and SMP? Probably not, especially on an OS as efficient as AmigaOS.

This matters a great deal.  
Many apps these days originated on Linux or other OSs.  If these apps can make use of multiple processors they can run faster.  These applications are designed for an SMP system, running them on a non SMP-system will get you no speedup because they won't be able to use the other processors.  You will have to rewrite any such applications for that to work.

Furthermore any existing Amiga apps will not be able to take advantage of the other processors either.  You will have to rewrite them to use the other processors as well.  This is no trivial rewrite, it will involve splitting the application into parts and somehow getting them parts to communicate and share data.  This is notoriously complicated.

...and I haven't even mentioned Amdahl's law.


The answer to this is very simple.  The MorphOS guys had it figured out years ago - you need design and build a new OS.  Unfortunately, it's a massive amount of work and will take many years to complete.


Quote
So, don't ask about SMP - ask about multi-processing, as SMP is just one type of multi-processing.

No, do.  It's quite important.