Overview Features Coding Performance Forum Downloads Products OrderV4 Contact

Welcome to the Apollo Forum

This forum is for people interested in the APOLLO CPU.
Please read the forum usage manual.



All TopicsNewsPerformanceGamesDemosApolloVampireAROSWorkbenchATARIReleases
Information about the Apollo CPU and FPU.

"APOLLO SHIELD" Memory Protectionpage  1 2 

Gunnar von Boehn
(Apollo Team Member)
Posts 5408
16 Jun 2021 11:36


The Apollo-team is working on an new feature for APOLLO-OS, its called APOLLO-SHIELD.
 
Here a quick screenshot, showing you the effect of catching illegal memory access:

 
 


Kamelito Loveless

Posts 196
16 Jun 2021 13:42


Look like a useful tool !


Kamelito Loveless

Posts 196
16 Jun 2021 13:42


Look like a useful tool !
  Is the more button leading to others buttons and specifically one to be able to disassemble the culprit code?


Gunnar von Boehn
(Apollo Team Member)
Posts 5408
16 Jun 2021 14:11


APOLLO SHIELD

Is a simple tool to monitor bad/wrong memory access.
The idea is to find coding bugs and help to identify bad behaving programs.

We wrote an new Disasmtool that can also disasm all new AMMX instructions correctly. This allows to give more information to the programmer which will help to better find coding bugs.


Kamelito Loveless

Posts 196
16 Jun 2021 14:15


Great this is like Enforcer, nice to see tools for programmers.


DiscreetFX Studios

Posts 89
16 Jun 2021 21:23


Very nice feature!


Kamelito Loveless

Posts 196
16 Jun 2021 21:53


I guess you need some kind of resources tracking to be able to know when an app poke  into another app memory right?


Gunnar von Boehn
(Apollo Team Member)
Posts 5408
16 Jun 2021 22:04


Kamelito Loveless wrote:

I guess you need some kind of resources tracking to be able to know when an app poke  into another app memory right?

 
AmigaOs is designed for other apps to write and work in other apps memory.
 
You can imagine this like the postman coming to your ground and putting a letter in your letterbox.
Or the pizza boy coming bringing you a pizza.
Or the cleaning woman coming and cleaning your kitchen.
All this are normal operations on AmigaOS.
And other programs visiting your "house" is always allowed and wanted.
 
 
This is totally different to Linux.
On Linux no other program can visit any other programs house.
And even very simple task like delivering letters or a pizza ares super complicated and super slow on Linux.
 
 
On AmigaOS "visits" are always allowed and are welcome.
The only option on AmigaOS to "catch" bad programs is by placing minefields in the "empty" spaces ... and waiting for a rouge program to run in your minefields.



Geoff Wells

Posts 43
16 Jun 2021 23:13


This sounds like a great tool and I like the postman analogy.  AmigaOS allows the postman to deliver the letter directly where as other OSes force both people to go to the post office, one to drop off the message and the other to check if there is a message.

It did make me wonder if it was possible to catch another scenario.  When the application is loaded into memory would it be possible to distinguish between code and data?  If so, would it be reasonable to block other applications from updating code blocks?  You would have to allow applications to modify themselves but not changing other program code.

Could be a way to broaden the minefield without limiting existing functionality.  Of course it would require the MPU to have the right capabilities.



Gunnar von Boehn
(Apollo Team Member)
Posts 5408
17 Jun 2021 06:45


Apollo Shield, seems to do the job pretty well.
It does what we want to, it finds bad programs.




Gunnar von Boehn
(Apollo Team Member)
Posts 5408
17 Jun 2021 07:09


Protection is enabled




Pedro Cotter
(Apollo Team Member)
Posts 301
17 Jun 2021 07:19


Or if we want it to start really early, put it in Startup-Sequence right after Setpatch


Geoff Wells

Posts 43
17 Jun 2021 16:09


Gunnar von Boehn wrote:

  Apollo Shield, seems to do the job pretty well.
  It does what we want to, it finds bad programs.
 

 
 
  Thanks.  I didn't mean to imply the tool isn't great.  Just trying to get some insight into the capabilities of the MPU and wondering what might be a logical next step.
 
  Keep up the great work!


Gunnar von Boehn
(Apollo Team Member)
Posts 5408
17 Jun 2021 16:36


Hi Geoff,

Thanks

My post was not meant to you.
I just wanted to show "that it works and found some bad programs already"
 
Cheers


Gilles Dridi

Posts 44
17 Jun 2021 17:56


Hi Apollo team,

How shield works ?

Does it catch low memory access only (0x0) ?

Is there a wall on ahead the stack program ?

Are all freed memories fill in with COKE like ASCII word ?

Thank you for insights.

Very, very good tool and software direction for Amiga / Apollo developer.

DGILLES - The Arabic guy -


Gunnar von Boehn
(Apollo Team Member)
Posts 5408
17 Jun 2021 18:07


Gilles Dridi wrote:

Does it catch low memory access only (0x0) ?

It can also catch this.
But it can do more.
 
Gilles Dridi wrote:

Is there a wall on ahead the stack program ?
 
Are all freed memories fill in with COKE like ASCII word ?

MUNGWALL does this already.
 
 

APOLLO-SHIELD keeps/tracks a list of "forbidden" memory areas and catches programs read/write there or executing code from there.
Basically write to KICK-ROM, read from/Write to unused and unallocated Areas.

Its similar to Enforce but its has some more features.
For example it can track DMA. This means also e.g. Wrong ETH DMA transfers could be tracked by Apollo-Shield.
And it could also monitor if program code is executed in data segments.


Gilles Dridi

Posts 44
17 Jun 2021 21:44


Cool, super mega cool.
DG


Nick Fellows

Posts 101
23 Jun 2021 12:17


On Linux no other program can visit any other programs house.
And even very simple task like delivering letters or a pizza ares super complicated and super slow on Linux.

Anti Linux #Bias much ?

"Shared memory is a feature supported by UNIX System V, including Linux, SunOS and Solaris."

If linux is so slow then please explain why it is used for email servers all over the globe.




Gunnar von Boehn
(Apollo Team Member)
Posts 5408
23 Jun 2021 12:49


nick fellows wrote:

If linux is so slow 

 
Yes the way Linux works, is by design much slower than the design concept in Amiga.
 
The Amiga goes a very different design approach - which is much faster and more lightweight. If you have Unix and Amiga coding experience than you will know this.

nick fellows wrote:

If linux is so slow then please explain why it is used for email servers all over the globe.

The same way you can argue "Drinking Coca Cola and smoking must be super healthy", why else would millions of people do it everyday?
That Linux is used in some areas not means that Linux must be the fastest OS.


Nick Fellows

Posts 101
23 Jun 2021 13:53


Why did you feel the need to compare to Linux ? When you could have used Windows or Mac OS? when you said :

"This is totally different to Linux.
On Linux no other program can visit any other programs house.
And even very simple task like delivering letters or a pizza ares super complicated and super slow on Linux."

Heres some facts

AmigaOS uses a microkernel architecture which lends itself to small, compact efficient "Real Time Operating System" RTOS
This is what you mean when you talk about speed and efficiency.

All 3 of the alternative mainstream operating systems use a
monolithic kernel design yet for some reason you single out the open source one.

Im a long time supporter of Vampire , i own a V1200 card which im yet to set up. While this is a forum for Vamped Amigas so one would expect a bias here; i see no slating of other operating systems excpet a clear and present bias against Linux. It troubles me because i was planning on trying to port some linux programs to vampire.

Im feeling hostility towards doing this before i have even started.

Why is this , where does it come from and can we stop comparing apples to horses?



posts 40page  1 2