4 ms·
It is easy to write a function, that makes a syscall directly and not via well known paths in the libc or similar. And then the syscall number can be a variable
by gmueckl 8y ago
It is easy to write a function, that makes a syscall directly and not via well known paths in the libc or similar. And then the syscall number can be a variable instead of constant and determining that value statically means solving the halting problem. Q.e.d.
- sanxiyn 8y agoSince conservative approximation is still useful, halting problem doesn't matter. That is, let's say syscall 1 is definitely used, syscall 2 is definitely not used, whether syscall 3 is used depends on halting problem. Including only 1 and 3 to unikernel is safe and better than including all of 1, 2, 3.
- gmueckl 8y agoThis works in trivial problems. Any moderately sized program I can imagine right now will result in an analysis that is equivalent to "this uses everything"