Hai cái máy tính ở phòng Tin, chú Tư mua về cùng một buổi sáng, cùng cấu hình, cùng đời — y hệt nhau tới từng con ốc. Vậy sao một cái luôn chạy mượt, còn một cái cứ hay đơ?
Chú Tư mang về cùng lúc, cùng cấu hình, dán nhãn A và B — máy nào cũng như máy nào.
Đầu năm học, chú Tư — bảo vệ kiêm luôn phần bảo trì máy móc của trường THCS Ánh Dương — tha về hai cái máy tính để bàn mới tinh cho phòng Tin. Cùng một cửa hàng, cùng một hoá đơn, cùng cấu hình: cùng loại CPU, cùng dung lượng RAM, cùng ổ cứng.
Chú dán nhãn A và B lên hai màn hình, đặt hai bàn cạnh nhau — ngay góc phòng nơi Minh và Bống hay ở lại chiều thứ Ba, học lập trình cho mấy con robot nhỏ trong CLB của thầy Huy.
Em sẽ không tài nào phân biệt nổi máy A với máy B. Cùng vỏ máy, cùng đèn báo, cùng tiếng quạt chạy khi bật nguồn.
Nếu hai cái máy giống nhau đến từng con ốc như vậy, thì liệu có gì đủ sức khiến chúng khác nhau được không?
Vài tuần sau, sự khác biệt lộ ra rõ mồn một.
Máy A thì lúc nào cũng mượt: bật lên là vào ngay, mở phần mềm lập trình robot chỉ vài giây, kéo thả chương trình mà chẳng khựng lấy một nhịp.
Máy B thì khác hẳn. Khởi động chậm rì, đang gõ dở lệnh cho robot bỗng dưng đơ cứng, đôi khi cả cửa sổ đang mở treo luôn giữa chừng, phải chờ cả phút mới nhúc nhích lại được.
Bống ngồi cạnh, gõ thử máy B vài lần rồi chắc mẩm: "Chắc máy B bị hỏng linh kiện gì rồi đấy."
Nghe cũng hợp lý — máy chạy dở thì hay bị nghi là hỏng đồ trước tiên. Nhưng Minh hơi phân vân: hai máy mua cùng một buổi sáng, cùng cấu hình, sao một cái lại "hỏng" nhanh đến thế được?
Nếu đúng là do linh kiện hỏng, mở nắp ra sẽ thấy ngay thôi.
Chú Tư nghe Bống kể, gật đầu: "Để chú mở ra xem sao." Chú tắt máy, tháo vỏ cả hai cái, đặt song song trên bàn để so từng bộ phận một.
RAM: cùng loại, cùng dung lượng. Ổ cứng: cùng model, cắm chắc chắn. Quạt tản nhiệt: quay đều, không kêu lạch cạch. Bo mạch chủ: không phồng, không cháy, không một vết ố nào khác thường.
Bống ngỡ ngàng: "Ơ, thế sao máy B vẫn đơ?"
Đúng là lạ thật. Nếu bên trong hai cái máy giống hệt nhau tới từng con ốc, thì cái gì còn có thể khác được?
Có một thứ chú Tư chưa kiểm tra — thứ không mở nắp máy ra là nhìn thấy được.
Chú Tư mở tiếp một cửa sổ quản lý hoạt động trên cả hai máy, để xem lúc này mỗi máy đang chạy những gì bên trong.
Máy A: chỉ vài chương trình cần thiết đang mở, gọn gàng. Máy B: hàng chục chương trình đang chạy ngầm cùng lúc — có cả mấy phần mềm chẳng ai dùng tới, và bản hệ thống thì cũ kỹ, cả năm trời chưa từng cập nhật.
Máy B không hề hỏng. Nó chỉ đang bị "sai khiến" theo một cách rất khác máy A — nhiều lệnh chạy ngầm hơn, lệnh cũ hơn, nặng nề hơn.
Hai cái tên cần nhớ: phần cứng, và phần mềm.
Phòng Tin của trường có hai máy, cả hai đều đủ phần cứng y hệt nhau. Nhưng phần mềm — thứ đang chạy bên trong mỗi máy — thì hoàn toàn khác nhau.
Vậy quan hệ giữa hai thứ đó, xét cho cùng, là gì?
Phần cứng giống một cơ thể — có "tay", có "mắt" (màn hình), có "bộ nhớ" (RAM, ổ cứng). Nhưng tự nó không làm gì cả nếu không có ai sai khiến. Bật nguồn một cái máy không cài phần mềm nào, nó chỉ ngồi đó im lìm.
Phần mềm giống tập lệnh cho cơ thể đó biết chính xác phải làm gì, làm khi nào, làm ra sao. Cùng một cơ thể phần cứng, có thể chạy rất nhiều tập lệnh khác nhau — một cái máy vừa học Toán, vừa nghe nhạc, vừa chơi game, vẫn một phần cứng đó thôi, chỉ đổi phần mềm đang chạy.
Và đây là điều quan trọng nhất: máy chạy chậm không phải lúc nào cũng do phần cứng yếu hoặc hỏng. Rất nhiều lần, lỗi nằm ở phần mềm — quá nhiều chương trình chạy ngầm cùng lúc, phần mềm cũ kỹ chưa cập nhật, hoặc có phần mềm độc hại đang âm thầm chiếm dụng máy.
Cơ thể người có ý chí riêng — tự quyết định, tự chọn không nghe lời. Phần cứng máy tính thì hoàn toàn thụ động: nó làm đúng y những gì phần mềm ra lệnh, không tự ý làm thêm, cũng không tự ý từ chối.
Không chỉ hai cái máy ở phòng Tin — cái điện thoại trong túi em cũng vậy.
Cùng một chiếc điện thoại — cùng một "cơ thể" phần cứng — nhưng tuỳ vào phần mềm nào đang cài, nó trở thành những thứ rất khác nhau.
Cài Zalo, nó thành máy nhắn tin cho ông bà. Gỡ Zalo, cài game vào, nó thành máy chơi game. Gỡ sạch mọi ứng dụng, nó gần như chẳng làm được gì — dù linh kiện bên trong chẳng đổi một chút nào.
Vậy rốt cuộc, cái gì mới quyết định "chiếc điện thoại này dùng để làm gì" ngay lúc này?
Nếu một máy tính có đủ linh kiện tốt nhất mà không cài một phần mềm nào cả, nó làm được gì?
Câu trả lời: gần như không gì cả. Một cỗ máy đầy đủ phần cứng xịn nhất mà không có bất kỳ phần mềm nào chạy trên đó chỉ là một khối kim loại và nhựa im lìm — không biết bật đèn nào, không biết hiển thị gì lên màn hình, không biết phải làm gì tiếp theo.
Giống một cơ thể không nhận được chỉ dẫn nào cả — không cử động theo ý nghĩa nào, dù tay chân, bộ não vẫn còn nguyên đó.
Một cái máy tính "trắng tinh" chưa cài gì vẫn cần ít nhất một phần mềm rất cơ bản — cái để nó biết cách tự khởi động — thì mới bắt đầu làm được việc gì đó.
Có một chỗ em chắc chắn đã gặp chuyện này — mà có khi chưa để ý.
Mỗi lần điện thoại báo "có bản cập nhật phần mềm mới", chẳng có linh kiện nào bị thay cả — chỉ đổi tập lệnh điều khiển bên trong. Vậy mà sau khi cập nhật, máy có thể chạy nhanh hơn, có thêm tính năng mới, đôi khi lại chạy chậm hơn hẳn. Cùng một "cơ thể", chỉ đổi "cách được sai khiến" — kết quả đã khác hẳn rồi.
Bấm vào đáp án em nghĩ là đúng.
1. Chú Tư mở máy B ra và thấy linh kiện y hệt máy A. Vậy nguyên nhân khiến máy B chạy đơ nằm ở đâu?
2. Phần cứng giống cái gì, phần mềm giống cái gì?
3. Điều nào sau đây KHÔNG đúng?
Có điều gì về phần cứng/phần mềm mà em vẫn còn thắc mắc? Viết ra đây — không cần có đáp án ngay, chữ chỉ nằm trên máy của em.
Cuộn nốt xuống dưới nhé — sắp xong trang này rồi!
Nếu chỉ được nói một câu, hãy nói câu này.
Lần tới nghe ai than "máy tính nhà tao chậm quá, chắc phải mua máy mới", em có thể hỏi lại: máy đang chạy bao nhiêu chương trình cùng lúc, đã lâu chưa cập nhật phần mềm? Biết đâu vấn đề không nằm ở "cơ thể", mà ở "cách nó đang được sai khiến".
Nếu một bạn trong CLB Rô-bốt kêu máy chạy chậm, em sẽ hỏi bạn ấy điều gì trước tiên — về linh kiện bên trong, hay về những phần mềm đang chạy?