Common Language Runtime
![](http://upload.wikimedia.org/wikipedia/commons/thumb/a/af/Common_Language_Runtime_diagram.svg/220px-Common_Language_Runtime_diagram.svg.png)
![](http://upload.wikimedia.org/wikipedia/commons/thumb/0/00/REF_new_%28questionmark%29.svg/50px-REF_new_%28questionmark%29.svg.png)
Sprawdź w źródłach: Encyklopedia PWN • Google Books • Google Scholar • Federacja Bibliotek Cyfrowych • BazHum • BazTech • RCIN • Internet Archive (texts / inlibrary)
Dokładniejsze informacje o tym, co należy poprawić, być może znajdują się w dyskusji tego artykułu.
Po wyeliminowaniu niedoskonałości należy usunąć szablon {{Dopracować}} z tego artykułu.
Common Language Runtime (w skrócie CLR) – środowisko uruchomieniowe dla platformy .NET, przewidziane do pracy na wielu systemach operacyjnych i maszynach, jak Microsoft Windows, Unix czy Macintosh. Jest to środowisko uruchomieniowe, które wykonuje kod wyrażony w Common Intermediate Language (CIL). „Specyfikacja wspólnego języka” (z ang. Common Language Specification, w skrócie CLS) określa podzbiór CLR, który kompilatory powinny obsługiwać, aby być kompatybilnymi z językami .NET.
Wspólne środowisko uruchomieniowe to podstawa całego systemu .NET Framework. Wszystkie języki środowiska .NET (na przykład C# czy Visual Basic .NET), a także wszystkie biblioteki klas obecne w .NET Framework (ASP.NET, ADO.NET i inne) oparte są na CLR. Ponieważ nowe, tworzone przez Microsoft oprogramowanie, także oparte jest na .NET Framework, każdy, kto chce korzystać ze środowiska Microsoft, prędzej czy później będzie musiał zetknąć się z CLR.
Środowisko CLR kompiluje i wykonuje zapisany w standardowym języku pośrednim CIL (dawniej MSIL) kod aplikacji zwany kodem zarządzanym (ang. managed code), zapewniając wszystkie podstawowe funkcje konieczne do działania aplikacji. Podstawowym elementem CLR jest standardowy zestaw typów danych, wykorzystywanych przez wszystkie języki oparte na CLR, a także standardowy format metadanych, służących do opisu oprogramowania wykorzystującego te typy danych. CLR zapewnia także mechanizmy umożliwiające pakowanie kodu zarządzanego w jednostki zwane podzespołami.
W CLR wbudowane są także mechanizmy kontroli bezpieczeństwa wykonywania aplikacji — bezpieczeństwo oparte na uprawnieniach kodu (Code Access Security — CAS) oraz bezpieczeństwo oparte na rolach (Role-Based Security — RBS).
Zobacz też
- Wirtualna maszyna Javy
- Dynamic Language Runtime
Linki zewnętrzne
- Opis Common Language Runtime (Microsoft MSDN)