Platform independence with PowerShell Core

Beyond the Horizon

Windows PowerShell was designed with the following thought in mind: How could a technology be designed that combines the power of C# with the simplicity of a scripting language or shell? Therefore, PowerShell is architecturally a composition of types, especially those from the .NET framework. .NET access was necessary because the API of Microsoft's server products changed. The use of Visual Studio and high-level languages for administrative purposes was something that could no longer be reasonably expected. The result was the multilayer architecture of PowerShell.

The commands form the top of a pyramid, with a strong dependency on the underlying type library. This relationship is clear from the installation prerequisites for the different PowerShell versions (Table 1). The mutual dependencies between the installed .NET libraries, system components, and PowerShell make it impossible to use Windows PowerShell outside of Windows. The get-process command, for example, is based on the System.Diagnostics.Process type. However, if these classes are only available for Windows operating systems, the command pyramid lacks a basis. This changes with the new concept of .NET Core.

Table 1

Installation Requirements

PowerShell Version .NET Version
3 4
4 4.5
5 4.5
...
Use Express-Checkout link below to read the full article (PDF).

Buy this article as PDF

Express-Checkout as PDF
Price $2.95
(incl. VAT)

Buy ADMIN Magazine

SINGLE ISSUES
 
SUBSCRIPTIONS
 
TABLET & SMARTPHONE APPS
Get it on Google Play

US / Canada

Get it on Google Play

UK / Australia

Related content

comments powered by Disqus