Learning paths · Skills · Intermediate

Go: how it really runs

What sits under a Go program: one static binary with its runtime, goroutines on a scheduler, channels and locks, how values are laid out and collected, and how net/http turns all of that into a server.

0 of 13 done

The map

  • Not started
  • In progress
  • Done
  1. 01From source to binaryThe toolchain, modules, the runtime0/2
  2. 02Values and typesSlices, maps, interfaces, errors, generics0/4
  3. 03MemoryStack or heap, and the collector0/2
  4. 04Many things at onceGoroutines to an HTTP server0/5
  5. 05Next: system designSame ideas, at service scale

Everything here is about the gc toolchain (the go command from go.dev) and Go 1.23 or later. The examples were run with Go 1.26; where a behaviour arrived in a specific release (range over integers in 1.22, WaitGroup.Go in 1.25, errors.AsType and the Green Tea collector by default in 1.26, generic methods in 1.27), the topic says so.

Where this path leads