Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 21 Mar 1997 09:22:17 -0700 (MST)
From:      Terry Lambert <terry@lambert.org>
To:        dg@root.com
Cc:        hasty@rah.star-gate.com, hackers@FreeBSD.ORG
Subject:   Re: loadable modules and allocating a big memory segment?
Message-ID:  <199703211622.JAA15806@phaeton.artisoft.com>
In-Reply-To: <199703211015.CAA07938@root.com> from "David Greenman" at Mar 21, 97 02:15:16 am

next in thread | previous in thread | raw e-mail | index | archive | help
> >I am thinking about loadable  sound drivers and video drivers which require
> >continuous physical memory. 
> >
> >In the case of the video drivers we may want to allocate as much as
> >2 megabytes of physical memory. Does current support such a memory
> >allocation scheme?
> 
>    Memory fragmentation is always a potential problem after the system has
> been up and running awhile, but John has made some changes recently that
> increase the likelihood that a chunk can be found. ...so it should work
> most of the time.

Plus there is no serious technical obstacle to doing a defrag on
the memory as part of the contiguous allocation mechanism (though
no one has implemented one).

Effectively, there is no reson why all physical page space can not
be reclaimed, short of the GDT and the currently active LDT, by
simply moving around page data and page table entries.  If you want
to get a bit more complicated (using the dword count for the LGDT
caller to callee stack copying), you should be able to move *everything*
around as much as you want.

...actually, I've always wondered why the kernel stack is preloaded
instead of using the dword to "call" the kernel from real mode... it
would let it TSS back to real mode at any time, if it were done.  You'd
put the reset code there, and RETI from the kernel to cause a reset,
instead of futzing around like we curently do...


					Regards,
					Terry Lambert
					terry@lambert.org
---
Any opinions in this posting are my own and not those of my present
or previous employers.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199703211622.JAA15806>