[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[MiNT] XaAES / GEM memory issues



Hi,

About XaAES/AESes:

In the oAESis project we have had this concern too. To give (some of) the AES's 
functions ability to write into other applications's memory, we had the idea of 
implementing those functions in a device driver. It also lets the MiNT kernel 
deal with mutual exclusion (instead of having semaphores like in XaAES), but it 
involves more communication and the debugging is not very convenient since a 
crash means a reboot. (so yes, with this the AES can make the whole system go 
down).

FYI, oAESis 0.91 can use communication via sockets (instead of pipes in XaAES) 
or Pmsg() between the bindings ('shared lib') and the trap #2 handler 
('server'). But the Pmsg-based comm is not MP safe since the messages carry 
pointers on non-shared memory zones. Christer Gustavsson is aware of that, but I 
am not sure if it is fixed yet.
The idea is that as many functions as possible should run in the user domain 
(thanks to the shared library) and that just the rest be performed by the AES 
server.

Another point is that the VDI would have the same problem when passing MFDB 
structures.
Also, the VDI doesn't use /dev/mouse to read mouse events, and does not provide 
anything for the AES to Fselect on. (That's why the Moose exists, and oAESis has 
the same thing).
how does fVDI manage the mouse ? and the keyboard ?

Is the format returned by /dev/mouse standard ? Do you know of any application 
using this device ? Johan, what about using /dev/mouse and /dev/kbd to retrieve 
mouse events into fVDI ?

IMHO, a clean VDI is the first step to have a clean GEM, and the FreeMiNT kernel 
now provides (almost :) ) everything required for a clean graphic system, so 
let's move on !


Vincent