UNIX - UNИХ : ДЕМОС - UNAS

20150620-demos.png
ДЕМОС

ДЕМОС デーモスというオペレーティングシステムをご存知だろうか。日本人の計算機使いはおそらく誰も知らない。

これは旧ソヴィエト時代にロシア,モスクワ大学の研究者が BSD UNIX をベースに作ったオペレーティングシステムである。ДЕМОС - Диалоговая Единая Мобильная Операционная Система。1982 年から開発が進められ,1986 年 Version 1,1990 年 Version 2 がリリースされ,1991 年にプロジェクトは終了した。SM-4,Elektronika-85 というソ連製のコンピュータ(といっても,そのじつ米国 DEC 社の PDP,VAX のパクリであった)上で開発された。KOI8-R ロシア語文字コードを開発・普及させた功績がある。

面白いのは ДЕМОС は UNAS という通称をもっていたことである。UNAS すなわち,У нас ウ・ナス — ロシア語で「おれたちのもの」という意味だ。なぜこういう通称が使われたのか。UNIX はロシア語の捩りで U NIX となり,すなわち У них ウ・ニフ — ロシア語で「やつらのもの」となる。「やつらのもの」に対して「おれたちのもの」— UNAS はそういう冗談から来ているわけである。

ДЕМОС の開発者のひとり M. ダヴィドフ М. И. Давыдов が開発の歴史と裏話を語っているサイト: История ДЕМОС в изложении М. И. Давидова がある。ДЕМОС を巡って,ソ連の КГБ(KGB 国家保安委員会)と米国 CIA との情報戦に巻き込まれたエピソードもあり,興味深い。

ところで,KOI8-R の符号化方式はトリッキーである。これはキリル文字と英数字を含む 8-bit 文字コードであるわけだが,当時のインターネットには 7-bit ASCII しか扱えないメールサーバもあり,こういうサーバを通るとテキスト情報のバイト MSB(Most Significant Bit,つまり,2 の 7 乗ビット,最上位左端のビット)が欠落してしまう場合があった。KOI8-R はこういう事態を想定してか,MSB が落ちてもキリル文字のローマナイズとしてロシア語がわかるようになっていた。たとえば,абвхц という文字列は KOI8-R で十六進表記 c1c2d7c8c3 と符号化されるが,MSB が欠落するとこれは 4142574843 となる(下図参照)。つまり abwhc という英字に化けるわけだ。それでも,元のキリル文字が想像できるようになっているのである。

MSB
|
1100 0010 (BIN) = c2 (HEX) = "б" (キリル文字のベー)
0100 0010 (BIN) = 42 (HEX) = "b" (ラテン文字のベー)
|
+-> MSB(先頭の1bit)欠落で0