新規記事投稿 フォロー記事投稿 記事のキャンセル
From: にあ <nir@mvg.biglobe.ne.jp>
Subject: Re: 管理ツール
Date: 1999/10/08 20:55:37
Reference: mesh.npc.2/00682

10月8日に、ブンさんは書きました。

>今回、利用者用に以下の機能を持ったツール、
>・自動登録
>・保守
>・ログ(イタズラ解析用)・・サーバ管理者の許可が必要でしょう。
>及び、管理者用ツールを作成しました。(削除、閲覧)

カウンタサーヴィス等をする場合には必須なのでしょうね。
此のツール類を公開する予定はありますか? (^^)

>・排他制御をperlのflockでやっていますがfcntlと排他できる?

サーヴァのOSによります。

perlのflock()は、OSのシステムコールにflock()があればそれを使い、
無ければlockf()で代用する、と言う実装になっていたはずですし、
lockf()は通常fcntl()を使っていますので、サーヴァのOSにflock()が
無い(例えばHP-UX9.x)とか、flock()がfcntl()を呼び出す
(たしかSunOS5.xはそう)とか言う場合は正常に排他が利くはずです。

しかし、サーヴァのOSがflock()を持っていて、それがfcntl()呼び出しでも
無い(例えばSunOS4.x)場合はperlのflock()を使っていては排他が利きません。
チョット面倒であってもperlでもfcntl()を使う必要がありますね。

>・排他を万全にしようとnpc.idxを固定長管理にしました。それに伴い、
> npc.cgi の "%010d %s\n"の"\n"を" "に変更。
>が気にはなっています。 

うーん、これだけでは何とも分からないですね。
「実装に依る」とぐらいしか言いようが無いです。(^^;;