Chapter 7. Running full-trust, native, and other code
This chapter covers
- Running any Common Gateway Interface (CGI) interpreter you want
- Spawning processes and calling local executables
- Calling native libraries with P/Invoke
Microsoft is committed to making Windows the best place to run any type of application. To that end, it’s making Azure an open system, where you can run anything you want. Microsoft could have easily made Azure .NET-only. Azure would’ve been easier for Microsoft to manage, and easier to design the infrastructure for. But Microsoft didn’t do that. It opened Azure up, as wide as the on-premises version of Windows is, so that its customers can run almost anything on Azure that can be run on Windows today. Azure can run unmanaged code (C++, for example), any code that needs full trust on the local machine, and code from any other platform that runs on Windows. There’s support for PHP, Python, Ruby, and Java. But Microsoft didn’t even stop there.
Microsoft worked with a series of open source teams to provide useful and valuable SDKs for each platform, so that they’re equal citizens in the cloud. A plug-in for Eclipse was developed in a partnership between Microsoft and an open source team so that Eclipse developers can have an integrated experience.