View Single Post
Old 04 June 2020, 08:29   #533
Thomas Richter
Registered User
 
Join Date: Jan 2019
Location: Germany
Posts: 3,233
Quote:
Originally Posted by PurpleMelbourne View Post
IIRC the upper 2GB memory area was reserved for a Motorola idea of memory protection. Lower 2GB being alterable and upper 2GB being read only.

How about CPU_0 + CPU_SMP(1-4)
Won't work. The problem is not memory, but synchronization. The AmigaOs synchronization primitives are actually constructed "the wrong way round". While sane operating systems built on top of semaphores or mutexes to synchronize tasks, AmigaOs uses Forbid-style locking to protect its structures to a major degree.

Unfortunately, Forbid() is not even an exec function, it is also a macro that just increments a counter in ExecBase. That is not at all sufficient to stop another CPU from executing any critical code.

Thus, please understand: AmigaOs is a museum piece. It is not a modern operating system, and it cannot be made a modern operating system. If you want something modern and scalable, there are many alternatives.
Thomas Richter is offline  
 
Page generated in 0.09554 seconds with 11 queries