4 ms·
eBPF lacks a high level front end, in part because that's optional. Engineering effort has gone into the essentials first: kernel development of eBPF, basic use
by brendangregg 9y ago
eBPF lacks a high level front end, in part because that's optional. Engineering effort has gone into the essentials first: kernel development of eBPF, basic user-level frameworks to use it (bcc), and lots and lots of testing and bug fixes to make that rock solid. bcc is not as easy to code in, but I've been able to port over many of my DTraceToolkit scripts already.
We're only more recently looking at higher level languages, as a nice to have. Here's one project:
https://github.com/ajor/bpftrace https://github.com/ajor/bpftrace
We can also look at taking the /usr/sbin/dtrace code (licenses permitting), and calling into libbcc and emitting BPF bytecode. That'd give us a D language front-end to BPF, so I can run my old DTrace scripts directly (plus sell more copies of my DTrace book -- I joke ;-)
Help on either of those projects would be appreciated (bpftrace or DTrace-BPF).
- viraptor 9y agoAm I reading too much into the last sentence, or are they actually trying to use existing probes with dtrace frontend: > So with all those techniques now available in the linux kernel it will be exciting to see if dtrace for linux can unite them all.