1998 年度「計算機基礎論3B」 1999-02-12

TeX の参考書

先週とりあげた TeX では「\alpha」で「α」がでました。 これらの一覧表をこのページに載せてほしい、という希望がありましたが、 時間の都合でできませんでした。ごめんなさい。

TeX の参考書で最も基本的なのは作者自身による

Donald E. Knuth 著 監修:斎藤信男 翻訳:鷺谷好輝「TEX ブック」(アスキー出版局)
でしょう。 前回私がもっていた本です。

WS がおかしくなったら ps と kill

前回、第4実習室の WS を使ってみて、 起動しかかった mule が途中で止まってしまったケースが数件ありました。 このような場合、まずは ps と kill を試してみましょう。 うまくゆくと、おかしくなって止まっているプログラムを取り消すことができます。

正常に動いているウィンドウの中で、コマンドラインから「ps」と打ちます。

ws47{eb00d48}3% ps
   PID TTY      TIME CMD
 10496 pts/0    0:01 csh    
これは Telnet でログインして試した例なので csh しか動いていませんが、 OpenWindows を動かしていればもっとたくさんのプロセスが動いているはずです。 次の例は別のマシンのものですが、参考までに。
[iwase@math iwase]$ ps
  PID TTY STAT  TIME COMMAND
 5155   1 S    0:00 /bin/login -- iwase
 5419   1 S    0:00 -bash
 5430   1 S    0:00 sh /usr/X11R6/bin/startx
 5431   1 S    0:00 xinit /usr/X11R6/lib/X11/xinit/xinitrc --
 5435   1 S    0:00 fvwm95-2 -f FvwmM4 -debug /etc/X11/TheNextLevel/.fvwm2rc.m4
 5596   1 S    0:00 /usr/X11R6/lib/X11/fvwm95-2/FvwmTaskBar 7 4 /tmp/fvwmrca054
 5597   1 S    0:00 /usr/X11R6/lib/X11/fvwm95-2/FvwmButtons 9 4 /tmp/fvwmrca054
 5599   1 S N  0:00 xload -nolabel -geometry 32x20+0+0 -bg grey60 -update 5
 5600   1 S    0:00 /usr/X11R6/lib/X11/fvwm95-2/FvwmPager 11 4 /tmp/fvwmrca0544
 5601  p0 S    0:00 bash
 5828  p1 S    0:00 /bin/login -h science s.kanazawa-u.ac.jp -p
 5829  p1 S    0:00 -bash
 5840  p1 R    0:00 ps
ここで一番左の「PID」は「process ID」と呼ばれるものです。 「プロセス(process)」と「プログラム」は別物(のよう)ですが、 ここではその違いは気にしないことにしましょう。 WS の中では、いくつものプログラムが同時に動いています。 それらには process ID と呼ばれる数がついて区別されているのです。

出力結果を見て、いまおかしくなっている(と思われる)プログラムの PID を覚え、 「kill その番号」とします。 たとえば「kill 6423」などと。 うまくゆけばそのプログラム(厳密には「プロセス」)は kill されます。 これでもダメな場合、「kill -9 6423」のように「-9」 をつけるとうまくゆくことがあります。

 ※ 余談だが、 この「-9」を口頭でひとに教えるばあいは「マイナスきゅう」と言わずに 「マイナスナイン」と言うほうがいいようだ。 「-q」とカン違いされることがあるから。

この方法でプログラムを強制的に終了させた場合、 そのプログラムが扱っていたデータでセーブされていないものは失われてしまいます。 試しにやってみたい人は、起動直後の mule を kill してみてはどうでしょうか?

 ※ もしも WS そのものが動かなくなってしまった場合、 ほかの WS にログインしてそこから「telnet ws??」として動かなくなった WS にはいり込み、そこで上のように ps や kill を試せばよい。 ただしそれには最初に使っていた WS が何番だったか覚えておかなければならない。

おわりに --- 「自分で考えてわかること」と「教わらなければわからないこと」

金沢大学総合情報処理センターがだしている 1998 年の冊子 14 ページにユーザー室の写真が出ていますが、 そこには

「まずは自分の頭で考えよ!
「次は利用の手引きにあたれ!」
「それでもわからなければ人に聞け!
「苦労しただけ喜びは大きいぞ!!」
という4枚の看板が写っています。 そのわきには 《「まずは自分の頭で考えよ」 これは利用者に対するセンター職員の大きな希望です》 と書いてありますが、私はこの考えには賛成しません。

諸君は、この実習の最初にログインのしかたを学びました。 それにはセンターから交付されたユーザ ID とパスワードが必要でした。 もしも何も教わらないでいきなり実習室にやってきたとして、 自分の頭で考えてそれらのことがわかったでしょうか? 私にはとてもそうは思えません。 それからエディタ mule を学びましたが、 「mule」という名前も、その終了コマンドも、 教わったからこそわかったのだと思います。

必要最低限のこと、 組み合わせればいろいろなことができる基本的なこと、 そういったことを効率よく教えるよう努力するのは教える側の義務だと思います。 それらを一通り学んでしまえば、あとは見よう見まねで、 あるいは自分の頭で考えていろいろなことができます。 私はそう考えてこの授業を進めてきたつもりです。

 * 二年前の実習ではログイン画面を Ctrl+C でキャンセルすることにより、 パスワードなしでパソコンを使うことができた。 せっかく「自分の頭で考え」て発見したのに、 センターの人に見つかって実習生が叱られてしまった。:-)

 * この実習を指導した私自身は、 センターからはコンピュータの使い方について何も教わっていない。 ほかの WS の使い方から類推したり、 理学部のほかの先生や大学院生から教わったり、 試行錯誤で発見したりして教えてきたのである。 最初は第3実習室で始めて、 終わり近くになってようやく「初めから第4実習室でやればよかった」 と気づいたのもそんなわけなのでご了承願いたい。

最後に

この授業では、 「(いわゆる)ホームページ作り」「電子メール」「Cプログラミング」「TeX」 をとりあげました。 そしてその前に準備として 「タイピング練習」「Netscape の使い方」「unix での基本的なファイル操作」 「エディタ mule の使い方」などを学びました。

全体としては 「ファイルを作って、そのファイルに対して何かをすると何かが起こる」 という方向で教えました。 今となってはややクラシカルな方法だったかもしれません。 (ほかのクラスの友だちとメールの送り方などを比べてみればわかると思います。)

「これから計算機とどうつきあってゆくか」ですが、 特に興味をもってこれからもほぼ毎日のようにコンピュータを使い続ける人を別とすれば、 この授業で習ったことは全部忘れてしまって構いません。 諸君が次にどうしても計算機を使わなければならなくなるのは、 大学院に進んで TeX で論文を書くときか、 企業や高校・中学に就職して仕事の上で使うときでしょう。 そのときまでには計算機もプログラムもきっと進歩しています。 細かいことを覚えていてもしかたがありません。 ただ、「きちんとやり方を習って使ってみたらそれなりにいろいろなことができた」 という自信だけはもっていてください。 それさえあれば、必要なときにまたコンピュータの勉強をすることは容易だと思います。

この授業について、感想のある人はメールで送ってくれるとうれしいです。 去年の授業にも出た人は、 去年のような講義スタイルと今年のような実習スタイルとどちらがよかったかも聞かせてくださるとなおうれしいです。

たぶんみなさんとはもう授業では出会わないと思います。 どうかお元気で。数学にしっかり取り組んでください。


岩瀬順一 <iwase@math.s.kanazawa-u.ac.jp>