Here is how the kmem can be statically created: http://kerneltrap.org/man/linux/man4/kmem.4 . It is typically created by: mknod -m 660 /dev/mem c 1 1 chown root:kmem /dev/mem The file kmem is the same as mem , except that the kernel virtual memory rather than physical memory is accessed. . . It is typically created by: mknod -m 640 /dev/kmem c 1 2 chown root:kmem /dev/kmem portfP is similar to mem , but the I/O ports are accessed. . . It is typically created by: mknod -m 660 /dev/port c 1 4 chown root:mem /dev/port And here is the description on the difference between kmem and mem. http://lwn.net/Articles/147902/