Go Reference

This repository holds supplemental Go packages for low-level interactions with the operating system.


The easiest way to install is to run go get -u You can also manually git clone the repository to $GOPATH/src/

Report Issues / Send Patches

This repository uses Gerrit for code changes. To learn how to submit changes to this repository, see

The main issue tracker for the sys repository is located at Prefix your issue with "x/sys:" in the subject line, so it is easy to find.

Expand ▾ Collapse ▴


Path Synopsis
cpu Package cpu implements processor feature detection for various CPU architectures.
internal/unsafeheader Package unsafeheader contains header declarations for the Go runtime's slice and string implementations.
unix Package unix contains an interface to the low-level operating system primitives.
windows Package windows contains an interface to the low-level operating system primitives.
windows/mkwinsyscall mkwinsyscall generates windows system call bodies It parses all files specified on command line containing function prototypes (like syscall_windows.go) and prints system call bodies to standard output.
windows/registry Package registry provides access to the Windows registry.
windows/svc Package svc provides everything required to build Windows service.
windows/svc/debug Package debug provides facilities to execute svc.Handler on console.
windows/svc/eventlog Package eventlog implements access to Windows event log.
windows/svc/example Example service program that beeps.
windows/svc/mgr Package mgr can be used to manage Windows service programs.