型とは

質問: 型とはなんですか?
回答:値の意味です。

あえてプログラミング言語に限定せず、NW・IO・HW等も含む広義の意味でのコンピュータがやり取りするのは2進数の羅列だけである。そうした2進数の羅列を意味づけし解釈するには「型」が必要となる。この意味で型は仕様と同義であり、広義のコンピュータの土台そのものとさえ言える。

リファクタリング

リファクタリングにも定義があったのね。。

リファクタリングの定義

  • リファクタリングとは外から見たときの挙動は変えずに内部のコードだけを変更すること
  • リファクタリングには挙動が変わらないことを保証する手段としのテストコードが必要である。

テストコードとは

いかの理由によりテストコードは常に単純であるべきである。

  • テストコードはある意味ではプログラムの仕様そのものを定めるドキュメントになる。
  • 仕様が複雑だったり役割が複数あるコードはテストコードが書きにくい。
  • このことは仕様や設計を見直すことを示唆しているため、テストコードを工夫するのではなくコードを修正するべき

プログラムカウンタ

  • プログラムカウンタ用のレジスタは、名前は違えどもどのCPUにも必ず存在する。
  • ハードウェア的な観点からは、プログラムカウンタの数=同時に実行できるプログラムの数である。
  • マルチコアCPUには各コアごとにプログラムカウンタが存在する。
  • IntelのハイパースレッディングのようなマルチスレッドのCPUでは、CPUのコア内のスレッド毎に1つのプログラムカウンタを持つ。
  • 4コア8スレッドなら32個のプログラムカウンタが存在する 。

無線LANの帯域

各帯域の特徴をしっかり抑えること!!

2.4GHz帯域

  • 回析するため障害物に強い。
  • 電子レンジなどの家電が利用する帯域と重複し電波干渉の恐れがある。

5GHz帯域

  • W56帯以外は屋外の利用は法律上認められていない。
  • W53帯およびW56帯にはDFSおよびTPCの実装が必要。
  • DFSおよびTPCによりチャネル変更や停波が生じる恐れがある。
  • 電波干渉がないため5GHz帯のほうが通信速度が早い場合がある。

DFS機能

気象レーダーの干渉波を検出した場合、ダイナミックにチャネルを変更する機能。

TPC機能

干渉を回避する為無線の出力を低減させる機能。

チャンネルボンディング

チャネルボンディングとは

束ねた複数チャネルを用いることで通信速度更新する技術。

  • 11nでは束ねるチャネル数は2つまで
  • 11acでは束ねるチャネル数は4/8/16まで

チャネルボンディング時のチャネル幅

  • chを束ねない場合は20MHz幅
  • chを2つ束ねた場合40MHz幅
  • chを4つ束ねた場合80MHz幅

注意

  • 2.4GHz帯でチャネルボンディングすると隣接チャネルとの電波干渉の恐れがある。
  • そのためチャネルボンディングを行う際には5GHz帯で利用するのが望ましい。

tech.nikkeibp.co.jp

無線LANのチャネル

本当に自分の頭の中で整理して、一度自分自身の言葉で書き出さないと何もかも忘れてしまう。。

チャネル

IEEE802.11nでは2.4GHzおよび5GHz帯域を利用する。帯域という言葉がある通り正確には2.4GHzおよび5GHz近傍の連続する帯域をチャネルという単位に分割し、チャネルを利用してAPと端末間で通信を行う。

チャネルの割当例

5GHz帯の場合は以下のようにチャネルが割り当てられている。

  • W52に4ch
  • W53に4ch
  • W56に8ch

チャネルの電波干渉

  • 2.4GHz帯では隣接するチャネル間は周波数が重複するため電波干渉が生じる。そのため「1/6/11」「2/7/12」のように5チャネルずつ離して割り当てるのが一般的。
  • 5GHz帯では隣接するチャネル間は周波数が重複しないため電波干渉しない。
  • 干渉を考慮すると存在するチャネル数と同時に利用可能なチャネル数は一致しないことに注意。20Hz幅の場合、2.4GHz帯では同時利用は4chであり、5GHz帯では同時利用は19chである。

参考

musenlan.biz