Sức sống của DOS

17/07/2011 11:05

Cách nay 30 năm, ngày 12/8/1981, Công ty IBM chính thức giới thiệu mẫu máy tính cá nhân IBM PC dùng hệ điều hành IBM PC-DOS 1.0. Mẫu máy tính PC của IBM nhanh chóng trở thành chuẩn của máy tính cá nhân.

Chính PC tạo nên thành công phi thường của hệ điều hành MS-DOS. Lạ thay, hệ điều hành DOS hiện nay vẫn tiếp tục tồn tại dưới nhiều hình thức.



Từ giữa thập niên 1970, trào lưu "máy tính cá nhân" xuất hiện và ngày càng sôi động với nhiều nhãn hiệu: Commodore, Atari, Apple, Tandy,... (mỗi loại máy có thiết kế phần cứng và phần mềm riêng biệt, tương tự trào lưu "máy tính bảng" ngày nay). Là công ty sản xuất máy tính lớn, chuyên cung cấp giải pháp quản trị doanh nghiệp, IBM quyết định "đánh chặn từ xa", ngăn ngừa sự lớn mạnh của các nhà sản xuất nhỏ. Nhóm dự án Chess (dự án "cờ vua") được thành lập ở IBM với nhiệm vụ thiết kế và phổ biến mẫu máy tính cá nhân mới trong thời gian ngắn.

Nhóm Chess hoàn tất thiết kế phần cứng của mẫu máy tính cá nhân mới sau một năm. Mẫu máy tính cá nhân đầu tiên của IBM mang tên IBM PC 5150 dùng bộ xử lý 16 bit (Intel 8088 4.77 MHz), có bộ nhớ RAM 16 KB và ổ đĩa mềm 160 KB.


Máy tính PC đầu tiên (IBM PC 5150).


Để nhanh chóng đưa PC ra thị trường, IBM tiếp xúc với một công ty nhỏ mang tên Microsoft để thảo luận về việc phát triển phần mềm cho PC. Bill Gates - giám đốc điều hành Microsoft - đề nghị cung cấp sản phẩm Microsoft BASIC để ghi vào ROM. Microsoft BASIC vừa là công cụ lập trình, vừa là phương tiện quản lý đĩa lưu trữ và giao tiếp với người dùng qua dòng lệnh.

Vào lúc đó, mọi máy tính lớn của IBM đều dùng lớp phần mềm cơ bản gọi là hệ điều hành (operating system). Hệ điều hành giao tiếp với phần cứng, tạo nền tảng cho việc phát triển phần mềm ứng dụng. Hệ điều hành DOS/360 của máy IBM System/360 là hệ điều hành lưu trên đĩa từ (DOS - Disk Operating System), thay thế vai trò của hệ điều hành lưu trên băng từ (TOS - Tape Operating System). Như mọi hệ điều hành vào thời ấy, DOS/360 giao tiếp với người dùng qua dòng lệnh.

Với PC, IBM muốn có hệ điều hành dành riêng. Do vậy, IBM chuyển qua tiếp xúc với Digital Research, công ty từng cung cấp hệ điều hành CP/M (Control Program for Microcomputers) cho những máy tính cá nhân dùng bộ xử lý 8 bit (Intel 8080). Gary Kildall - giám đốc điều hành Digital Research - đồng ý phát triển hệ điều hành cho PC nhưng đề xuất phương thức ăn chia trên số lượng sản phẩm tiêu thụ và từ chối cung cấp mã nguồn. Đó là điều mà IBM không thể chấp nhận.

Biết rằng IBM không thể thỏa thuận với Digital Research, Gates quyết định nhảy vào "cuộc chơi hệ điều hành". Microsoft mua mã nguồn hệ điều hành 86-DOS của kỹ sư Tim Paterson thuộc Công ty SCP (Seattle Computer Products) dùng cho bộ xử lý 16 bit (Intel 8086). Chỉ sau vài tuần chỉnh sửa 86-DOS, Microsoft đã có thể giới thiệu với IBM hệ điều hành MS-DOS dùng cho máy tính PC.

Paterson xây dựng nhanh chóng 86-DOS trước hết nhằm phục vụ cho nhu cầu nội bộ (SCP là công ty phần cứng, không phải công ty phần mềm). Để thuận tiện cho việc chuyển đổi phần mềm ứng dụng trên CP/M qua 86-DOS, Paterson thiết lập giao diện lập trình ứng dụng (API - Application Programming Interface) cho 86-DOS giống như CP/M dựa vào cẩm nang CP/M Interface Guide của Digital Research. 86-DOS cũng có các lệnh DIR, RENAME, ERASE,... giống như CP/M. Cấu trúc bên trong của 86-DOS đơn sơ hơn CP/M, chưa dự trù chức năng hoạt động đa nhiệm (multitasking) và chức năng kết nối mạng (networking) như CP/M.


Tim Paterson


Khi chuyển qua làm việc cho Microsoft vào tháng 5/1981, Paterson kinh ngạc biết rằng hệ điều hành nhỏ gọn của anh sẽ được cung cấp cho công ty khổng lồ IBM. Cùng với Bob O'Rear - kỹ sư của Microsoft, Paterson hoàn tất việc sửa đổi 86-DOS thành hệ điều hành dùng cho PC. Theo ý của IBM, dấu nhắc ở dòng lệnh cũng phải giống với CP/M!

Theo thỏa thuận, Microsoft cung cấp mã nguồn hệ điều hành MS-DOS cho IBM. IBM được quyền sửa đổi, phát triển mã nguồn theo nhu cầu và đặt tên riêng cho hệ điều hành (IBM dùng tên PC-DOS) nhưng Microsoft vẫn giữ quyền sở hữu MS-DOS.

Với PC, IBM công khai toàn bộ hồ sơ thiết kế phần cứng, cho phép các nhà sản xuất khác chế tạo PC theo thiết kế của IBM. Khi làn sóng máy tính PC tràn ngập thị trường, IBM đạt được mục tiêu đề ra nhưng thắng lợi thực sự thuộc về Microsoft. Digital Research từng đưa ra hệ điều hành DR-DOS cho PC nhưng đã không thể xoay chuyển tình thế. Đến đầu thập niên 1990, Microsoft lớn mạnh ngang ngửa IBM. IBM đã đánh giá không đúng về giá trị của thị trường phần mềm máy tính PC.

Để rượt đuổi máy tính Macintosh hào nhoáng của Apple, Microsoft tạo ra lớp phần mềm nằm trên MS-DOS mang tên Windows và quảng bá Windows như một hệ điều hành mới sử dụng giao diện đồ họa. Từ trước khi phát hành Windows 95, Microsoft đã xác lập một lộ trình để loại bỏ hoàn toàn MS-DOS, thúc đẩy việc sử dụng bộ phần mềm văn phòng Microsoft Office trên Windows.

Giữa thập niên 1990, nhiều doanh nghiệp vẫn phụ thuộc vào phần mềm ứng dụng trên MS-DOS, nhiều người dùng gia đình vẫn gắn bó với những trò chơi trên MS-DOS, tỏ ra không sẵn sàng "di cư" lên Windows vì nhiều phần mềm trên MS-DOS không thể hoạt động tốt trong cửa sổ DOS của Windows. Điều này khiến cho Jim Hall, sinh viên ngành vật lý tại Đại học Wisconsin nghĩ đến việc xây dựng hệ điều hành hoàn toàn tương thích với MS-DOS theo phương pháp nguồn mở như Linux. Hall hồi tưởng:

"Tôi dùng DOS từ khi còn bé, trên máy tính IBM PC-XT ở nhà. Đó là loại máy chỉ có ổ đĩa mềm, không có đĩa cứng, dùng hệ điều hành MS-DOS 1.1. Ngoài việc học những điều tinh tế trong cách dùng DOS, tôi thường tập lập trình những trò chơi đơn giản. Tôi rất thích cách giao tiếp với máy thông qua dòng lệnh. Khi lớn lên, sự gắn bó giữa tôi với DOS vẫn không phai nhạt.

Vào năm 1994, DOS vẫn là hệ điều hành phổ biến, đơn giản, dễ dùng và ổn định hơn Windows 3.1. Đã có rất nhiều phần mềm trên DOS. Tôi thường xuyên dùng phần mềm trên DOS trong việc học của mình: phân tích số liệu thí nghiệm, viết báo cáo và gửi báo cáo cho nhà trường qua đường điện thoại. Tôi cũng viết được nhiều phần mềm hữu ích trên DOS.

Thế nhưng khi biết rằng Microsoft cuối cùng sẽ loại bỏ MS-DOS, nhiều người dùng DOS trong các nhóm thảo luận trên Internet (newsgroup), chẳng hạn như comp.os.msdos.misc, hỏi nhau liệu có ai tạo ra DOS như một hệ điều hành nguồn mở theo kiểu Linux hay không. Nhiều người nói rằng nếu có dự án DOS nguồn mở, họ sẵn sàng đóng góp nhưng không có ai khởi xướng".

Hall quyết định khởi xướng dự án xây dựng hệ điều hành DOS nguồn mở. Ngày 29/6/1994, Hall thông báo về dự án của mình tại nhóm thảo luận comp.os.msdos.apps. Lúc đầu, Hall đặt tên cho hệ điều hành là PD-DOS (PD - Public Domain), sau đổi tên thành FreeDOS để nêu rõ đó là phần mềm tự do.

"Ngay lập tức tôi nhận được thư điện tử từ nhiều người ở khắp nơi trên thế giới tỏ ý muốn đóng góp vào dự án. Tim Norman bắt đầu viết chương trình command.com. Pat Villani gửi thư cho tôi để thảo luận về việc lập trình phần lõi (kernel) của FreeDOS. Dự án của chúng tôi càng ngày càng mở rộng.

Để những phần mềm yêu thích của mình chạy được trên FreeDOS, chúng tôi phải mô phỏng API của MS-DOS, càng giống càng tốt. Làm sao thực hiện điều đó khi không có mã nguồn của MS-DOS? Rất may là Ralph Brown cung cấp cho chúng tôi danh sách toàn bộ các hàm của MS-DOS thuộc nhiều phiên bản khác nhau".

Những người không biết lập trình cũng hăng hái góp sức vào các khía cạnh khác của dự án. FreeDOS nhanh chóng có được biểu tượng vui là chú cá mũm mĩm vì... "cá rất tự do". Hall thích gọi chú cá FreeDOS là Blinky.

Để mọi phần mềm trên MS-DOS chạy được trên FreeDOS, những người tham gia dự án FreeDOS phải tạo ra lớp phần mềm mô phỏng tỉ mỉ những phần cứng đã không còn tồn tại. Sự mô phỏng tốt đến mức Windows 3.x có thể chạy trên FreeDOS!



Jim Hall




Biểu tượng vui của FreeDOS.


Khi FreeDOS đạt được mục tiêu ban đầu, Hall tự hỏi nếu Microsoft không "bỏ rơi" MS-DOS, họ sẽ làm gì để phát triển MS-DOS? Nhóm FreeDOS tiếp tục thực hiện những mục tiêu mới: làm cho FreeDOS sử dụng được cổng USB, làm cho những trò chơi nhiều người trên MS-DOS sử dụng mạng LAN trở thành trò chơi trực tuyến,... Nhóm FreeDOS cũng bắt đầu nghĩ đến một hệ điều hành đa nhiệm. Mã nguồn FreeDOS được giới sinh viên ở nhiều nước chỉnh sửa, thêm bớt để dùng cho nhiều loại thiết bị, đặc biệt là những hệ thống nhúng (embedded system).

Hiện nay FreeDOS được cài đặt sẵn trên nhiều loại máy tính xách tay của HP, Dell, Asus,... Tuy vậy, điều này vẫn chỉ có ý nghĩa tượng trưng. Các nhà sản xuất máy tính cần một hệ điều hành nhỏ gọn để phân phối máy tính "không có Windows" nhằm hạ giá bán (dành cho người dùng muốn tự cài đặt Linux hoặc phiên bản Windows bất hợp pháp).

Hall từng nhận được thư điện tử từ một kỹ sư của Microsoft cho rằng công việc của anh là "ngớ ngẩn". Hall khẳng định: "Tôi khởi xướng FreeDOS vì nhiều người thấy nó hữu ích và thú vị. Chừng nào vẫn có người thích dùng FreeDOS, tôi vẫn tiếp tục tham gia vào dự án FreeDOS".

FreeDOS thực ra chỉ là một trong nhiều dự án làm sống lại DOS trên máy tính PC và cả trên máy tính Mac.

NGỌC GIAO


Ý kiến bạn đọc (0)
Tên   Email

Lên đầu trang