User talk:Sabarinathan

Execute user processes in kernel mode
Kernel Mode Linux is a technology which enables us to execute user programs in kernel mode. In Kernel Mode Linux, user programs can be executed as user processes that have the privilege level of kernel mode. The benefit of executing user programs in kernel mode is that the user programs can access a kernel address space directly. So, for example, user programs can invoke system calls very fast because it is unnecessary to switch between a kernel mode and a user mode by using costly software interruptions or context switches. Unlike kernel modules, user programs are executed as ordinary processes (except for their privilege level), so scheduling and paging are performed as usual.

Although it seems dangerous to let user programs access a kernel directly, safety of the kernel can be ensured, for example, by static type checking, software fault isolation, and so forth. For proof of concept, we are developing a system which is based on the combination of Kernel Mode Linux and Typed Assembly Language, TAL. (TAL can ensure safety of programs through its type checking and the type checking can be done at machine binary level. For more information about TAL,http://www.cs.cornell.edu/talc )

Currently, IA-32 and AMD64 are supported.

Further Readings Paper: Toshiyuki Maeda and Akinori Yonezawa.: Kernel Mode Linux: Toward an Operating System Protected by a Type Theory. In ASIAN 2003. LNCS, vol 2896, pp. 3-17. Springer, Heidelberg (2003). http://www.springerlink.com/index/jebgb10vfu4e4dcx.pdf

Linux Journal Articles: Kernel Mode Linux, May 1st, 2003. (http://www.linuxjournal.com/article/6516) Kernel Mode Linux for AMD64, June 30th, 2005(http://www.linuxjournal.com/article/8023)

--Sabarinathan 11:04, 12 May 2009 (UTC)