FreeBSD Daily Topics

2013年11月7日新しいコンソール、開発進捗発表

src

Newcons system console project update

数年前に一旦開発がはじまった新しいコンソールですが、最近FreeBSD Foundationの支援を経て開発が再開していました。その進捗が発表されました。開発はAlekandr Rybalko氏が取り組んでいます。この新しいコンソールは既存のコンソール(sysconsシステムコンソール)の置き換えを狙ったもので、既存のコンソールでは実現できていない機能が実現できるようになる見通しです。

日本のFreeBSDユーザにとって最も注目されるのは、この新しいシステムコンソールはグラフィックモードをベースに開発されているため、日本語を含む文字列を表示する能力を持っているという点にあります。Unicodeがサポートされ、多種多様な文字の表示がサポートされる見通しです。現在のコンソールはテキストモードで動作するため、基本的にASCIIしか表示できません。日本語を表示するにはXを起動するか、KON2やJFBTERM/MEなどのソフトウェアを使う必要があります。

コンソールで日本語が表示できないことは、英語があまり得意ではないエンジニアにとっては苦痛をともなうことでした。コンソールで日本語を使うといったシーンは少ないのですが、コンソールそのもので日本語が表示できないことは日本語ユーザにとっては不便です。この新しいコンソールが導入されたあとは、そうした不便さから解消されることになりそうです。

また、現在のコンソールはKMS(Kernel Mode Setting)が有効になったX11グラフィックドライバを使った場合にはXの起動後にコンソールにスイッチバックすることができないという問題を抱えていますが、新しいコンソールではこの問題が解消される見通しです。ほかにもグラフィックモードが利用できるようになったことで、起動時の表示をよりグラフィカルにするといったことが可能になります。デフォルトの起動表示が現在のスタイルから変わることはないと思いますが、PC-BSDやGhostBSDなどのディストリビューションで起動時の画面をよりグラフィカルにするといったことが簡単に実現できるようになるものとみられます。

現在のところラテン文字とキリル文字の表示が実装されています。開発中のソースコードはsvn://svn.freebsd.org/base/user/ed/newconsのリポジトリにまとまっています。sys/dev/vt以下に実装のほとんどが収まっています。vgaとscドライバを無効にし、vtとvt_vgaのドライバを有効にしたカーネルを構築すれば新しいコンソールを試すことができます。詳しい方法についてはFreeBSD Newconsのページを参考にしてください(まだ開発段階で、いくつか問題があります。パニックもしますのでまだ運用に使えるものではありません⁠⁠。

関連する変更のいくつかはすでにコミットされていますが、vt(4)ドライバそのもののがコミットされるのはもうしばらく時間がかかりそうです。実装するべき機能のいくつかだまだ実装されていないため、それら実装が完了してからFreeBSD 11-CURRENTへコミットが実施されるものとみられます。正式にリリースされるのはFreeBSD 11.0-RELEASEが有望ではないかと見られます。

新しいシステムコンソールはバックポートされて10.1-RELEASEや9.3-RELEASEにも取り込まれる可能性がありますが、デフォルトで有効になるかどうかは不透明です。システムコンソールはシステムの起動時に使われるなど基幹的な機能ですので、マイナーアップグレードバージョンでは互換性を重視してデフォルトで有効にはならない可能性が高いといえます。

おすすめ記事

記事・ニュース一覧