Tại sao các công cụ không dây phiên bản 30 trở thành bản beta vĩnh viễn?


10

Tôi tìm thấy một số thông tin tốt về các công cụ không dây trong Q / A này . Rõ ràng nó đã được giới thiệu vào nhân Linux vào năm 1997 bởi Jean Tourrhiles được tài trợ bởi Hewlett Packard.

Chỉnh sửa: Có vẻ như WE (Tiện ích mở rộng không dây) đã được Tourrhiles thêm vào Hạt nhân, chứ không phải chính các công cụ không dây. Các công cụ có sẵn trên hầu hết các bản phân phối là cách chính để giao tiếp với WE. Bạn có thể thấy WE trong kernel tại /proc/net/wireless.

Các phiên bản cuối cùng phát hànhv29chưa Ubuntu 14 & 16 dường như chứa v30beta ( iwconfig -v).

Tôi tò mò về những gì đã xảy ra với gói này? Tại sao phiên bản "beta" 30 trở thành phiên bản chuẩn defacto được sử dụng?

Có phải HP đã ngừng tài trợ cho Jean Tourrhiles để quá trình phát triển bị dừng lại? Hoặc có thể đã quyết định rằng nó đủ ổn định để ngừng phát triển, nhưng nếu đó là lý do tại sao 30 vẫn là bản beta?

Tôi tìm thấy trang Github này nhưng dường như chỉ để tham khảo lịch sử.

Lịch sử phiên bản

Lịch sử phiên bản


"Tại sao các công cụ không dây phiên bản 30 trong nhân Linux ..." - các công cụ không dây không có trong nhân. Các trình điều khiển nằm trong kernel, công cụ không dây là thành phần (a) không gian người dùng để định cấu hình trình điều khiển không gian kernel.
marcelm

1
@marcelm Tôi đã thêm một ghi chú trong câu hỏi của tôi dựa trên nhận xét của bạn. Tôi đoán anh ấy đã thêm WE vào kernel /proc/net/wirelessnhưng bản thân các công cụ không dây không phải là một phần của kernel. Hãy cho tôi biết nếu tôi sai về điều đó.
Philip Kirkbride

1
Vâng, CHÚNG TÔI là một phần của hạt nhân. Chính xác hơn, "Tiện ích mở rộng không dây" là tên của không gian người dùng <-> giao diện không gian kernel được hiển thị bởi hệ thống ống nước không dây trong kernel. công cụ không dây sử dụng giao diện đó để thao tác với các thiết bị không dây. Chúng được phiên bản độc lập; trên hệ thống của tôi, các công cụ không dây là phiên bản 30 và nó nói chuyện với kernel của tôi (4.9.0) với phiên bản WE 22 :)
marcelm

Câu trả lời:


17

Các công cụ không dây không được ủng hộ iwvì các tiện ích mở rộng không dây đã không được hỗ trợ cho giao diện nl80211 mới cho các thiết bị không dây. Các tài liệu kernel cho iw nói rằng.

Tuy nhiên, nl80211 đang được phát triển tích cực và không phải tất cả các trình điều khiển đã được di chuyển sang nó. Công cụ không dây vẫn cần thiết cho các thiết bị chưa được di chuyển từ tiện ích mở rộng không dây.

Lý do Ubuntu (và hầu hết tất cả các bản phân phối tôi biết) cung cấp phiên bản 30 beta là vì phiên bản đó đã sửa một lỗi nghiêm trọng ở phiên bản 29, khiến iwconfig bị lỗi nếu có quá nhiều mạng trong vùng do bộ đệm tràn ra. Repo Github cho các công cụ không dây không hiển thị điều này, nhưng đây là bản vá có liên quan từ Arch


17

Tôi nên đọc qua Q / A mà tôi đã liên kết tốt hơn vì có một liên kết đến một trang thảo luận về lý do tại sao dự án này bị bỏ rơi :

Có phải chúng ta đang được phát triển hơn nữa?

Không có nó không phải là. Chỉ sửa lỗi được chấp nhận cho WE.

Tại sao chúng ta lại từ bỏ CHÚNG TÔI

Các WE dựa trên ioctl()và mặc dù ioctl()đã được sử dụng và vẫn đang được sử dụng như một phương tiện vận chuyển tiêu chuẩn để liên lạc giữa người dùng ← → không gian vận chuyển mới đang được ưa thích vì nhiều lý do.

Từ trình điều khiển thiết bị Linux - Phiên bản thứ 3:

In user space, the ioctl system call has the following prototype:

int ioctl(int fd, unsigned long cmd, ...);

Nguyên mẫu nổi bật trong danh sách các cuộc gọi hệ thống Unix vì các dấu chấm, thường đánh dấu hàm là có số lượng đối số thay đổi. Tuy nhiên, trong một hệ thống thực, một cuộc gọi hệ thống thực sự không thể có số lượng đối số thay đổi. Các cuộc gọi hệ thống phải có một nguyên mẫu được xác định rõ, bởi vì các chương trình người dùng chỉ có thể truy cập chúng thông qua các cổng phần cứng. Do đó, các dấu chấm trong nguyên mẫu không đại diện cho một số lượng đối số thay đổi mà là một đối số tùy chọn duy nhất, theo truyền thống được xác định là char *argp. Các dấu chấm chỉ đơn giản là ở đó để ngăn chặn việc kiểm tra kiểu trong quá trình biên dịch.

Nó cũng nêu:

Bản chất phi cấu trúc của ioctlcuộc gọi đã khiến nó không được các nhà phát triển kernel ủng hộ. Mỗi ioctllệnh về cơ bản là một lệnh gọi hệ thống riêng biệt, thường không có giấy tờ và không có cách nào để kiểm toán các cuộc gọi này theo bất kỳ cách thức toàn diện nào. Cũng khó để làm cho các ioctlđối số phi cấu trúc hoạt động giống hệt nhau trên tất cả các hệ thống; ví dụ, hãy xem xét các hệ thống 64 bit có quy trình không gian người dùng chạy ở chế độ 32 bit.

Thay thế phần mở rộng không dây là gì

Phát triển mới nên được tập trung vào cfg80211 và nl80211.


Lưu ý bên lề: Có vẻ như Jean Tourrhiles đã làm việc cho dự án từ khoảng năm 1997-2009. Tôi đã tìm thấy một bài viết từ năm 2014 nói rằng Tourrhiles vẫn còn ở HP, làm việc trong một dự án có tên OpenFlow :

Jean Tourrhiles của HP cũng chủ trì Nhóm làm việc mở rộng, hoạt động với tư cách là một biên tập viên, người dùng để đưa công nghệ mới nhất vào các phiên bản tương lai của OpenFlow

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.