NetBSD has bioscall() function

Thomas Bocek draft at icu.unizh.ch
Sun Aug 26 22:55:47 UTC 2001


Joel Sherrill wrote:

> How does this functionality look?
>
> http://cvsweb.netbsd.org/bsdweb.cgi/syssrc/sys/arch/i386/bioscall/
>
> It is the NetBSD bioscall() routine.   The man page is here:
>
> http://www.tac.eu.org/cgi-bin/man-cgi?bioscall+9
>
> I know there are some problems going back into real mode but am
> curious to hear what everyone thinks. 


I took a look at the code and it should work. But compared to the memory 
probing code in the linux source tree, the bsd code is huge!
AFAIK the grub stores the memory size in RAM, jumps to protected mode, 
writes the address of the memory location into ebx and jumps finally to 
the application. Then the application can take the memory size from the RAM.
Here is my suggestion: Copy the linux code into the start16 file, store 
the memory size somewhere at the beginning (is always 7c00:0000 on a pc) 
and then jump to the application. Write a method that can read the 
memory location. After that RTEMS should work with grub and start16 
without the old memory probing function.

Thomas Bocek




More information about the users mailing list