Fiasco.OC x86 IO port permission bitmap
Adam Lackorzynski
adam at os.inf.tu-dresden.de
Tue Jan 24 20:03:36 CET 2012
Hi,
On Mon Jan 23, 2012 at 15:54:29 -0800, Daniel Waddington wrote:
> I want to use the TSS I/O permission bit map to support fine grained
> control of I/O access for user-level apps (x86 32 bit target). From
> looking at the kernel code, I believe the bit map is switched out
> per-process as part of the Context class (Space::_io_space) -
> correct me if I am wrong. My query is how to set/clear the bits for
> a given target task from a "root" task with sufficient privileges
> (e.g., base caps and sigma0 caps). I could extend the kernel
> scheduler protocol, but I don't want to do this if there is already
> a clean way in place.
IO-ports are handled similar to page-faults, i.e. they can be mapped to
other tasks, and the pager receives io-page-faults when one of its
clients accesses an IO-port without having it. For example look for
L4_PROTO_IO_PAGE_FAULT and l4_iofpage().
Adam
--
Adam adam at os.inf.tu-dresden.de
Lackorzynski http://os.inf.tu-dresden.de/~adam/
More information about the l4-hackers
mailing list