Send file ([File] メニュー)
ファイルを送信します。
"Send file" ダイアログボックス(送信前のファイル名指定)
- File Name
-
送信するファイルのファイル名を入力または選択してください。
ダイアログにファイルをドロップすることでファイル名を入力することもできます。
- Tera Term 4 と同じ方法で送信
-
- チェックを入れたとき(Tera Term 4 と同じ方法)
-
ファイルから読み込みながら送信します。
テキストファイルはACPとして読み込み、エンコードは自動判定されません。
- チェックを外した時
-
ファイルをメモリに読み込んでから送信します。
テキストファイルのエンコードは自動判定します。
- Binary
-
ファイルの内容をそのまま送信したい場合は選択してください。
選択しない場合は、漢字コード、改行文字が変換されて送信され、
TAB ($09), LF ($0A), CR ($0D)以外の制御文字は送信されません。
- delay type
-
- no delay
-
ディレイ処理なし
- per character
-
1文字毎にディレイ処理を行う
- per line
-
1行毎にディレイ処理を行う
- per sendsize
-
指定送信文字毎にディレイ処理を行う
- send size
-
送信サイズ(delay typeが "per sendsize"のとき有効)
- delay time(ms)
-
ディレイ時間(delay typeが "no delay"以外のとき有効)
送信サイズ
Tera Termの通信相手の受信バッファサイズと処理速度を考慮することで、
指定した送信サイズ毎にディレイを入れることで、
1キャラクタ毎、1行毎にディレイを入れるより効率的にファイル送信を行うことができます。
送信データのドロップは次のところで発生することが考えられます。
s1 s2 s3 s4 program
Tera Term ---> Tera Term内 ---> Windows ---> (sshd,telnet,pipe) ---> OS,driver ---> 擬似端末(pty) + シェル,その他コマンド
送信バッファ (serial ) UARTチップなど 組込プログラム等
受信バッファ <--- <--- <--- <---
r1 r2 r3 r4
- s1 Tera Term内の送信バッファ
-
可能性は低いでしょう。
送信バッファの空きサイズを見ながらデータを詰めていきます。
- s2 Windows
-
可能性は低いでしょう。
使用するハードウェア、ドライバのバージョンによってはBSoDを含めて様々な不具合が発生することがあります。
Tera Termのシリアルポート設定ではドライバの詳細を見ることができます。
- s3 送信路
-
serialの場合エラー時の再送処理はありません。データにエラーが発生するとドロップします。
TCP/IP, pipeの場合は可能性は低いと思われます。
- s4 OS,UARTチップ(受信側)
-
PC(CPU)の処理能力を超えたデータの受信(programがOSやチップから受信データを引き取らない場合)等で、
OS(ドライバ)、UARTチップの受信バッファがオーバーフローしてドロップします。
フロー制御等はOS(ドライバ)が行うかprogramが行うかは実装によります。
TCP/IPではフロー制御,エラー時の再送が行われ、多くの場合OS内のプロトコルスタックがこれらの処理を行います。
シリアルではフロー制御の有無はユーザーが決めることができ、オーバーフローなどエラー時の再送は自動で行われません。
- program
-
プログラム内の受信バッファオーバーフローなどでドロップします。
仮想端末(pty)ではバッファが溢れそうになると0x07(BEL)が送られ、Tera Termでベルがなります。
主なUARTチップ、ドライバの受信バッファサイズ
8250 UART 受信バッファなし
16550 UART 16 Byte FIFO
FT232R 256 Byte receive buffer
TTY drive(Linux 2.6.26) 4KB (TTSSHによるSSHの設計と実装/疑似端末のしくみ)
送信データのエコーが返ってこない場合は受信データがどこかでドロップしていることも考えられます。
"Send file" ダイアログボックス(送信中)
- Close
-
Close ボタンを押すとファイルの送信を中止します。
- Pause/Start
-
Pause ボタンを押すとファイルの送信を一時中断します。
このとき Pause ボタンは Start ボタンに変化します。
その後 Start ボタンを押すと送信を再開します。