I always express carefully where I have no insight. I already understood that you use AI but I have no insight in amigaos development, only AROS. The same for MorphOS. If and how it is used I cannot judge.
I avoid making claims without knowledge.
Regarding my own activity, I started digging the surface. I am not lowlevel OS developer but primarly interested in the user. So my main interest is doing software like GUIs to make use easier, create small tools like converters I can integrate and of course viewer/player where I still miss something in my distribution. And I plan to use it to develop also small applications with it like Raytracer or Fractal software. We will see what is possible. That is my personal interest. I never claimed that this is already all you can do. Without wanting to sound like a teacher ;)
For experienced and capable developers AI is clearly a very useful tool. One issue for the future is it removes the need to have detailed low level knowledge, so newcomers/vibe coders don't develop the ability to spot and fix some of the errors it leaves behind and this is of particular concern when looking at security and robustness.
Other issues include the enormously detrimental impact upon the environment, but as in many areas of human activity, this seems to be of little concern to most.
And what about long term financial cost? At the moment all the AI companies are keen to allow users free or cheap access and certainly not covering their own costs. At some point, once everyone is hooked and reliant, they will want to make proper profits. This is how drug dealers and software companies have always worked.
AI creates certainly better code than what many beginner or average developers do, expecially under time pressure.
You can always search and find something negative, it would be naive to think that such a revolution only creates winners. But I see it from our current situation and there it is currently a big win. What will be in 5-10 years or longer i cannot predict.
@afxgroup thanks to your work many of the modern Amigas are a better value now. It would be great if Hyperion and A-Eon could get the things together, officially support your kernel… meanwhile your work is absolutely amazing
@afxgroup is there plan at some point to break compatibility to implement memory protection and ressource tracking?. Old ppc app could then be sandboxed like 68k ones. While New software or ported one will take Advantage of the new features.
Honestly memory protection is a really big problem since the entire OS has never been designed with memory protection in mind. And also create a sandbox is not so easy. We'll see. At moment it has a lower priority
That's really interesting (all your work on the kernel), so getting the memory protection working will the next thing be to utilizes memory better? You could move each quarantine program its own virtual 2Gb address and move them beyond the 2Gb barrier.
So even that a single the program per se cannot use more than 2Gb, multiple program can exits which combined uses more than the 2Gb limit.
Every AmigaOS program and module finds the system the same way:
SysBase = *(struct Library **)4; /* read the pointer at address 4 */ IExec = SysBase->MainInterface; /* and from it, the exec interface */
Wrong, no sane AmigaOS 4.x software does that (unless it's using a crap C library like clib2).
The correct way on AmigaOS 4.x to get SysBase is from the _start() arguments:
_start(STRPTR args, int32 length, APTR execbase);
That includes any software using newlib.library.
In kickstart modules, libraries, devices, resources, etc. there are different ways to get SysBase and/or IExec, but it's never based on **4 in correctly written AmigaOS 4.x software.
Check the dos.library CreateNewProc(), RunCommand(), System(), etc. autodocs. Each program gets the same SysBase from dos.library.
@All All that memory protection and sandboxing sounds like a mantra, like that what our main problem are :) But, you forget to take into account IT WILL BE SLOWER. On our 2ghz maximum powerpc CPU, we already feels that we not fast enough sometime. So, having those modern things like memory protection and sandboxing, at least IMHO, will make things be slower. And only, for "one app can't crash whole OS", but then, what , we can't reboot ? Or we need to write apps which will crash OS ?
I am all in, just SPEED is matter, too, of course. Even in the article Andrea point : we always was about speed, but ..xxxxxx..., so result will be in any case slower whole experience. And for example i am, love os4 for this speed in first place too, of course. Which not crawl, but just crash and you reboot :)
But if that all experiment and can be simple disabled, then why not, every experiment worth of it. Maybe it will be not _that_ slow in end (but it will imho).
Speed is certainly a hallmark of AmigaOS, but the introduction of full memory protection would represent a quantum leap, bringing our platform closer to modern, universal standards—and thus, theoretically, making it possible to offer AmigaOS to a wider audience.
A few advantages: Total immunity to software crashes caused by other applications: currently as we all know, due to the system's architecture, a crash in a legacy component or driver can still bring down the entire system With full protection, no user program could ever cause a total system freeze... aka say goodbye to that crap freeze!
Modern cybersecurity: it would become possible to implement standard defenses such as a clear separation between user and kernel privileges, sandboxing, and protection against malware that reads or modifies the memory of other processes (a crucial aspect, for instance, when handling passwords or banking transactions via a browser).
Easier porting of modern software: virtually all modern software (complex web browsers, office suites, databases, virtual machines) is developed with the assumption that isolated memory spaces and process-forking mechanisms exist.
Thanks for the clarification, but essentially, what are the actual benefits of correctly using the `new.library` procedure? Greater stability? ...Or if a program crashes, it doesn't freeze the entire system? Using of `Clib2` become mandatory nowadays, otherwise porting programs from other systems becomes a nightmare... Do you think there is a better approach? Thanks.
Sam 460EX, 2Gb Ram, Sapphire RX580 8GB NITRO+ SE, AmigaOS4.1 FE A4000 PPC604@233, Mediator A1200 PPC603@160, Mediator uA1 G3@800, 512 Mb [sold]