Hi to all developers of OS 4.x,
now I'm here myself with my questions about OS 4.x. Thanks to samo79 for his efforts so far here in the forum.
As has been told before, usually no program in the running system needs to know the inner workings of memory management, location of Kickstart modules, etc.
BUT: A virus-scanner needs those information, otherwise it would lead to hundreds of illegal accesses to unexisting memory regions while scanning for viruses/patches...
So once again the one and only question:
How can I determine the physical (and maybe virtual) address ranges of each Kickstart module and the available memory of the system? I can't do a vector check without knowing the normal address of a library function, and I can't limit the memory monitor to existing memory boundaries without knowing them.
So, are the .kmod-files located one after the other without other stuff between? And is there a list of these addresses? Or is there at least a defined memory area to which they are all loaded (eg. $1800000 - $2200000) and nothing else?
Is the 'kernel' always loaded first? I saw that the RT_INIT of kernel points to an even address like $1800000.
Are there any functions anywhere else than in exec.library to determine the physical memory boundaries (any resource or something like that)?
Is the version/revision of 'kernel' actually the Kickstart version?
No more questions until now
If I can't get any solutions for the above problems, I will have to disable vector and memory checks under OS 4.x, so VirusZ would only be available to scan files/archives/sectors/bootblocks...
Thanks in advance,
Georg Wittmann (formerly Hörmann), author of VirusZ and xvs.library