|
Message-ID: <20110629141945.GL5036@port70.net> Date: Wed, 29 Jun 2011 16:19:45 +0200 From: Szabolcs Nagy <nsz@...t70.net> To: musl@...ts.openwall.com Subject: Re: Anti-bloat side project * Rich Felker <dalias@...ifal.cx> [2011-06-27 17:43:00 -0400]: > Of course a better question is... why does "hello world" need to load > any modules anyway? Perhaps a best first step to fixing the problem > would be to demodularize and static link any module that will always > be loaded... btw applications are worse even if they are written in c gtk hello: $ strace zenity --info --text=hello 2>&1 |wc -l 6491 x terminal emulators: $ strace xterm -e /bin/true 2>&1 |wc -l 1214 $ strace urxvt -e /bin/true 2>&1 |wc -l 850 firefox with a newly created empty profile (no extensions, and blank page): $ strace -f firefox -P empty -url about:blank 2>&1 |wc -l 17980 (ff has many periodic timers and does many things in the background so the number depends on how fast i kill the apearing window but it's always >16000) $ strace -c -Scalls zenity --info --text=hello % time seconds usecs/call calls errors syscall ------ ----------- ----------- --------- --------- ---------------- 13.70 0.000181 0 1510 417 stat64 9.84 0.000130 0 1277 573 open 59.95 0.000792 1 988 getdents64 2.42 0.000032 0 706 close 1.97 0.000026 0 672 fstat64 2.42 0.000032 0 560 92 read 2.95 0.000039 0 174 mmap2 6.74 0.000089 1 157 select 0.00 0.000000 0 101 68 access 0.00 0.000000 0 80 writev 0.00 0.000000 0 58 gettimeofday 0.00 0.000000 0 55 mprotect 0.00 0.000000 0 36 poll 0.00 0.000000 0 19 munmap 0.00 0.000000 0 17 brk 0.00 0.000000 0 8 uname 0.00 0.000000 0 6 fcntl64 0.00 0.000000 0 4 _llseek 0.00 0.000000 0 4 futex ... 100.00 0.001321 6463 1153 total $ strace -c -Scalls -f firefox -P empty -url about:blank ... % time seconds usecs/call calls errors syscall ------ ----------- ----------- --------- --------- ---------------- 0.01 0.000104 0 2244 1010 close 0.03 0.000355 0 2099 988 open 0.01 0.000159 0 1924 520 stat64 0.01 0.000093 0 1826 gettimeofday 0.19 0.002521 2 1595 284 read 0.00 0.000000 0 1112 fstat64 0.03 0.000333 0 994 getdents64 0.01 0.000160 0 662 mmap2 64.14 0.849392 1361 624 26 futex 0.01 0.000075 0 623 1 madvise 0.00 0.000036 0 481 select 0.00 0.000000 0 462 301 access 0.01 0.000069 0 267 writev 0.00 0.000000 0 228 fcntl64 0.00 0.000000 0 213 mprotect 0.00 0.000036 0 167 _llseek 0.00 0.000000 0 160 clock_gettime 0.00 0.000000 0 140 munmap 16.92 0.224014 1882 119 poll 0.00 0.000000 0 92 3 lstat64 0.00 0.000000 0 53 write 0.00 0.000000 0 52 rt_sigaction 0.00 0.000000 0 51 lseek 0.00 0.000000 0 46 brk 0.00 0.000000 0 41 getdents 0.00 0.000000 0 25 uname 0.09 0.001185 59 20 4 execve 0.24 0.003125 156 20 clone 0.00 0.000000 0 19 pipe 0.00 0.000000 0 18 socket 0.00 0.000000 0 16 set_thread_area 0.48 0.006364 424 15 2 wait4 0.00 0.000000 0 15 7 connect 0.00 0.000000 0 14 dup2 0.00 0.000000 0 12 getuid32 0.00 0.000000 0 11 geteuid32 0.00 0.000000 0 9 time 0.00 0.000000 0 8 1 readlink 0.00 0.000000 0 8 sched_get_priority_max 0.00 0.000000 0 8 getgroups32 0.00 0.000000 0 7 sched_get_priority_min 0.00 0.000000 0 7 set_robust_list 0.00 0.000000 0 6 sched_setscheduler 0.00 0.000000 0 5 getgid32 0.00 0.000000 0 5 getegid32 0.00 0.000000 0 4 getpid 0.00 0.000000 0 4 4 mkdir 0.00 0.000000 0 4 getppid 0.00 0.000000 0 4 getsockname ... 100.00 1.324219 16588 3153 total
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.