Kernel Interface Page Removal
OKL4 2.1 no longer supports a Kernel Interface Page (KIP). System parameters may now be retrieved from the OKL4 library interface.
Motivation
Recent versions of OKL4 have only used the KIP to store constant system parameters. As the KIP consumes 4KB of memory and uses one L4 system call slot, its cost is not justified by the functionality it provides.
Retrieving System Parameters
The following system parameters may now be obtained from the OKL4 library interface:
Number of available message registers (L4_GetMessageRegisters())
Size of UTCB (L4_GetUtcbSize())
Size of UTCB, log 2 (L4_GetUtcbBits())
Size of UTCB area (L4_GetUtcbAreaSize())
Hardware page sizes (L4_GetPageMask())
Hardware page permissions (L4_GetPagePerms())
Number of bits available for a thread number within a Thread ID word (L4_GetThreadBits())
Is the UTCB base managed by the kernel? (L4_UtcbIsKernelManaged())
The interface is exported via libs/l4/include/config.h.
Further Reading
System parameters supported by OKL4 are further described in Section A-9 of the OKL4 Kernel Programming Manual.