In-kernel web server
Encyclopedia
An in-kernel web server is an unlimited HTTP server that runs in kernel space or equivalent. Also called "accelerator".
Benefits
- Performance. The path taken by data from disk to network. Proper asynchronous zero-copy interfaces would make this available from user-space.
- Scalability with respect to number of simultaneous clients. Event notification of comparable scalability seems unlikely in user-space.
Drawbacks
- Security: Kernel processes run with unlimited privileges.
- Portability. Every kernel needs a specific implementation route.
- Reliability. Failure in the webserver may crash the OS.
Implementations
- SolarisSolaris Operating SystemSolaris is a Unix operating system originally developed by Sun Microsystems. It superseded their earlier SunOS in 1993. Oracle Solaris, as it is now known, has been owned by Oracle Corporation since Oracle's acquisition of Sun in January 2010....
/NCAkmod - HP-UXHP-UXHP-UX is Hewlett-Packard's proprietary implementation of the Unix operating system, based on UNIX System V and first released in 1984...
/NSAhttp - LinuxLinuxLinux is a Unix-like computer operating system assembled under the model of free and open source software development and distribution. The defining component of any Linux system is the Linux kernel, an operating system kernel first released October 5, 1991 by Linus Torvalds...
/khttpd - LinuxLinuxLinux is a Unix-like computer operating system assembled under the model of free and open source software development and distribution. The defining component of any Linux system is the Linux kernel, an operating system kernel first released October 5, 1991 by Linus Torvalds...
/TUXTUX web serverThe TUX web server is an in-kernel web server for Linux licensed under the GNU General Public License . It was maintained by Ingo Molnár.It is currently limited to serving static web pages and coordinating between kernelspace modules, userspace modules, and regular userspace web server daemons that... - Windows NTWindows NTWindows NT is a family of operating systems produced by Microsoft, the first version of which was released in July 1993. It was a powerful high-level-language-based, processor-independent, multiprocessing, multiuser operating system with features comparable to Unix. It was intended to complement...
/http.sys (part of IISInternet Information ServicesInternet Information Services – formerly called Internet Information Server – is a web server application and set of feature extension modules created by Microsoft for use with Microsoft Windows. It is the most used web server after Apache HTTP Server. IIS 7.5 supports HTTP, HTTPS,...
) - SPINSPIN (operating system)The SPIN Operating System is a research project implemented in the computer programming language Modula-3, and is an Open Source project. It is designed with three goals in mind: flexibility, safety and performance. SPIN was developed at the University of Washington.The kernel can be extended by...
/http - OpenVMSOpenVMSOpenVMS , previously known as VAX-11/VMS, VAX/VMS or VMS, is a computer server operating system that runs on VAX, Alpha and Itanium-based families of computers. Contrary to what its name suggests, OpenVMS is not open source software; however, the source listings are available for purchase...
/WASD.trap