美女Linuxコマンド版

美女Linuxオフショット版

美女Linuxバレンタイン版

神戸美女Linuxコマンド版

神戸美女Linuxオフショット版

神戸からの応援メッセージ

メルマガ購読・解除
 
1 | 2 | 3 | 4 | 5 |最初 次ページ >> ▼ /
2010-07-30 17:45:39

DMAについて

テーマ:Linuxを勉強しよう
DMAとは、CPUを使わずに、デバイスとメインメモリとの間で高速なデータ転送を行うために
使われるのがDMAと呼ばれています。


各種の装置やメモリがCPUを介することなくデータ転送を行うDMA転送は、
CPUに負荷がかからず、高速にかつ大量のデータを転送できます。


CPUが他の処理を実行中でも、ハードディスクなどとメモリとのデータの
やり取りをDMAコントローラが制御するため、CPUの負荷が少なくなり、
処理速度が向上します。


DMAの割り当ては「/proc/dma」を確認できます。


# cat /proc/dma
4: cascade



cascadeとは??


cascadeは、DMAコントローラ同士を接続していることを意味します。
試験対策では、ここまで覚えておけばOKです。



余裕があれば以下も参考にしてください。


パソコンでは4チャネルを持つDMAコントローラを2つ接続しています。
CPUには一つしか直接接続できないので、DMAコントローラが持っている
チャネルの一つをもう一つのDMAコントローラに接続して使ってます。

DMAコントローラ1(CPUに直接接続してるマスタコントローラ)
チャネル1: DMAを利用する機器に接続
チャネル2: DMAを利用する機器に接続
チャネル3: DMAを利用する機器に接続
チャネル4: もう一つのDMAコントローラ(スレーブコントローラ)に接続する←カスケード(cascade)と呼ぶ。


DMAコントローラ2(マスタコントローラを介してCPUに接続してるスレーブコントローラ)
チャネル1: DMAを利用する機器に接続
チャネル2: DMAを利用する機器に接続
チャネル3: DMAを利用する機器に接続
チャネル4: DMAを利用する機器に接続
AD
いいね!した人  |  コメント(0)  |  リブログ(0)
最近の画像つき記事
 もっと見る >>
2010-07-29 13:27:38

I/Oポートアドレス

テーマ:Linuxを勉強しよう
コンピュータ内部で、CPUが周辺機器にデータを送受信するために使う
窓口にI/Oポートというものがあります。



Iが「Input」、Oが「Output」で「入出力ポート」とも呼ばれており、
それぞれのI/Oポートは固有のI/Oポートアドレスを持ち、識別されています。



CPUは外部デバイスに直接アクセスせず、中間デバイスであるチップセットを通してデータ交換を行います。
I/Oポートアドレスとは、CPUと外部デバイスがデータ入出力を行うために、マザーボードのチップセット上に置かれているポートのアドレスのことです。



I/Oポートアドレスは16ビット分のアドレスが利用され、通常16進数(0×0000~0xffff)で表記されます。



なお、I/Oポートアドレスの割り当て情報については/proc/ioportsを参照して入手することができます。



では、I/Oアドレスの割り当てを確認します。
以下コマンドにて確認することができます。



# cat /proc/ioports

0000-001f : dma1
0020-0021 : pic1
0040-0043 : timer0
0050-0053 : timer1
0060-006f : keyboard
0070-0077 : rtc
0080-008f : dma page reg
00a0-00a1 : pic2
00c0-00df : dma2
00f0-00ff : fpu
01f0-01f7 : ide0
03c0-03df : vga+
03f6-03f6 : ide0
03f8-03ff : serial
08c0-08df : 0000:00:1f.3
9ca0-9cbf : 0000:00:1d.2
9ca0-9cbf : uhci_hcd
9cc0-9cdf : 0000:00:1d.1
9cc0-9cdf : uhci_hcd
9ce0-9cff : 0000:00:1d.0
9ce0-9cff : uhci_hcd
ac00-acff : 0000:06:05.0
b000-bfff : PCI Bus #05
c000-cfff : PCI Bus #04
d000-dfff : PCI Bus #03
e000-efff : PCI Bus #01
e000-efff : PCI Bus #02
ec00-ecff : 0000:02:08.0
fc00-fc0f : 0000:00:1f.1
fc00-fc07 : ide0


上記のように表示されました。
AD
いいね!した人  |  コメント(0)  |  リブログ(0)
2010-07-28 18:00:40

IRQ

テーマ:Linuxを勉強しよう
IRQとは、CPUがキーボードやマウスなど外部のデバイスと通信
するために使用する割り込み要求のことをいいます。


割り込み要求とは、パソコンのキーボードやマウスがCPUを
呼び出すときに起きるものです。呼び出されたCPUは要求を
受け付けるかどうかを判断して、受け付ける場合は、
現在実行中の処理を中断して要求された処理を優先して行います。


複数のデバイスで同じIRQを重複して使用することはできません。
システムを正常に動作させるには、割り込み番号を各デバイスに
割り当てる必要があります。通常、割り込み番号は自動で割り当て
られるが、もし重複した場合はBIOS設定画面などで手動設定します。


IRQ番号は、0~15までの16個が用いられています。
この番号は、CPUが様々な処理をしている時に、割り込みを要求
する際の整理番号になります。マウスやキーボードなど、すぐに
処理の必要な機器に番号が割り当ています。基本的には、自動的に
割り当てられてますが、もし自動で割り当てられなかった場合は、
手動で割り当てる必要があり、このときは重複しないように気を
つけなければなりません。


もし同時に要求があった場合には、優先順位の高いほうを先に
処理します。


どのように割り当てられているかを以下を参照してください。

0 システムタイマー
1 キーボード
2 スレーブの割り込みを転送
3 シリアルポート(COM2)
4 シリアルポート(COM1)
5 パラレルポート(LPT2)
6 フロッピーディスクドライブ
7 パラレルポート(LPT1)
8 リアルタイムクロック
9 未使用
10 未使用
11 未使用
12 PS/2マウス
13 数値演算プロセッサ
14 プライマリIDE
15 セカンダリIDE


Linuxでは、以下コマンドで確認できますので
実行して、ちゃんと表示されるかを確認してくださいね。


# cat /proc/interrupts

CPU0
0: 55114925 XT-PIC timer
2: 0 XT-PIC cascade
3: 1168042 XT-PIC eth0
4: 488 XT-PIC uhci_hcd
5: 2759 XT-PIC uhci_hcd
7: 0 XT-PIC uhci_hcd
8: 1 XT-PIC rtc
10: 5 XT-PIC ehci_hcd
14: 1355532 XT-PIC ide0
15: 60 XT-PIC ide1
NMI: 0
LOC: 0
ERR: 0
MIS: 0


以前は割り当てられるIRQは、16個でしたが、最近はマルチプロセッサ環境
に対応した割り込みコントローラであるAPICにより、16個以上割り当て
ることが可能となっています。
AD
いいね!した人  |  コメント(0)  |  リブログ(0)
1 | 2 | 3 | 4 | 5 |最初 次ページ >> ▼ /

AD

Ameba人気のブログ

Amebaトピックス

      ランキング

      • 総合
      • 新登場
      • 急上昇
      • トレンド

      ブログをはじめる

      たくさんの芸能人・有名人が
      書いているAmebaブログを
      無料で簡単にはじめることができます。

      公式トップブロガーへ応募

      多くの方にご紹介したいブログを
      執筆する方を「公式トップブロガー」
      として認定しております。

      芸能人・有名人ブログを開設

      Amebaブログでは、芸能人・有名人ブログを
      ご希望される著名人の方/事務所様を
      随時募集しております。