Trong thế giới của điện toán retro, các nhà đam mê tiếp tục khám phá ra những khả năng kỹ thuật hấp dẫn thách thức các tuyên bố chính thức. Một cuộc thảo luận gần đây lại nổi lên xung quanh khả năng của Windows 95 trong việc chạy Windows 3.1 bên trong một máy ảo - một tính năng mà Microsoft từng mô tả là một dự án khoa học tạm thời nhưng người dùng đã chứng minh là hoạt động trong các phiên bản hệ điều hành đã phát hành.
Bản chất kỹ thuật đằng sau Windows lồng nhau
Cuộc thảo luận trong cộng đồng tiết lộ rằng việc chạy Windows 3.1 bên trong Windows 95 không chỉ khả thi trong các bản dựng tiền phát hành - mà nó hoạt động ngay trong các bản cài đặt thông thường. Người dùng đã chia sẻ kinh nghiệm và chi tiết kỹ thuật cho thấy kernel của Windows 3.1 (KRNL386.EXE) có thể chạy như một chương trình DOS bên trong MS-DOS Prompt của Windows 95. Điều này tạo ra một môi trường máy tính lồng nhau nơi hai hệ thống Windows riêng biệt hoạt động đồng thời, mỗi hệ thống không hề hay biết về sự tồn tại của hệ thống kia.
Triển khai USER và GDI của Windows 95 về cơ bản là một phiên bản nâng cấp của Win 3.1. user32.dll và gdi32.dll chỉ là các lớp chuyển đổi. Các thành phần 16-bit được bảo vệ bởi một mutex có tên 'Win16Mutex' để đảm bảo truy cập tuần tự hóa chúng từ phía 32-bit.
Thông tin kỹ thuật này giải thích cách Microsoft duy trì khả năng tương thích trong khi chuyển đổi kiến trúc. Win16Mutex đảm bảo rằng các thành phần 16-bit và 32-bit có thể cùng tồn tại mà không xung đột, mặc dù đôi khi điều này dẫn đến các nút cổ chai hiệu suất và thậm chí là bế tắc (deadlock) trong một số tình huống nhất định.
Chi tiết Kiến trúc Kỹ thuật:
- Windows 95 sử dụng Win16Mutex để tuần tự hóa quyền truy cập vào các thành phần 16-bit
- USER và GDI trong Windows 95 là các phiên bản nâng cao của các triển khai từ Windows 3.1
- Windows 3.1 có thể chạy ở chế độ 386 Enhanced Mode như một DPMI client bên trong Windows 95
- Ảo hóa lồng nhau có thể thực hiện được nhờ hỗ trợ chế độ virtual 8086 mode của bộ vi xử lý 80386
Bối cảnh cạnh tranh định hình nên Windows 95
Các thành viên cộng đồng còn nhớ rõ môi trường cạnh tranh khốc liệt xung quanh quá trình phát triển Windows 95. Áp lực lên Microsoft là rất lớn, với các hệ điều hành cạnh tranh như OS/2 Warp, Amiga và NeXT đang vật lộn trên thị trường. Như một bình luận viên đã nhận xét, Rủi ro khi nó không thành công là cực kỳ cao. Một phần rất lớn của công ty đã đặt cược vào nó. Bối cảnh này giải thích tại sao Microsoft tập trung mạnh mẽ vào khả năng tương thích ngược trong khi cố gắng định vị Windows 95 như một bước đột phá cách mạng.
Cuộc thảo luận tiết lộ rằng những hạn chế về phần cứng đóng một vai trò quan trọng trong các động thái cạnh tranh này. Giá RAM đặc biệt đáng chú ý - với thanh SIMM 1MB có giá từ 30 đến 50 đô la Mỹ và mô-đun 4MB lên tới 150 đô la Mỹ vào năm 1992. Những chi phí này khiến các hệ thống 8MB, vốn có thể chạy thoải mái cả OS/2 hoặc Windows 95, trở nên khá cao cấp vào thời điểm đó. Việc giá RAM cuối cùng giảm xuống đã giúp Windows NT gia tăng sức hút, làm cho các giải pháp thay thế như OS/2 càng trở nên thiếu sức cạnh tranh.
Giá bộ nhớ vào đầu những năm 1990:
- 1MB 30-pin SIMM: $30-50 USD
- 4MB 30-pin SIMM: $150 USD (tháng 1 năm 1992), giảm xuống còn $100 USD (tháng 12 năm 1992)
- Hệ thống 8MB được coi là cao cấp nhưng vẫn có thể đạt được
- RAM thường là linh kiện máy tính đắt nhất cùng với CPU, HDD và màn hình
Những hạn chế thực tế và trải nghiệm người dùng
Mặc dù ấn tượng về mặt kỹ thuật, việc chạy Windows 3.1 bên trong Windows 95 có những hạn chế thực tế đáng kể. Người dùng báo cáo rằng phiên bản Windows lồng nhau chỉ có thể chạy ở chế độ toàn màn hình và sẽ bị tạm dừng khi cửa sổ DOS được thu nhỏ. Hai môi trường Windows hoạt động hoàn toàn độc lập - Alt-Tab sẽ chỉ chuyển đổi giữa các ứng dụng trong môi trường hiện tại, đòi hỏi phải quản lý cẩn thận các phím tắt để di chuyển giữa hệ thống máy chủ và máy khách.
Kết nối internet nổi lên như một điểm khác biệt quan trọng khác trong các cuộc thảo luận của cộng đồng. TCP/IP stack được tích hợp sẵn và tính năng dial-up networking của Windows 95 đại diện cho một cải tiến lớn so với Windows 3.1, nơi người dùng thường phải vật lộn với các giải pháp của bên thứ ba như Trumpet Winsock. Khả năng kết nối mạng được tích hợp sẵn này tỏ ra rất quan trọng cho sự thành công của Windows 95 khi việc áp dụng internet ngày càng tăng tốc.
Bối cảnh cạnh tranh hệ điều hành (Giữa thập niên 1990):
- OS/2 Warp: Chạy các ứng dụng Windows một cách tự nhiên, yêu cầu 4-8MB RAM
- Amiga: Bảo vệ bộ nhớ hạn chế, phần cứng trì trệ
- NeXT: Tiên tiến về mặt kỹ thuật nhưng đắt đỏ
- Windows NT: Yêu cầu tối thiểu 32MB RAM, ổn định hơn nhưng tốn nhiều tài nguyên
- Windows 95: Được định vị là mang tính cách mạng trong khi vẫn duy trì khả năng tương thích ngược
Di sản và Ý nghĩa Lịch sử
Khả năng chạy Windows 3.1 bên trong Windows 95 cho thấy bản chất tiến hóa trong các quyết định kiến trúc của Microsoft. Thay vì một sự đoạn tuyệt hoàn toàn với quá khứ, Windows 95 đã kết hợp và mở rộng các công nghệ hiện có. Cách tiếp cận này cho phép Microsoft duy trì khả năng tương thích với hệ sinh thái phần mềm khổng lồ hiện có trong khi vẫn giới thiệu các khả năng mới.
Sự quan tâm liên tục của cộng đồng đối với những chi tiết kỹ thuật này, nhiều thập kỷ sau khi phần mềm được phát hành, làm nổi bật cách các khả năng điện toán lịch sử tiếp tục cung cấp thông tin cho sự hiểu biết của chúng ta về sự tiến hóa của phần mềm. Các cuộc thảo luận tiết lộ không chỉ những gì có thể thực hiện được về mặt kỹ thuật, mà còn cách các cân nhắc kinh doanh, áp lực thị trường và kỳ vọng của người dùng đã định hình bối cảnh điện toán mà chúng ta biết ngày nay.
Việc các khả năng này vẫn tồn tại trong các phiên bản Windows 95 đã phát hành, trái ngược với một số tuyên bố chính thức, đóng vai trò như một lời nhắc nhở rằng phần mềm thường chứa các tính năng ẩn và khả năng không được ghi chép, phản ánh thực tế phức tạp của quá trình phát triển sản phẩm.
Tham khảo: Windows 3.1 trong một Máy ảo Windows 95
