III SO SÁNH JAVABEANS VÀ ACTIVE
2.1.2 Nền tảng của Net – CLR.
CLR là một môi trường máy ảo đứng đầu đầu của hệ điều hành Windows. CLR bao gồm các loại hệ thống thường gặp Common Type System(CTS), Just- In-Time IL Compiler (JIT).Đơn vị thực thi, cộng với một số dịch vụ quản lý khác như thu gom rác và quản lý bảo mật. CLR là như JVM trong Java. Tất cả các cấu phần phần mềm được lắp ráp thành một gói (giống như Java lưu trữ file jar) bao gồm MS Intermediate Language (MSIL) mã và hiển lộ (siêu dữ liệu về gói này).
Các mã IL được biên dịch thành mã gốc của trình biên dịch JIT trong CLR. Mã IL được xác minh bởi CTS đầu tiên để kiểm tra tính hợp lệ của loại dữ liệu được sử dụng trong các mã. Hình 6,2 cho thấy cách CLR làm việc
Hình 6.2 .Net CLR
.NET framework tích hợp nhiều ngơn ngữ lập trình (VB, quản lý VC, C #, vv) thực thi bởi CLR. Không chỉ thành phần trong một ngơn ngữ có thể truy cập các dịch vụ được cung cấp bởi các thành phần khác trong ngôn ngữ khác mà
Bài giảng COP – Chuyên ngành: CNPM - Version 1
Biên soạn: Ngô Thị Lan & Nguyễn Lan Oanh - 129
một lớp trong ngơn ngữ này có thể kế thừa nội dung và phương pháp từ các lớp liên quan trong ngôn ngữ khác. Thư viện liên kết lớp (The United Class Library) cung cấp một bộ các lớp có thể tái sử dụng để phát triển cấu phần. CTS định nghĩa một bộ dữ liệu chuẩn và quy tắc cho việc tạo ra loại mới. CLR biết rằng làm thế nào để thực thi các loại dữ liệu đó. Có hai loại dữ liệu là kiểu tham chiếu và kiểu giá trị gia tăng. Mã được đánh dấu và thực thi bởi CLR được gọi là mã quản lý .Net. Tất cả các trình biên dịch ngơn ngữ MS tạo ra mã quản lý cho phù hợp với CTS.
Các mã IL cũng giống như mã byte Java. Bất kể các loại ngơn ngữ lập trình, mã IL có thể giao tiếp với nhau thơng qua sự hỗ trợ của CLR. Các mã IL có thể là trong các định dạng thực thi (. Exe) hoặc thư viện liên kết động Dynamic Link Library (. DLL). Nếu những mã IL được tạo ra bởi trình biên dịch .NET, Chúng được gọi là mã được quản lý (managed code). Các mã quản lý có thể được thực thi trên nền tảng nhận thức của .Net. Các DLL hay EXE không do .NET biên dịch (chẳng hạn như phiên bản đầu của VC) được gọi là mã
không được quản lý (unmanaged code). Tóm lại, CLR là engine thực thi hiệu
suất cao. Nó cung cấp một mơi trường thực thi mã, nó quản lý mã trong khn khổ .NET. Việc quản lý mã bao gồm quản lý bộ nhớ, nguy cơ, an ninh, xác minh mã, và biên soạn IL [Platt 2003; Chappel 2002].