Kernel 4.15.0メインラインを Kernel PPA からインストールし、PCを起動して最小限のGUIをインストールしました。その後、何が実行されているかを確認し、nouveau
ドライバーがロードされていることに気付きましたが、GUIをインストールするときにUbuntuパッケージxserver-xorg-video-nouveau
のインストールを明示的に選択しませんでした。
modinfo
を使用して、ロードされているモジュールを確認しました。これは出力です:/lib/modules/4.15.0-041500-generic/kernel/drivers/gpu/drm/nouveau/nouveau.ko
Ubuntuが提供するパッケージの内容を buntuパッケージディレクトリ で検索すると、これらのファイルが一覧表示されます。
/usr/lib/xorg/modules/drivers/nouveau_drv.so /usr/share/bug/xserver-xorg-video-nouveau/script /usr/share/doc/xserver-xorg-video-nouveau/NEWS.Debian.gz /usr/share/doc/xserver-xorg-video-nouveau/README.Debian /usr/share/doc/xserver-xorg-video-nouveau/changelog.Debian.gz /usr/share/doc/xserver-xorg-video-nouveau/copyright /usr/share/man/man4/nouveau.4.gz
そして、私は明らかにドライバーを使用していますが、システムにこのファイルがありません:/usr/lib/xorg/modules/drivers/nouveau_drv.so
。
これらの2つのファイルに違いがある場合、どのような違いがありますか?.
違いは多くのレベルで見つけることができます。この限られた答えのために、サイズの違いとアプリケーションの違いが説明されています。
$ ll /usr/lib/xorg/modules/drivers/nouveau_drv.so
-rw-r--r-- 1 root root 221200 Jul 6 2017 /usr/lib/xorg/modules/drivers/nouveau_drv.so
$ ll /lib/modules/4.14.20-041420-generic/kernel/drivers/gpu/drm/nouveau/nouveau.ko
-rw-r--r-- 1 root root 3646510 Feb 16 15:53 /lib/modules/4.14.20-041420-generic/kernel/drivers/gpu/drm/nouveau/nouveau.ko
カーネルNouveauモジュールは、Xorgドライバーの16倍です。これは、カーネルモジュールがより多くのことを行うことを意味します。
追加のXorgドライバー いくつかのシステム(特にラップトップ)には次のものがあります。
Debianでは、X.Org Serverの2Dグラフィックドライバーは個別にパッケージ化され、xserver-xorg-video- *と呼ばれます。[7]インストール後、2Dグラフィックドライバーファイルは/ usr/lib/xorg/modules/drivers /にあります。パッケージxserver-xorg-video-nouveauは215 KiBのサイズでnouveau_drv.soをインストールし、独自のNvidia GeForceドライバーはnvidia_drv.soと呼ばれる8 MiBサイズのファイルをインストールします...
nvidia_drv.so
はnouveau_drv.so
の37倍です。
カーネルNouveauモジュールは.ko
ファイルであり、Xorgドライバーは.drv.so
ファイルタイプです。 この質問 は、2つのファイルタイプの違いを尋ねます。ベストアンサー(IMO)の状態:
素人の言葉で:
カーネルモジュール(ko)はカーネルスペースで実行され、ユーザーモジュール(so)はユーザースペースで実行されます。
カーネルスペースは、ユーザースペースではできないさまざまな機能へのアクセスを容易にします(または許可しません)。
カーネルモジュールは常にカーネルスペースで実行され、バグがある場合やエラーがある場合は、システムがフリーズする可能性があります。
ユーザー空間は「保護」されており、バグのあるモジュールやアプリがシステムをクラッシュさせる可能性は低くなります。