Q/A で、ワイヤレスツールについての良い情報を見つけました。どうやら導入されたらしい linuxカーネルへ Hewlett Packardが後援するJean Tourrhilesによって1997年に。
編集:WE(Wireless Extensions)は、ワイヤレスツール自体ではなく、Tourrhilesによってカーネルに追加されたようです。ツールは、WEと通信するための主要な方法として、ほとんどのディストリビューションで使用できます。 WEカーネルの/proc/net/wireless
。で確認できます。
最後にリリースされたバージョン はv29
でしたが、Ubuntu 14および16にはv30
ベータ版(iwconfig -v
)が含まれているようです。
このパッケージに何が起こったのか知りたいのですが?なぜ「ベータ」バージョン30は、使用される事実上の標準バージョンになったのですか?
HPはJean Tourrhilesへの資金提供を停止したため、開発は中止されましたか?それとも、開発を停止するのに十分安定していると判断されたのかもしれませんが、それでもその場合は30がまだベータ版であるのはなぜですか?
私はこれを見つけました Githubページ ですが、これは歴史的な参照のみのようです。
バージョン履歴
ワイヤレス拡張はiw
を優先して廃止されました。ワイヤレス拡張機能がワイヤレスデバイスの新しいnl80211インターフェースを優先して廃止されたためです。 iwのカーネルのドキュメント はそれを述べています。
ただし、nl80211は活発に開発中であり、すべてのドライバーがそれに移行されているわけではありません。ワイヤレスツールは、ワイヤレス拡張機能から移行されていないデバイスでも必要です。
Ubuntu(および私が知っているほとんどすべてのディストリビューション)がバージョン30ベータを提供する理由は、そのバージョンがバージョン29にある重大なバグを修正するためです。これにより、バッファが原因でエリア内のネットワークが多すぎるとiwconfigが失敗しましたオーバーフロー。ワイヤレスツールのGithubリポジトリにはこれは示されていませんが、ここに Arch からの関連パッチがあります
このプロジェクトが中止された理由 :について議論しているページへのリンクがあったので、私はより良くリンクしたQ/Aを読んだはずです。
WEはさらに開発されていますか?
いいえそうではありません。 WEではバグ修正のみが受け入れられています。
WEを断念する理由
WEは
ioctl()
に基づいていますが、ioctl()
はユーザー間の通信用の標準トランスポートとして使用されていますが、←→カーネルスペース新しいトランスポートがいくつかの理由で推奨されています。Linuxデバイスドライバー-第3版から:
In user space, the ioctl system call has the following prototype: int ioctl(int fd, unsigned long cmd, ...);
プロトタイプは、通常、関数が可変数の引数を持つものとしてマークするドットがあるため、Unixシステムコールのリストで際立っています。ただし、実際のシステムでは、システムコールは実際には可変数の引数を持つことができません。ユーザープログラムはハードウェア「ゲート」を介してのみアクセスできるため、システムコールには明確に定義されたプロトタイプが必要です。したがって、プロトタイプのドットは、可変数の引数ではなく、伝統的に
char *argp
として識別される単一のオプション引数を表します。ドットは、コンパイル中に型チェックを行わないようにするためのものです。それはまた述べています:
ioctl
呼び出しの構造化されていない性質が原因で、カーネル開発者の間で人気がなくなりました。各ioctl
コマンドは、基本的には個別の、通常は文書化されていないシステムコールであり、これらのコールを包括的な方法で監査する方法はありません。非構造化ioctl
引数をすべてのシステムで同じように機能させることも困難です。たとえば、32ビットモードで実行されているユーザースペースプロセスを備えた64ビットシステムについて考えてみます。Wireless-Extensionsの置き換えとは
新しい開発はcfg80211とnl80211に焦点を合わせる必要があります。
サイドノート:Jean Tourrhilesが1997年から2009年頃にかけてプロジェクトに取り組んだようです。私は 2014年の記事 を見つけました-TourrhilesはまだHPにいて、 OpenFlow というプロジェクトに取り組んでいると言っています:
HPのJean Tourrhilesは、最新の技術を将来のバージョンのOpenFlowに組み込むための「編集者」として機能する、Extensibility Working Groupの議長も務めています。