1. A method for transforming an untrusted application into a trusted executable through static previrtualization, comprising: receiving the untrusted application; performing the static previrtualization on the untrusted application to create the trusted executable, wherein the static previrtualization comprises: replacing a non-privileged system call with a library call; and replacing a privileged system call with a hypercall; performing a partial evaluation with respect to an operating system to produce a scaled operating system by eliminating a system function or a library function that is unused by the trusted executable from a kernel of the operating system; merging the scaled operating system into the trusted executable; and forwarding the trusted executable for deploying on a target system.