Jump to content 日本-日本語

製品  >  ソフトウェア  >  HP- UX Developer Edge

Solaris技術者のための「HP-UXへの移行のすすめ」・後編

HP-UX/Integrityサーバー お問い合せ
コンテンツに進む
Solaris技術者のための「HP-UXへの移行のすすめ」・後編
Solaris技術者のための「HP-UXへの移行のすすめ」・後編
オープンソース・ソフトウェアのHP-UX移行
オープンソース・ソフトウェア移行の一般則

オープンソース・ソフトウェア移行の一般則


Itanium 2+HP-UX環境はまだ新しいこともあり、オープンソース・ソフトウェアのコンパイル作業において引っかかりやすい箇所がいくつかある。テックファームでは、そのおもなポイントを以下のようにまとめている。

  • configureスクリプトがOSやCPU構成を正しく判定できないケース
  • configureスクリプトがHP Cコンパイラ独自のオプションに対応していないケース
  • make、m4、flex(lex)、bison(yacc)、tar、sedなどについて、HP標準のツールでは動作が異なるケース
  • 一部のソースが特定プラットフォームにしか対応していないケース

これらのケースに対する解決法として、同社では以下の手段を紹介している。

  • configure実行時に、使用コンパイラやオプションを明示的に指定する(例:CC="cc" CFLAGS="-Ae +DD64" ./configure)
  • 最新版のautoconfを用いてconfigureスクリプトを再作成する
  • HP標準ツールの代わりにGNUツールのPATHを先に通してからconfigureを実行する
  • PA-RISC版HP-UXに対応しているものは、CFLAGS="-AC99"を試してみる
  • プラットフォームを指定してconfigureを実行する(例:./configure -build=ia64-hp-hpux11.23)

こうしたコツさえつかんでおけば、たいていのオープンソース・ソフトウェアにそれを応用できるという。


Solarisユーザから見たHP-UX


さらにテックファームでは、Solarisユーザから見て「HP-UXはここが違う」という点をいくつかピックアップしている。これらを頭に入れておけば、つまらないことに足を取られる状況も防げるはずだ。


tty設定の違い


SolarisユーザがHP-UX環境での作業でつまずく点の1つは、tty設定の違いだ。

表1:tty設定の違い
 

Solaris

HP-UX

Ctrl+Cによるプログラムの停止について デフォルト設定はintr = ^C なので、Ctrl+Cでプログラムを停止できる デフォルト設定はintr = DELなので、Ctrl+BSなどでプログラムを停止する。stty intr '^C'の設定でCtrl+Cに変更できる
メールアドレスの入力に使用する"@"について デフォルト設定はkill = ^U なので、メールアドレスの入力に支障はない デフォルト設定はkill = @なので、@を入力すると、行入力がキャンセルされる。また-echok -echokeなので、行入力がキャンセルされたことが見えない
文字の削除について デフォルト設定はerase = ^? sなのでstty erase '^H'などとしてバックスペースで削除可能にする デフォルト設定は-echoe -echokなので、文字の削除がエコーバックされないが、実際には削除されている。stty echoe echokeとし、削除がエコーバックされるように設定する
プログラムを一時停止する方法について デフォルト設定ではCtrl+Zで一時停止 デフォルト設定では一時停止がアサインされていない。stty susp '^Z'を設定する

表1に示すように、HP-UXのtty設定は、Ctrl+CやCtrl+Z、@などの扱いがSolarisとは異なる。そのため、たとえばパスワードが@を含んでいるとログインできないといった事態も起こる。テックファームでは、こうした違いを吸収するSolarisユーザにお勧めの端末設定として、以下のような設定を紹介している。

stty cs8 intr '^C' erase '^H' kill '^U' susp '^Z' -istrip echo echoe -echok echoke

カーネル構成の違い


またSolarisとHP-UXのカーネル構成については、表2のような違いがある。

表2:カーネル構成の違い

項目

Solaris

HP-UX

パラメータ名

デフォルト

パラメータ名

デフォルト

プロセス数 max_nprocs 10+(16 x メモリのメガバイト数) nproc 4,200
ユーザ別プロセス数 maxuprc max_nprocs - 5 maxuprc 50
スタックサイズ カーネルに制限されない maxssiz
maxssiz_64bit
8MB
8MB
ヒープサイズ カーネルに制限されない maxdsiz
maxdsiz_64bit
256MB
1GB
オープンできるファイル数 rlim_fd_cur
rlim_fd_max
256
1024
maxfiles
maxfiles_lim
50
1024
システム全体でオープンできるファイル数 カーネルに制限されない nfiles ((16*(nproc+16+
maxusers)/10)
+32+2*(npty+
nstrpty+nstrtel)

コマンドレベルではよく似たUNIX OSであっても、SolarisとHP-UXはそれぞれがまったく異なるアーキテクチャを持つOSである。その違いは、表2のカーネル・パラメータにも表れており、たとえばHP-UXにおける最大プロセス数やオープン可能ファイル数は比較的少なめに設定されている。小林氏は、「全般的にSolarisは自動化指向が強く出ているが、HP-UXは細かく制御できる傾向にある。このためHP-UXは、最初の段階で計画性を持って設定しておくのがコツだ」と説明している。

以上、本特集ではテックファームによる検証結果をもとに、SolarisからHP-UXへの移行作業のポイントを解説した。また同社による検証作業では、JavaやOracle、PHPといった定番のミドルウェアについてもHP-UXへスムーズな移行が可能なことも確認されている。小林氏は、「環境さえ作れば、Solarisで稼働していたアプリケーションをHP Integrityサーバで動かすのはとくに難しい話ではない」と自信をのぞかせる。SIerにとっては、こうしたOS間移行のスキルが強力な提案力として生きてくるはずだ。

関連リンク

 
Itaniumベース HP-UX用 HPコンパイラ (PDF、ホワイトペーパー)
HP Web Server Suite
  Apache-based web server、XML Web Server Tools、Tomcat-based Servlet Engine、Webmi-based Adminの情報サイト
HP-UX Internet Express (オープンソースコンポーネント)
 
トップへ 戻る    

記事の内容に関するご意見・ご質問・お問い合わせ

  日本ITフォーラムにて承っております(別途、会員登録が必要です)。

日本ITフォーラム
 

その他のコラム(特集)もお読み下さい

 
 
本ページの内容は執筆時の情報に基づいており、異なる場合があります。
印刷用画面へ
プライバシー ご利用条件・免責事項