id,summary,reporter,owner,description,type,status,priority,milestone,component,version,resolution,keywords,cc,field_blocks,field_dependson,field_seealso 674,Implement virtio-net driver,Jakub Jermář,,"Implement a native HelenOS driver for virtio network device. Details:: Virtio is a [http://docs.oasis-open.org/virtio/virtio/v1.0/cs04/virtio-v1.0-cs04.html specification] for virtual I/O devices that allows to use paravirtualized drivers with an otherwise fully-virtualized guest OS, leading to more efficient I/O. Virtio network device (virtio-net) is currently supported by KVM and !VirtualBox. The new driver should be realized as a PCI device driver which plugs itself into the HelenOS Device Driver Framework (DDF) and networking stack, and implements the network interface card interface (NICF) in the virtio-net specific way. What Gains and Benefits will this bring?:: HelenOS might need a virtio network device driver if we want to run it in a KVM-based hosting (e.g. Google Compute Engine) and serve some web content (e.g. microkernel.info or even self-host helenos.org) to the public from it. Difficulty:: medium to high Required skills:: A successful applicant will have good skills of programming in the C language and the ability to learn and use HelenOS specific I/O functions. A successful applicant should have a fair understanding of the workings of the networking stack and the DDF and NICF too. Documentation:: * [http://docs.oasis-open.org/virtio/virtio/v1.0/cs04/virtio-v1.0-cs04.html specification Virtio network device] * [http://www.helenos.org/doc/helnet.pdf HelenOS NICF documentation] * [https://archive.fosdem.org/2012/schedule/event/550/113_helenos_dd.pdf Dive into HelenOS Device Drivers] * [http://www.helenos.org/wiki/DeviceDrivers Writing Device Drivers for HelenOS] Possible mentors:: HelenOS Core Team, Jakub Jermar",enhancement,closed,major,0.7.2,helenos/net/other,mainline,fixed,"virtio, net, gsoc18",,,,#675