9 điểm bởi GN⁺ 2024-04-26 | 1 bình luận | Chia sẻ qua WhatsApp

Công khai mã nguồn MS-DOS 4.0 dưới dạng mã nguồn mở

  • Microsoft đã hợp tác với IBM để công bố mã nguồn MS-DOS 4.00 theo giấy phép MIT, với tinh thần đổi mới mở
  • 10 năm trước, hãng từng công bố mã nguồn MS-DOS 1.25 và 2.0 cho Computer History Museum và cho phép phân phối lại với mục đích tham khảo
  • Đây là một hệ điều hành được viết hoàn toàn bằng mã hợp ngữ 8086 từ gần 45 năm trước, có vị trí quan trọng về mặt lịch sử và rất đáng quan tâm

Lịch sử phức tạp và thú vị của DOS 4.0

  • Lịch sử phiên bản của DOS 4.0 khá phức tạp và thú vị vì ngoài việc Microsoft cùng IBM đồng phát triển một phần mã, họ còn tạo ra một nhánh DOS có tên Multitasking DOS nhưng không được phát hành rộng rãi

Phát hiện của nhà nghiên cứu người Anh Connor "Starfrost" Hyde

  • Nhà nghiên cứu người Anh Connor "Starfrost" Hyde gần đây đã liên hệ với cựu CTO của Microsoft là Ray Ozzie để trao đổi về một phần bộ sưu tập phần mềm của ông
  • Ray đã tìm thấy trong số các đĩa mềm một bản beta nhị phân DOS 4.0 chưa từng công bố mà ông nhận được khi còn làm việc tại Lotus
  • Starfrost đã liên hệ với Microsoft OSPO để đề nghị công bố mã nguồn DOS 4 như một phần của nỗ lực ghi lại mối quan hệ giữa DOS 4, MT-DOS và những gì sau này trở thành OS/2
  • Bản beta nhị phân Ozzie mới này là một phiên bản sớm hơn nhiều so với các bản nhị phân Multitasking DOS có thể tìm thấy trên Internet, là bản chưa từng công bố và còn bao gồm cả mã nguồn ibmbio.com

Nỗ lực bổ sung từ Microsoft

  • Scott Hanselman của Microsoft, với sự giúp đỡ của nhà lưu trữ Internet và người đam mê Jeff Sponaugle, đã tạo ảnh đĩa từ các đĩa gốc này và cẩn thận quét các tài liệu in gốc của "Ozzie Drop"
  • Microsoft cùng những người bạn ở IBM cho rằng đây là một phần thú vị của lịch sử hệ điều hành rất đáng để chia sẻ
  • Jeff Wilcox và OSPO đã rà soát kho lưu trữ của Microsoft, nhưng không tìm thấy toàn bộ mã nguồn của MT-DOS; thay vào đó họ tìm thấy MS-DOS 4.00 được công bố hôm nay cùng các bản beta nhị phân bổ sung, PDF tài liệu và ảnh đĩa
  • Nếu có thêm phát hiện mới, họ sẽ cập nhật bản phát hành này

Lời cảm ơn

  • Gửi lời cảm ơn tới Ray Ozzie, Starfrost, Jeff Sponaugle, Larry Osterman, những người bạn tại IBM OSPO, Greaseweazle, Fluxengine, Aaru Data Preservation Suite, HxC Floppy Emulator và các nhà phát triển phần mềm phục vụ khảo cổ học số
  • Trên hết, xin cảm ơn các tác giả gốc của đoạn mã này, trong đó một số người vẫn đang làm việc tại Microsoft và IBM

Tự chạy thử

  • Nếu muốn tự mình chạy và khám phá phần mềm này, bạn có thể chạy trực tiếp trên IBM PC XT nguyên bản hoặc một máy Pentium mới hơn, hoặc chạy trên các trình giả lập mã nguồn mở PCem và 86box

Ý kiến của GN⁺

  • Việc công bố mã nguồn lần này có vẻ là một sự kiện rất có ý nghĩa về mặt lịch sử. MS-DOS giữ một vị trí quan trọng trong lịch sử PC nên đây sẽ là tư liệu thú vị với nhiều người
  • Tuy nhiên, DOS 4.0 là một phiên bản chưa hoàn thiện và thực tế không được sử dụng rộng rãi, nên sẽ càng tốt hơn nếu mã nguồn của các phiên bản DOS đã thực sự được dùng như 3.x, 5.0 hoặc 6.x cũng được công bố
  • Dù chỉ là mã nguồn của một phiên bản chưa hoàn chỉnh, việc này vẫn có ý nghĩa vì cho phép nhìn thoáng qua cách phát triển hệ điều hành và phong cách viết mã thời đó; nhưng được xem mã của sản phẩm thực tế lại là một giá trị khác
  • Việc khôi phục nội dung từ các đĩa mềm cũ hẳn không hề dễ dàng, nhưng có lẽ đã khả thi nhờ sự phát triển của các công cụ liên quan. Hy vọng trong tương lai sẽ có thêm nhiều nỗ lực phục dựng di sản quá khứ bằng khảo cổ học số
  • Nếu đi kèm cả môi trường có thể build được cùng mã nguồn thì đây cũng sẽ là cơ hội để trực tiếp build và chỉnh sửa MS-DOS. Điều đó sẽ rất hữu ích cho việc nghiên cứu các hệ điều hành legacy

1 bình luận

 
GN⁺ 2024-04-26
Ý kiến trên Hacker News
  • Đã chạy thành công MS-DOS 4.0 trên IBM XT nguyên bản và bộ điều hợp màn hình đơn sắc. Thật tuyệt khi có thể chuyển đổi giữa game nhỏ, Turbo Pascal và dấu nhắc DOS chỉ bằng một phím.

  • Có vẻ như câu chửi mà các lập trình viên trong mã nguồn MS-DOS hay dùng khi nản chí là "brain damaged".

  • Một đoạn video ngắn về MS-DOS 4.0 chạy trên IBM XT đã được chia sẻ. Scott được khen ngợi rất nhiều vì đã tìm được đĩa mềm và xin được phép công bố.

  • Trong mã nguồn có chú thích "Dam multiplan!", được cho là lời chửi nhắm vào ứng dụng bảng tính Multiplan.

  • Có vẻ như mã nguồn này có chứa chửi thề từ trước khi các chính sách liên quan được áp dụng.

  • Việc mã nguồn MS-DOS được mã nguồn mở là điều đáng mừng, nhưng hơi tiếc vì nó diễn ra nhờ động lực từ bên ngoài. Có vẻ các công ty vẫn thiếu chủ động trong việc công bố những mã nguồn mang giá trị lịch sử từ nội bộ.

  • Nhiều người nhớ rằng từ MS-DOS 5.11 trở đi, TSR, trình quản lý bộ nhớ và các thành phần tương tự đã ổn định hơn. Nếu mã nguồn các bản 5.x và 6.x cũng được công bố thì sẽ rất thú vị.

  • Từ lúc MS-DOS 4.0 phát hành (1986) đến khi được mã nguồn mở (2024) đã mất 37 năm. Với tốc độ này, Windows XP có lẽ sẽ được mã nguồn mở vào khoảng năm 2038.

  • MS-DOS 4.x có thể chạy phần lớn phần mềm DOS cổ điển, nên việc công bố mã nguồn mang ý nghĩa rất lớn.

  • Nhìn chung MS-DOS 4 là một phiên bản không mấy tốt và không được dùng rộng rãi. Bản 3.3 hoặc 5.0 phổ biến hơn. Có người còn tự hỏi liệu có ai vẫn nhớ danh sách MUF (Microsofts Undocumented Features) hay không.