From Mexico.purplecow.org
System call breakdown for ruby's "gem" command
Overview
Called with no parameters - the sole actual work is to print usage information. It takes a long time, so let's have a look at what happens:
A quick truss
$ truss gem >rubygem.truss 2>&1 $ grep -c open rubygem.truss 656 $ grep -c stat rubygem.truss 1372 $ wc -l rubygem.truss 4836 rubygem.truss
Breakdown
Oh dear! So what is it actually doing?
- brk: 701
- close: 553
- stat: 1371
- llseek: 535
- read: 889
- open: 656
- write: 22 (That's actually printing the usage information)
- other: 234 (mainly mmap)