Expand description
sys-rs — a small ptrace-based binary inspection and tracing toolkit.
The crate provides a tracer framework and utilities to inspect running
processes: disassembly helpers, breakpoint management, syscall
formatting, REPL and progress helpers. The public modules are organized
to allow small, targeted tools (for example the addr2line and strace
binaries in bin/) to reuse the core tracing logic.
See the bin/ examples in the repository for small command-line front-ends.
§Requirements
Requires nightly Rust (#![feature(trait_alias)]) and targets
Linux x86_64 only.
§Library stability
The public API of this library crate is an internal implementation detail of the bundled binaries and is not subject to semver guarantees.
Modules§
- asm
- Disassembly helpers using capstone.
- breakpoint
- Software breakpoint installation and management.
- command
- Command registry, dispatch, and REPL tab-completion.
- coverage
- Coverage data collection and source annotation.
- debug
- DWARF debug-info parsing (addr-to-source-line resolution).
- diag
- Error and Result types used throughout the crate.
- handler
- ptrace-based command handler functions for the debugger REPL.
- hwaccess
- Hardware register access via ptrace.
- input
- CLI argument and environment-variable helpers.
- param
- Command parameter types and parsed value representation.
- Instruction printing callbacks and layout selection.
- process
- ELF binary metadata and address-space inspection.
- profile
- Instruction-level profiling tracer.
- progress
- Tracer loop state, execution/mode enums, and progress callback.
- repl
- Readline-based REPL runner.
- syscall
- Syscall metadata, argument formatting, and pretty-printing.
- trace
- Core Tracer trait and fork/exec/ptrace entry-point.