> Is there any site where I can read in very good detail and in a way that  
> is easy to understand, how flat-real mode, VCPI and DPMI work and how  
> they deal with other previously loaded systems to avoid collisions?

I don't know about such a site. RBIL however provides much information  
about the VCPI, DPMI and XMS interface each. If you can read Assembly, you  
can also look at the source code of HIMEMX, JEMM and HDPMI.

>    DOS386 mentioned "if you want PM, you have VCPI", I think, meaning if  
> I wanted to access PM memory. If that is the case, that line is indeed  
> very significative to me!  Only I wish I knew more about VCPI.

Read the RBIL description of the Int67.DE functions.

>    One doubt I have about XMS functions is this: the XMM specification  
> states that if I lock some memory, I must unlock it as soon as possible.  
> How soon is that?

I think it doesn't have to happen at all. You don't even have to unlock  
the block before deallocating it (when your driver is removed from  
memory). Someone else might know about that better.

> What exactly is a lock count?

The lock count is incremented each time you lock that memory block. Each  
time you call XMS to unlock the block, it's lock count is decremented.  
Only if it reaches zero, it's actually unlocked. This way the owner may  
lock the block multiple times but it really is unlocked only after  
unlocking it as often.

In case you thought about it as some kind of timer: no, it isn't.

> I may, for many things, not need to know where my memory block is  
> located, but sometimes, when I do need it, it would be important to keep  
> it locked for as long as the driver is running, because it is a driver  
> and other programs would be relying on it.

You could require these programs to register as soon as they want to use  
the driver, and unregister when they're done using it. (You may want to  
lock XMS memory blocks the whole time anyway though.)

> Can I keep memory locked like for the whole time one process is running  
> (i.e.: half an hour)?  How bad is that?

As mentioned, I think that's allowed.

Regards,
Christian

------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay 
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
_______________________________________________
Freedos-devel mailing list
Freedos-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-devel

Reply via email to