Trước tiên, độc lập nền cĩ nghĩa là các file chứa mã lệnh cĩ thê chạy trên

Một phần của tài liệu Luận văn mô phỏng một số thuật toán trên đồ thị (Trang 56 - 57)

- Chưa cho phép người dùng đưa đữ liệu của mình vào để thử nghiệm

Trước tiên, độc lập nền cĩ nghĩa là các file chứa mã lệnh cĩ thê chạy trên

bất kì nền nào, vào thời gian chạy trình biên dịch cuỗi sẽ hoạt động và mã cĩ thê

chạy trên một nên cụ thể. Nĩi cách khác việc dịch mã nguồn sang Intermediate Language cho phép độc lập nền trong .NET, nĩ giống như cách dịch mã nguồn

sang Java byte code cung cấp sự độc lập nền trong Java.

Sự cải tiến trong thực thi

Mặc dù chúng ta đã so sánh với Java, IL thật sự cĩ một chút khả quan hơn Java. IL luơn là trình biên dịch mmựnh, ngược lại Java byte code thì thường là

thơng dịch. Một trong những bất lợi của Java là vào lúc thực thi quá trình dịch từ Java byte code sang mã máy tơn nhiêu tài nguyên.

Thay vì phải dịch tồn bộ ứng dụng một lần, trình biên dịch JIT sẽ biên

dịch từng phần mã khi nĩ được gọi. Khi mã được dịch rồi, mã kết quả sẽ được

giữ lại cho tới khi thốt khỏi ứng dụng, chính vì thế nĩ khơng phải biên dịch lại trong lần chạy kế tiếp. Microsoft quả quyết rằng cách xử lí này cĩ hiệu lực cao hơn là dịch tồn bộ ứng dụng, bởi vì cĩ trường hợp một khối lượng lớn mã của ứng dụng khơng bao giờ được sử dụng trong thời gian chạy. Khi sử dụng trình

biên dịch JLT, các đoạn mã này sẽ khơng bao giờ được dịch.

Chính vì thế nhà cung cấp hi vọng rằng mã IL sẽ thực thi nhanh như là mã máy. Lời lí giải là, lần dịch cuối cùng trong thời gian chạy, trình biên địch JIT sẽ biết chính xác loại vi xử lí mà chương trình sẽ chạy. Cĩ nghĩa là nĩ cĩ thể tối ưu

mã thi hành cuỗi cùng bằng cách tham chiếu đến các đặc trưng của từng các bộ

Một phần của tài liệu Luận văn mô phỏng một số thuật toán trên đồ thị (Trang 56 - 57)