PyTCP is an attempt to create fully functional TCP/IP stack in Python. It supports TCP stream based transport with reliable packet delivery based on sliding window mechanism and basic congestion control. It also supports IPv6/ICMPv6 protocols with SLAAC address configuration. It operates as user space program attached to Linux TAP interface. As of today stack is able to send and receive traffic over Internet using IPv4 and IPv6 default gateways for routing.
This program is a work in progress and it changes on daily basis due to new features being implemented, changes being made to already implemented features, bug fixes, etc. Therefore if the current version is not working as expected try to clone it again the next day or shoot me an email describing the problem. Any input is appreciated. Also keep in mind that some features may be implemented only partially (as needed for stack operation) or they may be implemented in sub-optimal or not 100% RFC compliant way (due to lack of time) or last but not least they may contain bug(s) that i didn't notice yet.
A Linux driver system that allows unprivileged code to implement file systems. Because the file system drivers exist entirely out of kernel space, you can do some pretty crazy things with the file system block layer...
Courtesy of NetBSD, a rump kernel allows the development of device drivers which can be compiled into a monolithic kernel, compiled as a loadable kernel module, or run in userspace like any other process. This also means that they can be written portably, i.e., they can potentially run on multiple operating systems. It's also possible to write a very simple kernel which acts like a framework to run these drivers in (hence, rump /kernel/).
3515 links, including 130 private