[ Main Page ]

UNIX

現在、相談員内では、かなりの数のUNIXが使われています。Solaris少々、FreeBSD少々、Linuxたくさんといった感じで、そうかわり ばえするものではありません。このうちいくつかを使わせてもらっていますが、もちろん昔から全ての種類を つかっていたわけではありません。今日は、ちょっと昔の話をしようと思います。

初めてLinuxを触ったのは高校1年生の時でした。 今は出版されていないLinuxJapanという雑誌を書店でたまたまみかけ、そこにあったプログラミングの記事に興味があったこともあって 家に帰ってから付録のCDを使って入れてみたのでした。そのころは、LILOも古くて、別のドライブのカーネルを読みに行かなかったりいろいろと苦労しましたが、 なんとか動かせるようにしたのです。FrameBufferが標準でついていたので初めて起動した時はペンギンの姿にいたく感動した記憶があります。

Linux Penguin LOGO 左はおなじみのペンギンロゴ。初めて見た時はうれしかったのですが、あっというまに慣れてしまいました。最近はペンギンが2つや4つ出るのも 良く見ます。(SMPの場合CPUの数に応じてペンギンが出ます。) Gentoo Linuxでは、Gentooのハートロゴに置き換えられているようです。個人的にはデフォルトのペンギンのほうがいいんだけれど。

さて、もとの話に戻ると、その付録のLinuxは、よくあるrpmではなく、tgzという依存関係はほとんど整備されていない Package管理システムに支えられたSlackwareというdistributionでした。 今思えば、そのおかげでかなりのShellScriptを書けるようになったのですが、そのせいでいちいち手で依存関係を見て行くのは骨が折れました。 後になって、RやMPlayerなど、大量のライブラリに依存するプログラムを入れるのがかなりつらい状態でした。rpmならほとんど一発なんだけどね。 また、特製日本語Packageがついてはいましたが、日本語はほとんど使えませんでした。RedHatからPackageを とってきて適当に展開して使うことはざらで、今思えばよく動いていたものです。

日本語環境を整えるのもまたひと苦労でした。glibcでようやくLocaleがサポートされ始めたころで、満足に日本語入力できる ものといったらemacsくらいのもので、それ以外では入力した途端落ちてしまったり、無限Loopに入ってしまったりと発展途上でした。 最低限欲しかったのは、pTeXとGhostScriptと印刷環境だったので、それ以外は割り切って使っていました。

大学に入るまで実はずっとslackware 7.0/linux-2.2.13/glibc-2.1.2のまま、上げる機会がなかったので、 新しくなったバージョンに出会った時はその進歩に驚きました。 日本語が正しく扱えるようにもなっており、open-sourceの力を実感しました。個人的に一番感動したのは、XftのTTF/OTFサポートでした。 これで暗号のようなfonts.dirを書く必要がほとんどなくなったのですから。

この前これを読んだ同級生に聞かれたのですが、いまはもちろんそんな古いものは使っていません。色々と新しいDriverも必要なので今はかなり新しめです。

相談員になって新しくであったのがGentoo Linuxという distributionです。相談員内にあるおもちゃの大半が何故かGentooで埋めつくされており、見た当初はかなり異様な雰囲気でした。 Gentoo Linuxの特徴は、全て自分でコンパイルというもので、CPUに合わせた最適化ができることが売りとなっています。 Red Hatなどほとんどのdistributionはarch=i686でコンパイルされており、Pentium 4など最近のCPUの命令コードを使った最適化がされていません。 このため、自分の持っているarchitectureに合った最適化でLinuxを使用するにはGentooが一番というわけです。ただ、コンパイルには かなり時間がかかり、gcc+glibc+XFree86+KDEを全部最初から作ったりすると数日かかり、色々と不便です。このため、バイナリも いくつかは存在しますが、最新のものやminorなものはほとんど存在せず、結局コンパイルということになりがちです。 Gentooについて色々と教えて下さった相談員の小町先輩は、 最近、MacOS XのFinkで作業なさっている時、「もう自分でコンパイルはやになってきた」ともらしていました。 Gentooのmaintainerもやっている方なので、いろいろと思うところがあったのでしょう。

最近は、Linuxのpthreadの挙動が気に入らず、SolarisやFreeBSDなどを使いはじめています。今回の話はこれくらいで終りにします。

Let's start by acknowledging one external factor that does affect the
popularity of a programming language. To become popular, a programming
language has to be the scripting language of a popular system. Fortran and
Cobol were the scripting languages of early IBM mainframes. C was the
scripting language of Unix, and so, later, was Perl. Tcl is the scripting
language of Tk. Java and Javascript are intended to be the scripting languages
of web browsers.

Lisp is not a massively popular language because it is not the scripting
language of a massively popular system. What popularity it retains dates back
to the 1960s and 1970s, when it was the scripting language of MIT. A lot of
the great programmers of the day were associated with MIT at some point. And
in the early 1970s, before C, MIT's dialect of Lisp, called MacLisp, was one
of the only programming languages a serious hacker would want to use.

    -- Paul Graham
    -- Being Popular ( http://www.paulgraham.com/popular.html )

   <dazjorz>  rindolf!
   <dazjorz>  areth thou here?
   <rindolf>  Hi dazjorz
   <dazjorz>  :)
   <rindolf>  dazjorz: yes, I are here.
   <dazjorz>  isn't it kind of weird to have a programming channel when
              there are language specific channels around?
       <Zuu>  Muhah!
   <rindolf>  dazjorz: this is about programming in general.
   <rindolf>  At least theoretically.
   <rindolf>  And VB.NET questions.
 <joeyadams>  Well, ##programming is a good place to ask C questions and
              actually get helpful answers :)
   <dazjorz>  rindolf: did you intentionally make it look like vb.net is
              not programming?
   <rindolf>  dazjorz: meet Zuu - he's into Windows and D and stuff.
   <dazjorz>  !
   <rindolf>  dazjorz: no.
   <rindolf>  dazjorz: VB.NET is programming.
   <dazjorz>  hey Zuu, I'm dazjorz, I'm into linux and c and stuff.
   <rindolf>  But it has its own channel.
       <Zuu>  :>
   <dazjorz>  rindolf: I've been thinking about changing nicks
   <rindolf>  dazjorz: ah. so did I.
           *  Zuu is into everything sane, except the boring stuff
   <rindolf>  dazjorz: to what?
   <dazjorz>  rindolf: my current one is waaaay too lame, but "sjors" is
              probably too generic
   <rindolf>  dazjorz: I like dazjorz
   <dazjorz>  rindolf: I don't, because when people see my name is sjors,
              da zjorz is just too lame to bear
   <dazjorz>  rindolf: I was thinking about sjors, or some three-letter
              abbreviation of my name, sjg or so
       <Zuu>  how about.... 'carrot' ?
   <dazjorz>  I think I do prefer dazjorz over carrot
       <Zuu>  no worries, i promise not to stuff you up rindolf's tomato
              nose
       <Zuu>  hum :<
   <dazjorz>  Zuu: when I first read your nick on Shlomi's site five
              minutes ago, I asked him whether you were a mix between
              Zorix and Buu
   <dazjorz>  do you know the two?
   <rindolf>  Zoffix and buu.
       <Zuu>  nope
   <dazjorz>  uh zoffix yeah
   <dazjorz>  Zuu: okay, well, you don't know them, but believe me, I'm
              glad you're not a mix of the two, that would be horrible :P
       <Zuu>  im a mix of much worse personalities im sure
       <Zuu>  most of them just happen to cancel each other out

    -- Introudcing dazjorz to Zuu
    -- ##programming, Freenode


Powered by UNIX fortune(6)
[ Main Page ]