• Thứ Tư, 18/02/2004 07:24 (GMT+7)

    Câu chuyện Hệ Điều Hành

    Không phiêu lưu với làn sóng công nghệ mới, các nhà quản lý CNTT đang suy xét đánh giá hiện tượng Linux, cân nhắc việc thay HĐH cũ của IBM hay nâng cấp Windows NT Server già cỗi.
     

    LỊCH SỬ…

    Vào thời kỳ đầu, máy tính chưa có hệ điều hành (HĐH) – phần mềm quản lý các ứng dụng và tài nguyên hệ thống. Ngay bản thân phần mềm cũng chưa hiện diện. Máy tính được lập trình bằng cách nối dây thủ công các mạch tính toán, mỗi khi thực hiện một tính toán mới thì phải đi dây lại.
    Mọi chuyện bắt đầu thay đổi vào năm 1945, khi John von Newmann đưa ra mô hình máy tính chứa các chỉ thị trong bộ nhớ và có thể ra lệnh cho các khối tính toán của nó thực hiện những công việc cần thiết. Ngày 21/06/1948, chương trình máy tính đầu tiên được chạy trên chiếc máy thí nghiệm có tên Baby ở đại học Manchester, Anh – và phần mềm được sinh ra.
    Tuy nhiên máy tính mới chỉ có thể chạy một chương trình trong mỗi thời điểm. Người vận hành vẫn phải nạp từng chương trình và dữ liệu vào bộ nhớ từ băng từ hay thẻ đục lỗ, sau đó chạy chương trình. Toàn bộ qui trình như vậy phải lặp lại cho chương trình kế tiếp. Tuy nhanh hơn việc thay đổi dây nối nhưng nó vẫn lãng phí quá nhiều thời gian máy tính.
    Những năm đầu thập niên 1950, các doanh nghiệp dùng máy tính tìm kiếm cách thức giải quyết vần đề trên. Năm 1955, các lập trình viên ở General Motors Research Center đã tìm ra giải pháp cho chiếc máy tính IBM 701 của mình: một chương trình điều khiển xử lý tập lệnh cho phép người vận hành đưa vào một loạt công việc lên một băng từ. Đây là bước đầu tiên hướng đến một HĐH hoàn chỉnh.
    Các hãng cung cấp máy tính nhanh chóng đưa ra trình xử lý tập lệnh của mình. Những năm đầu thập niên 1960, họ bắt đầu bổ sung các thành phần mà chúng sẽ trở thành những tính năng chủ chốt của HĐH. Burroughs 5000 Master Control Program đưa ra bộ nhớ ảo và khả năng chạy nhiều trình cùng lúc. EXEC I của Univac cấp phát bộ nhớ, định thời biểu làm việc CPU và quản lý các yêu cầu xuất/nhập. OS/360 của IBM cho phép cùng một phần mềm có thể chạy trên nhiều loại máy.

    Năm 1963, một nhóm chuyên gia ở MIT dưới sự dẫn dắt của Fernando Corbato đã phát triển hệ thống CTSS (Compatible Time Sharing System – hệ thống chia sẻ thời gian tương thích), HĐH thực sự đầu tiên cho phép nhiều người dùng chạy cùng lúc các chương trình từ các thiết bị đầu cuối. Tiếp sau đó, nhóm này đã phát triển một HĐH nhiều tham vọng hơn: Multics, dự án liên kết giữa General Electric Co. và AT&T Bell Labs. Multics đưa ra hệ thống tập tin có cấu trúc cây và nhiều tính năng HĐH hiện đại khác.
    AT&T rút khỏi dự án Multics vào năm 1969. Nhưng hai lập trình viên Ken Thompson và Dennis Ritchie của AT&T tiếp tục phát triển phiên bản thu nhỏ của Multics và đặt tên là Unix. Unix dễ chuyển sang các kiến trúc máy tính mới và phát triển phổ biến ở các trường đại học nhờ AT&T cung cấp mã nguồn cho sinh viên nghiên cứu. Vào thập niên 1980, Unix đã sản sinh ra một thế hệ máy tính trạm (workstation) và truất phế nhiều HĐH thời đó.
    Máy tính để bàn đầu tiên xuất hiện vào giữa thập niên 1970 với những HĐH nhỏ hơn các trình điều khiển của 20 năm trước. Khi IBM bắt đầu bán những chiếc PC (Personal Computer - máy tính cá nhân) vào năm 1981, hãng cung cấp kèm theo nhiều HĐH nhưng phổ biến nhất và rẻ nhất là PC DOS do một công ty nhỏ tên là Microsoft Corp cung cấp.
    Microsoft nhanh chóng thống trị thị trường HĐH dành cho PC, đều đặn “mượn” các tính năng từ các đối thủ của mình, như giao diện người dùng Windows lấy từ Macintosh của Apple Computer Inc. Microsoft cũng cung cấp Xenix, phiên bản Unix dành cho PC phổ biến nhất, và làm việc với IBM để phát triển một HĐH PC đa nhiệm - OS/2, vào năm 1987. Nhưng ba năm sau, quan hệ đối tác IBM - Microsoft tan vỡ, và Microsoft kết hợp phần nghiên cứu về OS/2 của mình với Windows để tạo ra Windows NT vào năm 1993.
    Sinh viên người Phần Lan Linus Torvalds không có ý định cạnh tranh với Microsoft khi bắt tay thực hiện một phiên bản nháy Unix - đặt tên là Linux, vào năm 1991. Sau khi hoàn tất phiên bản đầu tiên, Torvalds đã kêu gọi sự trợ giúp của các lập trình viên trên Internet. Năm 1994, Linux trở thành một HĐH hoàn chỉnh và miễn phí. Năm 1999, nó được sử dụng cho nhiều máy chủ Web trên Internet, hơn cả HĐH Windows, và trở thành đối thủ cạnh tranh đáng gờm nhất của Microsoft.
    Hiện nay, Linux được dùng cho đủ loại thiết bị, từ thiết bị cầm tay đến máy tính lớn (mainframe), trong khi đó các phiên bản Windows cũng mở rộng phạm vi hoạt động tương tự. Việc cạnh tranh và khả năng làm việc chung giữa Windows và Linux có thể sẽ định hình tương lai của điện toán trong môi trường doanh nghiệp.Còn có nhiều tình tiết trong câu chuyện này…

    WINDOWS NT CHƯA THOÁI TRÀO
    Không có gì ngạc nhiên khi Microsoft hướng chiến lược tiếp thị đặc biệt nhắm đến người dùng Windows NT Server 4.0 khi tung ra bản Windows Server 2003, giống như họ đã làm với Windows Server 2000. Việc công bố kế hoạch ngưng hỗ trợ NT Server 4.0 của Microsoft chắc chắn làm cho nhiều người dùng bối rối. Cũng như bất kỳ hãng cung cấp nào, Microsoft thích khách hàng chuyển sang các sản phẩm mới ngay khi chúng được đưa ra thị trường (Có thể tìm hiểu kỹ về Windows Server 2003 trên PC World VN số tháng 5/2003, trang 78).
    Nhưng mặc cho sự hối thúc của Microsoft, vẫn còn rất nhiều người dùng NT Server chưa sẵn sàng chuyển sang hoặc chưa hoàn tất việc nâng cấp. Theo một quan chức thuộc bộ phận máy chủ của Microsoft, ước tính hiện NT 4.0 chiếm khoảng 35% đến 40% số lượng HĐH máy chủ Windows được cài đặt. Số liệu khảo sát cuối năm 2002 của IDC cho thấy tỉ lệ này là 33%. Còn theo một chuyên gia phân tích của Gartner Inc. thì tỉ lệ này cao hơn, lên tới hơn 60%. Dù tỉ lệ nào cũng vậy, một điều rõ ràng là vẫn còn rất nhiều người dùng Windows NT Server 4.0.
    Có thể chia người dùng NT Server 4.0 thành 3 nhóm chính: Nhóm có qui định sử dụng một HĐH từ 5 đến 7 năm; nhóm có các ứng dụng quan trọng chạy trên NT; nhóm eo hẹp về tài chính không thích nâng cấp liên tục. Những người dùng bị “mắc kẹt” với NT 4.0 đã có từ 7/1996 có những lý do chính đáng sau để vẫn tiếp tục sử dụng: Mất nhiều thời gian để nâng cấp; các ứng dụng quan trọng được xây dựng trên NT 4.0 và HĐH này vẫn làm việc tốt, nâng cấp sẽ gây xáo trộn, lợi ích nâng cấp không thuyết phục so với chi phí bỏ ra.
    Microsoft biết rõ điều này khi quyết định kéo dài thời gian hỗ trợ NT 4.0 đến năm 2004 (theo kế hoạch thì kết thúc cuối năm 2003). Nhưng có thể hãng sẽ không mạo hiểm gây tổn hại những mối quan hệ với các khách hàng công ty quí giá của mình, đặc biệt là các công ty lớn.

    IBM OS/390, CUỘC CHƠI KẾT THÚC
    Khi IBM ngưng bán HĐH OS/390 vào tháng 12/2003, người dùng hệ thống máy tính lớn buộc phải chuyển sang HĐH 64-bit z/OS mới hơn. Những người dùng trì hoãn việc nâng cấp sẽ bị bỏ rơi với HĐH không còn được hỗ trợ trong tương lai không xa. Ước tính hiện có hơn 80% máy tính lớn chạy OS/390.
    IBM đã liên tục thông báo điều này từ cách đây vài năm. z/OS được đưa ra vào tháng 10/2000 cùng với dòng máy tính lớn zSeries 64-bit và hiện đã có phiên bản thứ tư. Thời gian kết thúc hỗ trợ kỹ thuật cho OS/390 cũng đã được ấn định, OS/390 Version 2.09 kết thúc vào tháng 3/2003, còn Version 2.10 – phiên bản OS/390 cuối cùng – sẽ kết thúc vào tháng 9/2004. 
    IBM khuyến cáo người dùng OS/390 nâng cấp lên phiên bản mới nhất, z/OS 1.4, không chỉ nhằm đảm bảo tiếp tục được hỗ trợ mà còn vì phiên bản HĐH này được lấy làm cơ sở cho những cải tiến phần cứng trong tương lai. Hơn nữa, z/OS 1.4 lđ phiân b?n z/OS cu?i căng mđ người dùng OS/390 có thể nâng cấp trực tiếp. Việc chuyển đổi sang các phiên bản z/OS sau từ OS/390 yêu cầu phải thực hiện qua hai bước.
    Sự phức tạp của việc nâng cấp tuỳå thuộc vào phiên bản HĐH và phần cứng. Ví dụ, người dùng OS/390 Version 2.10 có thể nâng cấp lên z/OS 1.4 và tiếp tục sử dụng các ứng dụng ở chế độ 31-bit trên phần cứng 390 31-bit. Trong trường hợp này, việc nâng cấp thực ra không có gì khác biệt so với việc chuyển sang bất kỳ phiên bản HĐH mới nào. Với những người dùng chưa sẵn sàng hay không có điều kiện chuyển sang môi trường 64-bit đầy đủ, bao gồm việc mua phần cứng mới zSeries đắt tiền, thì việc chạy z/OS ở chế độ 31-bit trên phần cứng S/390 sẽ “dễ chịu” hơn.
    Người dùng các phiên bản OS/390 trước 2.10 phải đối mặt với sự thay đổi toàn bộ hệ thống, và việc chuyển đổi sang z/OS phải thực hiện qua nhiều giai đoạn.
    Hiện thời, chi phí nâng cấp phần mềm và phần cứng để chuyển sang chế độ 64-bit với z/OS còn khá cao. Hơn nữa, cần phải chuẩn bị kỹ càng cho việc chuyển đổi từ môi trường 31-bit để khai thác đầy đủ tính năng 64-bit. Các ứng dụng và mã lệnh làm việc tốt ở chế độ 31-bit không phải luôn chạy tốt trên z/OS, có thể phải mất nhiều thời gian để cài đặt và kiểm tra.
    Về phần mình, IBM đã rất cố gắng nhằm làm đơn giản việc chuyển đổi sang môi trường 64-bit. “Chương trình chuyển đổi hai chiều” cho phép người dùng chuyển qua lại giữa chế độ 31-bit và 64-bit đặc biệt hữu ích. Người dùng có thể chuyển các ứng dụng sang môi trường z/OS 64-bit, và nếu có vấn đề, thì có thể chuyển trở lại chế độ 31-bit để làm việc trong khi chờ vấn đề được giải quyết. IBM cũng đã cấu trúc lại các chính sách giá của mình nhằm giảm tối đa chi phí nâng cấp phần mềm liên quan khi chuyển sang z/OS. Hãng cũng cung cấp các tài liệu hướng dẫn kỹ thuật chi tiết.

    LUỒNG GIÓ MỚI LINUX
    Phần mềm mã nguồn mở, đặc biệt là Linux, đang nhận được sự quan tâm của chính phủ các nước châu Âu và nhiều nơi khác trên thế giới nhằm tìm kiếm cách thức để cắt giảm chí phí CNTT và không bị lệ thuộc vào các công ty Mỹ. Các công ty lớn trên thế giới cũng vậy. Unilever, hãng sản xuất tiêu dùng khổng lồ với doanh số 52 tỉ USD, đã quyết định chuyển sang dùng Linux để điều hành hoạt động kinh doanh trên khắp thế giới của mình. Các nhà cung cấp giải pháp doanh nghiệp lớn như IBM, SAP AG và Computer Associates International Inc. đang chuyển các tiện ích và ứng dụng doanh nghiệp chủ chốt sang HĐH nguồn mở, chi phí thấp này.

    Nhưng không phải tổ chức nào cũng sẵn sàng nhảy sang Linux; nhiều công ty chỉ mới tìm hiểu về hiện tượng nguồn mở. Có một số vấn đề gây e ngại cho các nhà quản lý IT như quản lý phiên bản, ứng dụng, hỗ trợ kỹ thuật và huấn luyện. Thực ra, nếu tìm hiểu kỹ thì những vấn đề này không quá nghiêm trọng.
    Nếu là doanh nghiệp, hẳn bạn sẽ mua phiên bản Linux của một hãng lớn, như Red Hat Inc., SuSE Linux AG hay The SCO Group. (Hiện bốn công ty: SuSE Linux AG, The SCO Group Inc, TurboLinux Inc và Conectiva SA đã hợp tác phát triển và tiếp thị cho sản phẩm chung được đặt tên là UnitedLinux nhằm cạnh tranh với đối thủ đang dẫn đầu thị trường Red Hat). Thường các hãng chỉ cung cấp bản cập nhật cho bản Linux của mình; muốn có cập nhật cho các tiện ích hay ứng dụng trên Linux, người dùng phải tìm đến các hãng phần mềm khác. Người dùng cũng không biết chắc các bản cập nhật có làm việc với các ứng dụng hay các trình điều khiển thiết bị cũ hơn không. Linux vốn có tiếng là không tương thích ngược. Một số hãng phân phối cũng e ngại việc đưa vào trình điều khiển thiết bị hay phần mềm khác từ các hãng cung cấp đã từ chối cung cấp mã nguồn vì lý do cạnh tranh.
    Tuy nhiên, cũng giống như với Windows và các hệ thống máy tính lớn, không một nhà quản lý IT tốt nào thực hiện việc cập nhật tuỳ tiện. Phải có quy trình thực hiện, kiểm tra để đảm bảo cập nhật an toàn.
    Tuy hiện thời ứng dụng trên Linux chưa nhiều nhưng các ứng dụng trên Unix có thể chuyển sang nền tảng mới này. Các nhà phát triển ứng dụng sẽ không phải học thêm ngôn ngữ mới, họ có thể dùng C, C++ hay Java.
    Về vấn đề hỗ trợ, nếu sẵn lòng trả tiền bạn sẽ nhận được sự hỗ trợ chu đáo từ các nhà phân phối Linux hay các hãng nổi tiếng như IBM và HP. Hay, nếu có kiến thức và kỹ năng, bạn có thể nhận được hỗ trợ tốt hơn từ cộng đồng nguồn mở. Các hãng lớn như IBM và HP đều có cung cấp dịch vụ hỗ trợ 24/24, các nhà phân phối Linux lớn như Red Hat và SCO cũng vậy. Mô hình phát triển mở không có nghĩa việc hỗ trợ khác biệt với một HĐH bản quyền.
    Với các chuyên gia Unix, việc chuyển sang môi trường Linux không quá khó khăn và không mất nhiều thời gian. Tuy nhiên, với người dùng (Unix và Windows) thì cần phải huấn luyện về các tính năng mới.
    Tin tốt: Gần như tất cả những gì thực hiện trên máy tính lớn hay các hệ thống phân tán đều có thể thực hiện trên Linux. Tin xấu: Bạn cần phải học một số khái niệm và thuật ngữ mới.

    VÀ CÂU CHUYỆN CHƯA KẾT THÚC
    Dường như cho rằng việc chọn lựa nâng cấp lên phiên bản Windows Server mới hay chuyển sang toa tàu Linux chưa đủ gây bối rối cho các nhà quản lý IT, hiện đang râm ran về một khái niệm mới khá mơ hồ: “Siêu hệ điều hành” (meta OS).
    Siêu HĐH là một cơ chế bao quát để sử dụng các công cụ tự động nhằm giúp bộ phận IT cấu hình, giám sát, quản lý và điều khiển toàn bộ môi trường điện toán của mình. Các hãng lớn đã tiến hành nghiên cứu về sáng kiến này. Ví dụ, IBM có “tính toán tự động”, Sun Microsystems Inc. thì có phần mềm quản lý N1. Tính toán lưới, dịch vụ Web và ảo hoá lưu trữ cũng thuộc xu hướng này.
    Các công cụ quản lý tự động của siêu HĐH có thể giải quyết nhiều vấn đề vướng mắc hiện nay. Và câu chuyện còn tiếp diễn

    ID: A0306_74