ENOANO (Không có Anode) dự định sẽ được sử dụng để làm gì?


11

Câu hỏi này chỉ đơn thuần là vì tò mò nhàn rỗi, nhưng tôi nghi ngờ những người khác cũng sẽ tò mò. Tìm kiếm thông qua errno.h (của Linux 2.6) Tôi thấy ENOANO "Không có Anode". Không có dấu hiệu của lỗi "Không có cực âm". Nhìn qua sự phù hợp của nguồn nhân, có vẻ như nó không được sử dụng bởi một thiết bị được gọi là cực dương, chỉ như một mã lỗi cố ý làm phiền bởi một số trình điều khiển thiết bị tối nghĩa. Googling tiết lộ không có gì quan tâm.

Nó có thể là một trò đùa? Được xác định trong một tài liệu tiêu chuẩn như POSIX, nhưng không sử dụng?


3
Đây là lỗi bạn gặp phải nếu bạn quên gắn nguồn điện.
goldilocks

2
Có vẻ như đến từ các hệ thống unix hội tụ archive.org/stream/ Kẻ
Stéphane Chazelas

1
À, điều đó có vẻ hợp lý, @ Stéphane Chazelas. Dường như cực dương là một nút, giống như một nút.
Dan Sheppard

Câu trả lời:


14

ENOANOxuất hiện trong Linux 0.97 , được phát hành vào ngày 1992-08-01. Trong một thời gian rất dài, nó không được sử dụng ở bất cứ đâu; Kể từ đó, nó đã được sử dụng ngay bây giờ và trong một số trình điều khiển với tên là Tôi không biết sử dụng mã lỗi nào để sử dụng. Bây giờ nó chỉ có trong uapi/asm-generic/errno.h(tức là trong các tệp tiêu đề cho các chương trình người dùng ), nhưng nó đã được tự động chuyển đến đó, vì vậy đó không phải là dấu hiệu cho thấy có ai quan tâm đến nó hay không.

Các errno.htiêu đề trong 0,97 có một số sự chú ý bởi vì nó là một trong các tập tin mà SCO tuyên bố đã được sao chép từ Unix SVR4 . Tại thời điểm tuyên bố của SCO, Linus Torvalds không nhớ tập tin đó đã được lắp ráp như thế nào ; Sau đó, ông phát hiện ra rằng nó đã được tạo ra từ các giá trị được biết đến bởi libc 2.2.2 . Đây là một thư viện C cho Linux, được phân phối với một cổng GCC cho Linux . Thư viện đó có thể đã bao gồm các mã lỗi từ tất cả các loại biến thể unix có ở thời điểm đó.

Stéphane Chazelas nhận thấy rằng thuật ngữ Anode Hồi được sử dụng trong Convergent / Burroughs Unix (CENTIX) như một từ đồng nghĩa của inode . Tôi đã tìm thấy một cuốn sách khác (từ năm 1993) đề cập đến Anode An như một biến thể của dòng chữ inode, nhưng ngoài ra, nó dường như còn khá mơ hồ. Các Solariserrno.h khẳng định nguồn gốc Convergent: nó sẽ liệt kê ENOANO trong một phần có tiêu đề “Convergent Lỗi Returns” (cùng với một vài mã lỗi khác với giới thiệu bí truyền nhưng ít nhất mơ hồ hiểu như “trao đổi không hợp lệ”, “trao đổi đầy đủ” hoặc “khe không hợp lệ” mà một vài trình điều khiển sử dụng nhiều hơn).

Vì vậy, ENOANO có thể chỉ ra rằng hạt nhân đã hết bộ nhớ cho các nút hoặc bảng inode của hệ thống tệp đã đầy, trong một số Unix thương mại trong những năm 1980. Unix đó đã bị lãng quên, thuật ngữ của nó hiện đang bị lãng quên và do một số lỗi mà mã lỗi đã tồn tại.

Ít nhất thì nó không phải là Lp0 trên lửa .


2
Tôi đã nhận được một bản sao của 1988 errno.h từ Xenix 2.3.1 đề cập đến một loạt các lỗi trong phần có tiêu đề "Trả về lỗi hội tụ". Tương tự ở đó .
Stéphane Chazelas

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.