70 likes | 217 Views
Managed Environments. Jim Fawcett CSE775 – Distributed Objects Spring 2012. Managed Environments. .Net Common Language Runtime (CLR) Stack-based virtual machine Java Virtual Machine Stack-based virtual machine COM Run-time Support library and API on top of native API. Services.
E N D
Managed Environments Jim Fawcett CSE775 – Distributed Objects Spring 2012
Managed Environments • .Net Common Language Runtime (CLR) • Stack-based virtual machine • Java Virtual Machine • Stack-based virtual machine • COM Run-time • Support library and API on top of native API
Cross Platform • Java operates in all environments that supply a JVM – Windows, Linux, OSX • .Net languages operate in all environments that supply a CLR • Windows • Linux and OSX via Mono – limited • COM • Windows only Using AppDomains Effectively
Suitable for System Programming • Java • Weak – manage memory& hardware only through JNI • JVM was written in C++ • .Net Languages • C++/CLI & C++/CX – fully capable • C++/CLI can call native C++ in same file • C++/CX wraps native COM objects • COM • Fully capable but clumsy due to limited types • Obviously works as much of Windows is COM