|
From: Tom H. <to...@co...> - 2005-03-30 08:48:41
|
In message <Pin...@ch...>
Nicholas Nethercote <nj...@cs...> wrote:
> On Tue, 29 Mar 2005, Julian Seward wrote:
>
>> What I want to happen is for a Kernel-services Abstraction Layer
>> (Kal) to appear. In the same way that Moz has NPSR, OOo has
>> SAL, etc. Kal will provide services like mmap etc whilst hiding
>> the details of how the call is done on different platforms. Of
>> course Kal will be far simpler than NPSR, SAL, etc, but the idea
>> is the same.
>>
>> So that's something worth looking into. I plan to do this myself
>> anyway at some stage, but if you want to look into it, please do.
>
> Tom, perhaps you could generate some patches and post them to the list
> to see how they turn out. It will be interesting to see how much libc
> stuff is platform-specific.
Attached is a first cut at a kernel abstraction layer. It removes
most of the direct system calls from the coregrind directory and
moves them into KAL routines. As a side effect it implements the
missing mylibc functionality for amd64.
I've made a start on removing VKI types from the KAL interface as
any abstraction layer will need to be independent of the types used
to communicate with the kernel. Many routines still use VKI types
in their interface however.
Tom
--
Tom Hughes (to...@co...)
http://www.compton.nu/
|