Tại Sao Tầm Nhìn Hệ Điều Hành Phân Tán Của Amoeba Thất Bại Trong Khi Linux Chinh Phục Thế Giới

Nhóm Cộng đồng BigGo
Tại Sao Tầm Nhìn Hệ Điều Hành Phân Tán Của Amoeba Thất Bại Trong Khi Linux Chinh Phục Thế Giới

Đầu những năm 1990 chứng kiến một cuộc chiến thú vị giữa hai cách tiếp cận rất khác nhau đối với hệ điều hành. Trong khi Linus Torvalds đang phát triển Linux như một kernel nguyên khối có thể chạy trên phần cứng giá rẻ, Giáo sư Andrew Tanenbaum đang làm việc trên Amoeba - một hệ điều hành phân tán đầy tham vọng hứa hẹn sẽ làm cho mạng lưới các máy tính hoạt động như một cỗ máy mạnh mẽ duy nhất.

Rào Cản Phần Cứng Đã Giết Chết Sự Đổi Mới

Sự sụp đổ của Amoeba không phải do thiết kế kém hay thiếu tầm nhìn. Hệ thống này đã mang lại hiệu suất ấn tượng cho thời đại của nó, đạt được các lời gọi thủ tục từ xa chỉ trong 1.4 mili giây và tốc độ máy chủ tệp 677 kilobyte mỗi giây. Tuy nhiên, nó yêu cầu nhiều bộ xử lý 386, ít nhất 16MB RAM trên một máy, và các card Ethernet WD cụ thể - một thiết lập có giá hàng nghìn đô la Mỹ vào năm 1992.

Trong khi đó, Linux có thể chạy trên một chiếc 386SX rẻ tiền với chỉ 2-4MB RAM. Sự khác biệt lớn về yêu cầu phần cứng này đã tạo ra một rào cản không thể vượt qua đối với các nhà phát triển nghiệp dư và sinh viên - những người sẽ trở thành những người áp dụng sớm và đóng góp cho Linux.

So sánh Yêu cầu Phần cứng (1992)

Hệ thống RAM tối thiểu Yêu cầu CPU Mạng Chi phí ước tính
Amoeba 16MB (chính) + 4MB (các node) Nhiều CPU 386 Card Ethernet WD $3,000+ USD
Linux 0.99 2-4MB Một CPU 386SX Tùy chọn $500-1,000 USD
Windows 3.1 2MB Một CPU 386 Tùy chọn $300-800 USD

Hiện Tượng Tệ Hơn Là Tốt Hơn Trong Thực Tế

Câu chuyện Amoeba đối đầu với Linux minh họa hoàn hảo nguyên lý tệ hơn là tốt hơn trong việc áp dụng công nghệ. Amoeba đại diện cho điều đúng đắn - một cách tiếp cận được thiết kế kỹ lưỡng, vượt trội về mặt lý thuyết đối với điện toán phân tán. Linux có thể nói là tệ hơn - một thiết kế nguyên khối mà nhiều học giả đã chỉ trích.

Nhưng sự đơn giản và rào cản thấp để tiếp cận của Linux đã cho phép nó lan truyền nhanh chóng trong cộng đồng các nhà phát triển không đủ khả năng chi trả cho các thiết lập phần cứng đắt tiền. Như một thành viên cộng đồng đã lưu ý, chi phí ban đầu và ma sát quan trọng hơn sự vượt trội kỹ thuật lâu dài khi nói đến việc áp dụng công nghệ.

Thông số hiệu suất của Amoeba (thập niên 1990)

  • Độ trễ remote procedure call: 1.4 mili giây
  • Thông lượng file server: 677 KB/s truyền dữ liệu liên tục
  • Nền tảng phần cứng: máy tính loại Sun-3/50
  • Yêu cầu mạng: card Ethernet WD

Cơ Hội Bị Mất Trong Điện Toán Phân Tán

Việc từ bỏ nghiên cứu hệ điều hành phân tán như Amoeba, cùng với các dự án tương tự như Mosix và Beowulf, đại diện cho một con đường không được chọn trong lịch sử điện toán. Những hệ thống này hứa hẹn một tương lai nơi bạn có thể đơn giản thêm nhiều máy tính hơn để tăng sức mạnh xử lý, giống như thêm RAM vào một máy duy nhất.

Các hệ thống điều phối container ngày nay như Kubernetes cố gắng giải quyết những vấn đề tương tự, nhưng với độ phức tạp cao hơn đáng kể. Cách tiếp cận hệ điều hành phân tán sẽ ẩn giấu độ phức tạp này đằng sau giao diện hệ điều hành quen thuộc, làm cho điện toán phân tán trở nên dễ tiếp cận với các lập trình viên thông thường thay vì yêu cầu kiến thức DevOps chuyên biệt.

Một Di Sản Bất Ngờ

Thú vị thay, đóng góp lâu dài nhất của Amoeba cho điện toán không phải là kiến trúc phân tán mà là một sản phẩm phụ bất ngờ. Guido van Rossum đã phát triển ngôn ngữ lập trình Python trong khi làm việc trên Amoeba tại Trung tâm Toán học và Khoa học Máy tính ở Amsterdam. Python từ đó đã trở thành một trong những ngôn ngữ lập trình phổ biến nhất thế giới, tồn tại lâu hơn nhiều so với hệ thống mà nó ban đầu được tạo ra.

Câu chuyện của Amoeba là lời nhắc nhở rằng trong công nghệ, giải pháp kỹ thuật tốt nhất không phải lúc nào cũng thắng. Đôi khi, việc dễ tiếp cận và giá cả phải chăng quan trọng hơn việc vượt trội về mặt lý thuyết. Trong khi chúng ta chỉ có thể suy đoán về việc điện toán sẽ khác như thế nào ngày nay nếu các hệ điều hành phân tán đã thành công, những bài học từ giai đoạn này tiếp tục ảnh hưởng đến cách chúng ta suy nghĩ về thiết kế hệ thống và việc áp dụng công nghệ.

Tham khảo: Amoeba A Distributed Operating System for the 1990s