NightStar RT Installation Guide
Version 4.8(RedHawkTM Linux®)

0898008-4.8
November 2019

Copyright 2013-2019 by Concurrent Real-Time. All rights reserved.
本書は当社製品を利用する社員、顧客、エンドユーザーを対象とします。
本書に含まれる情報は、本書発行時点での正確な情報ですが、予告なく変更されることがあります。
当社は、明示的、暗示的に関わらず本書に含まれる情報に対して保障できかねます。
Concurrent Real-TimeおよびそのロゴはConcurrent Real-Time, Inc.の登録商標です。
その他すべてのConcurrent Real-Timeの製品名はConcurrent Real-Timeの商標であり、その他全ての製品名が各々の所有者の商標または登録商標です。
Linux®は、Linux Mark Institute(LMI)のサブライセンスに従い使用しています。
NightStarに統合されたヘルプシステムは、Qt🄬🄬ユーティリティのAssistantがベースとなります。QtはDigia Plc社および/またはその子会社の登録商標です。
NVIDIA🄬🄬 CUDATMはNVIDIA社の商標です。
VirtualBoxTMはOracle🄬🄬社の商標です。

注意事項：
本書は、Concurrent Real-Time, Inc.より発行された「NightStar RT Installation Guide」を日本語に翻訳した資料です。英文と表現が異なる文章については英文の内容が優先されます。

目次
1.0. 序文. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1
2.0. サポート対象システム . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2
2.1. ホスト・システム . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2
2.2. ターゲット・システム . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2
3.0. NightStar RT のインストール . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3
3.1. DVD インストール . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3
3.2. CentOS および Red Hat 向けネットワーク・インストール . . . . . . . . . .
4
3.2.1. YUM 構成ファイル . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5
3.2.2. NUU 経由でのインストール . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6
3.2.3. YUM および DNF 経由でのインストール . . . . . . . . . . . . . . . . . . . .
7
3.2.4. ネットワーク・インストールの問題 . . . . . . . . . . . . . . . . . . . . . . . . 7
3.3. Ubuntu 向けネットワーク・インストール . . . . . . . . . . . . . . . . . . . . . . . .
8
3.3.1. APT リポジトリ構成ファイル. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8
3.3.2. APT インストール・コマンド. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
93.3.3. Ubuntu での NightStar 32-bit サポート. . . . . . . . . . . . . . . . . . . . . . .
10
3.4. 既知のインストールの問題 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11
3.4.1. 32-bit ライブラリの依存関係. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11
4.0. NightStar RT 4.8 の新機能. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
124.1. NightView の変更点. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
12
4.1.1. 新機能 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
12
4.1.2. ssh 接続でのリモート・デバッグ . . . . . . . . . . . . . . . . . . . . . . . . . .
12
4.1.3. パッケージの再構築 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
13
4.1.4. クロス・デバッグ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
14
4.1.5. NightView パッケージの理解 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
15
4.2. NightTrace の変更点. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
16
4.2.1. カーネル・タイムライン上のユーザー・イベント . . . . . . . . . . . . .
16
4.2.2. ハングアップする状況に関するバグ修正 . . . . . . . . . . . . . . . . . . . .
16
4.2.3. カーネル・イベントと同期しないユーザー・トレースポイントに関するバグ修
正 ........................................................
17
4.2.4. 多数 CPU に関するサポートの向上. . . . . . . . . . . . . . . . . . . . . . . . . . 17
4.2.4.1. カーネル・タイムライン生成の制御 . . . . . . . . . . . . . . . . . . . . 17
4.2.4.2. タイムライン設定の調整 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
4.2.5. カ ー ネ ル / ユ ー ザ ー ・ ト レ ー ス ・ デ ー タ に 対 す る PID 追 跡 の 向
上 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
4.3. NightTune の変更点 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
4.3.1. 新機能 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
20
4.3.2. パッケージの名称変更 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
4.4. NightSim の変更点 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
4.5. NightProbe の変更点 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
4.5.1. メンテナンス・リリース . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
5.0. ライセンス・キーの入手 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
22
5.1. NightStar RT の削除 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
22
6.0. 資料 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
23
7.0. NightStar RT GUI の機能 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
24
7.1. 移動可能およびサイズ変更可能なパネル . . . . . . . . . . . . . . . . . . . . . . . . . 24
7.2. タブ化ページ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

NightStar RT Installation Guide Version 4.8

1

7.3. コンテキスト・メニュー . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
8.0. NightStar RT の概要 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
32
8.1. NightProbe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
8.2. NightSim . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
8.3. NightTrace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
8.4. NightTune . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
8.5. NightView . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
8.6. Datamon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
8.7. Shmdefine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
9.0. はじめに . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
9.1. ケーパビリティ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
9.1.1. NightView にプロセスへのアタッチを許可 . . . . . . . . . . . . . . . . . . . . 41
10.0. NightStar RT のライセンシング . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
10.1. ライセンス・キー . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
10.1.1. ライセンス用ネットワーク・デバイスの選択 . . . . . . . . . . . . . . . . . 43
10.2. ライセンスの要求 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
10.3. ライセンス・サーバー . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
10.4. ライセンス・リポート . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
10.5. フローティング・ライセンス向けファイアウォール構成 . . . . . . . . . . . . 44
10.5.1. ファイアウォールの環境でライセンスを供給 . . . . . . . . . . . . . . . . . 44
10.5.2. ファイアウォールの環境で NightStar RT ツールを実行 . . . . . . . . . 46
10.6. ライセンス・サポート . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
11.0. アーキテクチャの相互運用性 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
11.1 x86 32-bit と 64-bit の相互運用性 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
11.2 Intel と ARM64 の相互運用性 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
12.0. 既知の問題 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
12.1. 問題：位置独立実行形式(gcc6) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
12.2. 問題：ターゲット・システムにアタッチ出来ない . . . . . . . . . . . . . . . . . . 51
12.3. 問題：VirtualBox システムでデバッグ出来ない . . . . . . . . . . . . . . . . . . . . 51
12.4. 問題：NightView がメモリ・セグメントにマッピング出来ない . . . . . . . 52
13.0. ソフトウェア・サポート . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

2

NightStar RT Installation Guide Version 4.8

1.0. 序文
NightStar RT Version 4.8 は、Concurrent Real-Time 社の RedHawk Linux で動作する NightStar RT の正式リリースです。
NightStar RT Version 4.8 は CentOS 8 や Ubuntu 18.4 のような最新の Linux ディストリビューション
での利用が必要となります。しかしながら、2 ページの「ホスト・システム」項と「ターゲット・システム」項で説明されているように NightStar RT Version 4.8 は古いディストリビューションも今
なおサポートします。
NightStar RT は NightProbe データ・モニター、NightSim アプリケーション・スケジューラ、NightTrace
イベント・アナライザー、NightTune システムおよびアプリケーション・チューナー、NightView ソースレベル・デバッガー、Datamon モニタリング API、Shmdefine 共有メモリ・ユーティリティで構成されます。
インストール手順は NightStar 4.8 で変更されました。4 ページの「CentOS/Red Hat 向けネットワーク・インストール」および 8 ページの「Ubuntu 向けネットワーク・インストール」で説明されているようにネットワーク・インストールで使用される URL に特に注意して下さい。
NightStar の一般的な説明については、32 ページの「NightStar RT の概要」を参照して下さい。

NightStar RT Installation Guide Version 4.8

1

2.0. サポート対象システム
ホスト・システムとターゲット・システムの両方に対する NightStar RT Version 4.8 の必要条件は、以下のとおりです：

2.1. ホスト・システム
Intel と AMD の x86_84 プロセッサーおよび選定された ARM64 システムで動作する以下の Linux
ディストリビューションのいずれか：

Concurrent Real-Time RedHawk Linux 2.3 - 8.0



Red Hat Enterprise 4 - 8

CentOS 6 - 8

Ubuntu 16.04, 18.04, 19.04

Fedora 25 - 30

Debian 7 - 10

ネイティブ Intel 32-bit のサポートは 6.5 以前が動作する CentOS と RHEL システムで引き続き利用可能です。
NightStar は x86_84 ハードウェア上の 32-bit Intel プログラムをサポートします。

2.2. ターゲット・システム
RedHawk Linux は全てのターゲット・システムで必要となります。
NighStar は RedHawk Linux カーネルが動作するいずれの Intel もしくは AMD の x86_64 システムをサポートします。
以下の ARM64 システムをサポートします：2Applied Micro Circuits Corporation の X-C1TM プラットフォーム



NVIDIATM Corporation の Jetson TX1, TX2, Drive PX2, Xavier, Nano 開発キット

NightStar RT Installation Guide Version 4.8

3.0. NightStar RT のインストール
NightStarRT をインストールするには 3 つの方法があります。

-

DVD インストール
CentOS および Red Hat 向けネットワーク・インストール
Ubuntu 向けネットワーク・インストール
IMPORTANT-

実際のインストール前に選択したインストール方法の全てを読むことを強く推奨します。

デスクトップ上に NightStar のアイコンがある場合、インストールを開始する前にそれらを削除して下さい。インストールが完了した後、通常のユーザーとしてログインし以下のコマンドを使ってアイコンを再インストールして下さい：/usr/lib/NightStar/bin/install_icons

3.1. DVD インストール
NightStar RT Installation DVD を使って NightStar RT をインストールするには：-

DVD-ROM ドライブに NightStar RT Installation DVD を挿入して下さい。新しいシステムでは以下の場所のいずれかに自動でマウントされます：-

/media/NightStar-RT-4.8

/run/media/{user-name}/NightStar-RT-4.8

DVD が自動マウントしない場合、以下のような方法で DVD-ROM ドライブをマウントして下さい：[ -d /mnt/cdrom ] || mkdir /mnt/cdrom;
mount -t iso9660 -o ro /dev/sr0 /mnt/cdrom
お手持ちの DVD デバイスが/dev/sr0 以外である可能性があります。

インストール中、x86_64 システムの場合は 32-bit デバッグ・サポートを含めるかどうかを尋ねる
場合があります。尋ねられない場合、インストール・スクリプトが 32-bit デバッグが必要とされると既に認識し、適切なパッケージを自動的にインストールすることを意味します。この問題はNightView に完全に関連しています。NightView パッケージの詳細については 15 ページの「NightView パッケージの理解」を参照して下さい。

-

デスクトップの NightStar RT4.8 の表記を含んでいる DVD アイコンをダブルクリックし
て下さい。

-

Launch Install Script というラベルのアイコンをダブルクリックして下さい。

NightStar RT Installation Guide Version 4.8

3

NOTE
DVD にアクセスするファイル・ブラウザーを使用しない、またはデスクトッ
プにアイコンが表示されない場合、現在の作業ディレクトリを DVD がマウントされているディレクトリに変更し、以下のスクリプトを起動して下さい：./install-nstar
IMPORTANT./install-nstar の起動が失敗して次のようなメッセージが生成される
unable to exec...
または Launch Install Script が有用な情報なしにすぐさま終了する場合、お手持ちのシステムがマウントされた CD からスクリプトを実行させないように設定されている可能性があります。この場合、マウント・オプションに noexec
オプションが含まれているかもしれません。次のようなコマンドを実行することでこの問題を正すことが可能です：
mount -o exec,remount mountpoint
NOTE
上記のインストール手順はシステムに NightStar 製品全体をインストールします。組込みシステムでは、NightStar の一部のみをターゲット側にインストール
し、全ての GUI 操作を組込みシステムをターゲットとする他のシステムから行うことも可能です。ターゲット側に一部だけをインストールするには、現在の作業ディレクトリをマウントされた DVD に変更し、代わりに installnstar-server スクリプトを実行して下さい。

-

Install Desktop Icons というラベルのアイコンをダブルクリックして下さい。
NOTE
root として実行しているため、これらのアイコンは root のデスクトップにのみインストールされます。通常ユーザーのデスクトップにこれらをインストール
するには、通常ユーザーとしてログインし次のスクリプトを実行して下さい：/usr/lib/NightStar/bin/install_icons

3.2. CentOS および Red Hat 向けネットーワーク・インストール
ネ ッ ト ワ ー ク ・ イ ン ス ト ー ル は い ず れ か の コ マ ン ド (nuu, yum, dnf) を 使 っ てhttps://redhawk.concurrent-rt.com を介して達成されます。nuu は Concurrent Real-Time の Network
Update and installation Utility となります。
リポジトリへのアクセスに必要な redhawk.concurrent-rt.com のログインとパスワードを管理しているので、nuu の利用を推奨します。
システムに NUU がインストールされていないけど利用したい場合、次の URL にアクセスし NUUのインストールと設定の指示に従ってから次のセクションに戻って下さい：
http://redhawk.concurrent-rt.com/network/yum.html#NUU

4NightStar RT Installation Guide Version 4.8

3.2.1. YUM 構成ファイル
使用するコマンドに関わらず、以下の構成ファイルはシステムに存在する必要があります：/etc/yum.repos.d/ccur-nstar-rt.repo
ファイルが存在しない場合は生成して下さい。以下の記述に従い、色付きの斜体のテキストを固有の情報に置き換えて適切な内容になるように修正して下さい。
[ccur-nstar-rt]
name=NightStar RT
baseurl=https://redhawk.concurrentrt.com/buffet?Login=login&Password=password&path=NightStar/RT/version/distro/$basearch
gpgcheck=0
enabled=1
IMPORTANT
ファイル内の重要な行は「baseurl」で始まり「$basearch」で終わる行です。これはスペースも改行もない(本書でどのように見えているかに関係なく)連続した 1 行です。
上記の太字 green 部は、Concurrent Real-Time から割り当てられた Login ID と Password に置き換える必要があります。この情報はシステムまたはソフトウェアと一緒に出荷されたカバー・レタ
ーの中に含まれています。Login ID は通常は LI または LA で始まり続いて 5-7 桁の数字の Site ID
でもあります。もしこれらの値がすぐに見つからない場合、53 ページの「ソフトウェア・サポー
ト」のセクションに示されているようにコンカレント日本に連絡して下さい。これらの情報を埋めることが出来るようになるまで、ファイルの最後の行の「enabled」変数を 0 に設定することが可能です。
赤い斜体の太字の NightStar version コンポーネントは NightStar のバージョンで以下のいずれかである必要があります：
4.1, 4.2, 4.3, 4.4, 4.5, 4.6, 4.8 または current
NightStar の本リリースでは 4.8 を使用して下さい。あるいは current を使用して下さい。これは最新の製品リリースのための代用語です。NightStar の最新の製品リリース(例えば NightStar 5.0 がリリースされた場合)に常にアクセスできるように値に current を使用することを推奨します。
NOTE
以前のリリースでは、値として RedHawk が current の代わりに使用されていました。(どちらも利用可能ですが、前者は廃止される予定です)NightStar 4.8 以降は、ベース URL は青い斜体の太字の distro コンポーネント(Linux ディストリビ
ューションの略語)を含んでいる必要があります。お手持ちのシステムのディストリビューション
を最も表している次の値のいずれかを使用して下さい：

NightStar RT Installation Guide Version 4.8

5Linux ディストリビューションの略語
ディストリビューション
CentOS

略語
rhel6, rhel7, rhel8
rhel3, rhel4, rhel5, rhel6,

RHEL

rhel7, rhel8

Ubuntuubu16, ubu18, ubu19

Debiandeb10
IMPORTANT

4.8 より前の NightStar のバージョンを指定する場合、/distro コンポーネントを完全に省略して下さい。
通常、$basearch を他の値に置き換える必要はありません。このパスは$basearch で終える必要があり、yum ユーティリティにより自動的に設定される yum の変数です。
構成ファイルは次のようになります：[ccur-nstar-rt]
name=NightStar RT
baseurl=https://redhawk.concurrentrt.com/buffet?Login=LA12345&Password=secret&path=NightStar/RT/4.8/rhel8/$basearch
gpgcheck=0
enabled=1
IMPORTANT
ファイル内の重要な行は「baseurl」で始まり「$basearch」で終わる行です。これはスペースも改行もない(本書でどのように見えているかに関係なく)連続した 1 行です。

3.2.2. NUU 経由でのインストール
NUU がインストールされたら、次のように NUU を起動して本リリースをインストールまたはアップグレードすることが可能です：/usr/bin/nuu --disablerepo=ccur-* --enablerepo=ccur-nstar-rt
Concurrent Real-Time 製品リポジトリからインストールまたはアップグレードする NUU を利用したことがない場合、ログインおよびパスワード情報を求められる可能性があります。
NightStar RT がまだインストールされていない場合、NUU のモードを規定値は Updateable なのでInstallable に変更する必要があります。この設定はメイン・ウィンドウの右上にあるドロップダウン ・ メ ニ ュ ー か ら 選 択 す る こ と が 可 能 で す 。 設 定 す る と パ ッ ケ ー ジ 内 の リ ス ト で ccurNightStar-RT-RedHawk を見つけることが可能となります。インストールするパッケージを選択して Apply ボタンをクリックして下さい。

6

NightStar RT Installation Guide Version 4.8

そのパッケージの依存関係は、クロス・デバッグに関連するオプションの NightView パッケージを除いて NightStar RT 製品全体をインストールします。詳細については 15 ページの「NightView
パッケージの理解」を参照して下さい。
システムに NightStar RT が既にインストールされている場合、古いパッケージは画面上の更新可能リストに表示されます。更新するにはそれらを選択して Apply ボタンをクリックして下さい。
IMPORTANT
更新時は注意して下さい。意図するものではない限りシステム全体を誤って更新しないようにして下さい。NUU の Apply を押下した後、更新するパッケー
ジを正確に表示するダイアログがポップアップされます。開始する前にそのリストを慎重に調べて下さい。全ての Concurrent Real-Time のパッケージは接頭語「ccur-」で始まります。
http://redhawk.concurrent-rt.com/network/yum.html#NUU から入手できる NUU ダウンロード・キットに含まれる QuickStart.pdf の資料は、NUU の使用方法をより詳細に説明しています。
32-bit プ ロ グ ラ ム を デ バ ッ グ し た い x86_64 シ ス テ ム に つ い て は ccur-nview-i386target.i386 と ccur-nview-i386-support.i386 を明示的にインストールすることを忘れないで下さい。

3.2.3. YUM および DNF 経由でのインストール
最新の RPM ベースのシステムでは、yum コマンドは dnf コマンドに置き換えられました。以下のインストール・コマンドに関して、dnf コマンドが存在する場合は yum または dnf のどちらでも使用することが可能です。
初めて NightStar RT をインストールするには以下のコマンドを使用して下さい：
yum --disablerepo=ccur-* --enablerepo=ccur-nstar-rt install \ccur-NightStar-RT-RedHawk
NightStar RT を更新するには以下のコマンドを使用して下さい：
yum --disablerepo=ccur-* --enablerepo=ccur-nstar-rt update \‘ccur-n[^v]*’
32-bit プログラムをデバッグしたい x86_64 システムでは以下に示すコマンドで i386 NightStar パッ
ケージを明示的にインストールすることを忘れないで下さい：
yum --disablerepo=ccur-* --enablerepo=ccur-nstar-rt install \ccur-nview-i386-target ccur-nview-i386-support

3.2.4. ネットワーク・インストールの問題
以下の古いパッケージを更新またはインストールしないで下さい：

ccur-NightView, ccur-NightView-docs-rt, ccur-Nviewp, ccur-Nview-ptraceccur-ntunecommon, ccur-ntuneserv

ccur-ntracelog, ccur-ntraceapiNightStar RT Installation Guide Version 4.8

7

ccur-nsimserverccur-nprobeserv

NightStar RT 4.8 はこれらのパッケージを別の名称の新しいものに置き換えます。通常、これら全ての古いパッケージは DVD インストールまたは yum/nuu で更新中に削除され、新たに必要となるパッケージが選択されますので処理する必要はありません。この部分で困っている場合、これらのパッケージを手動で強制的に削除して下さい。
：
rpm -e --nodeps 問題のある古いパッケージのリスト
その後、インストールを再試行して下さい。
更新またはインストールの処理中に問題に気付いた場合はコンカレント日本(53 ページの「ソフトウェア・サポート」参照)に連絡して下さい。
インストール後、対話形式を利用または毎晩更新を行う cron ジョブをインストールしてシステ
ムを最新の状態にしておくことが可能です。例：
1 0 * * * /usr/bin/yum -y --disablerepo=* \--enablerepo=ccur-nstar-rt update ccur-n[^v]* ccur-qt \ccur-datamon ccur-shmdefine
x86_64 システムを更新しても 32-bit プログラムをネイティブに継続してデバッグできるようにしたい場合、ccur-nview-i386-target.i386 を明示的にインストールする必要があります。(リモート・デバッグ時にターゲットとしてのみシステムを使用するのとは異なり)システムで直接NightView(nview)を実行する場合、ccur-nview-i386-support.i386 もインストールする必要があります。詳細については 15 ページの「NightView パッケージの理解」を参照して下さい。

3.3. Ubuntu 向けネットーワーク・インストール
Ubuntu および Debian システムへの NightStar のインストールは、これらのディストリビューションにおいて標準的なインストール手法である apt を使用して簡単に完了します。
Concurrent Real-Time の公開キーを以下に示すように apt-key コマンドを使って apt キー・リングに追加する必要があります。公開キー・ファイルはインストール DVD にも存在することに留意して下さい。
wget http://redhawk.concurrent-rt.com/network/ccur-public-keys
apt-key add ccur-public-keys

3.3.1. APT リポジトリ構成ファイル
NightStar RT リポジトリ定義の URL は redhawk.concurrent-rt.com のログイン情報および
特定の Linux ディストリビューションにカスタマイズする必要があります。
以 下 の 内 容 で 斜 体 の 色 付 き の 文 字 を シ ス テ ム 固 有 の 情 報 に 置 換 し て/etc/apt/sources.list.d ディレクトリに ccur-nstar.list という名前のファイルを生成して下さい：
deb [arch=arches] \http://redhawk.concurrent-rt.com/ubuntu/login/password/nightstar \4.8 rt distro

8

NightStar RT Installation Guide Version 4.8

IMPORTANT「deb」で始まり「distro」で終わるリポジトリ定義の行は、上記がブラウザまたは PDF ビュワーでどのように見えるかに関係なく 1 行である必要があります。バックスラッシュ文字を削除して 6 個のコンポーネント全てを 1 個のスペースで区切って下さい。
黄褐色の斜体の太字で示されたコンポーネントは次のエントリのいずれかである必要がありま
す：


amd64



amd64,i386 (32-bit プログラムにリンクしたい amd64 システムでこれを使用)



arm64

login と password 欄は redhawk.concurrent-rt.com 用のログインとパスワードです。これらの値
は、システムまたはソフトウェア購入時に受け取ったカバー・レターに記載されています。login
部分はサイト ID とも呼ばれています。サイト ID は通常 LI または LA で始まり続いて 5-7 桁の数
字となります。
NightStar Version 4.8 以降、記述子は distro コンポーネント(Linux ディストリビューションの略語)を含む必要があります。お手持ちのシステムのディストリビューションを最も表している次の値のいずれかを使用して下さい：
Linux ディストリビューションの略語
ディストリビューション

略語

CentOS

ubu16, ubu18, ubu19

Debiandeb10
IMPORTANT

4.8 より前の NightStar のバージョンを指定する場合、distro コンポーネントを完全に省略して下さい。
一般的な deb 定義行は次のようになります：
deb [arch=amd64,i386] \http://redhawk.concurrent-rt.com/ubuntu/LA12345/secret/nightstar \4.8 rt ubu16
全て 1 行、
バックスラッシュ文字(\)なしで 6 個のコンポーネントを 1 つのスペースで区切ります。

3.3.2. APT インストール・コマンド
apt コマンドはリポジトリのソース・リストの再読み込みを強制します。次のコマンドを実行して下さい(apt-get は本手順の一部としてパッケージを変更することはないので、update という言
葉については心配しないで下さい)：
apt-get update

NightStar RT Installation Guide Version 4.8

9NightStar がまだインストールされていない場合は次のコマンドを実行して下さい
apt-get install ccur-nightstar-rt
一方、システムに NightStar が既にインストールされている場合、次に示すように特有なコマンドを実行する必要があります：
apt-get install ccur-n[^v]* ccur-qt ccur-datamon ccur-shmdefine

3.3.3. Ubuntu での NightStar 32-bit サポート
NightStar は 64-bit システム上での 32-bit プログラムのビルド、実行、デバッグを引き続きサポートします。
x86_64 システムに 32-bit パッケージをインストールするには、サポートするパッケージのアーキ
テクチャのリストに i386 を追加する必要があります。以下のコマンドを実行することでお手持ちのシステムが既に i386 パッケージのインストールを許可しているかどうかを確認することが可能
です：
dpkg print-foreign-architectures
アーキテクチャのリストに i386 を追加するには次のコマンドを実行して下さい：
dpkg add-architecture i386
/etc/apt/sources.list.d/ccur-nstar-rt.list が[arch=amd64,i386]を指定していることを確認して下さい。(8 ページの「APT リポジトリ構成ファイル」参照)
システムが i386 をサポートしていることを確認したら、次の 2 つのコマンドを実行して下さい：
apt-get update
apt-get install ccur-nstar-i386-target.i386 \ccur-nstar-i386-support.ii386 \ccur-ntrace-api-libs \ccur-ntrace-java-libs \ccur-nprobe-api-libs

10

NightStar RT Installation Guide Version 4.8

3.4. 既知のインストールの問題
次項では NightStar RT のインストールに関する既知の複雑性を説明します。

3.4.1. 32-bit ライブラリの依存関係
NightView サーバー・パッケージ(ccur-nview-target.x86_64)はもはや 32-bit ライブラリについては必須ではありません。x86_64 システムで実行中の 32-bit プログラムをデバッグしたい場合、
ccur-nview-i386-target.i386 のインストールが必要となります。通常、CentOS と Fedoraのシステムは必要となる 32-bit ライブラリ・パッケージがすぐに利用可能なネットワーク・リポ
ジトリおよび DVD メディアに入っています。Red Hat については、サポート・パッケージを入手するのにサブスクリプションが必要となる可能性があります。NightStar をインストールする時にネットワーク接続が出来ない場合、要件を満たすためにそれらのパッケージを手動でインストー
ルする必要がある可能性があります。詳細については 14 ページの「クロス・デバッグ」と 15 ページの「NightView パッケージの理解」を参照して下さい。

NightStar RT Installation Guide Version 4.8

11

4.0. NightStar RT 4.8 の新機能バグ修正や小さな改善は別として、リリースされたオリジナルの 4.5 は NightStar アーキテクチャをサポートするファミリーに aarch64(aka ARM64)を追加しました。
NightStar 4.8 では、NightTrace、NightTune、特に NightView に後述の追加機能が含まれています。

4.1. NightView の変更点
4.1.1. 新機能
NightStar RT 4.8 の一部である NightView 7.8 には NightStar 4.5 以降の次の新機能を含みます。
「info memory」コマンドを向上させる Memory Segments パネル

Binary View パネルとエディタ－メモリ検索、サイズ選択、バイト単位でのインライン編集



NVIDIA Jetson TX2 および NVIDIA PX2-Drive 開発キットをサポート

CUDA 9.0, 9.2, 10 をサポート



Latin-1 と UTF-8 エンコードをサポートする Source パネル内のソースコード文字列とコメントのネイティブ文字サポートを追加

Qt 5 QString, QList, QVector, QMap 等の pretty printer を包含

NightView 7.5 では次の機能を追加：
ターゲット・システムのディスク、メモリ、CPU フットプリントを削減ターゲット・システムのパッケージ依存性を削減

x86_64 からの aarch64 システムのデバッグ(クロス・デバッグを含む)

x86_64 システム上での 32-bit x86 アプリケーションの無制限デバッグ

4.1.2. ssh 接続でのリモート・デバッグ
リモート・デバッグ時、NightView はターゲット・システムと接続するのに ssh を使用します。複数の接続が必要で、各リモート・セッションで最大 3 つとなります。そのため、NightView は同じ
ターゲット・システムの認証方法を複数回要求する可能性があります。複数認証要求を回避する
最善の方法は、事前にロードされた認証キーで ssh エージェント(ssh-agent(1)を参照)を使うことです。正しく構成されていれば、NightView はターゲット・システムがエージェント提供のキーを拒否した場合にのみ認証情報を要求します。
もしくは ssh 制御パス転送を使用することです。これはアクティブな ssh 接続を通してポート転送を提供します。最近の一部の Linux ディストリビューションは制御パス転送を使用時にポート転送の設定に問題があるため、現在 NightView は本機能を控えめに使用しています (例えば、ssh-M -o file target などの最初の ssh 接続、それに続く接続マスターを参照する ssh ポート
転送コマンド)。

12NightStar RT Installation Guide Version 4.8

NightView セッションでデバッグ・フラグを設定することにより NightView で本機能を完全に有効にすることが可能です。
set-debug use-control-path-forwarding=1
完全に有効にするとターゲット・システムへの 2 番目または 3 番目の ssh 接続を生成しようとしてハングする可能性があります。これまでの経験でハングせずに実際に接続している場合は正常に動作します。
制御パス転送を完全に無効にするには、次の NightView コマンドを使用して下さい：
set-debug no_ssh_port_forwarding=0
事前にロードされた認証キーで ssh エージェント(ssh-agent(1)を参照)を使用することを推奨します。正しく設定した場合、ポート転送方式の使用時にもかかわらず認証情報を対話形式で提供せざるを得ない状態を回避することが可能となります。

4.1.3. パッケージの再構築
NightView 7.6 は以前のリリースから NightView パッケージの名称を変更しました。古いパッケー
ジ：

ccur-NightViewccur-Nviewpccur-Nview-ptraceccur-NightView-docs-rt

は、NightView 7.6 のインストールまたは更新中に以下の新しいパッケージに置き換えられます：


ccur-nview

ccur-nview-target

ccur-nview-${arch-tag}-support

ccur-nview-docs-rt



ccur-nview-i386-target (場合によって)NOTE
x86_64 システムに既に 32-bit デバッグ機能がある場合、ccur-nview-i386target パッケージを手動でインストールする必要があります。この問題は 4ページの「CentOS および Red Hat 向けネットワーク・インストール」でより詳しく説明しています。

各 NightView インストールにはネイティブ・アーキテクチャのサポート・パッケージが含まれます。これはネイティブ・アーキテクチャ・プログラムのデバッグ、同様に異なるターゲット・シス
テムで実行中の同一アーキテクチャ・プログラムのデバッグを可能にします。後者を「リモート・デバッグ」と呼びます。リモート・デバッグは、ホスト・システムからターゲット・システムへの
ssh 接続が NightView で可能であることを要求とします。
ターゲット・システムのリソースに制約がある状況では、インストールを最小限のセット(通常はNightView パッケージの ccur-nview-target と ccur-nstar-fs)に減らすことが可能です。これらのターゲット側パッケージを DVD の基本ディレクトリにある install-nstar-server コ
マンドを使ってインストールすることが可能です。

NightStar RT Installation Guide Version 4.8

13

./install-nstar-server --nview
リポジトリを使用する場合、ccur-NightView-Server と呼ばれるパッケージをインストール
して下さい：
yum install ccur-NightView-Server「server」もしくは「target」のようなパッケージは 5 つのツール各で利用可能です。
上記のようなコマンドを使ってそれらを個々にインストール、もしくは引数--nview を省略してDVD から全てのターゲット側パッケージをインストールすることが可能です。
./install-nstar-server
または単純に
yum install ccur-NightStar-Server
NOTE
NightStar は通常リモート・デバッグ・セッション用にターゲット・システム上に openssh-server パッケージ(ssh サーバー)をインストールする必要があります。

4.1.4. クロス・デバッグ
異なるアーキテクチャのホストとターゲット・システム間でのリモート・デバッグ・セッションの状態に対してクロス・デバッグという用語を使用します。クロス・デバッグはホスト・システムに
ccur-nview-*-support、32-bit アプリケーションをデバッグしたいターゲットの i386 および
x86_64 システムに ccur-nview-i386-target を追加でインストールする必要があります。
i386 上の NightView は x86_64 と aarch64 ターゲット・システムへのクロス・デバッグをサポートします。クロス・デバッグ機能を利用するには、ホスト・システムは ccur-nview-amd64support または ccur-nview-aarch64-support パッケージのインストールがそれぞれ必要となります。
同様に x86_64 の NightView 7.6 は i386 と aarch64 ターゲット・システムへのクロス・デバッグをサポートします。
これはホストに ccur-nview-i386-support または ccur-nview-aarch64support がそれぞれインストールされている必要があります。i386 デバッグ用に個別の 32-bit シェルが必要となる以前の NightView の制約は撤廃されました。x86_64 プログラムから exec された(exec(2)を参照)i386 プログラム、その逆も同様にデバッグすることが可能です。
IMPORTANT
i386 および x86_64 ターゲット上の 32-bit x86 プログラムをデバッグするには、
ccur-nview-i386-target パッケージがターゲットにインストールされている必要があります。これは NightStar RT 4.8 での新しい必須要件です。
現時点で、aarch64 システム上の NightView 7.6 は i386 または x86_64 ターゲットへのクロス・デバ
ッグはサポートしていません。しかしながら、aarch64 ホストから aarch64 ターゲット・システム
へのリモート・デバッグは引き続き行うことが可能です。
NightView パッケージをよりよく理解するには次項を読んで下さい。

14

NightStar RT Installation Guide Version 4.8

4.1.5. NightVew パッケージの理解NightView は柔軟性と NightView のフットプリントを削減するためにいくつかのパッケージで構成
されています。
これらのパッケージを最大に理解するため、以下にアーキテクチャ単位で羅列します。
i386 (32-bit x86)上の NightView パッケージ
ホスト・システムccur-nview.i386



ccur-nview-i386-support.i386



ccur-nview-docs-rt.i386



ccur-nview-amd64-support.i386 (オプション--ターゲットが x86_64 システムで必要)

ccur-nview-aarch64-support.i386 (オプション--ターゲットが aarch64 システムで必要)

ターゲット


ccur-nview-traget.i386



ccur-nview-i386-target.i386

通常はネイティブでデバッグしたいので、大抵はホストとターゲットは同じシステムになります。
上に示す両方のターゲット・パッケージを全ての i386 ホスト・システムにインストールすることを推奨します。
DVD からインストールする場合、install-nstar スクリプトは自動的に必要となる全てのホストとターゲット・パッケージをシステムにインストールします。
Nuu, yum, apt-get もしくは他の標準的なネットワーク・インストール・ユーティリティを使ってリポジトリからインストールする場合、必要とするオプション・パッケージを明示的にインストールする必要があります。
x86_64 (64-bit x86)上の NightView パッケージ
ホスト・システムccur-nview.x86_64

ccur-nview-amd64-support.x86_64

ccur-nview-docs-rt.i386



ccur-nview-i386-support.i386 (オプション--32-bit プログラムのデバッグで必要)

ccur-nview-aarch64-support.i386 (オプション--ターゲットが aarch64 システムで必要)

ターゲット


ccur-nview-traget.x86_64

ccur-nview-i386-target.i386 (オプション--x86_64 の 32-bit プログラムのデバッグで必要)

NightStar RT Installation Guide Version 4.8

15

通常はネイティブでデバッグしたいので、大抵はホストとターゲットは同じシステムになります。
上に示す両方のターゲット・パッケージを全ての i386 ホスト・システムにインストールすることを推奨します。
DVD からインストールする場合、install-nstar スクリプトは自動的に必要となる全てのホストとターゲット・パッケージをシステムにインストールします。
nuu, yum, apt-get もしくは他の標準的なネットワーク・インストール・ユーティリティを使ってリポジトリからインストールする場合、必要とするオプション・パッケージを明示的にインストールする必要があります。
IMPORTANT
前述を繰り返し行う価値はあります。ネットワーク・リポジトリから更新した
場合、x86_64 システムの既存の 32-bit x86 デバッグ・サポートを失う可能性があります。既存のパッケージの依存関係をそれらはインストールしないので、オプション・パッケージを明示的にインストールする必要があります。一旦インストールしたら、それらのパッケージのその後の更新は NightStar RT に関連するネットワーク更新動作に含まれます。
aarch64 (ARM64)上の NightView パッケージ
ホスト・システムccur-nview.aarch64

ccur-nview-aarch64-support.aarch64

ccur-nview-docs-rt.noarch

ターゲット


ccur-nview-traget.aarch64

4.2. NightTrace の変更点
NightStar RT 4.8 の一部である NightTrace 7.6 は重要なバグ修正を含みます。NightTrace 7.5 で追加された機能は以下の項にも含まれます。

4.2.1. カーネル・タイムライン上のユーザー・イベント
ユーザー・トレース・データがカーネル・トレース・データと共に存在する場合、自動的にカーネル・タイムラインが表示されます。各 CPU のスタンザはその CPU で発生したユーザー・イベン
トに関する行を含みます。将来の更新で本機能を更に制御できるものを提供します。

4.2.2. ハングアップする状況に関するバグ修正
NightTrace は GUI を介して同時に 2 つのデーモンを制御する際に時々発生するハングアップする
状況について修正しました。

16

NightStar RT Installation Guide Version 4.8

4.2.3. カーネル・イベントと同期しないユーザー・トレースポイントに関するバグ修正
大きなデータ・セットで問題が時々発生しました(大きいほどより発生する可能性があります)。
この問題は修正されました。

4.2.4. 多数 CPU に関するサポートの向上
NightTrace はたくさんの CPU を持つシステムのカーネル・タイムライン表示に関するサポートを改善しました。


上にスクロールすることでカーネル・タイムライン・ページ内の全 CPU を見ることが可能です。以前のバージョンでは、スクロール・バー位置が最上部でも 48 個以上の CPU は切り取られていました。

CPU 列の閾値(デフォルト：12)に達すると複数列のカーネル・タイムライン・ページが自動的に生成されます。隣り合った CPU スタンザ列の最大数が 4 に増えました(以前は 2)。
17 ページの「カーネル・タイムライン生成の制御」を参照して下さい。



カーネル・タイムライン上の CPU 配列は、列の最下部を CPU 0 とするボトムアップ・オーダリングが可能です。トップダウン・オーダリングが現在もデフォルトですが、NightTrace の次のフル・リリースではデフォルトでなくなる可能性があります。

NightTrace はカーネル・スタンザの行の高さの微調整設定を提供します。これは NightTraceが適切な行の高さを計算した後に+/-ピクセル調整を適用することが可能です。

4.2.4.1. カーネル・タイムライン生成の制御
Custom Kernel Timeline ダイアログは次に示すように更なる制御をユーザーに提供するよう変更されました。

NightStar RT Installation Guide Version 4.8

17図 2-1. Custom Kernel Timeline ダイアログの生成
Options グルーブに 4 つの新しいオプションが追加されました。これらは新たに生成するカーネ
ル・タイムラインの書式を制御します。
Aggressively Conserve Height
チェックした場合、上方にある相応なピクセルのフォントが切り取られたとしてもNightTrace は行のピクセルの高さを減らすことによって行の高さを積極的に計算します。
垂直方向の空間が重要ではない場合、このチェックは外して下さい。
Number of CPU Columns
NightTrace は隣り合った CPU 列を最大 4 つまでサポートするようになりました。これは表示されるタイムラインの幅を減らしますが、ワイド・モニタでは役に立ちます。
この値は表示する CPU の数と CPU 閾値の設定をベースに NightTrace が最初に設定します。
値を 1 に設定することで常に 1 列のタイムラインを表示することが可能となります。
19 ページの「タイムライン設定の調整」で説明しているように閾値の設定を変更することも可能です。
CPU Display Order
列内の CPU の論理的な配列を制御します。Bottom Up は CPU 0 を列の最下部に置きます
が、従来の NightTrace の方式では CPU 0 を列の最上部に置きます。

18

NightStar RT Installation Guide Version 4.8

最初のチップの CPU に注意を向けたい場合は Bottom Up が望ましい可能性がありますが、最も大きな番号の CPU は画面から外れる恐れがありますので、上へスクロールすることが要求されます。
Row Height Tweak
本設定は行の高さに関連する追加の制御を提供します。NightTrace が選んだ値にピクセルを加算または減算することが可能です。この値は NightTrace が他の全てのことを計算した
後に適用されます。

4.2.4.2. タイムライン設定の調整

図 2-2. Preferences ダイアログのタイムライン部分
Custom Kernel Timeline ダイアログで示されたものとよく似た設定です。これらの設定はデフォ
ルトのカーネル・タイムラインを生成する時に NightTrace に参照されます。その後のセッションで使用するために設定を保存することが可能なのですが、現在のセッションが継続中に設定を変更する、試してみることも可能です。
Preferences ダイアログは File メニューから見つけることが可能です。

4.2.5. カーネル/ユーザー・トレース・データに対する PID 追跡の向上
プロセス ID と一緒にプログラム名称を提供する機能は、トレース・データの可読性を大幅に強化しています。
以前、プロセス名称はトレース・イベントの大半で利用可能でしたが、PID のみを入手したケースが多くありました。そのようなケースでは、コンテキスト・スイッチが発生する前にカーネル・ト
レースの開始時に確認されたプロセス、およびカーネル・トレースが開始された後に起動してカーネル・トレースが停止される前に終了したプロセスを含んでいました。
本リリースで、NightTrace はプロセス名称の確定方法を強化しました。殆ど全てのイベントはプロセス名称だけでなく PID の値も持つようになりました。これはカーネル・イベントが同時に発生した時のユーザー・イベントを含みます。
しかしながら、いくつかの制限はあります。多くのトレース・データが消費されるので、プロセス
名称確定の多くは事後に発生します。
更にファイルからトレース・データを表示するために ntrace を使用すると、プロセス名称のない
いくつかのイベントに直面するはずです。
一方、トレース・イベントをストリーミングする場合、最初はプロセス名称を入手できない可能性がありますが、その後多くのトレース・データが消費されるためにそれらは識別されます。
NightTrace Analysis API も同じような制限があります。完全なプロセス名称の確定はトレースの最後のデータが消費されるまでは完了できません。従って、全てのプロセス名称が確定されるのを保証したい場合、次のようなコードを使用する必要があります：

NightStar RT Installation Guide Version 4.8

19

#include <ntrace_analysis.h>...
tr t = tr_init()...
-- Ensure the end of trace data has been seen
while (tr_next_event(t)!=TR_EOF){}tr_seek(t,0);...
-- Now install your conditions and states and callback-- functions and start processing for real.
...
これは処理に関しては無駄ですが、効果的です。将来のためにより的確な解決策を検討中です。

4.3. NightTune の変更点
4.3.1. 新機能
NightTune 3.8 は CUDA 9.2 と 10.0 をサポートするようになりました。
NightTune の以前のバージョン(3.7)では、次の新機能が追加されました：

x86_64 システムで CUDA 7.5, 8.0, 9.0 をサポート (NightStar RT 4.5-SR4)



PCI デバイス、ポート、ブリッジ、バスのレイアウトをグラフィカルに表示する PCI パネルの追加。パネルでデバイスを選択するだけで IRQ を共有するデバイス(赤で強調表示)を簡単に確認することが可能です。パネルは他の PCI トラフィックによって特定の PCI デバ
イスがどのような影響を及ぼされるかの見通しをユーザーに提供します。

4.3.2. パッケージの名称変更
NightTune 3.7 はいくつかのパッケージの名称を変更し、以前の名称を廃止しました。パッケージ
ccur-ntuneserv と ccur-ntunecommon は、ccur-ntune-server と ccur-ntune-utilsにそれぞれ置き換えられました。
インストール中に古いパッケージは新しいパッケージに置き換えられます。

4.3. NightSim の変更点
グラフィカル・インターフェースへの変更は小規模ですが、言及する価値はあります。


Monitor ページ表示中にスケジューラーが停止した場合に相応しい通知を提供します。外部の影響が原因(例：FBS 上のプロセスの 1 つがデバッガーでブレークポイントにヒット、もしくはスケジューラーが他の系統で停止)でスケジューラーが停止した時にこの表示がユーザーの混乱を回避するのに役立ちます。



Monitor ページの性能監視履歴を消去するために便利なアイコンとキーボード・ショート
カット(Ctrl+D)を追加しました。

20

NightStar RT Installation Guide Version 4.8

4.5. NightProbe の変更点
4.5.1. メンテナンス・リリース
NightStar RT 4.8 の一部である NightProbe 4.4 は以前のバージョンから著しく変更していません。最新のリリースはバグ修正を含んでおり、パッケージの依存関係を調整しました。

NightStar RT Installation Guide Version 4.8

21

5.0. ライセンス・キーの入手
NightStar RT Version 4.8 ソフトウェアは、NightStar RT 4.*の以前のバージョンと同じライセンス・
マネージャーおよびライセンス機能を使用します。既に NightStar RT を使用している場合は、新
しいライセンスを入手する必要はありません。
恒久的なライセンス・キー-

NightStar RT を購入している場合、以下の URL で恒久的なライセンスを入手することが可能です：
http://concurrent-rt/custom-support
お手持ちのサイト ID、email アドレス、製品インストール時の表示されたシステム ID 番号が必要となります。ライセンス・キーをインストールするシステム上で次のコマンドを実行することで、再度システム ID 番号を取得することが可能です。
/usr/bin/nslm_admin --code

NightStar License Manager (NSLM)に関する詳細な情報については、34 ページの「NightStar RT ライ
センシング」を参照して下さい。

5.1. NightStar RT の削除
NightStar RT を削除するには、3 ページの「DVD インストール」で説明しているように DVD または ISO イメージをマウントして root にて次のコマンドを実行して下さい：./remove-nstar

22

NightStar RT Installation Guide Version 4.8

6.0. 資料
以下の表に Concurrent Real-Time から入手可能な NightStar RT 4.8 の資料を示します。
NightStar RT Version 4.8 資料
マニュアル名称

文書番号

NightStar RT Installation Guide (Version 4.8)0898008-4.8NightStar RT Tutorial (Version 4.8)0898009-160

NightProbe User’s Guide (Version 4.4)0898465-120

NightSim User’s Guide (Version 4.5)0898480-080

NightTrace User’s Guide (Version 7.6)0898398-200

NightTune User’s Guide (Version 3.8)0898515-050

NightView User’s Guide (Version 7.7)0898395-400

Data Monitoring Reference Manual

0898493-030

Quick Reference for shmdefine

0898010-060

本 Installation Guide のバージョンの PDF および上記の他の全ての資料が以下の場所で見つけることが可能です：-NightStar RT Installation DVD の documentation ディレクトリ
http://redhawk.concurrent-rt.com/docs
インストール後の/usr/share/doc/NightStar/pdf ディレクトリ

インストール後、これら全ての資料のバージョンの HTML に以下を介してアクセス可能です：-

いずれの NightStar ツールの Help メニュー
/usr/bin/nhelp コマンド
/usr/share/doc/NightStar/html ディレクトリ

NightStar RT Installation Guide Version 4.8

23

7.0. NightStar RT GUI の機能
NightStar RT ツールのグラフィカル・ユーザー・インターフェースにおける一般的な機能の一部は次のとおり：


移動可能およびサイズ変更可能なパネル

タブ化ページ

コンテキスト・メニュー

7.1. 移動可能およびサイズ変更可能なパネル
NightStar RT ツールは、移動可能かつサイズ変更可能なパネルの利用を通してニーズに合うグラフィカル・ユーザー・インターフェース柔軟に構成することが可能です。
例えば、NightTune のデフォルトの構成を考えてみて下さい。NightTune を起動した時、グラフィ
カル・ユーザー・インターフェースは下の図のように見えます：

現在のページのパネルの 1 つを移動するには、移動したいパネルのタイトル・バーを左クリック
して目的の場所にパネルをドラッグして下さい。アプリケーションは移動するパネルの場所に基づきそれに応じて他のパネルのサイズ変更および移動をしながらページ上の空間を生成すること
で応答します。

24

NightStar RT Installation Guide Version 4.8例えば、CPU Usage パネルを Process List パネルの上に移動するには、CPU Usage パネルのタイトル・バー上を左クリックしてそれを左上にドラッグして下さい。NightTune は下の図に示すように Process List パネルの上に空間を生成して応答します：

希望する場所に NightTune が空間を開いた時にマウス・ボタンを離すと NightTune はパネルをその場所に置きます。CPU Usage パネルは NightTune 画面の左上隅に常駐するようになります。

希望する場所に空き空間が現れない場合、メイン・ウィンドウのサイズを拡大し、切り離されたパ
ネルのサイズを縮小、そして置きたい場所の近くに別の切り離されたパネルの端を移動して下さい。

NightStar RT Installation Guide Version 4.8

25

パネル間のセパレーターを左クリックして希望するサイズにドラッグすることでパネルのサイズを変更することが可能です。例えば、Process List パネルの高さを上げる(結果として CPU Usage
パネルの高さを下げる)には、2 つのパネルの間のセパレーターを左クリック(カーソルが両方向矢印になる)してパネルが希望するサイズになるまでセパレーターをドラッグして下さい。

NightStar RT ツールのグラフィカル・ユーザー・インターフェースのもう一つの機能はタブ化パネルの利用となります。タブ化パネルは 2 つ以上のパネルを同じ場所に置くことで GUI の領域を最大限に生かすことが可能です。生成されたタブを利用してパネルを入れ替えることが可能です。
この例では、CPU Shielding and Building パネルと CPU Usage パネルで同じ空間を共有するように NightTune を構成します。CPU Shielding and Building パネルのタイトル・バー上を左クリック
して下図に示すように CPU Usage パネルの下部に「CPU Usage」の名前が付いたタブが見えるよ
うになるまで CPU Usage パネルの真下にドラッグして下さい。

26

NightStar RT Installation Guide Version 4.8

マウス・ボタンを離すと NightTune は CPU Shielding and Building パネルを CPU Usage パネルと同じ場所に配置して、その 2 つを交互に切り替えることが可能になる 2 つのタブを真下に生成します。

7.2. タブ化ページ
NightStar RT ツールはタブ化ページの利用を通して各アプリケーション内で複数のデータ表示とそのデータを操作するメカニズムを保持することが可能です。デフォルトで、1 つのページのみがツール起動時に表示されます。
前項の NightTune の例では、異なる一連のデータを表示する他のページを生成することが可能です。例えば、ディスク・アクティビティ、割り込みアクティビティ、メモリ・アクティビティを監視したいけど元のページを乱雑にしたくない場合があるとします。

NightStar RT Installation Guide Version 4.8

27

View メニューから Add Page を選択して下さい。NightTune は 2 つのタブ化ページを生成します。
元のページは最初のタブの下に配置され、新しい空のページが 2 番目のタブの下に現れます。

希望する NightTune パネルを追加するには、Monitor メニュー項目をクリックして下さい。選択するパネルのメニューが現れます。Disk Activity メニュー項目を選択した後にサブメニューから Bargraph pane を選択して下さい。棒グラフ形式で情報を表示する Disk Activity パネルが新しいページに追加されます。

28

NightStar RT Installation Guide Version 4.8

Interrupt Activity サブメニューから Bar graph pane を選択して下さい。Interrupt Activity パネルがページに追加されます。

Memory: Physical サブメニューから Bar graph pane を選択して下さい。Memory Physical パネル
がページに追加されます。

新しいページに全て棒グラフ形式情報を表示する Disk Activity, Interrupt Activity, Memory Physical
パネルが収容されています。
「Page 1」の名前が付いたタブをクリックすることで最初のページに復帰し、「Page 2」の名前が付いたタブをクリックすることで新しいページに戻ることが可能です。

7.3. コンテキスト・メニュー
NightStar RT ツールはコンテキスト・メニューの広範囲に及ぶ利用を提供します。NightStar RT ツールの任意の場所で右クリックするとツール内のマウスの場所に関連する項目を含んだメニュー
をユーザーに提供します。

NightStar RT Installation Guide Version 4.8

29

NightTune の例を使ってこの機能をデモします。例えば、27 ページの「タブ化ページ」で生成した新しページをより意味のある名称にしたいとします。
「Page 2」の名前が付いたタブを→クリックして下さい。メニュー項目 Delete Current Page,
Rename Current Page..., Move Current Page....を持つコンテキスト・メニューが表示されます。

コンテキスト・メニューから Rename Current Page...を選択して下さい。Rename Page ダイアロ
グが表示されます。

Page Name を「&Activity」に変更して下さい。
NOTE
固有文字の前のアンパサンド(&)はこのページのアクセラレーターを生成します。ユーザーは Alt キーを押しながらそのページのアクセラレーターを押すことで特定のページに切り替えることが可能です。アクセラレーターは下線がタブ上に表示されます。

30

NightStar RT Installation Guide Version 4.8

元のページに切り替えるには Alt-1 を押下して下さい。Activity ページに戻るには Alt-A を押下して下さい。

NightStar RT Installation Guide Version 4.8

31

8.0. NightStar RT の概要
NightStar RT ツールの各々の基本的な機能を次項で説明します。
NightProbeNightSimNightTrace

NightTuneNightView



Datamon

Shmdefine

8.1. NightProbe
NightProbe データ・モニターの機能は次を含みます：-

プログラム・データを非干渉的にサンプリングおよび記録
同期および非同期でデータ・キャプチャー
柔軟なデータ表示機能
サンプリング、記録、再生のための API
所得済みデータにタイム・スタンプ

NightProbe はプログラム、共有メモリ・セグメント、メモリ・マップ・ファイルを含むアプリケー
ション・リソースからデータの値を個別にモニター、修正、記録するためのツールです。NightProbeはデバッグ、解析、試作、故障注入のための開発環境、もしくはプログラムの入出力用 GUI 制御
パネルを必要とする本番環境で使用することが可能です。
NightProbe はターゲット・リソースのアドレス空間を独自にマッピングする非干渉型の技術を利用しています。その後の NightProbe によるメモリの直接読み書きは、割り込みもしくはリソースへの影響なしでデータのサンプリングおよび修正を可能にします。
同期および非同期でのロギング
NightProbe は簡単な API を介してデータの同期ロギングを行うことが可能です。非同期ロギング
はオンデマンド・サンプリングまたは定周期クロック・レートを用いて行うことが可能です。
NightProbe は NightTrace イベント・アナライザーによる同時解析用にトレースポイントを使用するデータ項目のロギングを提供します。アプリケーションとオペレーティング・システムの挙動が同期した図を取得するため、サンプリングしたデータはカーネル・データと付加的なユーザー・
トレース・データを結合することが可能です。NightProbe はデータをディスク・ファイルに記録、または NightTrace ツールに直接データを提供することが可能です。
対話形式サンプリングおよび修正
NightProbe はオンデマンドまたはユーザー指定の更新レートでデータを定周期にサンプリングするためにフレキシブルなスプレッドシート表示を提供します。ユーザー・データの直接編集はデータ項目の新しい値をスプレッドシートに入力することで達成されます。NightProbe は個々のデータ項目に対してユーザー定義データ閾値の違反の色付け通知を提供します。

32

NightStar RT Installation Guide Version 4.8

NightProbe は解析、記録、特別な表示用にサンプリングしたデータにタイムスタンプを付け、NightProbe API で書かれたユーザー・アプリケーションに渡すことが可能です。
NightProbe は静的に決定されたアドレスと形を持つ C/C++および Fortran のスカラー型および構造化データ型をサポートします。データ項目を参照、特にモニターするデータ項目の名称を入力することを許可するユーザー・プログラムのシンボル・テーブルおよびデバッグ情報を NightProbe
はスキャンします。シンボル・テーブルおよびデバッグ情報を含むアプリケーションは NightProbe
で利用することが可能です。アプリケーション・ソース・コードの変更は必要ありません。

8.2. NightSim
NightSim アプリケーション・スケジューラーの機能は次を含みます：-

複数プロセスを周期的に実行
フレーム・オーバーラン通知と制御によるメジャーおよびマイナー・サイクル
分散システム向け単一スケジューリング制御
シミュレーション用アプリケーションに最適

NightSim は予測可能で周期的なプロセス実行を必要とするタイム・クリティカルなアプリケーシ
ョンをスケジュールおよびモニターするためのツールです。シミュレーション用アプリケーションに最適な NightSim は開発者が動的に複数の実行、連動するプロセス、優先度、スケジューリン
グ・ポリシー、CPU 割り当てを調整することが可能です。NightSim を利用すると、一周期の実行
時間、最小、最大を表示してアプリケーションの性能をモニターすること、およびフレーム・オー
バーラン発生時に処置することが可能です。
NightSim はオペレーティング・システムの Frequency-Based Scheduler (FBS)へのグラフィカル・イ
ンターフェースを提供します。これはプロセスの周期的なパターンでの実行を有効にする高分解能タスク・スケジューラーです。NightSim ではローカルもしくは分散システムで実行するプロセ
スのグループを簡単に構成、および生じた構成を再利用するために保存することが可能です。性能モニターは FBS で実行中のプロセスに関する CPU 使用率データを収集します。
NightSim はシミュレーション用アプリケーションの開発、デバッグ、生産段階を通して使用することが可能です。シミュレーション構成はスクリプトとして保存することが可能で、その後シミュレーションを繰り返して実行することが可能です。NightSim スクリプトは GUI 処理が禁止されているもしくは望ましくないターゲット環境で便利です。更に構成ファイルおよびスクリプトは任意のバージョン管理システムに置くことが可能です。
分散スケジューリングの同期
対象型マルチプロセッサーに加え、NigthSim は Concurrent の Real-Time Clock and Interrupt Module(RCIM)を介して接続された複数のシステムをサポートします。NightSim は分散スケジューリング
の生成を単純化し、複数のターゲット・システムに渡って分散された個々のスケジューラーの同期タイミング(開始/停止/再開)を管理するための単一制御を提供します。
NightSim はリアルタイム・クロックや分散割り込みソースなどのハードウェアへのインターフェースを扱います。ユーザーはスケジューリング操作に関して土台となるオペレーティング・シス
テムとインターフェースをとる必要はありません。

NightStar RT Installation Guide Version 4.8

33

豊富な性能統計値
NightSim は、スケジュールされたプロセスごとに最大 11 個の異なる性能関連統計値、および最大15 個の追加パラメータを監視します。最小および最大サイクル時間などの統計値を利用して、複数プロセッサー間で負荷を均衡させることによりユーザーが CPU 使用率を最適化することが可能です。NightSim の表示はカスタマイズ可能で、ユーザーが特定の統計値と監視するプロセスや重み付けされた表示の並び替え基準を選択することが可能です。

8.3. NightTrace
NightTrace イベント・アナライザーの機能は次を含みます：-

システム・アプリケーション活動状況のグラフィカルまたはテキスト表示を同期
単一またはマルチ・スレッド・アプリケーションでユーザー定義イベントのロギングシステム・コール、割り込み、例外を含むカーネル・イベントのロギング
データ解析 API
ユーザー・コードの自動計測

NightTrace はアプリケーション、Linux オペレーティング・システムの挙動やそれらの間の相互関係を動的に表示および解析するためのツールです。NightTrace は複数の CPU またはシステムで同時に実行中の複数のプロセスからイベントを記録することが可能です。NightTrace はシステム全
体の同期ビューを示すためにユーザー定義アプリケーション・イベントとカーネル・イベントを結合することも可能です。その後に NightTrace は記録された全てのログのグラフィカルな時間ベース・ビューを生成します。NightTrace ではユーザーがイベントのズーム、検索、フィルタリング、
要約、解析することが可能です。トレース分析はライブもしくは実行後に行うことが可能です。
NightTrace は特にタイム・クリティカル・アプリケーションの最も厳しい要求に合うように設計されました。同期された高速ハードウェア・クロックとカーネル・フリー・プリミティブを使ってNightTrace のトレースポイントは最小限のオーバーヘッドで記録されます。トレースポイントは
デバイス・ドライバー、割り込みレベル・コード、任意のユーザー・アプリケーションに挿入することが可能です。トレースポイントはトレース・データを収集していない場合であっても製品品
質アプリケーションの中に残しておくことが可能です。
NightTrace の Illumination ツール(nlight)は自動的に関数ごとの入り口と出口にトレースポイント(ユーザーはどの関数を装飾するのかを制御します)が付いたユーザー・コード(実行可能イメージまたは.o ファイル)を計測します。これは実行可能イメージまたは.o ファイルを完全に変更することなく行います。NightTrace は全ての引数の値や戻り値を含む関数呼び出しの解説を提供します。
グラフィックと対話形式
NightTrace は、イベントの相対タイミングを明らかに示しアプリケーションとオペレーティング・
システムの活動状況の全体像を提供するため、タイムライン・グラフまたはイベント・ログと一緒に要求されたイベントと状態をグラフィカルに表示します。NightTrace は特定のイベントを探し、正確なタイミング観測のために細かい精度の等級でそれらを拡大することが可能です。NightTraceのグラフィカル表示は、カスタマイズして表示するために完全にユーザーで構成可能です。構成
は保存して後で呼び出すことが可能で、複数の構成を同時に表示されることも可能です。

34

NightStar RT Installation Guide Version 4.8

カーネル・トレースのサポート
割り込み、例外、コンテキスト・スイッチ、Linux システム・コール、デバイス・アクセスなどのシステム・イベント情報とユーザー・アプリケーションからのイベント情報を結合することで、NightTrace はアプリケーション実行中の任意のポイントでカーネルとユーザー・アプリケーショ
ン間の明確な相互作用の状況を提供します。
NightTrace は、頻度、発生時間、持続時間、間隔、最小/最大時間を含むイベントや状態に関する統計性能データを提供します。ユーザーは該当するプロセス、スレッド、CPU、システム、イベント
内容を指定することで状態定義を生成し、イベントを分類することが可能です。条件付きトレー
スは C 言語式の構文を使用して示すことが可能です。オペレーティング・システムとアプリケー
ションの性能および動作パターンの見識を与えるために表示をカスタマイズすることが可能です。
NightTrace はアプリケーションやシステムの活動状況をモニターまたは解析する特別なアプリケーションを簡単に生成することを可能とする解析 API を使ってソース・コードを生成します。

8.4. NightTune
NightTune システムおよびアプリケーション・チューナーの機能は次を含みます：-

システムおよびアプリケーションの性能を動的に表示
CPU 使用状況、メモリ・ページング、ネットワーク操作の監視
プロセス、優先度、ポリシー、割り込みの対話形式制御
プロセス、スレッド、割り込みを動的に CPU アフィニティを制御

NightTune はアプリケーションやシステムの性能をモニターおよびチューニングするためのシステム機能にグラフィカル・インターフェースを提供します。ユーザーはユーザー・アプリケーショ
ンの優先度、スケジュール・ポリシー、CPU 割り当て、CPU 使用状況をモニターすることが可能です。また、NightTune はシステムの CPU 使用状況、コンテキスト・スイッチ、割り込み、メモ
リ・ページング、ネットワークの動作状況もモニターします。
NightTune はプロセスを個別に、またはユーザーもしくは CPU で決定されたグループをモニターすることが可能です。また NightTune はプロセス内の個々のスレッドやタスクに関する情報も表示します。ユーザーが表示をカスタマイズすることが可能な情報を表示するのに複数のフレーム
およびウィンドウが使用されます。
アプリケーションのチューニング
NightTune ではポップアップ・ダイアログやドラッグ＆ドロップ操作を使って個々のスレッド、タスク、プロセス、プロセス・グループのプロセス属性をユーザーが変更することが可能です。例えば、プロセス・アイコンを CPU アイコンにドラッグするとプロセスはそのプロセッサーにバインドします。その後ユーザーはグラフと文字の両方でチューニングの試みの結果を即座に確認します。
システムのチューニング
NightTune ではポップアップ・ダイアログやドラッグ＆ドロップ操作を使って割り込みの CPU 割
り当てをユーザーが変更することが可能です。NightTune はオプションで、NightTune のセッショ
ン中の全てのアプリケーションおよび実行されたシステム・チューニングのテキスト・ログを提供します。

NightStar RT Installation Guide Version 4.8

35

8.5. NightView
NightView ソース・レベル・デバッガーの機能は次を含みます：-

単一インターフェースを介してマルチ・システム、マルチ・プロセッサー、マルチ・プロ
セス、マルチ・スレッドをデバッグ-

ブレークポイント、モニターポイント、ウォッチポイントを含む活線パッチ
アプリケーション速度に適用
動的メモリ「ヒープ」のデバッグ
実行中の変数の変更および表示

NightView ではユーザーが複数のタイム・クリティカル・プロセスを同時にデバッグすることが可能です。NightView の使用で、プログラマーはプログラムを停止または割り込みせずにプログラムを変更、実行、修正またはデータを表示することが可能です。ヒットおよび無視カウントなどのイ
ベントポイント条件はアプリケーション内に直接パッチが適用され、完全なアプリケーション速度で実行することが可能です。NightView はアプリケーション・タイミングに悪影響を与えることなくきめ細やかな制御を提供します。
NightView のモニタポイントはプロセスを止めることなくユーザーが選択した場所で式を表示することが可能ですので、提供するデータはアプリケーションのアルゴリズムに同期して表示します。ウォッチポイントはユーザー指定の変数またはメモリ位置が選択的に読まれたもしくは変更
された場合にアプリケーションを停止するハードウェア・アドレス・トラップ機能を利用します
言語依存のデバッグ
NightView は C/C++、Fortran の任意の組み合わせで書かれた複数のアプリケーションのデバッグをサポートします。各プログラム内の全ての変数と式は適切な言語で参照されます。またNightView は NightTrace イベント・アナライザーと統合されています。NightView は NightTrace による同時もしくは実行後の解析用にユーザー指定の位置にトレースポイントを挿入することが可能です。
Gnu デバッガーよりも更に強力
NightView は gnu デバッガー(gdb)では利用できない多くの機能を用意しています。NightView が優位な点は、ユーザーが単一セッションから複数のプロセスおよびスクリプトから開始されたプ
ロセスをデバッグする機能を含んでいます。NightView では、パッチが当てられたコードを完全な速度で実行します。プロセスが実行中、活線パッチは変数の変更またはイベントポイントの追加が可能です。モニタポイントは式やスタック変数の表示が可能で、デバッガーを迂回してシグナ
ルをプロセスに直接送信することが可能です。
動的なメモリ・デバッグ
NightView はコードの再コンパイルなしでデバッグ処理中にメモリの問題を見つけて取り除く手
助けをする対話形式メモリ・デバッガーを含んでいます。NightView はヒープ・メモリのリークを監視し、アプリケーションが使用するメモリの量をモニターし、どのようにメモリを割り当てて解放したのかを追跡します。このメモリ・デバッガーを有効にすると、NightView はヒープの割当てと解放をリアルタイムでユーザーに追跡させるので、実行後の解析よりも更に効率よくデバッグすることが可能です。プログラマーは実行を停止し、問題を確認し、パッチを試験して、そしてデバッグを続行することが可能です。NightView は二重解放、未解決ポインター、ヒープ領域の超過、その他一般的なユーザー・アプリケーションのバグを検出することが可能です。

36

NightStar RT Installation Guide Version 4.8

8.6. Datamon
Datamon は単独で実行中のプロセスをリアルタイムでユーザーが変数を監視、記録、修正することが可能なユーザー・アプリケーション・インターフェースです。これは適格な変数を調べるためにプログラム・ファイルをスキャンし、型名、アトミック型、ビット・サイズ、ビット・オフセッ
ト、形状、コンポーネント・メンバー、アドレスを含む属性に関する詳細な情報を取得する機能を含んでいます。Datamon は変数のアクセスおよび変更について非干渉の手法を利用しています。

8.7. Shmdefine
Shmdefine は独立するプログラム間でのデータの共有を支援します。コモン・ブロックの共有はFortran プログラム間で最も便利ではありますが、それは Fortran、C 言語、Ada のプログラムで IPC
共有メモリ・サービスを効果的に利用するのに役立ちます。

NightStar RT Installation Guide Version 4.8

37

9.0. はじめにNightStar RT Tutorial を NightStar RT 製品の入門書として強く推奨します。本チュートリアルは、NightStar RT ツールの全てを豊富な機能を実演する様々なシナリオを具体的にして 1 つにまとめた実例に統合しています。
チュートリアルは NightStar RT Installation DVD の documentation ディレクトリおよびインスト
ール後の/usr/share/doc/NightStar/pdf に PDF フォーマットで存在します。
チュートリアルのオンライン・バージョンは、デスクトップにインストールされた NightStar RT
Documentation アイコンをダブルクリックして Bookshelf から NightStar RT Tutorial を選択することでアクセスすることが可能です。
加えて、チュートリアルは任意の NightStar RT ツールの Help メニューから起動、または次のコマ
ンドをコマンド・ラインから実行することで開始することが可能です：
nhelp

9.1. ケーパビリティ
NightStar RT の殆どの操作で特別な特権を必要としません。しかしながら、root ユーザーとして実行することなく NightStar RT の機能を最大限に利用したい場合、追加の構成手順が必要となります。
Linux は、ある特権を持つ操作を実行するための権限を特権のない別のユーザーに付与する手段を提供します。Pluggable Authentication Module(pam_capability(8)を参照)は様々な作業で必要になる一連のケーパビリティ(ロールと呼ぶ)を管理するために使用されます。
以下の表は、NightStar RT の使用で推奨されるケーパビリティを持つ非 root ユーザーに付与される利点を示します：
ケーパビリティとその効果
ケーパビリティ利点
ユーザー・トレース・イベントのバッファに関連するメモリにクリ

CAP_IPC_LOCKCAP_SYS_RAWIO

ティカル・ページをロックすることを NightTrace に許可します。
PCI デバイスや/dev/mem などのメモリ・マップされたシステム・
ファイルへアクセスすることを NightProbe に許可します
スケジューリング・ポリシー、スケジューリング優先度、プロセスの CPU アフィニティを設定することを NightStar RT ツールに許可します。

CAP_SYS_NICE
割り込みの CPU アフィニティを設定、およびプロセス、割り込み、
ハ イ パ ー ス レ ッ ド の 干 渉 か ら CPU を シ ー ル ド す る こ と をNightTune に許可します。
RedHawk が イ ン ス ト ー ル さ れ た シ ス テ ム で は CAP_SYS_NICE, CAP_SYS_RAW_IO,
CAP_IPC_LOCK ケーパビリティを提供する nstaruser ロールが既に構成されているはずです。

38

NightStar RT Installation Guide Version 4.8

/etc/security/capability.conf を編集して(まだ定義されていない場合は)nstaruser ロールを「ROLES」セクションに定義して下さい：role nstaruser CAP_SYS_NICE CAP_IPC_LOCK CAP_SYS_RAWIO
更に、ターゲット・システムの各 NightStar RT ユーザーごとにファイルの最後に次の行を追加して下さい：
user username nstaruser
username はユーザーのログイン名称です。
ユーザーが nstaruser ロールで定義されていないケーパビリティが必要な場合、nstaruser を含む新しいロールと必要になる追加のケーパビリティを書き加えて、上述の nstaruser の代わりに新しいロール名称を指定して下さい。
/etc/security/capability.conf にログイン名称を登録することに加えて、/etc/pam.d ディレクトリ下の特定のファイルについても有効にするためのケーパビリティを許可する構成にする必要があります。
WARNING
本項の残りで/etc/pam.d 内のファイルを編集するように求められます。対応する共有ライブラリがシステムに実際に存在することを確信していない場
合はこれらの変更を行わないで下さい。さもないと再びログインすることが出来ない可能性があります。
これらのファイルの編集で間違いがあった場合に簡単に回復できるようにこれらの操作を行う場合はターミナル・セッションを root として実行したままにすることは良い考えです。例えば root でシステムに ssh でログインし、ファイルを編集して sshd デーモンを再開した場合、現在の root セッションは失われ、再度ログインすることが出来なくなる可能性がありますので注意して下さい。
ケーパビリティを有効にするには、/etc/pam.d 内の選択したファイルの最後に以下の行を(存在しない場合は)追加して下さい：
session required pam_capability.soまたはsession required ${root_lib_path}/security/capability.soLinux のより新しいバージョンにおいては、ライブラリへのフル・パスを指定する必要があります。
そ の 場 合 は 、 ${root_lib_path} が /lib64 、 /lib64/${arch}-linux-gnu も し く は/lib/${arch}-linux-gnu となる可能性があります。
次のコマンドの 1 つを通してファイルの実際の場所を確認して下さい：rpm -q --list ccur-pam-capability | grep pam_capability.sodpkg -L ccur-pam-capability | grep pam_capability.soNightStar RT Installation Guide Version 4.8

39変更するファイルのリストは、システムにアクセスするために使用される方法のリストに依存しています。以下の表は、システムへのアクセスに使用される最も一般的なサービスについてユー
ザーにケーパビリティを許可する推奨の構成を示しています。
推奨する/etc/pam.d 構成/etc/pam.d ファイル

影響するサービス

コメント
より新しいシステム(例：Ubuntu 16.04)で、本ファ殆ど全てcommon-session

イルは殆どのサービスに含まれています。その場
合、(他のテーブルは無視して)単にこのファイルにエントリを追加して下さい。

telnetrloginremotersh (コマンド無しで使用時)
殆ど全てのログイン・メカ
password-auth

ニズム
local login (例：コンソール)
telnet *login

rlogin *rsh * (コマンド無しで使用時)
rsh (コマンド使用時)

rsh

お手持ちのシステムに依存しますので、remote フ
ァイルが存在しない可能性があります。remote ファイルは生成せず、存在する場合にのみ編集して下さい。
本ファイルは最近の OS ディストリビューション
に存在します。これが存在する場合、本ファイルに
前述の内容を追加して下さい。
* Linux の一部のバージョンでは、remote ファイ
ルの存在は login ファイルの範囲をローカル・ロ
グインに制限します。このような状況で、login と共にここに示されている他のサービスは remote
構成ファイルのみに影響します。
例： rsh system_name a.out/etc/ssh/sshd_config も同様に編集して次の

ssh

sshd

行が存在することを確認する必要があります：
UsePrivilegeSeparation no

gdm

gnome セッション

lightdm

Mate セッション

kde

kde セッション/etc/pam.d/sshd または/etc/ssh/sshd_config を編集する場合、変更の効果を得るため、基本的な OS のバージョンにもよりますが次のコマンドのいずれかを使って sshd サービスを再起動する必要があります：
/sbin/service sshd restart/sbin/systemctl restart sshd

上記の変更の効果を得るには、ユーザーはログオフしてターゲット・システムに再度ログインする必要があります。
許可したケーパビリティを確認するには、次のコマンドを実行して下さい：
getpcaps $$このコマンドからの出力は、現在割り当てられているロールがリストアップされます。

40

NightStar RT Installation Guide Version 4.8

このコマンドが利用できない場合、次のコマンドを実行すると CapPrm と CapEff で始まる行に非ゼロの数値を確認できるはずです。表示されたこれらの 16 進数は個々のケーパビリティに関する
ビット・マスクです。
cat /proc/self/status | egrep -e “^Cap”
CapInh: 0000000000000000
CapPrm: 0000000000824000
CapEff: 0000000000824000

9.1.1. NightView にプロセスへのアタッチを許可
デフォルトで最近の一部の Linux ディストリビューションは、例えデバッグしたいプロセスと同
じ UID や GID でデバッガーを起動したとしても実行中のプロセスにデバッガーをアタッチさせな
いように制限しています。
制限を制御する変数の値を変更する sysctl コマンドを使用してこの制限を取り除くことが可能です。制限を取り除くには、シェルから次のコマンドを入力してください：sysctl -w kernel.yama.ptrace_scope=0
このコマンドを実行して、ログアウトし再度ログインしたら制限が解除されます。しかしながら、設定は次のリブートまでのみの効果となります。システムを起動する度に適用されるようにするには上記コマンドを/etc/rc.local(時には/etc/rc.d/rc.local)の中に置いても構いません。

NightStar RT Installation Guide Version 4.8

41

10.0. NightStar RT のライセンシング
NightStar RT は NightStar RT ツールへのアクセスを制御するのに NightStar License Manager (NSLM)
を使用します。
ライセンスのインストールは Concurrent Real-Time が提供するライセンス・キーが必要です。
NightStar RT ツールはライセンス・サーバー(44 ページの「ライセンス・サーバー」を参照)からラ
イセンスを要求(43 ページの「ライセンスの要求」を参照)します。
購入された製品のオプション次第ですが、2 つのライセンス・モード(固定とフローティング)が利用可能です。固定ライセンスはローカル・システムから NightStar RT ユーザーに供給されることのみが可能です。フローティング・ライセンスはネットワーク上の任意のシステムで任意のNightStar RT ユーザーに供給することが可能です。
ツールはシステムごと、同時ユーザーごとに許可されます。同じシステムから同じユーザーによる一部または全ての NightStar RT ツールの使用は、自動的に 1 つのライセンスを共有します。この意図は、n 人の開発者が n 個のライセンスを必要とする間に同時に全てのツールを完全に利用することを可能にするためです。ツールはローカル・システムで起動しますがリモート・システムと対話するリモート・モードでツールが動作する場合、ライセンスはホスト・システムからのみ必要となります。
ローカル・システムにインストールされた全てのライセンス、現在の使用状況、デモ・ライセンス
に関する有効期限をリストアップするライセンス・リポートを取得することが可能です(44 ページの「ライセンス・リポート」を参照)。
デフォルトのオペレーティング・システムの構成は、フローティング・ライセンスに干渉する場合のある厳格なファイアウォールを含む可能性があります。構成などの対応に関する情報については 44 ページの「フローティング・ライセンス向けファイアウォール構成」を参照して下さい。

10.1. ライセンス・キー
ライセンス・モード(固定またはフローティング)に応じてローカルまたはリモート・クライアントのどちらかに供給するために特定のシステムにライセンスが許可されます。
ライセンスのインストールは Concurrent Real-Time が提供するライセンス・キーが必要です。ライセンス・キーを取得するには、システム識別コードを提供する必要があります。システム識別コー
ドは nslm_admin ユーティリティにより生成されます：
nslm_admin --code
IMPROTANT
システム識別コードはシステム構成に依存します(詳細は 43 ページの「ライセンス用ネットワーク・デバイスの選択」を参照)。システムに Linux またはNightStar RT を再インストールもしくはネットワーク・デバイスの交換は新しいライセンス・キーの取得が必要となる可能性があります。
ライセンス・キーを取得するには、次の URL にアクセスし、「Activation」下にある All Revisions をクリックして下さい：

https://www.concurrent-rt.com/customer-support/
システム識別コードを含む要求される情報を提供して下さい。ライセンス・キーがすぐにメールで送信されます。

42

NightStar RT Installation Guide Version 4.8

次のコマンドを使ってライセンス・キーをインストールして下さい：
nslm_admin --install=xxxx-xxxx-xxxx-xxxx-xxxx
xxxx-xxxx-xxxx-xxxx-xxxx はライセンス承認メールに含まれているキーとなります。
必要な情報がすぐに利用できないもしくは特別な事情がある場合、コンカレント日本に連絡して下さい(詳細については 53 ページの「ソフトウェア・サポート」を参照して下さい)。

10.1.1. ライセンス用ネットワーク・デバイスの選択
デフォルトで、nslm はシステムに問合せて利用可能な全てのネットワーク・デバイスを調査します。nslm は実際のネットワーク・デバイスを仮想デバイスを超えて選択しますが、これは後者が常に利用できないことがあるためです。
次のコマンドを使って nslm が使用可能なネットワーク・デバイスのリストを参照することが可能です：
nslm_admin --devices
デフォルトで、nslm はリスト内の最初のデバイスを選定します。
ライセンス・キーに関連付ける特定のデバイスを指定したい場合、コードを取得する際に-device オプションを追加して下さい：
nslm_admin --device=eth2 --code

10.2. ライセンスの要求
デフォルトで、NightStar RT ツールはローカル・システムからライセンスを要求します。ライセン
スが利用できない場合、システムのホスト名の IP アドレスに関連付けられたローカル・サブネッ
トにライセンス要求をブロードキャストします。
/etc/nslm.config 構成ファイルを使ってシステム全体のライセンス要求を制御することが可能です。
デフォルトで/etc/nslm.config ファイルは次のような行を含んでいます：:server @default
引数@default はコロン区切りのシステム名、システム IP アドレス、ブロードキャスト IP アド
レスに変更することが可能です。ライセンスは、ライセンスが許可されるもしくはリスト内の全てのエントリーが使い尽くされるまでリストにある各構成要素から要求されます。
例えば、次の設定はローカル・システムのみを指定することでライセンスのブロードキャスト要
求を止めます：:server localhost
次の設定は server1 からライセンスを要求し、ライセンスが供給されない場合は次に server2、その後はブロードキャスト要求をします：:server server1:server2:10.134.30.0
同様に NSLM_SERVER 環境変数を使ってツールの個々の起動でライセンス要求を制御することが可能です。設定した場合、上述のとおりコロン区切りのシステム名、システム IP アドレス、ブロー ド キ ャ ス ト IP ア ド レ ス を 含 む 必 要 が あ り ま す 。 NSLM_SERVER 環 境 変 数 の 使 用 は/etc/nslm.config で定義された設定よりも優先します。

NightStar RT Installation Guide Version 4.8

4310.3. ライセンス・サーバー
NSLM ライセンス・サーバーは NightStar RT インストール時に自動的にインストールされ実行するように構成されます。
nslm サービスは自動的にランレベル 2, 3, 4, 5 で有効になります。OS のバージョン次第ですが、次のコマンドのいずれかを実行するとこれらの設定を確認することが可能です。
/usr/bin/systemctl status nslm

/sbin/chkconfig --list nslm

滅多にはありませんが、次のコマンドのいずれかでライセンス・サーバーを再起動する必要がある可能性があります：
/usr/bin/systemctl restart nslm

/sbin/service nslm restart

詳細については nslm(1)を参照して下さい。

10.4. ライセンス・リポート
ライセンス・リポートは nslm_admin ユーティリティを使って取得することが可能です。
nslm_admin --list
ローカル・システムにインストールされた全てのライセンス、現在の使用状況、(デモ・ライセン
スの)有効期限をリストアップします。--verbose オプションの使用でライセンスが現在許可されている個々のクライアントもリストアップします。
--broadcast オプションの追加でシステムのホスト名に関連付けられたローカル・サブネット
上でブロードキャスト要求に応答する全てのサーバーに関するこの情報をリストアップします。
オプションや詳細については nslm_admin(1)を参照して下さい。

10.5. フローティング・ライセンス向けファイアウォール構成
デフォルトの Red Hat 構成はフローティング・ライセンスに干渉する厳格なファイアウォールを含みます。
このようなシステムがライセンスの供給に使用される場合、サーバー要求を通過させるために少なくとも 1 つのポートがそのファイアウォールでオープンされる必要があります。詳細については 44 ページの「フローティング・ライセンス向けファイアウォール構成」を参照して下さい。
同様にそのようなシステムが NightStar RT ツールのホストである場合、ライセンス・サーバーからライセンスを受信できるように少なくとも 1 つのポートがそのファイアウォールでオープンされる必要があります。これが行われない場合、ツールはフローティング・ライセンスを要求するツールは受信できず正しく機能しません。詳細については 46 ページの「ファイアウォールの環境でNightStar RT ツールを実行」を参照して下さい。

10.5.1. ファイアウォールの環境でライセンスを供給
以下は NSLM ライセンス・サーバーが実行中のシステムでファイアウォールが構成されている場
合にそれがフローティング・ライセンスを供給可能にするいくつかのアプローチです：

44

NightStar RT Installation Guide Version 4.8



システムのファイアウォールを完全に無効

特定のシステムからの NSLM ライセンス要求を許可

特定のサブネット上の任意のシステムからの NSLM ライセンス要求を許可

任意のシステムからの NSLM ライセンス要求を許可
NOTE
ファイアウォール構成を変更するには root である必要があります。
これらの指示は RHEL5 の iptables のバージョンが対象です。新しいバージョンでは異なる構成手法、異なるファイアウォール・スキーマに置き換えられている可能性があります。いずれにしても、下に表示された情報は概念を理解するのに役立つ可能性があります。

ファイアウォールを完全に無効にするには次を実行して下さい：
service iptables stop
続いて/etc/sysconfig/iptables ファイルを削除して下さい：
rm -f /etc/sysconfig/iptables
このオプションは見た目よりも危険ではありません。大抵は、ネットワーク全体がファイアウォ
ールで保護されているので、ネットワーク上の個々のシステムで更に保護する必要はありません。
不安な場合、ネットワーク管理者に確認して下さい。
残りのケースにおいて、簡単な変更を/etc/sysconfig/iptables ファイルに行う必要があります。デフォルトで、ファイルは次のような行を含んでいるはずです：-A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited

特定のシステムからの NSLM ライセンス要求を許可するには、REJECT 行の前に次の行を挿入して下さい：-A RH-Firewall-1-INPUT -p udp -m udp -s system --dport 25517 -j ACCEPT-A RH-Firewall-1-INPUT -p tcp -m tcp -s system --dport 25517 -j ACCEPT

これらの行は複数のシステムで繰り返すことが可能です。
特定のサブネット上の任意のシステムからの NSLM ライセンス要求を許可するには、REJECT 行の前に次の行を挿入して下さい：-A RH-Firewall-1-INPUT -p udp -m udp -s subnet/mask --dport 25517 -j ACCEPT-A RH-Firewall-1-INPUT -p tcp -m tcp -s subnet/mask --dport 25517 -j ACCEPT

subnet は 192.168.1.0 のような書式で、mask は 255.255.255.0 のような伝統的なネットワー
ク・マスクまたはマスクの一部を左からのビット数で示す 24 のような単一番号です。例えば、192.168.1.0/255.255.255.0 と 192.168.1.0/24 は同等です。
これらの行は複数のサブネットで繰り返すことが可能です。
任意のシステムからの NSLM ライセンス要求を許可するには、REJECT 行の前に次の行を挿入して下さい：-A RH-Firewall-1-INPUT -p udp -m udp --dport 25517 -j ACCEPT-A RH-Firewall-1-INPUT -p tcp -m tcp --dport 25517 -j ACCEPTNightStar RT Installation Guide Version 4.8

45/etc/sysconfig/iptables の変更後に次を実行して下さい：
service iptables restart

10.5.2. ファイアウォールの環境で NightStar RT ツールを実行
以下は NightStar RT ツールが実行中のシステムでファイアウォールが構成されている場合、NightStar RT ツールがライセンス・サーバーからフローティング・ライセンスを受信可能にするいくつかのアプローチです：


要求するシステムのファイアウォールを完全に無効

特定のライセンス・サーバーからの NSLM ライセンスを許可

特定のサブネット上の任意のシステムからの NSLM ライセンスを許可

任意のシステムからの NSLM ライセンスを許可
NOTE
ファイアウォール構成を変更するには root である必要があります。

ファイアウォールを完全に無効にするには次を実行して下さい：
service iptables stop
続いて/etc/sysconfig/iptables ファイルを削除して下さい：
rm -f /etc/sysconfig/iptables
このオプションは見た目よりも危険ではありません。大抵は、ネットワーク全体がファイアウォ
ールで保護されているので、ネットワーク上の個々のシステムで更に保護する必要はありません。
不安な場合、ネットワーク管理者に確認して下さい。
残りのケースにおいて、簡単な変更を/etc/sysconfig/iptables ファイルに行う必要があります。デフォルトで、ファイルは次のような行を含んでいるはずです：-A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited

ライセンス・サーバーが実行中の特定のシステムからの NSLM ライセンスを許可するには、
REJECT 行の前に次の行を挿入して下さい：-A RH-Firewall-1-INPUT -p udp -m udp -s server --sport 25517 -j ACCEPT

これらの行は複数のサーバーで繰り返すことが可能です。
特定のサブネット上のライセンス・サーバーが実行中の任意のシステムからの NSLM ライセンスを許可するには、REJECT 行の前に次の行を挿入して下さい：-A RH-Firewall-1-INPUT -p udp -m udp -s subnet/mask --sport 25517 -j ACCEPT

subnet は 192.168.1.0 のような書式で、mask は 255.255.255.0 のような伝統的なネットワー
ク・マスクまたはマスクの一部を左からのビット数で示す 24 のような単一番号です。例えば、192.168.1.0/255.255.255.0 と 192.168.1.0/24 は同等です。
これらの行は複数のサブネットで繰り返すことが可能です。

46

NightStar RT Installation Guide Version 4.8

ライセンス・サーバーが実行中の任意のシステムからの NSLM ライセンスを許可するには、
REJECT 行の前に次の行を挿入して下さい：-A RH-Firewall-1-INPUT -p udp -m udp --sport 25517 -j ACCEPT/etc/sysconfig/iptables を変更後に次を実行して下さい：
service iptables restart
以下は NSLM ライセンス・サーバーが実行中のシステムでファイアウォールが構成されている場
合にそれがフローティング・ライセンスを供給可能にするいくつかのアプローチです：。


システムのファイアウォールを完全に無効

特定のシステムからの NSLM ライセンス要求を許可

特定のサブネット上の任意のシステムからの NSLM ライセンス要求を許可

任意のシステムからの NSLM ライセンス要求を許可
NOTE
ファイアウォール構成を変更するには root である必要があります。

ファイアウォールを完全に無効にするには次を実行して下さい：
service iptables stop

10.6. ライセンス・サポート
ライセンス問題の追加支援については、コンカレント日本に連絡して下さい。詳細については 53
ページの「ソフトウェア・サポート」を参照して下さい。

NightStar RT Installation Guide Version 4.8

4711.0. アーキテクチャの相互運用性
NightStar RT ツールはセルフ・ホスト環境だけでなく、タイム・クリティカルなターゲット・シス
テムからホスト処理を分離してリモートからでも使用できるように設計されました。

11.1. x86 32-bit と 64-bit の相互運用性
本項では 32-bit x86 と 64-bit x86 との間の各ツールの相互運用性について説明します。
NightProbe
制限なし
NightSim
制限なし
NightTune
制限なし
NightTrace
制限NightTrace はホストとターゲット・システムのアドレスが同じビット・サイズではない限りリモート・システムのトレースを制御できません。従って NightTrace は 64bit システムから 32-bit システム、その逆も同様に接続することが出来ません。

32-bit システムの NightTrace は 64-bit システムからのデータを解析することが出来ません。

NightStar RT 4.5 でのアーキテクチャ間の機能

32-bit アプリケーションは NightTrace Logging API を使って 64-bit システムで実行することが可能です。64-bit の NightTrace は ntraceud や ntrace を介してそのようなプログラムからのデータをキャプチャーし解析することが可能です。32-bit アプ
リケーションは本リリース(またはそれ以降)のバージョンの NightTrace Logging APIにリンクさせる必要があります。

64-bit システムで実行中の NightTrace は 32-bit システムで生成されたデータ・ファイル(ユーザーとカーネルの両方)を解析することが可能です。しかしながら、ユー
ザー・トレース・データを生成する 32-bit アプリケーションは、NightStar RT 4.8 ベース(またはそれ以降)のバージョンの NightTrace Logging API にリンクさせる必要が
あります。



NightTrace Logging API を使用する 64-bit アプリケーションは、ストリームまたはファイル・モードのどちらでも 32-bit アプリケーションから生成されたデータ(または32-bit カーネル・データ)を解析することが可能です。

ユーザーの責任

64-bit システムで 32-bit データを解析する場合、64-bit システムで評価するのと同じように NightTrace は式のタイプを評価します。

48

NightStar RT Installation Guide Version 4.8

従って、NightTrace の式で明確に arg_long()を指定すると 4byte のみが記録されたとしてもトレース・データからは 8byte のデータが抽出されることになります。
データ型の懸念は long と全ての pointer 型です。
NOTENightTrace は自動的に正しいデータ型で Timelines とEvent パネルに引数を出力します。
NightTrace 内で 32-bit で生成されたブロック引数を解凍する際、32-bit コンパイラー
が構造体を配列したものとして解凍する必要があります。long, long double, 全ての pointer 型のサイズが異なることに加えて、64-bit コンパイラーは構造体に異な る パデ ィ ング を挿 入 します の で注 意 して 使用 し て下さ い 。こ れ に は 32-bit
Application Illumination セッションで生成された情報の使用が含まれています。
(long の参照は 4byte だけを期待していたとしても 8byte を抽出します。)
NOTE
実際には、long double 項目が 32-bit アプリケーシ
ョンから生成された場合に 64-bit NightTrace セッショ
ンで arg_long_dbl()を使用しても問題ありません。
64-bit システムで long double の後ろに余分な 4byteのデータがありますが、これらの余分なバイトはそのような値を操作する命令によって(現在は)完全に無視されます。

NightView
制限
明らかに 32-bit システムで実行中の NightView はそのシステム上で 64-bit プログラ
ムを(実行することが出来ないため)デバッグ出来ません。同様に x86(32-bit または
64-bit)システムは aarch64 のプログラムを実行できないので、NightView は x86 シス
テム上で直接それらをデバッグすることは出来ません。
以前のバージョンでは、NightView は 64-bit マシーンで 32-bit アプリケーションをデバッグするには--arch=i386 オプションが必要でした。この制限は撤廃されました。
--arch=i386 オプションは本リリースでは効果がありません、無視されます。例え 32bit x86 プログラムを exec する(exec(2)を参照)プログラムが混在していたとしても 64-bit x86 システムで 32-bit x86 プログラムを自由にデバッグすることが可能です(64-bit シェルから起動される 32-bit プログラムを含みます)。
詳細については 15 ページの「NightView パッケージの理解」を参照して下さい。

11.2. Intel と ARM64 の相互運用性
NightTracex86_64 または aarch64 システムでキャプチャーしたバイナリの NightTrace データ・ファイルは x86_64 または aarch64 システムのどちらからでも解析することが可能です。
「x86 32-bit と64-bit の相互運用性」項で説明する制限が同様に適用されます。

NightStar RT Installation Guide Version 4.8

49NightProbe
制限なし
NightSim
制限なし
NightTune
制限なし
NightView
X86 と ARM64 はアーキテクチャに互換性がないため、aarch64 システムで x86 の実行可能プ
ログラムを実行もしくはその逆も出来ません。
しかしながら、NightView は x86(32-bit または 64-bit)から aarch64 ターゲット・システムへの「クロス・デバッグ」は可能です。これは x86 ホストに ccur-nview-aarch64-support
パッケージがインストールされ、aarch64 ターゲットに ccur-nview-target パッケージがインストールされている必要があります。
完全なクロス・デバッグのサポート(例えば、パッチ、条件付きイベントポイント等)については、GNU x86/aarch64 クロス開発パッケージも同様にホスト・システムにインストールする必要があります。パッケージの最小セットは次のとおり：


gcc-aarch64-linux-gnu

binutils-aarch64-linux-gnu

これらのパッケージは CentOS 系および Ubuntu 系のシステムで大抵は利用可能です。
現在、NightView は次の場所にクロス・コンパイラーがあることを期待します：/usr/bin/aarch64-linux-gnu-gcc
お使いのディストリビューションが他の場所に置いている場合、実際のコンパイラーへのシンボリック・リンクを作成する必要があります。その後 NightView 内からのクロス・コンパ
イラーへのパスの設定が許可されるよう NightView は変更されます。
GNU クロス開発環境を使って完全なユーザー・アプリケーションをビルドする場合、追加パッケージが必要になる可能性があります。一般的なクロス開発については本資料の範囲外と
なります。

50

NightStar RT Installation Guide Version 4.8

12.0. 既知の問題
本項では NightStar の既知の問題を列挙します。

12.1. 問題：位置独立実行形式(gcc6)
NightStar は位置独立実行形式(Position Independent Executables: PIE)をまだ完全にはサポートしていません。gcc 6 では PIE はデフォルトです。次の機能は PIE 実行ファイルを現在利用できません：
NightProbe

DatamonApplication Illumination (nlight)

NightStar は次のメジャー・リリースで PIE を完全にサポートします。
それまでは、以下の gcc と ld のオプションの組み合わせを使って非 PIE 実行ファイルをビルドすることが可能です。
gcc -fno-PIC -fno-PIE -no-pie ...

12.2. 問題：ターゲット・システムにアタッチ出来ない
いくつかの NightStar ツールは動作するためにサーバー・プロセスと通信する必要があります。
デフォルトで、次のコマンドで返される値を使ってローカル・システムのサーバー・プロセスを探そうとします：hostname
ホスト名へのマッピングがない場合、これらのツールは機能しなくなります。
解決策 1:/etc/hosts が有効な IP アドレスへのホスト名のマッピングを含んでいる、またはマッピン
グが DNS もしくは他の手段で利用可能になっていることを確認して下さい。
解決策 2:SELinux の強制モードを permissive に変更して下さい。/etc/selinux/config ファイルを編集してこの変更を行い再起動して下さい。NightStar 開発チームはこの問題の他の解決策に取り組んでいます。

12.3. 問題：VirtualBox システムでデバッグできない
VirtualBox は内在するチップのデバッグ・レジスタを間違って管理します。これはプロセスのデバッグを開始する時に NightView を失敗させます。この VirtualBox のバグは数年間報告されていて今なお存在します。

NightStar RT Installation Guide Version 4.8

51

解決策:
Concurrent Real-Time は VirtualBox の代替ソリューションとして KVM を推奨します。

12.4. 問題：NightView がメモリ・セグメントにマッピングできない
一部のシステムでは、SELinux がインストールされると enforcing モードが設定されます。ディス
トリビューションの種類やバージョンにもよりますが、これは NightView がアプリケーションのメモリ・セグメントへマッピングするのを邪魔する可能性があります。
解決策:
SELinux の強制モードを permissive に変更して下さい。/etc/selinux/config ファイルを編集してこの変更を行い再起動して下さい。NightStar 開発チームはこの問題の他の解決策を検討しています。

52

NightStar RT Installation Guide Version 4.8

13.0. ソフトウェア・サポート
システムに関する支援または情報が必要な場合、コンカレント日本 プロフェッショナルサービス部(03-3864-5714)まで連絡して下さい。営業時間は祝祭日を除く平日の 9 時から 17 時までとなります。
また、コンカレント日本の Web サイト https://www.concurrent-rt.co.jp/ を介して、または電子メール tech@concurrent-rt.co.jp を送信することでいつでも支援要請を依頼することも可能です。

NightStar RT Installation Guide Version 4.8

53

54

NightStar RT Installation Guide Version 4.8