ABSTRACT Our native Java compiler directly generates runtime structures in a persistent Distributed Shared Memory (DSM). The compiler has been used to build a general purpose PC Operating System (OS) on top of a persistent DSM memory. The persistent DSM operating environment lends itself naturally to an integration of symbol tables, class descriptors and naming during Java program compilation and execution. The linking and loading process is streamlined and the persistent storage property makes a traditional loader redundant. After a brief overview of the Plurix OS we discuss traditional linking strategies and present extended linking perspectives in the persistent Plurix DSM. This includes a novel immediate linking scheme offering the flexibility of dynamic binding while detecting errors at linking time. The remaining task of class initialization is performed only once by the Plurix Java compiler. To deal with the semantics of distributed Java static class variables we propose extended initialization rules together with a more flexible type checking scheme. KEYWORDS: Linking, Java, Languages, Distributed Shared Memory, Operating Systems