Golang News http://golangnews.com Jobs, Code, Videos and News for Go hackers - everything about the go programming language Thu, 22 Oct 2020 22:27:00 +0000 An Empirical Study on the Usage of the unsafe Package 4 points posted by gopher https://arxiv.org/pdf/2006.09973.pdf 4472 Sun, 18 Oct 2020 08:31:00 +0000 PDF: A kernel network stack in go Modern operating system kernels are written in lower-level languages such as C. Although the low-level functionalities of C are often useful within kernels, they also give rise to several classes of bugs. Kernels written in higher level languages avoid many of these potential problems, at the possible cost of decreased performance. This research evaluates the advantages and disadvantages of a kernel written in a higher level language. To do this, the network stack subsystem of the kernel was implemented in Go with the Communicating Sequential Processes (CSP) style. Go is a high-level programming language that supports the CSP style, which recommends splitting large tasks into several smaller ones running in independent "threads". Modules for the major networking protocols, including Ethernet, ARP, IPv4, ICMP, UDP, and TCP, were implemented. In this study, the implemented Go network stack, called GoNet, was compared to a representative network stack written in C. The GoNet code is more readable and generally performs better than that of its C stack counterparts. From this, it can be concluded that Go with CSP style is a viable alternative to C for the language of kernel implementations. 4 points posted by kenny http://arxiv.org/pdf/1603.05636v1 782 Tue, 19 Apr 2016 07:50:00 +0000