| 開発者 | デビッド・ハーマン |
|---|---|
| 初回リリース | 2012年3月27日[1] |
| 最終リリース | 8 / 2013年10月29日 |
| リポジトリ |
|
| 書かれた | C |
| オペレーティング·システム | リナックス |
| タイプ | システムコンソール |
| ライセンス | ISCライセンス |
| Webサイト | www.freedesktop.org/wiki/Software/kmscon |
Kmscon は、 Linux カーネルに組み込まれたターミナルであるLinux コンソールを置き換えるために David Hermann が作成した、ユーザー空間で実行される仮想コンソールです。Kmscon は出力にKMS ドライバーを使用し、マルチシートに対応し、国際化されたキーボード入力とUTF-8ターミナル出力をサポートしています。入力サポートは、X キーボード拡張(XKB) を使用して実装されています。Kmscon の開発は 2015 年 3 月に停止しました。systemd-consoled と呼ばれる後継プロジェクトがありましたが、このプロジェクトも 2015 年 7 月に中止されました。[2]
特徴
Kmscon はUnicode グリフの完全なセットの印刷をサポートしており、Linux コンソールのようにコンソールエンコーディングによって制限されません。[3]唯一のハード依存関係はudevですが、 kmscon はオプションでコンソールのハードウェアアクセラレーションにMesa を使用し、フォントレンダリングを改善するためにpangoライブラリを使用するようにコンパイルできます。[4]
入力にXKBを採用することで、kmsconは入力にX.OrgサーバーとWaylandコンポジターで利用可能なキーボードレイアウトの全範囲を受け入れることができ、グラフィカル環境とターミナルの両方で同じレイアウトを使用できるようになります。[5]
マルチシートサポート
Linux カーネルの VT システムは 1993 年に遡り、すぐに使用できるマルチシート サポートは実装されていません。最大 63 個の VT をサポートしますが、一度にアクティブにできる VT は 1 つだけです。このため、マルチシート サポートを構成するには追加の手順が必要です。kmscon/systemd-consoled は[説明が必要]すぐに使用できるマルチシートを有効にします。
1 つのシートのディスプレイ サーバーが VT 7 で実行されており、別のシートのディスプレイ サーバーが VT 8 で実行されている場合、一度に使用できるのはこれら 2 つのシートのうちの 1 つだけです。他のシートを使用するには、VT スイッチを開始する必要があります。
すべての座席を同時に使用できるようにするには、いくつかのオプションがあります。
- すべてのディスプレイ サーバーを同じ VT に関連付けます。どのユーザーも VT を切り替えることができ、その場合、すべてのユーザーが新しい VT に切り替えます。これにより、VT の切り替え (および高速ユーザー切り替え) が非実用的になります。X.Org Server のコマンドライン オプション
-sharevts - ディスプレイ サーバーを VT に関連付けないでください。この場合、高速ユーザー切り替えは不可能です。テキスト ベースのコンソール ログインは、入力デバイスとディスプレイ デバイスがこの目的のために予約されている場合にのみ可能です。
- ディスプレイ サーバーの 1 つだけを VT に関連付けます。他のディスプレイ サーバーは VT の切り替えができませんが、VT に関連付けられたディスプレイ サーバーは VT の切り替えができます。その 1 つのシートでの VT の切り替えは、他のシートには影響しません。これは、systemd が推奨し、想定しているアプローチです。
vt7ユーザー 1 および-novtswitch他のすべてのユーザー用のコマンドライン オプション。
発達
2011年、ジェシー・バーンズ氏は自身のブログで、仮想端末のユーザー空間DRMベースの実装の可能性について書きました。これにより、LinuxカーネルのLinuxフレームバッファと仮想端末(VT)サブシステムの必要性がなくなります。このブログ記事に触発されて、デビッド・ハーマン氏は仮想端末の基本機能を実装しました。[3]
2013年10月、DEC VT100 – VT520互換端末エミュレータ用のステートマシンである端末エミュレータステートマシン( libtsm)ライブラリがkmsconから分離され、個別に利用可能になりました。[6]これは、 Wayland端末エミュレータの例であるwltermで修正されました。 [7]
参照
参考文献
- ^ Herrmann, David (2012 年 3 月 27 日)、「[ANNOUNCE] kmscon: Lazy-web の DRM ベースの端末エミュレータ」、dri-devel メーリング リスト、freedesktop.org 、 2012 年4 月 2 日取得
- ^ Herrmann, David (2015 年 7 月 29 日)、「GitHub Systemd - ターミナル: 未完成のコードを削除する」、Systemd、GitHub 、2016 年9 月 22 日閲覧
- ^ ab Larabel, Michael (2012 年 3 月 28 日)、「KMSCON: DRM ベースのターミナル エミュレーター」、Phoronix 、 2012 年4 月 2 日取得
- ^ Larabel, Michael (2012 年 8 月 18 日)、「KMSCON がカーネル コンソールを起動する準備が整いました」、Phoronix 、 2012 年7 月 5 日閲覧
- ^ Herrmann, David (2012年12月10日)、KMSCON Introduction 、 2013年5月8日閲覧
- ^ Herrmann, David (2013 年 10 月 29 日)、「[ANNOUNCE] libtsm-3 release」、kmscon-devel メーリング リスト、freedesktop.org 、2012 年7 月 5 日閲覧
- ^ libtsm、freedesktop.org 、2012年7月5日閲覧
