Trước khi những màn hình desktop Linux hiện đại trở nên phổ biến, người dùng đã tương tác với máy tính thông qua các thiết bị đầu cuối (terminals). Sự phát triển của những thiết bị này không chỉ định hình cách chúng ta làm việc mà còn ảnh hưởng sâu sắc đến thiết kế của các hệ điều hành như Unix và Linux. Vậy, làm thế nào mà chúng ta đã đi từ những “máy in chữ” ồn ào đến các màn hình hiển thị trực quan ngày nay, và di sản của chúng vẫn còn hiện hữu như thế nào trong thế giới công nghệ?
Kỷ Nguyên Của Thiết Bị Đầu Cuối In Chữ: Giao Tiếp Sơ Khai
Vào những năm 1960 và đầu 1970, nếu bạn may mắn có thể truy cập tương tác với máy tính thay vì phải dùng thẻ đục lỗ, rất có thể bạn sẽ sử dụng một thiết bị đầu cuối in chữ, hay còn gọi là “Teletype” hoặc TTY. Những cỗ máy này đã được sử dụng rộng rãi trong điện báo và các dịch vụ truyền tin tức. Đúng như tên gọi, chúng in dữ liệu lên giấy – rất nhiều giấy – đồng thời hoạt động chậm chạp và gây ra tiếng ồn lớn.
Một trong những ảnh hưởng rõ rệt của chúng lên thiết kế của Unix là sự ưu tiên cho các tên lệnh ngắn gọn như ls, cat, và pwd. Thói quen này vẫn tồn tại cho đến ngày nay, có lẽ vì người dùng Linux không thích gõ quá nhiều. Một ảnh hưởng khác đến thiết kế chương trình là do cách các thiết bị đầu cuối in chữ xuất thông tin ra giấy. Vì không có màn hình, việc chỉnh sửa tập tin chỉ có thể thực hiện từng dòng một. Những trình soạn thảo này được gọi là trình soạn thảo dòng (line editors). Để thay đổi một tập tin, bạn sẽ in ra một hoặc vài dòng, sau đó viết một dòng mới để thay thế. Một ví dụ hiện đại điển hình là trình soạn thảo ex, vốn là Vim ở dạng cải trang.
Người phụ nữ đang sử dụng máy in chữ Teletype (tty) vào cuối những năm 1960, minh họa cách tương tác máy tính thời kỳ đầu.
Sự Ra Đời Của Thiết Bị Đầu Cuối Video: Cuộc Cách Mạng Hiển Thị
Vào giữa những năm 1970, những tiến bộ trong công nghệ hiển thị đã giúp các thiết bị đầu cuối dựa trên màn hình CRT (ống tia cathode) trở nên phải chăng hơn. Các trường đại học và công ty bắt đầu thay thế những thiết bị đầu cuối in chữ cũ kỹ bằng chúng. Một yếu tố quan trọng giúp chúng tiết kiệm chi phí vận hành hơn là không cần sử dụng hàng xấp giấy liên tục. Mặc dù vậy, thiết bị đầu cuối in chữ vẫn được dùng làm bảng điều khiển quản trị viên trong một thời gian, vì khả năng in ấn của chúng kiêm luôn chức năng ghi nhật ký khi hệ thống gặp sự cố.
Không chỉ thay thế giấy bằng màn hình, những thiết bị đầu cuối video này còn mở ra cánh cửa cho các loại ứng dụng mới, trong đó có trình soạn thảo màn hình (screen editor). Thay vì bị giới hạn ở một dòng duy nhất, người dùng có thể xem toàn bộ hoặc ít nhất một phần lớn của tập tin và cuộn trang. Điều này thuận tiện hơn rất nhiều so với các trình soạn thảo dòng cũ. Một trong những trình soạn thảo nổi bật nhất, vi, được Bill Joy viết khi còn là sinh viên cao học tại UC Berkeley. vi sau này trở thành một phần cốt lõi của Berkeley Software Distribution (BSD) của Unix và một trình soạn thảo tiêu chuẩn trên Unix, đồng thời ảnh hưởng đến thiết kế của Vim hiện đại.
Thiết bị đầu cuối video DEC VT320 hiển thị ứng dụng Lotus 1-2-3, đại diện cho kỷ nguyên màn hình CRT.
Thách Thức Tương Thích Và Giải Pháp: Termcap và Curses
Trong khi thiết bị đầu cuối video nhanh chóng thay thế thiết bị đầu cuối in chữ, thị trường lại tràn ngập nhiều loại thiết bị đầu cuối khác nhau với khả năng đa dạng. Điều này gây ra các vấn đề về khả năng tương thích phần mềm, bao gồm cả với vi. Một giải pháp mà Bill Joy đưa ra là Termcap, một cơ sở dữ liệu về các thiết bị đầu cuối phần cứng và khả năng của chúng, chẳng hạn như số cột màn hình có thể hỗ trợ, hoặc liệu con trỏ có thể điều khiển được bởi một chương trình phần mềm hay không.
Giống như nhiều tiến bộ khác, một công nghệ chủ chốt trong các hệ thống Unix và Linux hiện đại lại được thúc đẩy bởi một trò chơi. ‘Rogue’ là một trò chơi nhập vai (RPG) khám phá hầm ngục phổ biến trên các hệ thống BSD vào thập niên 80. Người chơi di chuyển qua một hầm ngục được tạo ngẫu nhiên để tìm kiếm Amulet of Yendor. ‘Rogue’ đột phá ở chỗ người dùng di chuyển bằng màn hình thay vì mô tả văn bản như trong ‘Colossal Cave’. ‘Rogue’ đã vẽ hầm ngục, nhân vật người chơi và quái vật bằng các ký tự ASCII. NetHack là một trong những hậu duệ phổ biến của Rogue, và những trò chơi tương tự được gọi là “roguelike” vì phong cách chơi tương đồng.
Màn hình gameplay của NetHack, một trò chơi roguelike sử dụng đồ họa ký tự ASCII, minh họa giao diện TUI.
Điều này cũng làm giãn nở khả năng của các thiết bị đầu cuối. Ken Arnold, một trong những nhà thiết kế game, đã tạo ra thư viện curses để dễ dàng tạo ra thứ mà ngày nay được gọi là giao diện người dùng văn bản (Text User Interfaces – TUIs). curses hiện vẫn tồn tại dưới dạng mã nguồn mở với tên ncurses.
PC, Workstation và X Terminals Thay Thế Thiết Bị Đầu Cuối Chuyên Dụng
Khi thập niên 1980 tiếp diễn, sự thay đổi công nghệ một lần nữa làm thay đổi cách con người tương tác với máy tính. Máy tính cá nhân (PC) mang máy tính đặt lên bàn làm việc thay vì một thiết bị đầu cuối được kết nối với các cỗ máy ở phòng khác hoặc thành phố khác. Workstation (máy trạm) cung cấp sức mạnh của một máy tính mini trên bàn làm việc, với khả năng đồ họa mạnh mẽ.
Giao diện môi trường desktop XFCE trên Debian Linux với nhiều cửa sổ terminal emulator, thể hiện sự phát triển của terminal trên PC.
Tuy nhiên, các thiết bị đầu cuối vẫn không biến mất hoàn toàn. Trên PC và workstation, các bộ giả lập terminal (terminal emulators) có thể chạy các chương trình dựa trên văn bản giống như các terminal chuyên dụng, và có lợi thế là có thể chạy nhiều cửa sổ terminal trên cùng một màn hình. Thậm chí còn có những terminal có thể chạy X Window System và hiển thị các chương trình đồ họa chạy trên các máy tính từ xa. Chúng được gọi là “X terminals” và là tiền thân của khái niệm máy khách mỏng (thin client) ngày nay.
Hình ảnh văn phòng cũ với máy tính và công nghệ lỗi thời, gợi nhớ về thời kỳ chuyển giao từ terminal chuyên dụng sang PC và workstation.
Di Sản Vĩnh Cửu Của Terminal
Có rất nhiều lịch sử trong một cửa sổ terminal Linux hiện đại, kéo dài từ thời kỳ Teletype. Giao diện dòng lệnh Linux có hình dáng như hiện tại là nhờ cách thức hoạt động của phần cứng cũ, và các nhà phát triển trong tương lai sẽ tiếp tục xây dựng dựa trên di sản đó. Hãy cùng chia sẻ những kỷ niệm hoặc suy nghĩ của bạn về sự phát triển của terminal máy tính và ảnh hưởng của nó đối với bạn!