Maison  >  Article  >  Qu'est-ce que le noyau .net

Qu'est-ce que le noyau .net

藏色散人
藏色散人original
2020-11-10 15:55:585845parcourir

.net core est un framework logiciel hébergé gratuit et open source pour Windows, Linux et macOS. Il s'agit de la première version officielle d'un framework de développement d'applications doté de fonctionnalités multiplateformes développé par Microsoft.

Qu'est-ce que le noyau .net

Recommandé : "Vidéo de programmation"

.net core

.NET Core est un framework logiciel hébergé gratuit et open source pour Windows, Linux et macOS. Il s'agit de la première version officielle développée par Microsoft et possède des capacités multiplateformes), prendra également en charge FreeBSD et. Plateformes alpines du futur. Il s'agit également d'une plate-forme logicielle open source que Microsoft a commencé à développer au début. Elle est souvent comparée à la plate-forme open source .NET existante Mono.

Étant donné que l'objectif de développement de .NET Core est la plate-forme .NET multiplateforme, .NET Core inclura la bibliothèque de classes du .NET Framework. Cependant, contrairement au .NET Framework, .NET Core adopte des packages. . ), l'application n'a besoin que d'obtenir les composants requis, ce qui est complètement différent de la méthode d'installation packagée .NET Framework. En même temps, chaque package dispose également d'une ligne de version indépendante (ligne Version) et l'application est. il n'est plus nécessaire de suivre la ligne principale Version.

Les principaux objectifs du projet .NET Core sont :

Prend en charge ou peut être porté sur davantage de plates-formes de systèmes d'exploitation et d'architectures de puces (c'est-à-dire que les futurs projets traverseront la plateforme x86).

Offre des performances convaincantes et une grande fiabilité.

Les développeurs peuvent obtenir rapidement et directement l'environnement de développement .NET Core.

Créez des applications de manière intuitive et productive à l'aide de fichiers, d'échantillons et de composants NuGet.

Fonctions de base

.NET Core est composé de nombreux projets En plus de la bibliothèque de classes de base (Core FX), il comprend également une plateforme d'exécution compilée avec RyuJIT. Des projets tels que Core CLR, la plateforme de compilateur .NET Compiler Platform, Core RT (.NET Core Runtime), un package optimisé pour s'exécuter à l'aide de la technologie de compilation AOT, et le compilateur MSIL multiplateforme LLILC (compilateur MSIL basé sur LLVM).

Dans le même temps, Microsoft a également développé une plateforme de création de documents techniques, docfx, [3] et l'a appliquée au site Web de documents .NET Core.

RyuJIT

RyuJIT est un nouveau compilateur juste-à-temps développé par Microsoft pour remplacer le compilateur juste-à-temps .NET Framework JIT et JIT64 existant, selon un rapport de test publié par. Microsoft, les performances de RyuJIT sont environ 25 % supérieures à celles de la génération précédente JIT et il prend en charge la technologie SIMD (Single Instruction, Multiple Data). RyuJIT est utilisé à la fois dans .NET Framework 4.6 et .NET Core [4] .

Core CLR

Core CLR transplante les fonctions du CLR du .NET Framework, y compris la bibliothèque principale mscorlib, le compilateur JIT, le ramasse-miettes (GC) et d'autres environnements d'exécution requis pour exécuter l'environnement MSIL.

Core RT

Core RT est une fonction de base basée sur la méthode de compilation AOT (Ahead-of-time). Elle est appelée Core RT dans .NET Core et .NET Native.

Core RT convertira MSIL en code machine natif de la plate-forme lors de la compilation pendant la période de construction (pas d'exécution) pour obtenir un temps de démarrage plus court (JIT utilise également la compilation d'exécution, ce qui raccourcit le temps de démarrage) comme l'avantage d'une utilisation réduite de la mémoire. Core RT utilisera différentes technologies AOT sur différentes plateformes :

  • Windows utilise .NET Native.

  • LLILC est utilisé sur macOS et Linux (prend en charge à la fois JIT et AOT).

LLILC

LLILC (MSILCompiler basé sur LLVM, prononcé « lilas » en anglais) est le compilateur MSIL de .NET Core pour les plates-formes non Windows [5], basé sur La norme ECMA-335 (Common Language Infrastructure) compile MSIL en code natif et convient aux systèmes d'exploitation pouvant exécuter LLVM, tels que les systèmes d'exploitation macOS et Linux.

LLILC prend en charge les méthodes de compilation JIT (y compris l'implémentation de RyuJIT) et AOT (sera pris en charge à l'avenir).

Roslyn

.NET Compiler Platform (code du projet : Roslyn) est une plate-forme qui standardise l'architecture de compilation de la plate-forme .NET. Elle peut fournir un certain nombre d'outils de gestion de programme (tels que intégrés. environnements de développement) Intelligence, utilisée pour développer les fonctions nécessaires à l'écriture de programmes et à la gestion de la structure du programme, telles que les informations de type, les structures syntaxiques, les liens de référence, la sémantique, les compilateurs, l'automatisation, le rapport d'erreurs, etc., à condition qu'il s'agisse d'un langage de programmation qui suit la norme CLI, vous pouvez utiliser la plate-forme de compilateur .NET pour implémenter un compilateur, permettant aux outils de gestion de programme d'implémenter des fonctionnalités de visualisation telles que des invites de syntaxe, la saisie semi-automatique de la syntaxe et la mise en évidence de mots clés.

.NET Compiler Platform peut prendre en charge .NET Framework 4.6 et supérieur en même temps, et .NET Core le prend également en charge de manière native.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn