- TRUE IDEモード・・・IDEとして動作させるモード。これによりCFをHDDのように扱える様になる。
- PICマイコンの割り込み・・・割り込み要因に対して、割り込みベクタを2つ持っている。(デバッグ用割込みとリリース用で使い分ける事を想定しているみたい)
一言メモ
GRUBが行っている起動シーケンス
GRUBの起動シーケンス
GRUBがやっている起動シーケンスは、以下のようである。
- カーネルの読み込み
- initrdの読み込み
- カーネルの起動
- linuxrcスクリプトの実行
- 初期化プロセスの実行
カーネルイメージをメモリ上に展開する。
※カーネルイメージは、gzip等で圧縮されている。
initrdの読み込み
initrdファイル(gzip等で圧縮されている)をメモリ上の展開する。
このファイルは、メモリ上に展開されたRAMディスクに配置されるファイルシステム。
HDD等のファイルシステムをマウントするとこのファイルシステムは、消去される。
※組み込み系の場合、HDD等のファイルシステムを持たないものもあるので、消去せず、このままシステムとして起動を継続する場合もある。
カーネルの起動
カーネルの起動は、GRUBにより行われる。
起動したカーネルは、自分自身とinitrdファイルを展開し、初期化処理を実行する。
linuxrcスクリプトの実行
このスクリプトは、initrdファイル内に存在する。
linuxrcスクリプトは、ルートファイルシステムをマウントする為に必要なドライバをカーネルに読み込み、HDD等のファイルシステムをマウントする為の処理が記述されている。
初期化プロセルの実行
HDD等のファイルシステム内にあるファイルにより初期化プロセスが実行される。
この初期化プロセスが終了するとLinuxシステムが使用可能になる。
Linuxのブート
Linuxの起動ってどうなってんの?と思ったので調べてみる。
調べてみるのは、PC系と組み込み系
調べてみるのは、PC系と組み込み系
- PC系
- PowerOn→BIOS起動→ハードウェア初期化→ブートデバイス接続→接続OKならMBR探して起動してみる。→ダメなら次のブートデバイスと接続
- 組み込み系
- PowerOn→リセットのベクタアドレスへジャンプ→そのアドレスから実行開始
EAN-UPCについて
食品などでよく見かけるバーコード。このバーコードの種類は、2つある。
○構成とモジュール数
バーコードの構成は、下図の通りである。
○モジュール構成本数
※つまり、左右のキャラクタの構成本数が違うだけであとは同じである。(まぁ、当たり前といえばそうですが・・・。)
○寸法と倍率
バーコードの寸法と倍率の関係は、下表の通りになる。
○チェックディジット算出手順
○エンコード手順
- 標準・・・12桁(コード)+1桁(チェックディジット)
- 短縮・・・7桁(コード)+1桁(チェックディジット)
○構成とモジュール数
バーコードの構成は、下図の通りである。
○モジュール構成本数
名称 | 別名称 | 標準(JAN-13) | 短縮(JAN-8) |
---|---|---|---|
クワイエットゾーン | レフトマージン | 11 | 7 |
スタートコード | レフトガードバー | 3 | 3 |
データキャラクタ(左) | - | 42 | 28 |
センターバー | - | 5 | 5 |
データキャラクタ(右) | - | 35 | 21 |
チェックディジット | - | 7 | 7 |
ストップコード | ライトガードバー | 3 | 3 |
クワイエットゾーン | ライトマージン | 7 | 7 |
○寸法と倍率
バーコードの寸法と倍率の関係は、下表の通りになる。
倍率 | 0.800 | 1.000 | 1.200 | 2.000 |
---|---|---|---|---|
モジュール幅[mm] | 0.264 | 0.330 | 0.396 | 0.660 |
幅(長さ)[mm] | 29.830 | 37.290 | 44.750 | 74.580 |
高さ[mm] | 18.290 | 22.860 | 27.430 | 45.720 |
○チェックディジット算出手順
- 偶数桁すべてを加算し、その加算値を3倍する。
- 奇数桁すべてを加算し、手順1の結果を加算する。
- 手順2の結果を10で割った余りを保持する
- 余りが0で無ければ、10を引く。
○エンコード手順
- 標準
- ※また後ほど・・・。
- 短縮
- 左側4桁の数値は、各桁の数値に対応する左パリティ(奇数)から取得する。 右側は、左パリティより取得する。
TINETの概要
データの送信・受信は、それぞれ別タスクにて行われる。
上記タスクは、データの送受信のみを行い、アプリケーション側へデータの送信は、行わない。
従って、データ処理は、アプリケーション側のタイミングにて行う事ができる。
上記タスクは、データの送受信のみを行い、アプリケーション側へデータの送信は、行わない。
従って、データ処理は、アプリケーション側のタイミングにて行う事ができる。
固定長メモリプール@μITRON
メモリプールを図にすると左図のような感じ。
○メモリプールの生成
使用するAPIは、CRE_MPF
APIのパラメータは以下のとおり
・ID・・・プールID
・ATR・・・プール属性
・UINT・・・メモリブロック数
・UINT・・・メモリプロックサイズ
・VP・・・メモルプールの先頭アドレス
○メモリプールの生成
使用するAPIは、CRE_MPF
APIのパラメータは以下のとおり
・ID・・・プールID
・ATR・・・プール属性
・UINT・・・メモリブロック数
・UINT・・・メモリプロックサイズ
・VP・・・メモルプールの先頭アドレス
Webminをインストールする@Debian
debianに、aptitudeを使ってWebminをインストールする場合、ここを参考にすると良いです。
簡単な手順は、以下の通り
1:/etc/apt/sources.listの最後に以下の行を追加する。
deb http://download.webmin.com/download/repository sarge contrib
2:以下を実行する
cd /root
wget http://www.webmin.com/jcameron-key.asc
apt-key add jcameron-key.asc
3:apt-get updateを実行する。
簡単な手順は、以下の通り
1:/etc/apt/sources.listの最後に以下の行を追加する。
deb http://download.webmin.com/download/repository sarge contrib
2:以下を実行する
cd /root
wget http://www.webmin.com/jcameron-key.asc
apt-key add jcameron-key.asc
3:apt-get updateを実行する。
登録:
コメント (Atom)