반응형
✅ .NET 런타임이란?
.NET Runtime은 C#, F#, VB.NET 같은 **.NET 언어로 만든 프로그램을 실행해주는 "실행 환경(엔진)"**이야.
다시 말해, .NET 코드가 컴퓨터에서 실제로 돌아가도록 도와주는 핵심 소프트웨어야.
✅ .NET 런타임이 하는 일 (핵심 역할)
역할설명
🧠 CLR (Common Language Runtime) | .NET의 핵심 엔진. 모든 .NET 프로그램은 CLR 위에서 실행됨 |
🧼 GC (Garbage Collector) | 사용되지 않는 힙 메모리 자동 정리 |
📚 타입 시스템 및 형식 검사 | 코드에서 사용된 타입들이 안전한지 검사 |
🧱 JIT 컴파일 (Just-In-Time) | C# 코드를 실행 가능한 기계어로 실행 시에 변환 |
🔒 보안 및 예외 처리 | 프로그램의 오류 관리, 접근 제어 등을 담당 |
✅ .NET 프로그램 실행 과정 요약
- C# 코드를 작성
- 컴파일 → **IL (중간 언어, Intermediate Language)**로 변환
- 실행 시 .NET 런타임(CLR)이
- IL 코드를 기계어로 변환(JIT)
- GC로 메모리 관리
- 예외 처리, 타입 검사 등 실행 환경 제공
- 최종적으로 프로그램이 실행됨
✅ .NET Runtime 구성 요소
구성요소설명
CLR (Common Language Runtime) | 핵심 실행 엔진 |
JIT Compiler | IL을 기계어로 즉석에서 번역 |
GC (Garbage Collector) | 자동 메모리 관리 |
CTS (Common Type System) | 모든 .NET 언어가 공유하는 타입 규칙 |
CLS (Common Language Specification) | 언어 간 호환성을 위한 최소 규칙 |
BCL (Base Class Library) | System.String, List<T>, Math 등 기본 라이브러리 모음 |
✅ Unity랑 .NET은 어떤 관계?
- Unity는 C#을 사용하는데, Mono / IL2CPP / CoreCLR 같은 .NET 호환 런타임을 사용해
- Unity에서의 GC, List<T>, object, Exception 등도 다 .NET 런타임 기반 기능이야
✅ 정리 한 줄 요약
.NET 런타임은 C# 프로그램이 돌아가게 해주는 실행 엔진이며, GC, 예외 처리, 타입 검사, JIT 컴파일 등을 자동으로 담당한다.
반응형
'C#' 카테고리의 다른 글
C# - 해쉬셋(HashSet) vs Dictionary(HashTable) (1) | 2025.07.02 |
---|---|
C# - 해시테이블(HashTable) vs 딕셔너리(Dictionary)&제네릭(Generic) (0) | 2025.07.02 |
C# - 캡슐화 (1) | 2025.07.01 |
C# - 박싱/언박싱과 박싱/언박싱&형변환 차이 (0) | 2025.07.01 |
C# Unity - 가비지 컬렉터(GC) 자동실행기준 (0) | 2025.07.01 |