Pháo Đài Số

Chương 34

Susan ngồi một mình tại Node 3 chờ đợi kết quả tìm kiếm của Tracer. Trước đó một lát, Hale vừa quyết định ra ngoài để hít thở không khí trong lành. Không có anh ta cô cảm thấy thật dễ chịu.

Nhưng thật kỳ quặc, chính sự vắng vẻ lúc này tại Node 3 như sắp biến nó thành một nhà thương điên. Susan cứ thắc mắc mãi về mối quan hệ mà cô vừa biết giữa Tankado và Hale.

”Thế ai giám sát các giám sát viên“. Cô tự nhắc lại. Lời trích này cứ lởn vởn mãi trong đầu cô. Susan cố tống khứ nó khỏi tâm trí mình.

Cô lại hướng suy nghĩ của mình về David, hi vọng rằng anh sẽ bình an vô sự. Cô vẫn khó có thể tin được giờ này anh đang ở mãi tận Tây Ban Nha. Càng sớm tìm thấy mật khẩu và kết thúc chuyện này sớm bao nhiêu thì sẽ càng tốt bấy nhiêu.

Susan hoàn toàn không thể ước lượng được cô đã ngồi ở đây bao lâu để chờ đợi kết quả tìm kiếm của Tracer. Hai giờ đồng hồ? hay là ba nhỉ? Cô đưa mắt nhìn toàn bộ trung tâm, bây giờ Crypto hoàn toàn vắng lặng, cô chờ một tiếng bíp sẽ phát ra từ chiếc máy vi tính của mình nhưng vô vọng. Không gian xung quanh hoàn toàn im ắng. Phía bên ngoài kia, mặt trời mùa hè đã sắp lặn. Trên trần nhà những chiếc bóng đèn huỳnh quang đã được bật lên tự bao giờ. Susan thực sự hiểu rằng cô không còn nhiều thời gian nữa.

Cô nhăn mặt khi quay lại nhìn chiếc máy vi tính.

- Nhanh nữa lên nào - Cô càu nhàu - Mày đã ngốn của tao quá nhiều thời gian rồi đấy!

Cô di chuột và bấm để hiển thị cửa sổ trạng tháị của chương trình Tracer.

- Không biết máy đã chạy được bao lâu rồi?

Cửa sổ trạng thái đã hiển thị - Susan có thể trông thấy một chiếc đồng hồ giống hệt như trong chương trình TRANSLTR, nhìn vào đó cô có thể nắm được chương trình đã được chạy trong bao lâu. Cô dán mắt vào màn hình hy vọng sẽ biết được bao nhiêu thời gian đã trôi qua, nhưng những thứ hiện ra trên màn hình như làm tứn cô ngừng đập.

TRACER ABORTED

(Chương trình đã ngừng chạy)

- Tracer đã ngưng chạy! - Cô như nghẹt thở.

- Tại sao thế này?

Quá sợ hãi, Susan nhìn chằm chằm vào màn hình, cố gắng tìm kiếm xem liệu có một lệnh bị lỗi đã được nhập hay không, có thể chính nó đã khiến cho Tracer ngưng hoạt động. Nhưng những cố gắng của cô hoàn toàn vô hiệu. Có vẻ như chương trình đã tự động tắt Susan hiểu rằng chuyện này chỉ có thể do một nguyên nhân duy nhất - chính chương trình của cô đã bị lỗi lập trình.

Susan coi những lỗi lập trình là một trong những vấn đề đau đau nhất trong các chương trình máy tính. Do các máy vi tính luôn tuân theo một trật tự hoạt động chính xác tuyệt đối, chỉ cần một lỗi rất nhỏ trong khi lập trình cũng có thể sẽ làm hỏng toàn bộ chương trình. Các lỗi cú pháp chẳng hạn - ví dụ như khi lập trình viên chỉ cần sử dụng nhầm dấu phẩy thay cho dấu chấm - có thể khiến cho toàn bộ chương trình sụp đổ. Susan biết từ “lỗi “ (bug) trong lĩnh vực công nghệ thông tin có nguồn gốc khá ly kì.

Nó bắt nguồn từ một trục trặc xảy ra với chiếc máy vi tính đầu tiên trên thế giới - chiếc Mark 1- chiếc máy này được làm ra vào năm 1944 tại phòng thí nghiệm của Đại học Harvard, nó có kích cỡ bằng cả một căn phòng với chằng chịt các bảng mạch cơ điện. Đột nhiên một hôm chiếc máy này chạy rất chập chờn, không ai hiểu nguyên nhân tại sao. Sau nhiều giờ tìm kiếm một nhân viên trong và gây ra hiện tượng đoản mạch. Từ đó trở đi, những hiện tượng kiểu đó thường được gọi là lỗi (bug).

- Mình không đủ thời gian để giải quyết vấn đề này! - Susan bực bội. Tìm kiếm một lỗi bất kỳ trong một chương trình máy tính có thể phải mất đến mấy ngày. Sẽ phải xới tung hàng ngàn lệnh của chương trình để tìm một sai sót có thể là rất nhỏ - Việc này tương tự như việc tìm một lỗi in ấn của một cuốn từ điển bách khoa toàn thư.

Susan hiểu mình không còn lựa chọn nào nữa, chỉ còn cách cho Tracer chạy lại từ đầu. Cô cũng biết chắc chương trình sẽ gặp phải lỗi đó một lần nữa và sẽ lại tiếp tục ngưng hoạt động. Nhưng việc sửa lỗi lập trình cho Tracer sẽ cần rất nhiều thời gian, mà thứ đó thì cả cô và sếp đều không có vào lúc này.

Nhưng ngay khi Susan nhìn lại Tracer một lần nữa, thắc mắc không hiểu nó đã bị lỗi gì thì cô chợt cảm thấy có cái gì đó không bình thường. Tháng trước chính cô đã từng chạy chương trình này mà đâu có gặp trục trặc nào. Tại sao hôm nay đột nhiên nó lại dở chứng như vậy?

Đang hoang mang, chợt một câu nói trước đây của Strathmore chợt vang lên trong đầu cô. “Susan này, tôi đã thử tự mình gửi chương trình Tracer nhưng những số liệu nó truyền về hoàn toàn vô nghĩa“.

Susan nhớ lại. Những số liệu nó truyền về…

Cô đưa tay lên gõ đầu mình, liệu có thể hay không? Số liệu nó truyền về ư?

Nếu như Strathmore đã từng nhận được số liệu từ Tracer thì rõ ràng là lúc đó chương trình vẫn hoạt động tốt. Những số liệu mà ông ấy nhận được vô nghĩa có thể là do ông ấy đã nhập không chính xác các chuỗi ký tự cần tìm kiếm, cô phán đoán. Nhưng hiển nhiên là chương trình vẫn hoạt động.

Susan ngay lập tức nhớ ra rằng có thể còn có một cách giải thích khác cho trục trặc xảy đến với chương trình tìm kiếm của cô.

Những lỗi lập trình không phải là nguyên nhân duy nhất khiến các chương trình máy tính ngưng hoạt động. Đôi khi còn có những tác nhân bên ngoài nữa - nguồn điện, bụi bám vào bảng mạch điện tử, dây cáp bị lỗi. Từ trước đến nay, do các thiết bị phần cứng ở Node 3 hoạt động rất ổn định nên Susan chưa hề bao giờ nghĩ rằng chuyện đó có thể xảy ra.

Susan đứng dậy và sải bước thật nhanh ngang qua Node 3 đến chỗ có đặt một cái giá sách lớn toàn các cuốn sổ tay hỗ trợ kỹ thuật.

Cô vội lấy xuống một cuốn có tên gọi SYS-OP và bắt đầu tìm kiếm.

Dường như cô đã phát hiện ra thứ mình cần tìm, cô liền mang cuốn sổ tay đến chỗ máy vi tính của mình và gõ một vài dòng lệnh. Tiếp theo cô chỉ còn việc ngồi chờ máy vi tính tìm kiếm lại tất cả các lệnh đã được thực hiện trên máy trong suốt ba giờ qua. Susan hi vọng máy sẽ tìm ra được những tác động từ bên ngoài - một lệnh ngừng chạy phát ra do trục trặc về nguồn điện hay do lỗi của con chíp nào đó chẳng hạn.

Một vài giây sau, máy vi tính của Susan kêu bíp một tiếng. Tìm cô như đập nhanh hơn. Cô nín thở nhìn lên màn hình.

ERROR CODE 22 (LỖI 22)

Susan cảm thấy có một tia hi vọng. Một tin tốt lành đây. Việc máy tính tìm ra một mã lỗi có nghĩa là Tracer vẫn ổn. Quá trình tìm kiễm của phần mềm rõ ràng đã bị cắt ngang bởi một trục trặc từ bên ngoài, chắc chắn nếu được phát hiện và khắc phục nó sẽ không lặp lại nữa.

LỖI 22 à? Susan đánh vật với bản thân cố gắng nhớ xem đây là lỗi gì. Các lỗi về phần cứng rất hiếm khi xảy ra ở Node 3 do vậy việc này quá khó khăn. Các ngón tay của Susan lại lướt thoăn thoắt trên các trang của cuốn sổ tay tìm kiếm phần danh sách các mã lỗi.

19: HỎNG Ổ CỨNG

20: CHƯƠNG TRÌNH KHÔNG TƯƠNG THÍCH

Khi tìm được mã lỗi 22 cô bỗng nhiên dừng lại, mắt nhìn đăm đăm một hồi lâu. Hoàn toàn mất phương hướng, cô kiểm tra lại màn hình cho chắc chắn.

ERROR CODE 22 (LỖI 22)

Susan nhăn mặt quay trở lại nhìn vào cuốn SYS-OP. Cô không hiểu mình đang nhìn thấy cái gì nữa. Cuốn sổ tay đơn giản chỉ ghi một dòng:

22: NGƯNG HOẠT ĐỘNG DO THAO TÁC BẰNG TAY