0.0.1 |
|
---|
#105 in #uutils
55KB
759 lines
procps
Rust reimplementation of the procps project
Provides 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 (such as whether the process is running, stopped, or a "zombie").
Ongoing:
pwdx
: Shows the current working directory of a process.free
: Shows the amount of free and used memory in the system.w
: Shows who is logged on and what they are doing.watch
: Executes a program periodically, showing output fullscreen.pmap
: Displays the memory map of a process.
TODO:
ps
: Displays information about active processes.pgrep
: Searches for processes based on name and other attributes.pidwait
: Waits for a specific process to terminate.skill
: Sends a signal to processes based on criteria like user, terminal, etc.slabtop
: Displays detailed kernel slab cache information in real time.tload
: Prints a graphical representation of system load average to the terminal.top
: Displays real-time information about system processes.vmstat
: Reports information about processes, memory, paging, block IO, traps, and CPU activity.pkill
: Kills processes based on name and other attributes.snice
: Changes the scheduling priority of a running process.
Elsewhere:
kill
is already implemented in https://github.com/uutils/coreutilsuptime
: Shows how long the system has been running, including load average. is already implemented in https://github.com/uutils/coreutils
Installation
Ensure you have Rust installed on your system. You can install Rust through rustup.
Clone the repository and build the project using Cargo:
git clone https://github.com/uutils/procps.git
cd procps
cargo build --release
cargo run --release
License
procps is licensed under the MIT License - see the LICENSE
file for details
Dependencies
~7–15MB
~212K SLoC