Skip to content
/ go-ps Public
forked from mitchellh/go-ps

Find, list, and inspect processes from Go (golang).

License

Notifications You must be signed in to change notification settings

goss-org/go-ps

This branch is 7 commits ahead of mitchellh/go-ps:master.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

7b318e6 · Jun 9, 2023

History

51 Commits
Jan 1, 2023
Jan 1, 2023
Apr 6, 2014
Aug 20, 2017
Apr 6, 2014
Apr 23, 2023
Apr 7, 2014
Aug 22, 2016
Apr 7, 2014
Dec 5, 2018
Jan 1, 2023
Feb 12, 2017
Apr 6, 2014
Oct 17, 2019
Feb 11, 2017
Apr 6, 2014

Repository files navigation

Process List Library for Go GoDoc

go-ps is a library for Go that implements OS-specific APIs to list and manipulate processes in a platform-safe way. The library can find and list processes on Linux, Mac OS X, Solaris, and Windows.

If you're new to Go, this library has a good amount of advanced Go educational value as well. It uses some advanced features of Go: build tags, accessing DLL methods for Windows, cgo for Darwin, etc.

How it works:

  • Darwin uses the sysctl syscall to retrieve the process table.
  • Unix uses the procfs at /proc to inspect the process tree.
  • Windows uses the Windows API, and methods such as CreateToolhelp32Snapshot to get a point-in-time snapshot of the process table.

Installation

Install using standard go get:

$ go get github.com/mitchellh/go-ps
...

TODO

Want to contribute? Here is a short TODO list of things that aren't implemented for this library that would be nice:

  • FreeBSD support
  • Plan9 support

About

Find, list, and inspect processes from Go (golang).

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Go 100.0%