Notes
=
These are just notes I've gathered and a list of the status of different calls
and ideas for others.
Cross-Platform
==
* am_root - libc::geteuid() is unstable still.
* name - Returns the name of the process with the specified pid
* listpids - Only implements listing all pid types
* libversion - Just returns error message on linux as no lib used
* cwdself - just wraps env::current_dir() of rust so not so useful
* pidpath - Returns the path of the file being run as the process with specified pid
* kmsgbuf - get the contents of the kernel message buffer
Pending
==
Mac OS
===
* pidcwd Can't see yet how to do this in Mac OS
Linux
===
* listpidinfo
* regionfilename
* pidinfo
* pidfdinfo
Ideas
==
Here is a lits of things I see would be easy to do on Linux. I still need
to look into how they could be done on Mac.
* command line arguments
* environment vars
* uid running a process
* parent pid (ppid)
Reference Docs
==
Apple Docs
===
https://developer.apple.com/documentation/
Linux Docs
===
https://manned.org/libproc/9ae74aa3 libproc man page
https://docs.oracle.com/cd/E88353_01/html/E37842/libproc-3lib.html
https://manned.org/libproc_dev.3 name_to_dev, dev_to_name - lookup device names and numbers tty_to_dev,
dev_to_tty - lookup tty names and numbers
https://manned.org/libproc_output.3
https://manned.org/libproc_pw.3 user_from_uid, group_from_gid - lookup ids in /etc/passwd and /etc/group
https://manned.org/readproc.3 read information from next /proc/## entry
https://manned.org/readproctab.3 read information for all current processes at once
https://manned.org/openproc.3
https://gitlab.com/procps-ng/procps Command line and full screen utilities for browsing procfs, a "pseudo" file
system dynamically generated by the kernel to provide information about the
status of entries in its process table.