• 検索結果がありません。

NTMobile フレームワークの Java ラッパーの提案と実装

N/A
N/A
Protected

Academic year: 2021

シェア "NTMobile フレームワークの Java ラッパーの提案と実装"

Copied!
31
0
0

読み込み中.... (全文を見る)

全文

(1)

NTMobileフレームワークのJavaラッパーの提案と実装

清水 一輝* 八里 栄輔 納堂 博史 鈴木 秀和 内藤 克浩§ 渡邊 晃

名城大学 バレイキャンパスジャパン §愛知工業大学

1 はじめに

モバイルネットワークの普及に伴って,ネットワーク 環境に関わらず通信を開始することができる通信接続 性とネットワークが切り替わった際にも通信を継続でき る移動透過性が求められている.NTMobile(Network Traversal with Mobility)は両者を同時に実現する次世 代の技術である[1].

NTMobileLinuxカーネルに実装を行っていたが,

スマートフォン等ではルート権限が必要となるため利 用できなかった.そこでNTMobileをアプリケーショ ンに移植し通信ライブラリを提供する方法として,NT- Mobileフレームワークを検討している[2].フレーム ワークはC言語によって記述されているため,Java 利用するには変換が必要である.そこで本研究では,

NTMobileフレームワーク用のJavaラッパーを実現す る方式について検討した.Javaアプリケーションでは NTMobileをほとんど意識することなく,Java標準API を使用すると自動的にNTMobileフレームワークを呼 び出すことができる.

2 NTMobile

2.1 概要

NTMobile の基本構成は,NTMobile 機能を有する NTM端末とNTM端末の端末情報管理やトンネルの 経路指示を行うDC(Direction Coordinator)によって 構成される.

NTM端末は,起動時に自身の実IPアドレスをDC に対して登録し,DCから仮想IPアドレスを取得する.

アプリケーションは仮想IPアドレスを利用して通信を 確立する.仮想IPアドレスにより生成されたパケット は全て実IPアドレスによってカプセル化する.この方 法によりNTM端末はIPv4グローバル/IPv4プライベー /IPv6アドレスの違いを意識することなく相互に通信 ができ,通信中にネットワークを切り替えることが可 能である.

Proposal and Implementation of Java Wrapper for NTMobile Frame- work

†Kazuki Shimizu,‡Eisuke Yasato,†Hiroshi Nodo,†Hidekazu Suzuki,

§Katsuhiro Naito,Akira Watanabe

Meijo University

Valley Campus Japan

§Aichi Institute of Technology

2.2 フレームワークの処理

1NTMobileフレームワークで行う処理を示す.

通信開始側の端末をMNMobile Node),通信相手側 の端末をCN(Correspondent Node)と呼ぶ.フレーム ワークの処理は大きく以下の3つに分けられる.

(i) 登録処理

MN及びCN起動時に自身の実IPアドレスを DCに登録し,DCから仮想IPアドレスの取得す る.これにより,NTMobile通信のための準備が 整う.上位アプリケーションに対してntmfw ntm init関数を提供する.

(ii) トンネル生成

MNは通信開始時にCNFQDNを指定して DCに経路指示を依頼する.MNCNDC 指示に従ってトンネル経路を構築する.上位アプ リケーションに対してntmfw getaddrinfo関数 を提供する.

(iii) トンネル通信

 パケット送受信時に,フレームワークを呼び出 し,NTMobileによるトンネル通信を行う.上位 アプリケーションに対して名前が異なるCソケッ トと同じ関数を提供する.

トンネル通信

MN

DC ( i )

CN

( ii ) ( iii )

( i )

1: NTMobileフレームワークで行う処理

3 Javaラッパーの構成

2Javaラッパーを用いたNTM端末のモジュー ル構成を示す.JavaアプリケーションにてNTMobile 信を行うには,C言語で記述されたNTMobileフレー

(2)

ムワークの関数を呼び出す必要がある.C言語とJava では引数の型の違いがあるため,NTMobileフレーム ワークを呼び出す前にJavaラッパーを介して型の変換 処理を行う.NTMobileの通信処理はNTMobileフレー ムワークが行うので,Javaでは関与する必要はない.

Javaアプリケーションでは,Java標準APIを使用し て自動的にNTMobile通信を実現できるように,Java 標準の通信クラスのメソッドをNTMobile通信用のメ ソッドでオーバーライドする.これによりJavaの通信 に関するメソッドを使用した際にJavaラッパーによっ

NTMobileフレームワークの関数を自動的に呼び出

すようになる.

 図 2 init getByName 2 つの処理は,NT- Mobileフレームワーク特有の処理を行うため,Java API をオーバーライドすることができない.そこ でこの2つのメソッドは新たにクラスを作成し,そこ に定義する.init NTMobileを起動するために必 要な処理であるため,アプリケーション側で使用する 際に引数を予め知っておく必要がある.getByName ntmfw getaddrinfoを呼び出すが,Java標準APIでも 提供するメソッドであるため同じ引数で使用できるよ うにした.その他のJavaソケットは,型の変換後にそ

のままNTMfw Cソケットを呼び出す.

Java アプリケーション

Java ラッパー

NTMobile フレームワーク

Linux

Java ソケット

NTMfw C ソケット

C ソケット

ntmfw_ntm_init

init getByName

ntmfw_getaddrinfo

2: Javaラッパーを用いたNTM端末のモジュール 構成

4 評価

Javaラッパーを実装してNTMobile通信を行い,動 作検証と処理時間の測定を行った.

1台のホストマシン上にDC,MN,CNの仮想マシ ンを構築し,DCMNCNを同一IPv4プライベート ネットワークに接続し,動作検証を行った.処理時間の 測定には,JavaSystemクラスにおけるnanoTime ソッドを使用した.MNCN間で,Javaラッパーを用

いてNTMobileUDPでのトンネル通信を行った際に 要する時間の測定を7回行った.Javaでは動的にクラ スをロードするため,初回起動時等では立ち上がりが 遅い.そこで7回測定した結果の最初の2回を除いた 5回を平均した結果を表1に示す.表1Linuxとは,

NTMobileを利用せずJava標準APIにて用意されている UDP通信用のDatagramSocketクラスのsend/receive メソッドを使用し,送信/受信するのに要した時間であ る.この測定結果は図2JavaラッパーとNTMobile フレームワークを除いた処理と同等であるため,表1

Linuxの処理時間とみなすことができる.

1:送信/受信の処理時間の平均 測定箇所 送信時[ms] 受信時[ms]

Javaラッパー 0.13 0.16

NTMobile 2.91 2.37

Linux 0.07 0.01

合計 3.11 2.54

1より,NTMobile通信を行うと送信時では,約 3.1ミリ秒,受信時では約2.5ミリ秒の時間を要した.

NTMobile通信時にかかる時間の多くがNTMobile レームワークであることが分かった.NTMobileフレー ムワークにて多くの時間を要するのは,メッセージ全 体の暗号化/復号処理等が含まれるためであると考えら れる.

Javaラッパーでの処理に要した時間は送信時では,

0.13ミリ秒,受信時では約0.16ミリ秒であった.

5 まとめ

本稿では,NTMobileフレームワーク用のJavaラッ パーを実現する方式を提案した.UDP通信部分の実装 を行い,Java標準APIを使用してNTMobile通信を実 現できることを確認した.今後は,TCP通信部分の実 装検討及び性能評価を行う予定である.

参考文献

[1] 上 醉 尾 一 真 ,鈴 木 秀 和 ,内 藤 克 浩 ,渡 邊 晃 ,”IPv4/IPv6 混 在 環 境 で 移 動 透 過 性 を 実 現 するNTMobileの実装と評価,情報処理学会論文 誌,Vol.54,No.10,pp2288-2299,2013.

[2] K.Naito,K.Kamienoo,H.Suzuki,A.Watanabe,

K.Mori and H.Koboyashi”End-to-end IP mobility platform in application layer for iOS and Android OS”IEEE CCNC 2014pp.276-2812014

(3)

NTMobile フレームワーク⽤

Java ラッパーの提案と実装

清⽔ ⼀輝 † ⼋⾥ 栄輔 ‡ 納堂 博史 † 鈴⽊ 秀和 † 内藤 克浩§ 渡邊 晃 †

† 名城⼤学

‡ バレイキャンパスジャパン

§愛知⼯業⼤学

(4)

研究背景

n インターネット通信の需要増加

l

スマートフォンなどの移動通信端末の普及

n 通信接続性の課題

l IPv4

アドレスの枯渇に伴い,

NAT

によるプライベートネットワークを 構築することが⼀般的

l NAT

の外側にあるネットワークから,

NAT

の内側にあるネットワークにアクセスできない(

NAT

越え問題)

1

NATNetwork Address Translation

端末間で⾃由に通信できない

グローバルネットワーク プライベートネットワーク

端末A 端末B

NAT

(5)

研究背景

n 移動透過性の課題

l

現在のネットワークでは,

IP

アドレスを通信識別⼦としている

l

端末移動時などにネットワークが切り替わると,

端末の

IP

アドレスが変化し,通信を継続できない

2

移動しながら通信を継続できない

ネットワークA

端末A 端末B

ネットワークB IPアドレス:A

(6)

研究背景

n 移動透過性の課題

l

現在のネットワークでは,

IP

アドレスを通信識別⼦としている

l

端末移動時などにネットワークが切り替わると,

端末の

IP

アドレスが変化し,通信を継続できない

3

ネットワークA

端末A 端末B 端末B

移動しながら通信を継続できない

移動

IPアドレス:B ネットワークB

IPアドレス:A

(7)

NTMobile

(Network Traversal with Mobility)

n 通信接続性と移動透過性を同時に実現する技術

l NTM

端末

(NTMobile Node)

NTMobile機能が実装された端末

l DC(Direction Coordinator)

通信経路の指⽰

仮想IPアドレスの配布

l RS(Relay Server)

直接通信不可の際,

通信を中継

n DC , RS は複数台設置可能

4

MNMobile Node CNCorrespondent Node

・端末の位置に依存しない

・実IPアドレスの変化を隠蔽 仮想IPアドレス

Private Network Private Network

Internet

NTM端末:MN DC

RS

NAT

NTM端末:CN

(8)

NTMobile

(Network Traversal with Mobility)

n 通信接続性と移動透過性を同時に実現する技術

l NTM

端末

(NTMobile Node)

NTMobile機能が実装された端末

l DC(Direction Coordinator)

通信経路の指⽰

仮想IPアドレスの配布

l RS(Relay Server)

直接通信不可の際,

通信を中継

n DC , RS は複数台設置可能

5

MNMobile Node CNCorrespondent Node

・端末の位置に依存しない

・実IPアドレスの変化を隠蔽 仮想IPアドレス

Private Network Private Network

Internet

NTM端末:MN DC

RS

NAT

NTM端末:CN 端末起動時

仮想IPアドレスの配布 端末情報の登録

(9)

NTMobile

(Network Traversal with Mobility)

n 通信接続性と移動透過性を同時に実現する技術

l NTM

端末

(NTMobile Node)

NTMobile機能が実装された端末

l DC(Direction Coordinator)

通信経路の指⽰

仮想IPアドレスの配布

l RS(Relay Server)

直接通信不可の際,

通信を中継

n DC , RS は複数台設置可能

6

MNMobile Node CNCorrespondent Node

・端末の位置に依存しない

・実IPアドレスの変化を隠蔽 仮想IPアドレス

Private Network Private Network

Internet

NTM端末:MN DC

RS

NAT

NTM端末:CN 通信開始時()

経路指⽰の要求

通信経路の指⽰

(10)

NTMobile

(Network Traversal with Mobility)

n 通信接続性と移動透過性を同時に実現する技術

l NTM

端末

(NTMobile Node)

NTMobile機能が実装された端末

l DC(Direction Coordinator)

通信経路の指⽰

仮想IPアドレスの配布

l RS(Relay Server)

直接通信不可の際,

通信を中継

n DC , RS は複数台設置可能

7

MNMobile Node CNCorrespondent Node

・端末の位置に依存しない

・実IPアドレスの変化を隠蔽 仮想IPアドレス

Private Network Private Network

Internet

NTM端末:MN DC

RS

NAT 通信開始時()

NTM端末:CN

トンネル構築

(11)

NTMobile

(Network Traversal with Mobility)

n 通信接続性と移動透過性を同時に実現する技術

l NTM

端末

(NTMobile Node)

NTMobile機能が実装された端末

l DC(Direction Coordinator)

通信経路の指⽰

仮想IPアドレスの配布

l RS(Relay Server)

直接通信不可の際,

通信を中継

n DC , RS は複数台設置可能

8

MNMobile Node CNCorrespondent Node

・端末の位置に依存しない

・実IPアドレスの変化を隠蔽 仮想IPアドレス

Private Network Private Network

Internet

NTM端末:MN DC

RS

NAT

NTM端末:CN トンネル通信時

トンネル通信

(12)

NTMobile

(Network Traversal with Mobility)

n 通信接続性と移動透過性を同時に実現する技術

l NTM

端末

(NTMobile Node)

NTMobile機能が実装された端末

l DC(Direction Coordinator)

通信経路の指⽰

仮想IPアドレスの配布

l RS(Relay Server)

直接通信不可の際,

通信を中継

n DC , RS は複数台設置可能

9

MNMobile Node CNCorrespondent Node

・端末の位置に依存しない

・実IPアドレスの変化を隠蔽 仮想IPアドレス

Private Network

Internet

NTM端末:MN DC

RS

NAT

NTM端末:CN

移動

端末移動時()

通信経路の指⽰

経路指⽰の要求

(13)

NTMobile

(Network Traversal with Mobility)

n 通信接続性と移動透過性を同時に実現する技術

l NTM

端末

(NTMobile Node)

NTMobile機能が実装された端末

l DC(Direction Coordinator)

通信経路の指⽰

仮想IPアドレスの配布

l RS(Relay Server)

直接通信不可の際,

通信を中継

n DC , RS は複数台設置可能

10

MNMobile Node CNCorrespondent Node

・端末の位置に依存しない

・実IPアドレスの変化を隠蔽 仮想IPアドレス

Private Network

Internet

NTM端末:MN DC

RS

NAT

NTM端末:CN

移動

端末移動時()

トンネル再構築

(14)

NTMobile

(Network Traversal with Mobility)

n 通信接続性と移動透過性を同時に実現する技術

l NTM

端末

(NTMobile Node)

NTMobile機能が実装された端末

l DC(Direction Coordinator)

通信経路の指⽰

仮想IPアドレスの配布

l RS(Relay Server)

直接通信不可の際,

通信を中継

n DC , RS は複数台設置可能

11

MNMobile Node CNCorrespondent Node

・端末の位置に依存しない

・実IPアドレスの変化を隠蔽 仮想IPアドレス

Private Network

Internet

NTM端末:MN DC

RS

NAT

NTM端末:CN

移動

トンネル通信時

トンネル通信

(15)

NTMobile フレームワーク

n NTMobile 機能をユーザ空間にて実現する実装⽅式

n アプリケーションは C ⾔語の標準ソケット API に代わり,

NTM ソケット API を使⽤する

12

APIApplication Programming Interface Cアプリケーション

NTMobileフレームワーク

Linux

l ntmfw_bind l ntmfw_sendto l ntmfw_recvfrom

l bind l sendto l recvfrom

C標準ソケットAPI NTMソケットAPI

(16)

NTMobile フレームワークの構成

n 仮想 IP スタック

l

仮想

IP

アドレスの提供

n パケット操作

モジュール

l

パケットの暗号化

/

復号

l

改ざん検知のための

MAC

付与

/

検証

n トンネルテーブル

l

/

仮想

IP

アドレス等の 関係を所持

n ネゴシエーション

モジュール

l

通信経路のやり取り

13

MACMessage Authentication Code

NTMソケットAPI

CソケットAPI 仮想IP

スタック

ネゴシエー モジュールション トンネルテーブル

パケット操作 モジュール

(17)

NTMobile フレームワーク

n フレームワークは C ⾔語によって実装

l

フレームワークを利⽤できるアプリケーションは

C

⾔語に限定

l

実⽤的な利⽤のためには他の

プログラミング⾔語からフレームワークを 利⽤可能にするためのラッパーが必要

n ラッパーとは

l

他のプログラミング⾔語にて 実装された機能などを

利⽤できるようにするもの

14

アプリケーション

NTMobileフレームワーク

Linux ラッパー

(18)

NTMobile ⽤ Java ラッパー

n Java ラッパー内での処理内容

l

ラッパーで使⽤するソケット

API

のマッピング

l C

⾔語と

Java

での違いの除去

l Java

標準ソケット

API

NTMobile

通信を⾏うように再定義

15

Javaアプリケーション

NTMobileフレームワーク Javaラッパー

JNA

l ntmfw_sendto l ntmfw_recvfrom

NTMソケットAPI

l send l receive

Java標準ソケットAPI

(19)

NTMobile ⽤ Java ラッパー

n ラッパーで使⽤するソケット API のマッピング

l JNA

を使⽤する

n マッピング例

l UDP

送信⽤の

NTM

ソケット

API

C⾔語

ntmfw_sendto(NTM_SOCK fd, const void *buff, NTM_DATALEN buff_len, int32_t flags, struct sockaddr *addr, NTM_SOCKLEN addr_len)

Java

ntmfw_sendto(int fd, Pointer buff, NativeSize buff_len,

int flags, sockaddr.ByReference addr, int addr_len)

16

・オープンソースのライブラリ

C⾔語のライブラリへアクセスする⼿法を提供

C⾔語と同じ名前でAPIを定義することでJavaで使⽤可能になる JNA(Java Native Access)

(20)

NTMobile ⽤ Java ラッパー

n UDP 送信⽤の Java 標準ソケット API との⽐較

l

マッピング後の

NTM

ソケット

API

ntmfw_sendto(int fd, Pointer buff, NativeSize buff_len,

int flags, sockaddr.ByReference addr, int addr_len)

l Java

の標準ソケット

API

send(DatagramPacket p)

n 異なる点

17

マッピング後の

NTMソケットAPI Java

標準ソケットAPI

名前 ntmfw_sendto send

引数の数 6 1

NTMソケットAPIJavaの標準ソケットAPIは⼤きく異なる

(21)

NTMobile ⽤ Java ラッパー

n C ⾔語と Java での違いの除去

l Java

の標準ソケット

API

NTM

ソケット

API

を使⽤可能にする

send(DatagramPacket p)

ntmfw_sendto(int fd, … , int addr_len)を使⽤可能にする

18

1. send(DatagramPacket p)を呼び出す

2. sendの引数で得た“DatagramPacket p”から メッセージやIPアドレス等の情報を取り出す

3. 2.で取り出した情報をntmfw_sendtoの引数に渡す 4. ntmfw_sendto(int fd, … , int addr_len)が実⾏される 5. send(DatagramPacket p)が終了する

Javaの標準ソケットAPIと同じ使い⽅で

マッピングしたNTMソケットAPIが使⽤可能になる

(22)

NTMobile ⽤ Java ラッパー

n C ⾔語と Java での違いの除去

l Java

の標準ソケット

API

NTM

ソケット

API

を使⽤可能にする

send(DatagramPacket p)

ntmfw_sendto(int fd, … , int addr_len)を使⽤可能にする

19

1. send(DatagramPacket p)を呼び出す

2. sendの引数で得た“DatagramPacket p”から メッセージやIPアドレス等の情報を取り出す

3. 2.で取り出した情報をntmfw_sendtoの引数に渡す 4. ntmfw_sendto(int fd, … , int addr_len)が実⾏される 5. send(DatagramPacket p)が終了する

Javaの標準ソケットAPIと同じ使い⽅で

マッピングしたNTMソケットAPIが使⽤可能になる

(23)

NTMobile ⽤ Java ラッパー

n C ⾔語と Java での違いの除去

l Java

の標準ソケット

API

NTM

ソケット

API

を使⽤可能にする

send(DatagramPacket p)

ntmfw_sendto(int fd, … , int addr_len)を使⽤可能にする

20

1. send(DatagramPacket p)を呼び出す

2. sendの引数で得た“DatagramPacket p”から メッセージやIPアドレス等の情報を取り出す

3. 2.で取り出した情報をntmfw_sendtoの引数に渡す 4. ntmfw_sendto(int fd, … , int addr_len)が実⾏される 5. send(DatagramPacket p)が終了する

Javaの標準ソケットAPIと同じ使い⽅で

マッピングしたNTMソケットAPIが使⽤可能になる

(24)

NTMobile ⽤ Java ラッパー

n C ⾔語と Java での違いの除去

l Java

の標準ソケット

API

NTM

ソケット

API

を使⽤可能にする

send(DatagramPacket p)

ntmfw_sendto(int fd, … , int addr_len)を使⽤可能にする

21

1. send(DatagramPacket p)を呼び出す

2. sendの引数で得た“DatagramPacket p”から メッセージやIPアドレス等の情報を取り出す

3. 2.で取り出した情報をntmfw_sendtoの引数に渡す 4. ntmfw_sendto(int fd, … , int addr_len)が実⾏される 5. send(DatagramPacket p)が終了する

Javaの標準ソケットAPIと同じ使い⽅で

マッピングしたNTMソケットAPIが使⽤可能になる

(25)

NTMobile ⽤ Java ラッパー

n C ⾔語と Java での違いの除去

l Java

の標準ソケット

API

NTM

ソケット

API

を使⽤可能にする

send(DatagramPacket p)

ntmfw_sendto(int fd, … , int addr_len)を使⽤可能にする

22

1. send(DatagramPacket p)を呼び出す

2. sendの引数で得た“DatagramPacket p”から メッセージやIPアドレス等の情報を取り出す

3. 2.で取り出した情報をntmfw_sendtoの引数に渡す 4. ntmfw_sendto(int fd, … , int addr_len)が実⾏される 5. send(DatagramPacket p)が終了する

Javaの標準ソケットAPIと同じ使い⽅で

マッピングしたNTMソケットAPIが使⽤可能になる

(26)

NTMobile ⽤ Java ラッパー

n C ⾔語と Java での違いの除去

l Java

の標準ソケット

API

NTM

ソケット

API

を使⽤可能にする

send(DatagramPacket p)

ntmfw_sendto(int fd, … , int addr_len)を使⽤可能にする

23

1. send(DatagramPacket p)を呼び出す

2. sendの引数で得た“DatagramPacket p”から メッセージやIPアドレス等の情報を取り出す

3. 2.で取り出した情報をntmfw_sendtoの引数に渡す 4. ntmfw_sendto(int fd, … , int addr_len)が実⾏される 5. send(DatagramPacket p)が終了する

Javaの標準ソケットAPIと同じ使い⽅で

マッピングしたNTMソケットAPIが使⽤可能になる

(27)

NTMobile ⽤ Java ラッパー

n Java 標準ソケット API を NTMobile 通信を⾏うように再定義

l Java

のソケット実装ファクトリへの対応

24

l bind l send l receive

Java標準ソケットAPI 1. 引数で得た情報を NTMソケットAPI 使えるように処理する 2. 処理後の値を

NTMソケットAPIの引数で渡す 3. Java標準ソケットAPIに代わり,

NTMソケットAPIが処理を⾏う 再定義後のソケットAPI

再定義

⼀括で再定義することが可能

(28)

動作検証

n 装置の仕様

l

全ての装置を

1

台のホストマシン上に仮想マシンで構築

25

ホストマシン OS Windows 10 64bit

CPU Intel Core i7-4770 3.40GHz Memory 8.00GB

仮想マシン MNCN DC

OS Ubuntu 14.04 32bit Ubuntu 12.04 32bit Kernel Version 3.13.0-24-generic 3.2.0-101-generic-pae

CPU割り当て 1Core 1Core

Memory割り当て 各2.00GB 1.00GB

DC CN

MN

(29)

動作検証

n NTM ソケット API を使⽤し, UDP による任意のメッセージを 送受信するアプリケーションを C ⾔語と Java で作成

n C ⾔語と Java , Java 同⼠の 2 通りで動作を検証

l 2

通りで

UDP

送受信の成功を確認

26

C Java

Java Java

(30)

性能評価

n UDP 通信時の処理時間を計測

l 5

回の平均を計算

n NTMobile ではパケット暗号化 / 復号,

改ざん検知のために MAC 付与 / 検証を

⾏うため時間を要する

27

MACMessage Authentication Code

計測箇所 送信時[ms] 受信時[ms]

(ⅰ) Javaラッパー 0.13 0.16

(ⅱ) NTMobile 2.91 2.37

(ⅲ) Linux 0.07 0.01

合計 3.11 2.54

Javaアプリケーション

Linux

NTMobileフレームワーク Javaラッパー

JNA

()

()

()

(31)

まとめ

n NTMobile ⽤ Java ラッパー

l NTMobile

フレームワークを

Java

にて使⽤可能にする

n 実装と評価

l

仮想環境にて正常に動作することを確認

JavaNTMobileを使⽤可能

l C

⾔語と

Java

での異なるプログラミング⾔語間による通信も確認

n 今後の予定

l

既存アプリケーションへの実装

28

参照

関連したドキュメント

スライダは、Microchip アプリケーション ライブラリ で入手できる mTouch のフレームワークとライブラリ を使って実装できます。 また

9.事故のほとんどは、知識不足と不注意に起因することを忘れない。実験

※ 硬化時 間につ いては 使用材 料によ って異 なるの で使用 材料の 特性を 十分熟 知する こと

本装置は OS のブート方法として、Secure Boot をサポートしています。 Secure Boot とは、UEFI Boot

これはつまり十進法ではなく、一進法を用いて自然数を表記するということである。とは いえ数が大きくなると見にくくなるので、.. 0, 1,

このように、このWの姿を捉えることを通して、「子どもが生き、自ら願いを形成し実現しよう

備考 1.「処方」欄には、薬名、分量、用法及び用量を記載すること。

ASTM E2500-07 ISPE は、2005 年初頭、FDA から奨励され、設備や施設が意図された使用に適しているこ