Re: I/O flexpages / new mapping DB issue with overlapping ports

Espen Skoglund <[email protected]>
Newsgroups gmane.comp.micro-kernel.l4.l4ka.general
Message-ID <[email protected]>
[Frank Mehnert]
> On Friday 09 June 2006 16:48, Espen Skoglund wrote:
>>>> There was at some stage some loose talk about implementing an MSR
>>>> space with similar semantics as the IO space.  This is quite
>>>> trivial to do using the current code base in Pistachio.  Whether
>>>> there are any real benefits to doing so is a different question.
>>> 
>>> In difference to the IO space the MSR space would contain only one
>>> fpage covering the whole MSR space as long as we don't talk about
>>> VT. Since I'm not aware of any MSR which is frequently read or
>>> written, there is probably no reason to allow non-privileged tasks
>>> the access to MSRs.
>> 
>> Yeah.  The best examples I can think of are the MSRs for debugging
>> and performance monitoring.  Anyhow, there's nothing stopping you
>> from mapping single MSRs if you want to.  The code base for doing
>> so is there.

> I'm a bit surprised: How to map single MSRs? The MSRs on IA32 are
> accessed using wrmsr and rdmsr. And there is no bitmap like the IO
> bitmap for IO ports... Of course, reading from/writing to MSRs could
> be emulated in the kernel or in privileged tasks where such a bitmap
> could be maintained.

Right.  You'd have to trap any read/write accesses and emulate them in
the kernel anyway since they are privileged instructions.  The
"overhead" of checking a bitmap (or some other kernel structure) in
software is as such negligible.

	eSk
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.