We show how to construct a formal model of concurrently executed and communicating applications in an operating system environment. We will identify the necessary steps for building and linking abstract models of a processor, a micro kernel, and a user level operating system. The result is the outline of a formal framework that allows to prove the pervasive correctness of applications running on top of the operating system.