Trường Sơn
Writer
Microsoft đang âm thầm khởi động một trong những cuộc đại tu mã nguồn lớn nhất lịch sử ngành phần mềm. Mục tiêu được nêu rõ: đến khoảng năm 2030, loại bỏ gần như toàn bộ mã C và C++ khỏi các hệ thống cốt lõi, bao gồm Windows và Azure, để chuyển sang Rust.
Thông tin này không đến từ tin đồn, mà xuất phát trực tiếp từ Galen Hunt, kỹ sư kỳ cựu của Microsoft, trong một tin tuyển dụng công khai trên LinkedIn. Ông thẳng thắn tuyên bố mục tiêu của nhóm mình là “xóa sạch C và C++ khỏi Microsoft”, đồng thời hé lộ chiến lược dùng AI và thuật toán để tái cấu trúc kho mã nguồn khổng lồ của công ty, với tham vọng mỗi kỹ sư có thể xử lý tới một triệu dòng mã mỗi tháng.
Đây không phải là một dự án sản phẩm đơn lẻ, mà là nỗ lực mang tính nền tảng, thuộc tổ chức CoreAI của Microsoft. Mục tiêu không chỉ là viết lại vài thành phần, mà là xây dựng năng lực kỹ thuật có thể mở rộng ra toàn bộ hệ sinh thái Microsoft, từ hệ điều hành, đám mây cho đến các hệ thống lâu đời đã tích tụ hàng chục năm “nợ kỹ thuật”.
Thực tế, Microsoft đã phát tín hiệu từ sớm. Năm 2023, hãng xác nhận đã đưa Rust vào nhân Windows, với hàng chục nghìn dòng mã được viết lại mà không ảnh hưởng hiệu năng. Các lãnh đạo kỹ thuật như David Weston hay Mark Russinovich cũng công khai quan điểm rằng các hệ điều hành mới không nên tiếp tục dùng C/C++ cho mã nhân, vì rủi ro bảo mật quá lớn.
Lý do cốt lõi nằm ở an toàn bộ nhớ. Trong nhiều báo cáo nội bộ, Microsoft thừa nhận phần lớn các lỗ hổng bảo mật nghiêm trọng của Windows suốt hơn một thập kỷ bắt nguồn từ lỗi quản lý bộ nhớ trong C/C++. Những lỗi như tràn bộ đệm, use-after-free hay hỏng heap đã trở thành cửa ngõ quen thuộc cho tấn công mạng. Rust, với mô hình sở hữu và kiểm tra ở thời điểm biên dịch, giúp loại bỏ cả một lớp lỗi này ngay từ ngôn ngữ.
Tuy vậy, quyết định “chia tay” C/C++ không hề nhận được sự đồng thuận tuyệt đối. Nhiều lập trình viên kỳ cựu cho rằng vấn đề không nằm ở ngôn ngữ, mà ở con người và quy trình. Ngay cả Bjarne Stroustrup, cha đẻ của C++, cũng phản biện rằng C++ hiện đại hoàn toàn có thể đạt mức an toàn cao nếu được dùng đúng cách. Một số ý kiến khác cho rằng Rust không phải thuốc chữa bách bệnh, và nhiều vấn đề hệ thống vẫn đòi hỏi kinh nghiệm hơn là đổi ngôn ngữ.
Ngay cả trong nội bộ Microsoft, cũng có những tiếng nói từng tin rằng AI và C++ hiện đại có thể đủ để “vá” các hệ thống cũ. Nhưng kinh nghiệm thực tế, đặc biệt trong việc phân tích các sự cố sập hệ thống và lỗi bộ nhớ lặp đi lặp lại suốt nhiều năm, đã khiến niềm tin đó lung lay.
Điều đáng chú ý là Microsoft không chỉ nói về ngôn ngữ, mà nói về cách làm phần mềm trong kỷ nguyên AI. Khi các mô hình ngôn ngữ lớn được đưa vào quy trình tái cấu trúc mã nguồn, những khối code từng được coi là “không thể động tới” nay bắt đầu nằm trong tầm kiểm soát.
Năm 2030 vẫn còn ở phía trước, nhưng với những gì đang diễn ra, có thể thấy cuộc chuyển dịch này đã bắt đầu. Nếu thành công, đây không chỉ là một cuộc di cư ngôn ngữ, mà có thể trở thành dấu mốc cho việc AI tham gia sâu vào kỹ thuật phần mềm ở cấp độ hệ thống, nơi trước đây con người gần như không dám đặt lại nền móng.
Thông tin này không đến từ tin đồn, mà xuất phát trực tiếp từ Galen Hunt, kỹ sư kỳ cựu của Microsoft, trong một tin tuyển dụng công khai trên LinkedIn. Ông thẳng thắn tuyên bố mục tiêu của nhóm mình là “xóa sạch C và C++ khỏi Microsoft”, đồng thời hé lộ chiến lược dùng AI và thuật toán để tái cấu trúc kho mã nguồn khổng lồ của công ty, với tham vọng mỗi kỹ sư có thể xử lý tới một triệu dòng mã mỗi tháng.
Đây không phải là một dự án sản phẩm đơn lẻ, mà là nỗ lực mang tính nền tảng, thuộc tổ chức CoreAI của Microsoft. Mục tiêu không chỉ là viết lại vài thành phần, mà là xây dựng năng lực kỹ thuật có thể mở rộng ra toàn bộ hệ sinh thái Microsoft, từ hệ điều hành, đám mây cho đến các hệ thống lâu đời đã tích tụ hàng chục năm “nợ kỹ thuật”.
Thực tế, Microsoft đã phát tín hiệu từ sớm. Năm 2023, hãng xác nhận đã đưa Rust vào nhân Windows, với hàng chục nghìn dòng mã được viết lại mà không ảnh hưởng hiệu năng. Các lãnh đạo kỹ thuật như David Weston hay Mark Russinovich cũng công khai quan điểm rằng các hệ điều hành mới không nên tiếp tục dùng C/C++ cho mã nhân, vì rủi ro bảo mật quá lớn.
Lý do cốt lõi nằm ở an toàn bộ nhớ. Trong nhiều báo cáo nội bộ, Microsoft thừa nhận phần lớn các lỗ hổng bảo mật nghiêm trọng của Windows suốt hơn một thập kỷ bắt nguồn từ lỗi quản lý bộ nhớ trong C/C++. Những lỗi như tràn bộ đệm, use-after-free hay hỏng heap đã trở thành cửa ngõ quen thuộc cho tấn công mạng. Rust, với mô hình sở hữu và kiểm tra ở thời điểm biên dịch, giúp loại bỏ cả một lớp lỗi này ngay từ ngôn ngữ.
Tuy vậy, quyết định “chia tay” C/C++ không hề nhận được sự đồng thuận tuyệt đối. Nhiều lập trình viên kỳ cựu cho rằng vấn đề không nằm ở ngôn ngữ, mà ở con người và quy trình. Ngay cả Bjarne Stroustrup, cha đẻ của C++, cũng phản biện rằng C++ hiện đại hoàn toàn có thể đạt mức an toàn cao nếu được dùng đúng cách. Một số ý kiến khác cho rằng Rust không phải thuốc chữa bách bệnh, và nhiều vấn đề hệ thống vẫn đòi hỏi kinh nghiệm hơn là đổi ngôn ngữ.
Ngay cả trong nội bộ Microsoft, cũng có những tiếng nói từng tin rằng AI và C++ hiện đại có thể đủ để “vá” các hệ thống cũ. Nhưng kinh nghiệm thực tế, đặc biệt trong việc phân tích các sự cố sập hệ thống và lỗi bộ nhớ lặp đi lặp lại suốt nhiều năm, đã khiến niềm tin đó lung lay.
Điều đáng chú ý là Microsoft không chỉ nói về ngôn ngữ, mà nói về cách làm phần mềm trong kỷ nguyên AI. Khi các mô hình ngôn ngữ lớn được đưa vào quy trình tái cấu trúc mã nguồn, những khối code từng được coi là “không thể động tới” nay bắt đầu nằm trong tầm kiểm soát.
Năm 2030 vẫn còn ở phía trước, nhưng với những gì đang diễn ra, có thể thấy cuộc chuyển dịch này đã bắt đầu. Nếu thành công, đây không chỉ là một cuộc di cư ngôn ngữ, mà có thể trở thành dấu mốc cho việc AI tham gia sâu vào kỹ thuật phần mềm ở cấp độ hệ thống, nơi trước đây con người gần như không dám đặt lại nền móng.