Theo Microsoft, trong 12 năm qua, 70% các vấn đề bảo mật được phát hiện trong sản phẩm của MS là do các vấn đề về an toàn bộ nhớ (Memory Safety). Rust, một ngôn ngữ lập trình hệ thống đang trở nên phổ biến gần đây, được cho là có thể phát hiện các vấn đề an toàn bộ nhớ này ngay tại thời điểm biên dịch, và vì chú ý đến điều đó nên từ mùa hè năm ngoái, MS đã tiến hành thử nghiệm viết lại một phần mã nội bộ của Windows từ C++ sang Rust.
Kết quả thử nghiệm là tích cực, nhưng theo đánh giá của MS, Rust vẫn là một dự án còn trẻ nên dường như vẫn thiếu một số tính năng để họ sử dụng. Có lẽ vì vậy mà MS đã bắt đầu phát triển một ngôn ngữ lập trình hệ thống mới bắt nguồn từ Rust với tên gọi Project Verona. Điểm khác biệt đặc biệt so với Rust là mô hình quyền sở hữu bộ nhớ không được áp dụng cho từng đối tượng riêng lẻ mà áp dụng theo đơn vị vùng (region). Nhờ đó, không gian bộ nhớ có thể được chia và quản lý theo từng phân khu, và đặc biệt có thể đặt mã legacy hiện có vào các phân khu sandbox để sử dụng. Có lẽ với đặc thù của MS là có quá nhiều mã legacy nên không thể loại bỏ toàn bộ, họ đã cần đến tính năng như vậy. Hiện tại Project Verona vẫn ở mức phòng nghiên cứu, nhưng được cho là sẽ sớm được công bố dưới dạng mã nguồn mở.
Các bài viết khác:
Video thuyết trình và slide liên quan:
70% vấn đề bảo mật trong sản phẩm MS là do vấn đề an toàn bộ nhớ:
Thử nghiệm viết lại một phần Windows bằng Rust:
4 bình luận
Đáng lẽ phải đóng góp cho Rust chứ... mới bắt đầu đã fork rồi à!
Có vẻ Rust đang rất hot.
À.. cũng hơi lo là biết đâu họ lại tạo ra một biến thể rất kiểu MS giống như J#.
Lúc đến thì Melona