関数の引数指定

Perlの関数は引数を設定する必要は無いですが、
意図的に引数の種類を指定する方法はあります。

sub example($;@) {
...;
}

とすると、第一引数がスカラー、第二引数がリストになります。
ただし、関数の引数はリストで渡されますので、引数の値の取得には工夫が必要です。

my $sc = shift @_;
my @ls = @_;

shiftを使い、リストの一番前のスカラーを取得しつつ削除し、
次に残りのリストを取得します。

テーマ : プログラミング
ジャンル : コンピュータ

2007-12-25 : Work-Linux-Perl : コメント : 0 : トラックバック : 0
Pagetop

追加ライブラリ

デフォルトだといろいろライブラリが入ってないんで、最低限以下はyumで入れておいた方がいいかと。

gcc
gcc-c++
glib
glibc-devel
ncurses
libstdc++
libstdc++-devel
compat-libstdc++-296
compat-libstdc++-33
libX11
libXext
libSM
libXt
libXft

テーマ : UNIX/Linux
ジャンル : コンピュータ

2007-12-20 : Work-Linux-Env : コメント : 0 : トラックバック : 0
Pagetop

SATA VIP覚書

・クロックは0.99を乗算しないとうまく動作しない。
・set_config_param(..., `DW_VIP_SATA_OOB_INTERVAL_TYPE_PARAM, DW_VIP_SATA_OOB_INTERVAL_TYPE_SPECD)は必要。
・set_config_param(..., `DW_VIP_SATA_DEVICE_INTERNAL_MEMORY_ENABLE_PARAM, `VMT_TRUE)も必要
・get_watchpoint_data_string()や、get_watchpoint_data_int()でステータス変化やイベントを取得可能
・第2引数に取得するステータスやイベントの種類を設定
- SATA_MSGID_PHY_OOB_SEQ_STATE_CHANGE_ARG_CURR_STATE
- SATADEVICE_MSGID_RX_FIS_ARG_BUF_HANDLE
- SATADEVICE_MSGID_TX_FIS_ARG_BUF_HANDLE
・get_buffer_attr_bitvec(..., DW_VIP_SATA_FIS_TYPE, ...)でFISの種類を取得。

テーマ : ハードウェア
ジャンル : コンピュータ

2007-12-10 : Work-Product-Verification : コメント : 0 : トラックバック : 0
Pagetop

バッファカウンター

バッファカウンターは書き込み側と読み込み側で別々に持つ方が作りやすいです。
その際、push, pop時のカウンター増減量を決められた方が汎用的に使えます。

push
push_sz
pop
pop_sz
size

ポインターのbit数をパラメータオーバーライド可能なようにしておきます。
sizeはそのbit数+1になります。
push, pop同時の場合はpush_sz-pop_szをカウンターに加算します。

バッファコントロール

テーマ : ハードウェア
ジャンル : コンピュータ

2007-12-09 : Work-Product-Design : コメント : 0 : トラックバック : 0
Pagetop
ホーム

プロフィール

zive

Author:zive
大阪在住、男

ブログ検索

月別アーカイブ

FC2カウンター