netmapによる 実践パケット処理プログラミング
|
|
|
- とよみ かみいしづ
- 6 years ago
- Views:
Transcription
1 netmap による 実践パケット処理プログラミング Copyright 2016 Internet Initiative Japan, Inc. 1
2 netmap とは? a framework for fast packet I/O ピサ大学の Luigi Rizzo 教授が設計した API 送受信パケット用のバッファを予め確保 userland/kernel でその領域を mmap で共有 index 付き ring buffer を使うことによるパケット領域の高速 swap 2
3 socket そもそも (*BSDで) パケットを入出力する方法 socket(), send()/write(), recv()/read() raw-socket bpf pfil socket(af_inet, SOCK_RAW, ) open( /dev/bpf, ) pfil_add_hook() (kernel) 3
4 netmap の特徴 bpf と pfil の中間くらいに位置する? (bpf と pfil の良いとこ取り ) userland で動く /dev/netmap を開いて ioctl 等で設定 input/output を横取り / ブロック / 書き換えたりできる kernel userland でメモリコピーが無いので効率が良い 4
5 netmap は何ができるのか 通常のパケットのフロー 5
6 netmap は何ができるのか ネットワークインターフェイスへの input/output 6
7 netmap は何ができるのか ホストスタックへの input/output 7
8 netmap は何ができるのか インターフェイスからホストスタックへの転送 8
9 netmap は何ができるのか インターフェイスからインターフェイスの転送 9
10 Hello World Packet 01_hexdump パケットを dump する ( だけ ) 10
11 Hello Packet (1) #include <net/netmap_user.h> #define NETMAP_WITH_LIBS してから #include <net/netmap_users.h> すると 便利なマクロや inline 関数等が定義される nm_open() / nm_close() 特にこの nm_open() はめんどくさい初期設定を引き受けてくれるので便利 他にもちょっと便利な関数 ( 今回は未使用 ) nm_inject() パケットを出力する nm_dispatch() パケット受信処理を callback で呼んでくれる nm_nextpkt() ring バッファのポインタを次のパケットへと進める 11
12 Hello Packet (2) nm_desc = nm_open("netmap:igb0", NULL, 0, NULL); /dev/netmap を open し ioctl でインターフェイス等を設定 ring バッファを mmap し 初期化してくれる netmap:igb0 NICのハードウェアTX/RX ringを開く netmap:igb0^ NICに対応するホストリングのTX/RXを開く netmap:igb0* ハードウェアリングとホストリング両方を開く netmap:igb0-1 NICの1 番目のハードウェアリングだけを開く 他にもいろいろ 詳しくは net/netmap_user.h を参照 12
13 Hello Packet (3) for (;;) { pollfd[0].fd = nm_desc->fd; pollfd[0].events = POLLIN; poll(pollfd, 1, 100); } ~~~~~~~~ netmap は基本的には poll() で待つ poll() で待ってる間に kernel の netmap ドライバがパケットを入出力してくれる 13
14 Hello Packet (4) for (i = nm_desc->first_rx_ring; i <= nm_desc->last_rx_ring; i++) { } rxring = NETMAP_RXRING(nm_desc->nifp, i); cur = rxring->cur; for (n = nm_ring_space(rxring); n > 0; n--) { hexdump(netmap_buf(rxring, rxring->slot[cur].buf_idx), rxring->slot[cur].len, NULL, 0); cur = nm_ring_next(rxring, cur); } rxring->head = rxring->cur = cur; RX ring から受信パケットを 1 パケットづつ取り出して hexdump する 最初のループは NIC によっては ring が複数ある場合のため 14
15 netmap ring の構造 15
16 netmap ring の構造 ( 全体 ) 16
17 RX ring から TX ring への転送 RX ring のスロットを TX ring のスロットへ転送したい 17
18 RX ring から TX ring への転送 RX ring と TX ring のスロットのインデックスを入れ替えるだけでいい ( メモリコピーの必要なし ) 18
19 NIC ring HOST ring NIC RX を HOST TX へ HOST RX を NIC TX へ 19
20 netmap_slot の swap 02_nic2host indexだけを入れ替える /* swap buf_idx */ tmp = txring->slot[cur].buf_idx; txring->slot[cur].buf_idx = rxring->slot[src].buf_idx; rxring->slot[src].buf_idx = tmp; /* set len */ sizeは上書きでok txring->slot[cur].len = rxring->slot[src].len; indexを書き換え /* update flags */ た場合に必要 txring->slot[cur].flags = NS_BUF_CHANGED; rxring->slot[src].flags = NS_BUF_CHANGED; 20
21 NIC から NIC への転送 ( 複数 NIC) nm_open() で複数インターフェイスを開くと packet buffer が独立してしまう ring buffer swap できない?! 21
22 NIC から NIC への転送 ( 複数 NIC) 2 つめの nm_open() に 親として 1 つめの nm_desc を渡して パケットバッファを共有する 22
23 NIC から NIC への転送 03_nic2nic NM_OPEN_NO_MMAP と 親として nm_desc1 を指定することにより 2 つの netmap ディスクリプタでパケットバッファが共有される 23
24 簡易 firewall 応用編 ここで TX に渡す / 渡さないを取捨選択する 24
25 簡易 firewall 04_firewall ここでパケットのテスト 25
26 簡易 firewall 04_firewall パケットは ether header 含む ether header から辿っていく 26
27 簡易 firewall 04_firewall フィルタルールの定義 27
28 簡易 firewall 04_firewall フィルタルールを順番にテスト 28
29 NIC のマルチキュー CPU core はたくさんある パケット処理は 1 core(1 プロセス ) で動く 1 つの core の CPU 使用量だけ増え 他の core は処理空き パケットの処理を分散させられないか? NIC に複数のキューを持たせればいい NIC マルチキュー (RSS:Receive Side Scaling) 29
30 NIC のマルチキューと netmap Intel 等の NIC が対応している キューの数は 4 8 netmap では キューの数の分の ring が見える ( デバイスドライバにもよる ) netmap でキューを独立に操作するには? nm_open で指定するデバイス名の後ろに数字を付ける netmap:igb0 NIC のハードウェア TX/RX ring を開く netmap:igb0^ NIC に対応するホストリングの TX/RX を開く netmap:igb0* ハードウェアリングとホストリング両方を開く netmap:igb0-1 NIC の 1 番目のハードウェアリングだけを開く 30
31 マルチプロセッサにおけるチューニング 05_multiqueue RING の数だけ thread を作る 一度 nm_open して RING の数を調べる 31
32 TIPS ( あるいはバッドノウハウ ) netmap 対応ドライバが必要 現状 em(4), igb(4), ixgbe(4), lem(4), re(4) のみ対応 bridge 等の動作をさせるには 別途 promiscuous モードにするなどの操作が必要 プログラムで面倒みましょう ハードウェアオフローディングと相性が悪い ifconfig txcsum tso 等しておく 32
33 今回解説しなかったこと Appendix vale - a Virtual Local Ethernet と呼ばれる仮想イーサネットスイッチを持っている vale:foo 等で作成 使用可能 netmap pipe と呼ばれる netmap ring を使った 1 対 1 pipe 機能を持つ bpf のように観測だけ行う MONITOR モードも持っている (NR_MONITOR_{TX,RX} 33
34 まとめ netmap_user.h の nm_open を使えば簡単に扱える netmap ring からパケットバッファへはインデックスを介して間接アクセスされる それにより メモリコピーせずにスロットの swap で高速に転送が可能 複数の NIC を扱う場合は nm_open に NM_OPEN_NO_MMAP を指定して親子関係を作ってパケットバッファを共有させる 高速化するには ハードウェア RING を別々に nm_open して マルチキューマルチコア化 34
160311_icm2015-muramatsu-v2.pptx
Linux におけるパケット処理機構の 性能評価に基づいた NFV 導 の 検討 村松真, 川島 太, 中 裕貴, 林經正, 松尾啓志 名古屋 業 学 学院 株式会社ボスコ テクノロジーズ ICM 研究会 2016/03/11 研究 的 VM 仮想 NIC バックエンド機構 仮想化環境 仮想スイッチ パケット処理機構 物理環境 性能要因を考察 汎 IA サーバ NFV 環境に適したサーバ構成を検討
04-process_thread_2.ppt
オペレーティングシステム ~ 保護とシステムコール ~ 山田浩史 hiroshiy @ cc.tuat.ac.jp 2015/05/08 復習 : OS の目的 ( 今回の話題 ) 裸のコンピュータを抽象化 (abstraction) し より使いやすく安全なコンピュータとして見せること OS はハードウェアを制御し アプリケーションの効率的な動作や容易な開発を支援する OS がないと 1 つしかプログラムが動作しない
PowerPoint プレゼンテーション
講座準備 講座資料は次の URL から DL 可能 https://goo.gl/jnrfth 1 ポインタ講座 2017/01/06,09 fumi 2 はじめに ポインタはC 言語において理解が難しいとされる そのポインタを理解することを目的とする 講座は1 日で行うので 詳しいことは調べること 3 はじめに みなさん復習はしましたか? 4 & 演算子 & 演算子を使うと 変数のアドレスが得られる
Linux @ S9 @ CPU #0 CPU #1 FIB Table Neighbor Table 198.51.100.0/24 fe540072d56f 203.0.113.0/24 fe54003c1fb2 TX Ring TX Ring TX Buf. Dsc. RX Buf. Dsc. TX Buf. Dsc. RX Buf. Dsc. Packet NIC #0 NIC #1 CPU
ストリームを用いたコンカレントカーネルプログラミングと最適化 エヌビディアジャパン CUDAエンジニア森野慎也 GTC Japan 2014
ストリームを用いたコンカレントカーネルプログラミングと最適化 エヌビディアジャパン CUDAエンジニア森野慎也 GTC Japan 2014 コンカレントな処理の実行 システム内部の複数の処理を 平行に実行する CPU GPU メモリ転送 カーネル実行 複数のカーネル間 ストリーム GPU 上の処理キュー カーネル実行 メモリ転送の並列性 実行順序 DEFAULT STREAM Stream : GPU
スライド 1
パケット転送を支える技術 海老澤健太郎 @ パラレルス株式会社 Twitter: @ebiken Internet Week 2011 サーバーの物理構造 DIMM MEM CPU0 CPU1 DIMM MEM QPI IOH (Chipset) PCI Express (PCIe) PCIe PCIe device device (NIC) (NIC) Internet Week 2011 2 パケットの流れ
Microsoft Word - PCI-X_PCIeバスのデータ転送-ver1.0.docx
データ転送時におけるエラー / ボード認識不具合に関する資料 2012/06/20 目次 画像データ転送時に発生する問題 ( 過去の事例 )... 3 不具合の発生したチップセットの例... 7 Intel 社製チップセット... 8 テレダインダルサが推奨するチップセットの例... 9 トランザクション層の機能... 11 PCI Express のレーン順序と差動信号の特性... 12 レーン0とレーン1で送信側と受信側で速度差を吸収する機能...
PowerPoint プレゼンテーション
プログラミング応用演習 第 2 回文字列とポインタ 先週のパズルの解説 答え : 全部 p a 1 図の書き方 : p+1 は式であって その値を格納する記憶場所を考えないので 四角で囲まない 2 p+1 同じものを表すいろいろな書き方をしてみましたが パズル以上の意味はありません プログラム中に書くときは p+1 が短くていいんじゃないかな p+1 は 2 の記憶場所 p[1] は 2 に格納されている値
Boost.Preprocessor でプログラミングしましょう DigitalGhost
Boost.Preprocessor でプログラミングしましょう DigitalGhost http://d.hatena.ne.jp/digitalghost/ http://twitter.com/decimalbloat 私のこと hatena のプロフィールとか 見てください とりあえず FizzBuzz 書いてみた #define FIZZBUZZ_OP(z, n, d) \ FIZZBUZZ_OP_I(
TFTP serverの実装
TFTP サーバーの実装 デジタルビジョンソリューション 佐藤史明 1 1 プレゼンのテーマ組み込みソフトのファイル転送を容易に 2 3 4 5 基礎知識 TFTP とは 実践 1 実際に作ってみよう 実践 2 組み込みソフトでの実装案 最後におさらい 2 プレゼンのテーマ 組み込みソフトのファイル転送を容易に テーマ選択の理由 現在従事しているプロジェクトで お客様からファームウェアなどのファイル転送を独自方式からTFTPに変更したいと要望があった
プログラミング実習I
プログラミング実習 I 05 関数 (1) 人間システム工学科井村誠孝 [email protected] 関数とは p.162 数学的には入力に対して出力が決まるもの C 言語では入出力が定まったひとまとまりの処理 入力や出力はあるときもないときもある main() も関数の一種 何かの仕事をこなしてくれる魔法のブラックボックス 例 : printf() 関数中で行われている処理の詳細を使う側は知らないが,
RTC_STM32F4 の説明 2013/10/20 STM32F4 内蔵 RTC の日付 時刻の設定および読み込みを行うプログラムです UART2( 非同期シリアル通信ポート 2) を使用して RTC の設定および読み込みを行います 無料の開発ツール Atollic TrueSTUDIO for
RTC_STM32F4 の説明 2013/10/20 STM32F4 内蔵 RTC の日付 時刻の設定および読み込みを行うプログラムです UART2( 非同期シリアル通信ポート 2) を使用して RTC の設定および読み込みを行います 無料の開発ツール Atollic TrueSTUDIO for ARM Lite 4.2.0 で作成した STM32F4 Discovery 基板用のプロジェクトです
Lagopus SDN/OpenFlow switch: yet another SDN/OF switch agent and high-performance software switch
汎用 x86 サーバを用いた高速なソフトウエアパケット処理技術 中島佳宏 This research is a part of the project for Research and Development of Network Virtualization Technology supported by the Ministry of Internal Affairs and Communications.
今回のプログラミングの課題 ( 前回の課題で取り上げた )data.txt の要素をソートして sorted.txt というファイルに書出す ソート (sort) とは : 数の場合 小さいものから大きなもの ( 昇順 ) もしくは 大きなものから小さなもの ( 降順 ) になるよう 並び替えること
C プログラミング演習 1( 再 ) 4 講義では C プログラミングの基本を学び 演習では やや実践的なプログラミングを通して学ぶ 今回のプログラミングの課題 ( 前回の課題で取り上げた )data.txt の要素をソートして sorted.txt というファイルに書出す ソート (sort) とは : 数の場合 小さいものから大きなもの ( 昇順 ) もしくは 大きなものから小さなもの ( 降順
bitvisor_summit.pptx
BitVisor 内蔵の lwip で Alkanet ログの送信を試みる 命館 学システムソフトウェア研究室 下雄也, 明 修平, 瀧本栄, 利公 1 はじめに (1/4) 近年, マルウェアが増加しており, マルウェアの脅威が問題となっている マルウェアの脅威に対抗するためには, 多数のマルウェアを迅速に解析する必要がある システムコールトレーサ Alkanet Windows 上で動作するマルウェアを対象とし,
ESOTERIC ASIO USB DRIVER インストールマニュアル Windows 用 システム推奨条件 2 インストールで使用する言語を選択して 次へ ボタンをクリックする Intel Core 2 Duo 以上のプロセッサー搭載コンピュータ 搭載メモリ 1GB 以上 対応 OS Windo
ESOTERIC ASIO USB DRIVER インストールマニュアル Windows 用 システム推奨条件 2 インストールで使用する言語を選択して 次へ ボタンをクリックする Intel Core 2 Duo 以上のプロセッサー搭載コンピュータ 搭載メモリ 1GB 以上 対応 OS Windows 7 (32bit 版 64bit 版 ) Windows 8 (32bit 版 64bit 版
02: 変数と標準入出力
C プログラミング入門 基幹 7 ( 水 5) 1 10: ファイル入出力 Linux にログインし 以下の講義ページを開いておくこと http://www-it.sci.waseda.ac.jp/teachers/w48369 2/CPR1/ 2016-06-15 今日の内容 2 標準ライブラリ関数によりファイルの出力を行う画像ファイルの生成を例題として 配列の作成を復習する 文字列の扱いを復習する
セキュアVMの アーキテクチャ概要
2008 年 11 月 18 日 ( 火 ) セキュア VM ワークショップ ( 公開用修正版 ) 筑波大学講師品川高廣 セキュア VM BitVisor の アーキテクチャ概要 背景と目的 情報漏洩事件の増加 PC USBメモリ等の紛失 盗難 インターネット経由 ウィルスやファイル交換ソフトなど 仮想マシンモニタ (VMM) による安全性向上 暗号化 認証を VMM で強制する ストレージ及びネットワークの暗号化
CoIDE 用 F4D_VCP の説明 V /07/05 USB の VCP( 仮想 COM ポート ) による非同期シリアル通信を行うプログラムです Free の開発ツール CoIDE で作成した STM32F4 Discovery 用のプロジェクトです プログラムの開始番地は 0x
CoIDE 用 F4D_VCP の説明 V001 2014/07/05 USB の VCP( 仮想 COM ポート ) による非同期シリアル通信を行うプログラムです Free の開発ツール CoIDE で作成した STM32F4 Discovery 用のプロジェクトです プログラムの開始番地は 0x08000000 です デバッグが可能です 目次 1. USB の VCP( 仮想 COM ポート )
pgen :: net_stream net (" eth0 ", pgen :: open_mode :: netif ); uint8_t buf [10000]; size_t recvlen = net. recv (buf, sizeof buf ); pgen :: udp pack (
第24回マルチメディア通信と分散処理ワークショップ論文集 平成28年10月 OSS のパケット解析ライブラリを使用し, プログラミング言語からパケット解析を行う手法の提案 城倉 弘樹,a) 金井 敦,b) 概要 これまでのパケット解析は Wireshark などのパケット解析アプリケーションを利用した解析が定石 である. しかし, このようなパケット解析では柔軟な処理などに対して限界があり, より高度な通信解析を
今週の進捗
Virtualize APIC access による APIC フック手法 立命館大学富田崇詠, 明田修平, 瀧本栄二, 毛利公一 2016/11/30 1 はじめに (1/2) マルウェアの脅威が問題となっている 2015年に4 億 3000 万以上の検体が新たに発見されている マルウェア対策にはマルウェアが持つ機能 挙動の正確な解析が重要 マルウェア動的解析システム : Alkanet 仮想計算機モニタのBitVisorの拡張機能として動作
1. UART について UART は Universal Asynchronous Receiver Transmitter の頭文字をとったもので 非同期シリアル通信と呼ばれます シリアル通信とは 一本の信号線でデータをやりとりするために 1bit ずつデータを送出することをいいます データを受
STM32L_UART1 の説明 V004 2014/03/30 STM32L-Discovery の UART 1 の送受信を行うプログラムです 無料の開発ツール Atollic TrueSTUDIO for ARM Lite( 試用版 ) で作成したプロジェクトです プログラムの開始番地は 0x08000000 です デバッグが可能です PC アプリケーションの Access_SerialPort
1. USB の VCP( 仮想 COM ポート ) について USB の VCP( 仮想 COM ポート ) は USB を非同期シリアル通信として使用するための USB のドライバです PC には VCP ドライバをインストールする必要があります USB の VCP( 仮想 COM ポート )
TrueSTUDIO 用 F4D_VCP の説明 V001 2014/07/05 USB の VCP( 仮想 COM ポート ) による非同期シリアル通信を行うプログラムです 無料の試用版開発ツール Atollic TrueSTUDIO for ARM Lite で作成したプロジェクトです ビルド可能なプログラムのコードサイズが 32Kbyte 以内の制限があります プログラムの開始番地は 0x08000000
機能 SB-2000 は無線機とコンピュータを接続するインターフェースです CAT, CI/V を経由したリグ制御 CAT や CI/V のリグ制御のインターフェースを持っています この接続でリグを制御できます RTTY, PSK31, SSTV, FAX, その他のデジタルモードが運用できます広く
CG アンテナ SB-2000 USB 無線インターフェース 操作マニュアル CG Antenna Co. Ltd. Shanghai, China 日本語版 Copyright エレクトロデザイン株式会社 特徴 USB ポートを接続するだけ シリアルやパラレルの接続は不要です 多くの無線用ソフトウエアは制御に RS232C の COM ポートを使いますが 最近のパソコンには COM ポートがありません
Peanut システムで FT8 を使用した画像交換体験記 Shu JA3GQJ FT8 は アマチュア無線の短波帯の弱い信号を処理し DX 通信に最適なモードです そのため 多くのアマチュア無線局で使用されています 私は無線の代わりにピーナッツ (peanut) と呼ばれるシステムを使用してインタ
Peanut システムで FT8 を使用した画像交換体験記 Shu JA3GQJ FT8 は アマチュア無線の短波帯の弱い信号を処理し DX 通信に最適なモードです そのため 多くのアマチュア無線局で使用されています 私は無線の代わりにピーナッツ (peanut) と呼ばれるシステムを使用してインターネット上でこの FT8 モードを使用して画像交換を体験しました A. ウインドウズパソコンでの体験
C#の基本
C# の基本 ~ 開発環境の使い方 ~ C# とは プログラミング言語のひとつであり C C++ Java 等に並ぶ代表的な言語の一つである 容易に GUI( グラフィックやボタンとの連携ができる ) プログラミングが可能である メモリ管理等の煩雑な操作が必要なく 比較的初心者向きの言語である C# の利点 C C++ に比べて メモリ管理が必要ない GUIが作りやすい Javaに比べて コードの制限が少ない
書式に示すように表示したい文字列をダブルクォーテーション (") の間に書けば良い ダブルクォーテーションで囲まれた文字列は 文字列リテラル と呼ばれる プログラム中では以下のように用いる プログラム例 1 printf(" 情報処理基礎 "); printf("c 言語の練習 "); printf
情報処理基礎 C 言語についてプログラミング言語は 1950 年以前の機械語 アセンブリ言語 ( アセンブラ ) の開発を始めとして 現在までに非常に多くの言語が開発 発表された 情報処理基礎で習う C 言語は 1972 年にアメリカの AT&T ベル研究所でオペレーションシステムである UNIX を作成するために開発された C 言語は現在使われている多数のプログラミング言語に大きな影響を与えている
まず,13 行目の HardwareTimer Timer(1); は,HardwareTimer というクラスを利用するという宣言である. この宣言によって Timer というインスタンスが生成される.Timer(1) の 1 は,OpenCM に 4 個用意されているタイマのうち,1 番のタイマ
8 タイマ割り込みを使ってみよう割り込み (Interrupt) とは, 言葉の意味の通り, ある作業中に割り込むことである. マイコンにおいてはとても重要な機能の一つである. 例えば, インスタントカップ麺にお湯を入れて 3 分間待ってから食べることを想像してみよう. お湯を入れてカップ麺ができるまでの 3 分間, 時計の針だけを見つめ続けて, 他には何にもせずに待ち続ける人はほとんどいないだろう.
Microsoft Word - Et100pciS2_02a†iWinXP_PDFŠp†j.doc
Windows XP でのインストール手順 (ET100-PCI-S2 ET100-PCI-S2) 取り付け前の確認 準備 2 各部の名称 機能 3 本製品取り付け前の作業 4 ネットワークへの接続 6 Windows XP へのインストール 11 インストール 12 インストール後の確認 16 Windows XP からのアンインストール 19 インストールしたソフトを削除するには 20 103584-02(Windows
ゲームプログラミング講習 第0章 導入
ゲームプログラミング講習 第 0 章 導入 ゲーム制作に必要なものをインストールします ゲームプログラミング講習第 0 章導入 1 ゲーム制作に必要なもの Microsoft Visual Studio DXライブラリ プロジェクトテンプレート C 言語の知識 ゲームプログラミング講習第 0 章導入 2 Microsoft Visual Studio とは C 言語でプログラミングして Windows
2015/04/01 改定 オムロン DeviceNet ユニット CJ1W-DRM21 に関するコンフィグレーション作業について 1. 概要 DeviceNet ユニット CJ1W-DRM21 を装着したオムロン製 CJ2 シリーズと WAGO-I/0-SYSTEM DeviceNet 対応バスカ
オムロン DeviceNet ユニット CJ1W-DRM21 に関するコンフィグレーション作業について 1. 概要 DeviceNet ユニット CJ1W-DRM21 を装着したオムロン製 CJ2 シリーズと WAGO-I/0-SYSTEM DeviceNet 対応バスカプラ 750-306 を使ったリモート I/O システムとの接続に関するコンフィグレーション方法について説明いたします 2. システム構成本書で用いるシステム構成例の内容を以下の表に示します
PRIMERGY RX300 S6 SAS コントローラカード <RAID 5> フリーOS 動作確認情報
PRIMERGY RX300 S6 SAS アレイコントローラカード フリー OS 動作確認情報 2010/06/30 富士通株式会社目次 PRIMERGY RX300 S6 CentOS 5.5 (x86) 動作確認... 2 PRIMERGY RX300 S6 CentOS 5.5 (x86_64) 動作確認... 7 PRIMERGY RX300 S6 ubuntu 10.04
Taro-82ADAカ.jtd
デジタル & アナログ絶縁入出力ユニット解説書製品型式 8 2 A D A - K C 製品型式 8 2 A D A - B D 製品型式 D A C S - 8 2 0 0 この解説書は 8 2 A D A または D A C S - 8 2 0 0 の動作と使用方法について簡単に説明したものです D A C S - 8 2 0 0 の場合は この解説書の 8 2 A D A という表現を 一部
スライド 1
仮想化環境でのパケット転送 - 性能測定結果 & 考察 - 海老澤健太郎 @ パラレルス株式会社 2011/12/01 Internet Week 2011 性能測定 構成 DUT (Device Under Test) - Dell PowerEdge R410 CPU x 2 : Xeon L5520 @ 2.27GHz QEMU VM e1000 VM virtio-net VM vhost-net
gengo1-11
関数の再帰定義 自然数 n の階乗 n! を計算する関数を定義してみる 引数は整数 返却値も整数 n! = 1*2*3*... * (n 1)*n である ただし 0! = 1 とする int factorial(int n) int i, tmp=1; if( n>0 ) for(i=1; i
memo
数理情報工学演習第一 C プログラミング演習 ( 第 5 回 ) 2015/05/11 DEPARTMENT OF MATHEMATICAL INFORMATICS 1 今日の内容 : プロトタイプ宣言 ヘッダーファイル, プログラムの分割 課題 : 疎行列 2 プロトタイプ宣言 3 C 言語では, 関数や変数は使用する前 ( ソースの上のほう ) に定義されている必要がある. double sub(int
COMET II のプログラミング ここでは機械語レベルプログラミングを学びます 1
COMET II のプログラミング ここでは機械語レベルプログラミングを学びます 1 ここでは機械命令レベルプログラミングを学びます 機械命令の形式は学びましたね機械命令を並べたプログラムを作ります 2 その前に プログラミング言語について 4 プログラミング言語について 高級言語 (Java とか C とか ) と機械命令レベルの言語 ( アセンブリ言語 ) があります 5 プログラミング言語について
1. A/D 入力について分解能 12bit の A/D コンバータ入力です A/D 入力電圧とディジタル値との対応は理論上 入力電圧 0V : 0 入力電圧 +3V : 4095 です 実際はオフセットと傾きがあり ぴったりこの数値にはなりません 2. A/D 入力に使用する信号 STM32L_A
STM32L_ADC の説明 V003 2014/03/30 STM32L-Discovery の A/D 入力を行うプログラムです A/D CH0 ~ A/D CH3 の 4 本の入力が可能です 提供する PC のアプリケーション Access_SerialPort を使用して UART( 非同期シリアル通信 ) により A/D 入力の表示を行うことができます 無料の開発ツール Atollic TrueSTUDIO
CoIDE 用 STM32F4_UART2 の説明 V /03/30 STM32F4 Discovery の非同期シリアル通信ポート UART2 の送受信を行うプログラムです Free の開発ツール CoIDE で作成したプロジェクトサンプルです プログラムの開始番地は 0x08000
CoIDE 用 STM32F4_UART2 の説明 V002 2014/03/30 STM32F4 Discovery の非同期シリアル通信ポート UART2 の送受信を行うプログラムです Free の開発ツール CoIDE で作成したプロジェクトサンプルです プログラムの開始番地は 0x08000000 です デバッグが可能です 提供する PC のアプリケーションの Access_SerialPort
PRIMERGY TX100 S1 未サポートOS動作検証確認情報
PRIMERGY TX100 S1 未サポート OS 動作検証確認情報 ソフトウェア名称 SAS アレイコントローラカード オンボード SATA アレイコントローラ Non-RAID 動作確認結果 動作確認結果 動作確認結果 CentOS 5.5(x86) ( 注 6) ( 注 6) - CentOS 5.5(x86_64) ( 注 6) ( 注 6) - CentOS
arduino プログラミング課題集 ( Ver /06/01 ) arduino と各種ボードを組み合わせ 制御するためのプログラミングを学 ぼう! 1 入出力ポートの設定と利用方法 (1) 制御( コントロール ) する とは 外部装置( ペリフェラル ) が必要とする信号をマイ
arduino プログラミング課題集 ( Ver.5.0 2017/06/01 ) arduino と各種ボードを組み合わせ 制御するためのプログラミングを学 ぼう! 1 入出力ポートの設定と利用方法 (1) 制御( コントロール ) する とは 外部装置( ペリフェラル ) が必要とする信号をマイコンから伝える 外部装置の状態をマイコンで確認する 信号の授受は 入出力ポート 経由で行う (2) 入出力ポートとは?
PRIMERGY TX140 S1 未サポートOS動作検証確認情報
ソフトウェア名称 SAS アレイコントローラカード RAID Ctrl SAS 6G 5/6 512MB (D2616) SAS アレイコントローラカード RAID Ctrl SAS 6G 0/1 (D2607) 動作確認結果 SAS コントローラカード Integrated Mirroring Enhanced SAS オンボード
スライド 1
Introduction to Intel DPDK Oct 24 th, 2014 IGEL Co.,Ltd. Tetsuya Mukawa 武川哲也 はじめに Q: Intel DPDK( 以下 DPDK) って? A: 高スループット / 低レイテンシのネットワークを実現する仕組みです Q: DPDK の目的は? A: 高価な NW 機器と同等の機能 性能を Linux/BSD 上のソフトウェアで実現することです
PowerPoint Presentation
ファイルの入出力 芝浦工業大学情報工学科 青木義満 今回の講義内容 ファイル入出力 ファイルからのデータ読込み ファイルと配列 2 1 ファイルへのデータ書き込み ( 復習 ) ソースファイル名 :fileio1.c データをファイルに書き込み #include int main(void) { ファイルポインタ宣言 int student_id = 100; char name[
Outlook2010 の メール 連絡先 に関連する内容を解説します 注意 :Outlook2007 と Outlook2010 では 基本操作 基本画面が違うため この資料では Outlook2010 のみで参考にしてください Outlook2010 の画面構成について... 2 メールについて
Outlook2010 - メール 連絡先など - Outlook2010 の メール 連絡先 に関連する内容を解説します 注意 :Outlook2007 と Outlook2010 では 基本操作 基本画面が違うため この資料では Outlook2010 のみで参考にしてください Outlook2010 の画面構成について... 2 メールについて... 3 画面構成と操作... 3 人物情報ウィンドウ...
CommonMP Ver1.5 インストール手順書 目 次 1. 概要 目的 必要動作環境 ハードウェア構成 ソフトウェア構成 CommonMP のインストール手順 利用フロー
CommonMP Ver1.5 インストール手順書 目 次 1. 概要... 1-1 1.1 目的 1-1 2. 必要動作環境... 2-1 2.1 ハードウェア構成 2-1 2.2 ソフトウェア構成 2-1 3. CommonMP のインストール手順... 3-1 3.1 利用フロー 3-1 3.2 プログラムのインストールとアンインストール 3-2 3.2.1 プログラムのインストール 3-2
マウス操作だけで本格プログラミングを - 世界のナベアツをコンピュータで - プログラムというと普通は英語みたいな言葉で作ることになりますが 今回はマウスの操作だけで作ってみます Baltie, SGP System 操作説明ビデオなどは 高校 情
マウス操作だけで本格プログラミングを - 世界のナベアツをコンピュータで - プログラムというと普通は英語みたいな言葉で作ることになりますが 今回はマウスの操作だけで作ってみます Baltie, SGP System http://www.sgpsys.com/en/ 操作説明ビデオなどは 高校 情報科 の教材 指導案作ってみました http://www.beyondbb.jp/ Zip の教材内に入っています
PowerPoint Presentation
プログラミング基礎 第 2 週 (4,5,6 回 ) 2011-10-07 出村公成 この資料の再配布を禁止します 予定 プログラミング入門 (45 分 ) 変数 入出力 分岐 演習 (90 分 ) タッチタイプ練習 統合開発環境 Codeblocksの使い方 教科書例題の打ち込みと実行 プログラミング入門 C 言語の簡単な例を体験 変数 入出力 分岐 プログラムの例リスト 2.1 改 #include
PRIMERGY TX1310 M1 未サポートOS動作検証確認情報
PRIMERGY TX1310 M1 未サポート OS 動作検証確認情報 ソフトウェア名称 オンボード SATA コントローラ ( ソフトウェア RAID) 動作確認結果 オンボード SATA コントローラ (ahci) CentOS 7.2(x86_64) [ 詳細 ]( 注 5) ( 注 6) CentOS 7.1(x86_64) [ 詳細 ]( 注 5) ( 注 6) CentOS 7.0(x86_64)
TopSE並行システム はじめに
はじめに 平成 23 年 9 月 1 日 トップエスイープロジェクト 磯部祥尚 ( 産業技術総合研究所 ) 2 本講座の背景と目標 背景 : マルチコア CPU やクラウドコンピューティング等 並列 / 分散処理環境が身近なものになっている 複数のプロセス ( プログラム ) を同時に実行可能 通信等により複数のプロセスが協調可能 並行システムの構築 並行システム 通信 Proc2 プロセス ( プログラム
VECLOS Audio Driver インストールマニュアル Windows 用 2 次へ ボタンをクリックする 対応 OS Windows 7 (32bit 版 64bit 版 ) Windows 8( 32bit 版 64bit 版 ) Windows 8.1( 32bit 版 64bit 版
Windows 用 2 次へ ボタンをクリックする 対応 OS Windows 7 (32bit 版 64bit 版 ) Windows 8( 32bit 版 64bit 版 ) Windows 8.1( 32bit 版 64bit 版 ) Windows10( 32bit 版 64bit 版 ) 2018 年 5 月現在 本機とパソコンを USB で接続する前に VECLOS Audio Driver
2.RL78 での割り込み処理 ( 割り込み受け付け ) マスクが解除された (xxmk ビットが 0 の ) 割り込み要求信号は 2 つの用途で使用されます 一つ目は,CPU のスタンバイ状態の解除です この動作は, 割り込み優先順位とは全く無関係で, マスクされていない (xxmk=0 の )
割り込み / ポーリング /DMA/DTC(RL78 での周辺機能制御 ) 周辺機能を介してデータ転送を制御する方法には, 大きく分けて 3 つの方法があります その中で DMA や DTC は CPU を介することなく, 高速にデータを転送することができますが, 使用できるチャネル数が限られます そのため, たとえば,CSI のスレーブでの高速通信のように限られた時間内に転送が必要な場合に使用できます
# 深く掘り下げる C++ 講座 < 第 2 回 > // 先に先週の内容の解説 r ( キャリッジリターン ) 行の先頭に戻る 語源はタイプライターからだそうです とりあえず 以下に rを使ったくるくる回る顔文字のソース 注 : 以下のソースはmacのターミナル上での動作のみ保証 例 ) #inc
# 深く掘り下げる C++ 講座 < 第 2 回 > // 先に先週の内容の解説 r ( キャリッジリターン ) 行の先頭に戻る 語源はタイプライターからだそうです とりあえず 以下に rを使ったくるくる回る顔文字のソース 注 : 以下のソースはmacのターミナル上での動作のみ保証 #include int main(void){ cout
SimulinkによるReal-Time Test環境の構築
Simulink モデルを使ったリアルタイムテスト環境の構築 MathWorks Japan アプリケーションエンジニアリング部シニアアプリケーションエンジニア高島博 2012 The MathWorks, Inc. 1 はじめに Simulink はバーチャルなテスト環境 2 はじめに Simulink はバーチャルなテスト環境 3 はじめに Simulink はバーチャルなテスト環境 シミュレーション開始ボタンをクリック
プログラミングI第10回
プログラミング 1 第 10 回 構造体 (3) 応用 リスト操作 この資料にあるサンプルプログラムは /home/course/prog1/public_html/2007/hw/lec/sources/ 下に置いてありますから 各自自分のディレクトリにコピーして コンパイル 実行してみてください Prog1 2007 Lec 101 Programming1 Group 19992007 データ構造
PRIMERGY TX100 S3 未サポートOS動作検証確認情報
ソフトウェア名称 SAS アレイコントローラカード MegaRAID SAS 9260-8i 動作確認結果 オンボード SATA アレイコントローラ ( ソフトウェア RAID) CentOS 6.1(x86) ( 注 6) ( 注 7) CentOS 6.1(x86_64) ( 注 6) ( 注 7) CentOS 6.0(x86) ( 注 6) ( 注 5) CentOS
PRIMERGY TX150 S7 SAS アレイコントローラカード <RAID 5> フリーOS 動作確認情報
PRIMERGY TX150 S7 SAS アレイコントローラカード フリー OS 動作確認情報 2010/05/31 富士通株式会社目次 PRIMERGY TX150 S7 CentOS 5.4 (x86) 動作確認... 2 PRIMERGY TX150 S7 CentOS 5.4 (x86_64) 動作確認... 7 PRIMERGY TX150 S7 CentOS 5.4
PRIMERGY TX1320 M1 未サポートOS動作検証確認情報
ソフトウェア名称 SAS アレイコントローラカード RAID Ctrl SAS 6G 1GB (D3116C) SAS アレイコントローラカード RAID Ctrl SAS 6G 5/6 512MB (D2616) 動作確認結果 SAS アレイコントローラカード RAID Ctrl SAS 6G 0/1(D2607) オンボード SATA
Microsoft Word Proself-guide4STD+Prof.docx
ファイル共有システム利用の手引き 全学基本メール事業室 1. はじめにメールでファイルを送りたい時に ファイルが大きすぎて送れなかったことはないでしょうか あるいはファイルはそれほど大きくないけれどもファイル数が多くて添付するのに手間がかかったり 届いたメールにたくさんのファイルが添付されていて 一つずつ保存するのが面倒だったことはないでしょうか ここで紹介するファイル共有システムを使うと そうした悩みを一気に解決できます
Microsoft PowerPoint - OS07.pptx
この資料は 情報工学レクチャーシリーズ松尾啓志著 ( 森北出版株式会社 ) を用いて授業を行うために 名古屋工業大学松尾啓志 津邑公暁が作成しました 主記憶管理 主記憶管理基礎 パワーポイント 27 で最終版として保存しているため 変更はできませんが 授業でお使いなる場合は松尾 ([email protected]) まで連絡いただければ 編集可能なバージョンをお渡しする事も可能です 復習 OS
PowerPoint プレゼンテーション
部内向けスキルアップ研修 組込み OS 自作入門 2014 年 2 月 10st ステップ担当 : 中村 目次 はじめに OSの役割 メモリ管理 メモリ管理実装 プログラムの実行 まとめ はじめに 前回やったこと OS の原型を作成 今回やること 9th ステップでは CPU 時間 という資源管理 本ステップでは メモリ という資源管理 10.1 OS の役割 10.1.1 コンピュータの 3 大要素
メール全文検索アプリケーション Sylph-Searcher のご紹介 SRA OSS, Inc. 日本支社技術部チーフエンジニア Sylpheed 開発者 山本博之 Copyright 2007 SRA OSS, Inc. Japan All right
メール全文検索アプリケーション Sylph-Searcher のご紹介 SRA OSS, Inc. 日本支社技術部チーフエンジニア Sylpheed 開発者 山本博之 [email protected] Sylph-Searcher とは Sylpheed 向け電子メール全文検索アプリケーション PostgreSQL 8.2の全文検索機能を利用 Linux/Unix Windows 2000
Microsoft® Windows® Server 2008/2008 R2 の Hyper-V 上でのHP ProLiant用ネットワークチーミングソフトウェア使用手順
Microsoft Windows Server 2008/2008 R2 の Hyper-V 上での HP ProLiant 用ネットワークチーミングソフトウェア使用手順 設定手順書第 4 版 はじめに...2 ソフトウェア要件...2 インストール手順...2 チーミングソフトウェアのアンインストール...3 HP Network Teamの作成...5 HP Network Teamの解除...10
動機 もう6学期だし真面目に勉強しようと思った 真面目に授業聞いてみたけどよくわからなかった Amazonみてたら OS自作 という文字列を発見 話し聞いてもよくわからないしもはや自分で作っちゃえばいいんじゃない 駒場祭付近暇だしそこで 一気に作っちゃおう
OSがあまりにわからなかったからとり あえず自分でOSつくっちゃった話 03-150508 野上和加奈 動機 もう6学期だし真面目に勉強しようと思った 真面目に授業聞いてみたけどよくわからなかった Amazonみてたら OS自作 という文字列を発見 話し聞いてもよくわからないしもはや自分で作っちゃえばいいんじゃない 駒場祭付近暇だしそこで 一気に作っちゃおう 0 step 本選び OS自作についての本はいくつかあった
