Một công cụ mới có tên CSMWrap hứa hẹn hồi sinh chức năng BIOS cũ trên các hệ thống chỉ hỗ trợ UEFI hiện đại, nhưng cuộc thảo luận trong cộng đồng đã có một bước ngoặt bất ngờ hướng về thái độ dung thứ rõ ràng của Microsoft đối với việc rò rỉ mã nguồn Windows trên GitHub. Dự án sử dụng các thành phần SeaBIOS để tạo ra một lớp tương thích có thể khởi động các hệ điều hành cũ như FreeDOS, Windows XP và Windows 7 trên phần cứng chỉ hỗ trợ UEFI.
Khả năng hiện tại của CSMWrap:
- Khởi động FreeDOS, Windows XP và Windows 7 trong QEMU (máy q35 và piix4)
- Hoạt động trên một số phần cứng thực tế với tỷ lệ thành công khác nhau
- Yêu cầu tắt Secure Boot và Above 4G Decoding
Bí Ẩn Mã Nguồn Microsoft Chiếm Trung Tâm
Những gì bắt đầu như cuộc thảo luận kỹ thuật về CSMWrap nhanh chóng chuyển hướng khi người dùng nhận thấy các liên kết đến mã nguồn Windows XP bị rò rỉ được lưu trữ trên GitHub. Cộng đồng bối rối trước thái độ dường như thoải mái của Microsoft đối với những vụ rò rỉ này, đặc biệt là xem xét rằng công ty sở hữu GitHub. Một số người dùng suy đoán điều này có thể là cố ý, vì mô hình kinh doanh của Microsoft đã chuyển sang các dịch vụ đám mây thay vì doanh thu từ việc cấp phép Windows.
Mã nguồn bị rò rỉ dường như có nguồn gốc từ các chương trình Shared Source Initiative cũ của Microsoft, nơi các chính phủ và tổ chức học thuật được tiếp cận với mã nguồn Windows. Những vụ rò rỉ này đã tạo ra một tình huống pháp lý thú vị khi các nhà phát triển xem mã nguồn có thể bị nhiễm độc tinh thần và không đủ điều kiện đóng góp cho các dự án như Wine hoặc ReactOS.
Thậm chí còn kỳ lạ hơn là GitHub còn lưu trữ tất cả các công cụ để kích hoạt (tức là crack) các phiên bản hiện đại của Windows và Office nữa. Microsoft thực sự không quan tâm.
Thách Thức Kỹ Thuật và Vấn Đề Tương Thích Phần Cứng
CSMWrap đối mặt với một số trở ngại đáng kể trong việc mang hỗ trợ BIOS cũ đến các hệ thống hiện đại. Công cụ yêu cầu người dùng vô hiệu hóa Above 4G Decoding trong cài đặt BIOS của họ, vì firmware UEFI thường đặt bộ nhớ card đồ họa trên giới hạn 4GB mà các hệ thống cũ 32-bit có thể truy cập. Hạn chế này phản ánh sự khác biệt cơ bản giữa kiến trúc phần cứng hiện đại và cũ.
Dự án cũng gặp khó khăn với việc mở khóa vùng cũ, dựa vào các giao thức UEFI cụ thể không có sẵn trên tất cả hệ thống. Khi những giao thức này bị thiếu, CSMWrap cố gắng sử dụng trực tiếp các thanh ghi chipset, nhưng thành công không được đảm bảo. Việc thiết lập chế độ video trình bày một thách thức khác, với Windows XP và 7 đôi khi cố gắng các chế độ hiển thị không tương thích dẫn đến nhấp nháy màn hình hoặc tối đen hoàn toàn.
Legacy region: Một vùng bộ nhớ cụ thể (0xC0000-0xFFFFF) được sử dụng truyền thống bởi BIOS và driver phần cứng trong các hệ thống PC cũ.
Các hạn chế đã biết:
- Hầu như yêu cầu Above 4G Decoding phải được tắt
- Phụ thuộc vào EFI_LEGACY_REGION2_PROTOCOL (không khả dụng trên tất cả các hệ thống)
- Việc thiết lập chế độ video Windows XP/7 có thể gây ra hiện tượng nhấp nháy hoặc màn hình đen
- GPU hiện đại không có VBIOS tiêu chuẩn có thể không hoạt động với VGA BIOS thông thường
Bối Cảnh Rộng Hơn Của Hỗ Trợ Hệ Thống Cũ
Cuộc thảo luận trong cộng đồng tiết lộ mong muốn mạnh mẽ về các công cụ có thể chạy hệ điều hành cũ trên phần cứng hiện đại. Ngoài tính hoài cổ, còn có các ứng dụng thực tế bao gồm mục đích giáo dục, chạy phần mềm công nghiệp cũ, và duy trì các hệ thống cũ vẫn phục vụ các chức năng quan trọng. Một số người dùng bày tỏ sự quan tâm đặc biệt đến hỗ trợ FreeDOS, vì nhiều người đã cho rằng nó sẽ không bao giờ chạy trên phần cứng hiện đại bare metal nữa.
Tuy nhiên, cuộc trò chuyện cũng làm nổi bật rằng tương thích phần cứng mở rộng xa hơn việc chỉ mô phỏng BIOS. Các hệ thống hiện đại thiếu nhiều giao diện mà các hệ điều hành cũ mong đợi, và ngay cả với CSMWrap, người dùng có thể gặp phải các vấn đề driver và tương thích thiết bị ngoại vi hạn chế tính hữu dụng thực tế của việc cài đặt hệ điều hành cũ.
Dự án đại diện cho một thành tựu kỹ thuật ấn tượng, nhưng sự mê hoặc của cộng đồng với mã nguồn bị rò rỉ của Microsoft cho thấy rằng đôi khi những cuộc thảo luận thú vị nhất xảy ra ở lề của chủ đề gốc. Liệu CSMWrap có tìm thấy sự chấp nhận rộng rãi hay không vẫn còn phải xem, nhưng nó chắc chắn chứng minh nhu cầu liên tục về việc thu hẹp khoảng cách giữa các mô hình tính toán cũ và mới.
Tham khảo: CSMWrap