• 原神启动's avatar
    feat: P0-P2 completion - benchmark, 16-probe, XMM, signal stress, demo · 79996ebb
    原神启动 authored
    P0-1: Standard getpid benchmark (baseline/uprobe/lightprobe-entry/ret)
      - WSL2: entry overhead 293ns (<1000ns), uprobe N/A
      - VM: entry overhead 1259ns, uprobe 2898ns (lightprobe 57% faster)
      - target_getpid_bench.c with --label/--wait/JSON output
      - run_perf_benchmark.sh with tracefs uprobe fallback
    
    P0-2: attach/detach latency (~38ms CLI end-to-end)
      - run_latency_bench.sh for getpid/malloc/strlen
    
    P0-3/F6: 16 concurrent probes on dynamic library
      - libmulti_probe_target.so (f01-f16)
      - run_16probe_smoke.sh: 16/16 attach/events/detach/clean
    
    P1: Signal stress test
      - target_signal_stress.c: 4 threads + high-freq SIGUSR1
      - run_signal_stress.sh: entry=return=2048, no crash
    
    P2: XMM0-XMM15 register save/restore
      - xmm_save_restore_x86_64.S + stub modifications
      - fp_probe via shared library (libfp_probe_target.so)
      - Delta < 1e-12 verified
    
    Docs & demo:
      - demo.sh: one-click 6-step validation (10/10 checks)
      - benchmark_report.md: dual-environment data + uprobe comparison
      - improvement_plan.md: execution status tracking
      - README.md: updated quickstart, password instructions
      - LICENSE: Apache 2.0
    
    Engineering:
      - State file: reverted to global /tmp/lightprobe_state.bin
      - context_x86_64.S: added clarification comment
      - All scripts use LIGHTPROBE_SUDO_PASSWORD env var
      - Removed VM-specific scripts with hardcoded credentials
    79996ebb
This project is licensed under the Apache License 2.0. Learn more