GNU/Linux >> Linux の 問題 >  >> Linux

Linuxカーネルについて知らなかった30のこと

Linuxカーネルは今年30歳になります。これは、オープンソースソフトウェアの先駆者であり、ユーザーが無料のソフトウェアを実行し、実行しているアプリケーションから学び、学んだことを友人と共有できるようにする30年の歴史です。 Linuxカーネルがなければ、今日私たちが楽しんでいるオープンカルチャーと自由ソフトウェアの贅沢は、それらがあったときに表面化されなかったかもしれないと主張されています。アップル、マイクロソフト、グーグルのオープンな部分が、Linuxを触媒として使用しなくてもオープンになる可能性はほとんどありません。文化、ソフトウェア開発、ユーザーエクスペリエンスの現象としてのLinuxの影響は誇張することはできませんが、それでもすべてはカーネルから始まりました。

その他のLinuxリソース

  • Linuxコマンドのチートシート
  • 高度なLinuxコマンドのチートシート
  • 無料のオンラインコース:RHELの技術概要
  • Linuxネットワーキングのチートシート
  • SELinuxチートシート
  • Linuxの一般的なコマンドのチートシート
  • Linuxコンテナとは何ですか?
  • 最新のLinux記事

カーネルは、コンピューターを起動し、コンピューターケースの内側と外側の両方で、コンピューターに接続されているすべてのコンポーネントを認識し、それらの間の通信を保証するソフトウェアです。ほとんどのユーザーが考えもしない、ましてや理解できないコードの場合、Linuxカーネルには多くの驚きがあります。順不同で、ここにその寿命の各年のカーネルに関する1つの事実があります:

  1. Linuxは、USB3.0ドライバーを搭載した最初のオペレーティングシステムでした。 Sage Sharpは、2009年6月7日に、USB 3.0デバイス用のドライバーが利用可能であり、コードがカーネルバージョン2.6.31に含まれていることを発表しました

  2. カーネルはそれ自体をtaintedとしてマークします 後でトラブルシューティングに役立つ可能性のあるイベントが発生したとき。 「汚染された」カーネルを実行することは問題ではありません。何か問題が発生した場合、最初のトラブルシューティング手順の1つは、汚染されていないカーネルで問題を再現することです。

  3. ip=の一部としてホスト名またはドメイン名を指定できます コマンドラインオプションの場合、Linuxは、DHCPまたはBOOTPによって提案されたもので上書きするのではなく、それを保持します。たとえば、ip=::::myhostname::dhcp myhostnameという名前を取得します 。

  4. テキストの起動時に、白黒、16色、および224色のTuxロゴのバージョンがあります。

  5. エンターテインメントビジネスでは、DRMはメディアへのアクセスを防ぐために使用されるテクノロジーです。ただし、Linuxカーネルでは、DRMはダイレクトレンダリングマネージャーを指し、ビデオカードのGPUとのインターフェイスに使用されるライブラリ(libdrm)とドライバーを指します。

  6. 再起動せずにLinuxカーネルにパッチを適用することは可能です。

  7. 独自のカーネルをコンパイルする場合、80を超える列を持つようにテキストコンソールを構成できます。コンパイル後、ブートローダー設定として構成可能です。

  8. Linuxカーネルは、組み込みのFAT、exFAT、およびNTFS(読み取りおよび書き込み)互換性を提供します。

  9. Wacomタブレットおよび多くの同様のデバイス用のドライバーがカーネルに組み込まれています。

  10. ほとんどのカーネルハッカーはgit send-emailを使用します パッチを送信します。

  11. カーネルは、Pythonで記述されたSphinxと呼ばれるドキュメントツールチェーンを使用します。

  12. Hamlibは、さまざまな無線サポートを備えたLinuxコンピューターを介してアマチュア無線機器を制御するための標準化されたAPIを備えた共有ライブラリを提供します。

  13. ハードウェアメーカーは、互換性を確保するためにカーネルの開発を支援することをお勧めします。したがって、ハードウェアは、製造元からドライバをダウンロードしなくても直接アドレス指定できます。カーネルの直接の一部であるドライバーも、新しいバージョンのカーネルでのパフォーマンスとセキュリティの向上から自動的に恩恵を受けます。

  14. 多くのRaspberryPiモジュール(Pi Hats)のカーネルに含まれているドライバーがあります。

  15. バンドnetcatは、Linuxカーネルモジュールとしてのみ再生可能なアルバムをリリースしました。

  16. netcatのアルバムリリースに触発されて、カーネルを音楽プレーヤーに変えるモジュールも開発されました。

  17. Linuxカーネルの機能は、ARM、ARM64、IA-64、m68k、MIPS、Nios II、PA-RISC、OpenRISC、PowerPC、s390、Sparc、x86、Xtensaなどの多くのCPUアーキテクチャをサポートしています。

  18. 2001年に、Linuxカーネルはx86-64CPUアーキテクチャをロングモードで実行する最初の製品になりました。

  19. Linuxバージョン3.4ではx32ABIが導入され、開発者は32ビットポインターとデータフィールドのみを使用しながら、64ビットモードで実行するコードをコンパイルできます。

  20. カーネルは、Ext2、Ext3、Ext4、JFS、XFS、GFS2、GCFS2、BtrFS、NILFS2、NFS、オーバーレイFS、UDFなど、さまざまなファイルシステムをサポートしています。

  21. 仮想ファイルシステムは、ユーザーが実行するアプリケーションにファイルシステムインターフェイスを提供するカーネルのソフトウェアレイヤーです。これはカーネルの抽象化でもあるため、さまざまなファイルシステムの実装を共存させることができます。

  22. Linuxカーネルには、物理​​的な点字出力デバイス用のドライバーが含まれています。

  23. カーネルバージョン2.6.29では、起動中のTuxロゴが「Tuz」に置き換えられ、当時オーストラリアのタスマニアデビルの人口に影響を及ぼしていた攻撃的な癌の認識を高めました。

  24. コントロールグループ(cgroups)は、コンテナー(Docker、Podman、Kubernetesなどの基盤テクノロジー)が存在できる理由です。

  25. それを解放して含めることができるようにするために広範な法的措置を講じましたが、現在、CIFSモジュールがカーネルに組み込まれてSMBサポートを有効にしています。これにより、LinuxはMicrosoftのリモートおよびクラウドベースのファイル共有をマウントできます。

  26. コンピューターが真に乱数を生成することは、悪名高いほど困難です(実際、これまでのところ不可能です)。 hw_random フレームワークは、乱数生成を改善するために、CPUまたはマザーボード上の特別なハードウェア機能を利用できます。

  27. OSジッター バックグラウンドプロセスのスケジュール方法、およびシステムが非同期イベント(割り込みなど)を処理する方法の競合によってアプリケーションが受ける干渉です。cgroupsを使用したカーネルによって定義されたCPUのセットへのタスクのバインド、およびSMPIRQアフィニティは次のオプションです。カーネルは、OSのジッターを減らすためのプログラマーを提供します。このような問題はカーネルのドキュメントで詳細に説明されており、Linuxをターゲットとするプログラマーがよりスマートなコードを記述できるようになります。

  28. make menuconfig コマンドを使用すると、コンパイルする前にGUIを使用してカーネルを構成できます。 Kconfig 言語はカーネル構成オプションを定義します。

  29. 重要なLinuxサーバーの場合、ウォッチドッグ サーバーの状態を監視するシステムを実装できます。ヘルスチェックの合間に、ウォッチドッグデーモンは特別なウォッチドッグカーネルデバイスにデータを書き込み、システムのリセットを防ぎます。ウォッチドッグが成功のログに失敗した場合、システムはリセットされます。ウォッチドッグハードウェアの多くの実装が存在し、それらはリモートミッションクリティカルなコンピューター(火星に送信されるコンピューターなど)にとって不可欠です。

  30. 地球上で開発されましたが、火星にはLinuxカーネルのコピーがあります。


Linux
  1. LinuxのIPツールでできる3つの便利なこと

  2. あなたが知っておくべきLinuxについての30の驚くべき事実

  3. Linuxカーネルとは何ですか?最新のカーネルにアップグレードする必要がありますか?

  1. 知っておくべきSUSELinuxに関する9つの驚くべき事実

  2. Linuxディレクトリ構造について知っておくべき15のこと

  3. Linuxファイルシステムについて知っておくべきことすべて

  1. LinuxChmodコマンドについて知っておくべきことすべて

  2. Linuxコンテナー(LXC)について知っておくべきことすべて

  3. LinuxUbuntuサーバーについて知っておくべきことすべて