- Applications running in a managed environment such as the Microsoft framework's CLR or Java's JVM tend to require more system resources than similar applications that access machine resources more directly (Un-Managed).
Some applications, however, have been shown to perform better in .NET than in their native version. This could be due to the runtime optimizations made possible in just-in-time compilation of managed code, or other aspects of the CLR like Garbage Collection.
- As JIT languages can be more easily reverse-engineered than native code to algorithms used by an application, so there is concern over possible loss of trade secrets and bypassing of license control mechanisms.
Many obfuscation techniques already developed, however, can help to prevent this; indeed from Microsoft’s .Net 2.0 these tools were included.
- In a managed environment such as the Microsoft framework's CLR or Java's JVM the regularly occurring garbage collection for reclaiming memory suspends execution of the application for an unpredictable lapse of time typically not more than few milliseconds.
- Since the framework is not pre-installed on older versions of Windows an application that requires it must verify that it is present, and if it is not, guide the user to install it.
- Newer versions of the framework (3.0 and up) are not pre-installed on any versions of the Windows operating system, because some developers have expressed concerns about the large size.
No comments:
Post a Comment