<!doctype linuxdoctr system>

<article>
<!-- Title information -->
<title>VME Howto
<author>John Huggins and Michael Wyrick, <tt/vmelinux@va.net/
<date>v0.8a, 30 July 1998

<trans>	The Linux JF Project </trans>
<tdate> v0.8a-j, 2000 年 6 月 </tdate>

<abstract>
<!--This document came about to show the embedded system community 
how to run Linux on their VMEbus Pentium and other PCI local bus 
based VMEbus processor designs.
-->
この文章は、組み込み機器システム分野の人々に VMEbus 用 Pentium ボードや 
PCI local bus を用いた VMEbus 用プロセッサ・ボードでどのようにして 
Linux を動かすのかを示すために生まれました。
</abstract>

<!-- Table of contents -->
<toc>

<!-- Beginning -->
<sect> 
<!-- Introduction -->
はじめに
<sect1> 
<!-- Knowledge Required -->
要求される知識
<p>
<!-- 
Using Linux on an embedded VMEbus processor board is not very 
difficult.  However, more than fundamental knowledge is required.  
This document is not a primeron how to fully configure a Linux 
machine. 
-->
組み込み用の VMEbus プロセッサ・ボードで Linux を使うことはそう難しく
はありません。しかし、基礎的な知識以上のものが要求されます。この文章
は、Linux マシンを完全に構築するための入門書ではありません。
<p>
<!-- 
In order to understand this HOWTO document it is assumed that you
are thoroughly familiar with the following:
-->
この HOWTO ドキュメントを理解するためには、以下のことに精通して
いなくてはなりません。
<itemize>
<item>
<!-- 
Configuring and compiling a Linux kernel to operate the various 
peripherals on your board.
-->
カーネルの設定とコンパイルを行って、ボードについている色々な
周辺機器を使えるようにすること。
<htmlurl url="http://sunsite.unc.edu/LDP/HOWTO/Kernel-HOWTO.html" 
name="Kernel-HOWTO">、
<htmlurl url="http://www.linux.or.jp/JF/JFdocs/Kernel-HOWTO.html"
name="Kernel-HOWTO 日本語訳">
<item>
<!-- Setting up and configuring of network devices -->
ネットワーク機器のセットアップと設定。
<htmlurl url="http://sunsite.unc.edu/mdw/HOWTO/NET-3-HOWTO.html" 
name="NET-3 HOWTO">、
<htmlurl url="http://www.linux.or.jp/JF/JFdocs/NET3-4-HOWTO.html"
name="Linux Networking-HOWTO (Previously the Net-3 Howto) 日本語訳">
<item> 
<!-- Setting up of inetd -->
inetd のセットアップ。
<htmlurl url="http://sunsite.unc.edu/mdw/HOWTO/NET-3-HOWTO.html" 
name="NET-3 HOWTO">、
<htmlurl url="http://www.linux.or.jp/JF/JFdocs/NET3-4-HOWTO.html"
name="Linux Networking-HOWTO (Previously the Net-3 Howto) 日本語訳">
<item> 
<!-- 
Setting up and use of the Tundra Universe PCI to VME Bridge Chip 
<htmlurl url="http://www.tundra.com/Tundra/unidex.html" 
name="Tundra Universe">.  The new VMEUtils program makes knowledge 
of the Universe unnecessary for those who do not wish to deal with 
register level Universe access.
-->
PCI と VME のブリッジチップ Tundra 社 Universe のセットアップと使用
法。<htmlurl url="http://www.tundra.com/Tundra/unidex.html" 
name="Tundra Universe">
レジスタ・レベルで Universe にアクセスしようとしない限り、
新しい VMUtils プログラムを使えば Universe に関する知識は
不必要になります。
<item> 
<!-- 
Compiling and installing various network packages like 
<htmlurl url="http://www.apache.org/" name="Apache Site">
<htmlurl url="http://www.cetis.hvu.nl/~koos/wu-ftpd-faq.html" name="Wu-Ftpd FAQ">
-->
以下のようないろいろなネットワーク関連パッケージのコンパイルと
インストール。
<htmlurl url="http://www.apache.org/" name="Apache Site">
<htmlurl url="http://www.cetis.hvu.nl/~koos/wu-ftpd-faq.html" name="Wu-Ftpd FAQ">
<item> 
<!-- 
The VMEbus Rev. D and VME64.  Excellent information may be found at 
the <htmlurl url="http://www.vita.com/" name=" VMEbus International 
Trade Association (VITA)">.
-->
VMEbus Rev. D と VME64。 以下にすばらしい情報があります。
<htmlurl url="http://www.vita.com/" name=" VMEbus International Trade 
Association (VITA)">
</itemize>
<!-- 
If you are uncertain of how to proceed with any of the above it is 
STRONGLY recommended that you use the links provided to familiarize 
yourself with all packages. We may not reply to any mail regarding 
any of the above.  Please direct any questions to the appropriate 
author of the HOWTO or consult the respective hardware manufacturer.
-->
もし、上記のどれかにおぼつかないものがある場合は、ここで紹介している
リンクを利用して、全てのパッケージを熟知しておくことを強くお勧めしま
す。我々は上記に関してはいかなるメールにも返事は出しません。
質問はそれぞれ適切な HOWTO の著者へお願いします。もしくはハード
ウエアの製造業者へご相談ください。
<p>
<!-- 
This document describes the installation and use of VMELinux on a 
Xycom XVME-655 6U VME processor board. Other brands of VME boards 
that use a Pentium and the Tundra Universe chip should be capable 
of running VMELinux.  Please consult the Board Support Section of 
the VMELinux web site for tested boards.
-->
この文章は、VMELinux のインストールと Xycom 社 の XVME-655(6U VME 
processor board)での使用法を記述しています。Pentium と Tundra 社の 
Universe チップを使用している他のブランドのボードは VMELinux を走らせ
る能力があるはずです。
テスト済みのボードについては VMELinux の Web サイトにある
Board Support セクションを参照してください。
<htmlurl url="http://www.vmelinux.org/" 
name="VMELinux Project Web Site">
<sect1> 
<!-- Why use Linux on VMEbus systems? -->
どうして VMEbus システムで Linux を使うのか？
<p>
<!-- 
Operating systems for VMEbus computers are usually Real-time 
Operating Systems (RTOS) which have high cost and a significant 
learning curve. In return the RTOS offers quick response to real 
world events for control of machinery or response to a process.
-->
VMEbus コンピュータのオペレーティングシステムは通常、リアルタイム・
オペレーティングシステム(RTOS)です。そしてそれらは高価で習得が難しい
です。その代わり RTOS は現実世界のできごとに対してすばやく反応するので、
機器制御やプロセス応答に向いています。
<p>
<!-- 
The VMEbus provides a rugged computer enclosure and interconnection 
system. Many system integrators require this ruggedness and also 
need very fast real-time response.
However, there are many times when there is little need for 
real-time response, but the software still needs:
-->
VMEbus は、堅固なコンピュータ環境と相互接続のシステムを供給します。
多くのシステム・インテグレータにはこの堅固さが必要でしょうし、また非常に
速いリアルタイムの応答も必要でしょう。
しかし、リアルタイムの応答は不要だが以下の
ようなものは必要、というケースも多々あります。
<itemize>
<item> 
<!-- networking capability, -->
ネットワーク能力
<item> 
<!-- remote access via telnet or similar program, -->
telnet もしくは類似のプログラムによるリモートアクセス
<item> 
<!-- file transfer via FTP or similar programs, -->
FTP もしくは類似のプログラムによるファイル転送
<item> 
<!-- remote booting via BOOTP or similar method, -->
BOOTP もしくは類似の方法によるリモートブート
<item> 
<!-- a way to respond to system interrupts. -->
システム割り込みに対する応答の方法
</itemize>
<!-- Linux has all these capabilities. Thus, the VMELinux Project 
exists. -->
Linux はこれらの能力を全て持っています。だから VMELinux プロジェクト
が存在するのです。
<sect1> 
<!-- Purpose -->
目的
<p>
<!-- 
The purpose of VMELinux is to give the VME system integrator another
 choice in operating systems. Rich in features, high in reliability 
and low in cost, Linux offers benefits to the embedded computer 
industry. High cost operating systems economically prohibit the use 
of VME in many applications. With Linux and the VMELinux drivers, 
the rugged VMEbus has new possibilities.
-->
VMELinux の目的は、 VME システム・インテグレータにオペレーティング・
システムの別の選択肢を与えることです。
機能が豊富で信頼性が高く、しかも低コストの Linux は、
組み込みコンピュータ産業界に恩恵を提供します。
オペレーティング・システムが高価であるために、経済的な理由から VME が
利用できないというアプリケーションが多いのです。Linux と VMELinux 
ドライバを利用すれば、堅固な VMEbus は新たな可能性を持つのです。
<p>
<!-- The purpose of the VMELinux Project is to: -->
VMELinux プロジェクトの目的は以下の通りです:
<itemize>
<item> 
<!-- 
Maintain and improve the free VMELinux Kernel Driver software, 
-->
フリーな VMELinux カーネル・ドライバ・ソフトウエアを維持・改良すること
<item> 
<!-- 
Offer added value software components such as the VMEUtils program 
and VMEShell utilities.
-->
VMEUtils プログラムや VMEShell ユーティリティのような付加価値要素のあるソフト
ウエアの提供
<item> 
<!-- 
Test the software on various makes and brands of manufacturer 
supplied VME processor boards,
-->
さまざまなメーカが供給している VME プロセッサ・ボードでのソフトウエ
アのテスト
<item> 
<!-- 
Maintain web based documentation on each tested brand and make of 
boards,
-->
テスト済みのボード製品の Web ベースの文書の維持
<item> 
<!-- Maintain this HOWTO. -->
この HOWTO の維持
<item> 
<!-- 
Integrate user suggested and user supplied improvements into the 
virgin code so we may all benefit from the programming talents of 
others.
-->
他の方からの助言や改良を元のコードに取り入れ、こうした方々の能力をフル
に活用できるようにすること
<item> 
<!-- 
Become the original source for all the above software so VMELinux 
users can be assured of original code from the authors.
-->
上記のソフトウエア全ての一次配布元となり、VMELinux のユーザが、
著者からオリジナルのコードを取得できることを保証すること

</itemize>
<sect1> 
<!-- Feedback -->
フィードバック
<p>
<!--
As VMELinux is tested in the field, we encourage comments about how 
well or how bad it works. Please feel free to send comments to 
<htmlurl url="mailto:vmelinux@va.net" name="The VMELinux Project">
-->
VMELinux は現場でテストされていますが、うまく動作した点やうまく動作し
なかった点についてぜひコメントを送ってください。

The VMELinux Project (vmelinux@va.net)
まで、気軽にコメントをお送りください。
<p>
<!--
As we get experience about each brand of VME CPU, we will list the 
different configurations in this HOWTO. For now we will describe 
only the Xycom board.
-->
我々は各々の VME CPU ボードについての経験を得たら、この HOWTO に
別の設定も載せるつもりです。今のところ我々は Xycom 社のボードのみに
ついて記述します。
<sect1> 
<!-- VMELinux Revision History -->
VMELinux リビジョン履歴
<p>
<!-- Linux Kernel Driver -->
Linux カーネル・ドライバ
<itemize>
<item> 
<!-- November, 1997, v0.2 - Initial version on Xycom Board -->
1997 年 11 月 v0.2 - Xycom 社ボードでの初期バージョン
<item> 
<!-- December, 1997, v0.3 - Useable version used for actual work 
with project. -->
1997 年 12 月 v0.3 - 使用可能なバージョン
<item> 
<!-- February, 1998, v0.6 - DMA mode added to VME access modes. -->
1998 年 2 月 v0.6 - VME アクセスモードに DMA モードを加えた
<item> 
<!-- June, 1998, v0.8 - Fixed a few things to allow the new VMEUtils
 to work. -->
1998 年 6 月 v0.8 - 新しい VMEUtils が動くようにいくつか修正
<item> 
<!-- June 24, 1998, v0.8a - Current version made available on the 
website. -->
1998 年 6 月 24 日 v0.8a - Web サイト上で現行バージョンが入手できる
ようにした
</itemize>
<p>
<!-- VMEUtils Program -->
VMEUtils プログラム
<itemize>
<item> 
<!-- February, 1998, v0.6 - Created a command line interpreter to 
access the VMEbus -->
1998 年 2 月 v0.6 - VMEbus へアクセスするためのコマンドライン・
インタープリタを作った
<item> 
<!-- 
June, 1998, v0.8 - Fixed several issues to allow VMEShell Utilities 
to function 
-->
1998 年 6 月 v0.8 - VMEShell ユーティリティが機能するようにいくつか
の問題点を fix した
<item> 
<!-- June 24, 1998, v0.8a - Current version made available on the 
website. -->
1998 年 6 月 24 日 v0.8a - 現行バージョンが Web サイト上で入手できる
ようにした
</itemize>
<p>
<!-- VMEShell Utilities -->
VMEShell ユーティリティ
<itemize>
<item> 
<!-- 
June, 1998, v0.8 - Created command line utilities that allow access 
to the VMEbus from the Linux shell prompt.  These shell programs 
interface with the VMEUtils program. 
-->
1998 年 6 月 v0.8 - Linux シェル・プロンプトから VMEbus へアクセスを
許可するコマンドライン・ユーティリティを作った、これらのシェル・プロ
グラムは VMEUtils プログラムとのインターフェイスを行う
<item> 
<!-- 
June 24, 1998, v0.8a - Changed the name of all the shell programs 
so they all begin with "vme."  Current version made available on 
the website.
-->
1998 年 6 月 24 日 v0.8a - シェル・プログラムの全ての名前を「vme」から
始まるように変更した。現行バージョンが Web サイト上で入手できるように
した
</itemize>
<sect1> 
<!-- Copyright/Distribution -->
著作権表示/配布
<p>
<!-- This document is Copyright 1997-1998 by John Huggins and the 
VMELinux Project. -->
この文章の著作権は、John Huggins と VMELinux Project にあります
(Copyright 1997-1998)。
<p>
<!--
A verbatim copy may be reproduced or distributed in any medium 
physical or electronic without permission of the author.  
Translations are similarly permitted without express permission if 
it includes a notice on who translated it.  Commercial 
redistribution is allowed and encouraged; however please notify 
<htmlurl url="mailto:vmelinux@va.net" name="The VMELinux Project"> 
of any such distributions.
-->
オリジナルを改変しない複製は、著者の許可なしに物理的・電子的を問わず、
あらゆるメディアに自由に複写または配布できます。翻訳も翻訳者の掲示を
含むなら特別な許可なしに同様にできます。商業的な配布も許可し、また
奨励します。しかし、そのような配布は著者
The VMELinux Project (vmelinux@va.net)
にお知らせくださるようお願いします。 
<p>
<!--
Excerpts from the document may be used without prior consent 
provided that the derivative work contains the verbatim copy or a 
pointer to a verbatim copy.
-->
ドキュメントからの引用(全文のコピーや全文へのポインタを含む派生し
た著作)を事前の許可なしで使えます。
<p>
<!--
Permission is granted to make and distribute verbatim copies of 
this document provided the copyright notice and this permission 
notice are preserved on all copies.
-->
このドキュメント全体の複製・配布の際には著作権に関するこの注意事項を
添付するという条件を守ってください。またこの注意事項を各複製物のそれ
ぞれに添付するようにしてください。 
<p>
<!--
In short, we wish to promote dissemination of this information 
through as many channels as possible. However, we wish to retain 
copyright on this HOWTO document, and would like to be notified of 
any plans to redistribute this HOWTO.
-->
簡単に言うと、我々はあらゆる可能なチャンネルを経由してこの文書が
広く普及することを願っています。しかしながら、我々は HOWTO 文書を
 copyright で保護しており、HOWTO 文書を再配布する計画については連絡
してくださることを期待しています。
<sect> 
<!-- Installation of the VMELinux Kernel Driver -->
VMELinux カーネル・ドライバのインストール
<sect1> 
<!-- Download the Source -->
ソースコードのダウンロード
<p>
<!-- 
Download the distribution from the <htmlurl 
url="http://www.vmelinux.org/" name="VMELinux Web Site">.
-->
<htmlurl url="http://www.vmelinux.org/" name="VMELinux Web Site">.
から配布キットをダウンロードしてください。
<sect1> 
<!-- Install the source to the software -->
ソースコードのインストール
<p>
<!--
Place the file in a directory reserved for VME usage; We suggest 
/universe. Untar the zipped/tarred file by typing...
-->
VME 用に取っておいたディレクトリにファイルを置きます - 
名前は /universe を推奨します。zipped/tarred ファイルを以下のコマン
ドを入力して解凍します。
<verb>
tar -xzf VMELinux_08a.tar.gz
</verb>
<p>
<!-- You should see three directories and one link to ca91c042 -->
3 つのディレクトリができます。そして driver は ca91c042 
へのシンボリック・リンクです。
<verb>
ca91c042
vmeshell
vmeutils
driver
</verb>
<p>
<!-- In ca91c042 you should find: -->
ca91c042 のディレクトリには、以下のファイルがあります -
<verb>
ca91c042/                    
ca91c042/Makefile            
ca91c042/ca91c042.c          
ca91c042/ca91c042.h          
ca91c042/README              
ca91c042/e                   
ca91c042/ins                 
ca91c042/stat                
ca91c042/uns                                        
</verb>
<p>
<!-- In vmeshell you should find: -->
vmeshell のディレクトリには、以下のファイルがあります -
<verb>
vmeshell/vmer    
vmeshell/README  
vmeshell/vmeseek 
vmeshell/cmd.vme 
vmeshell/vmew    
vmeshell/vmeregw 
vmeshell/vmeregr 
vmeshell/vmefa   
vmeshell/vmecall 
vmeshell/e       
vmeshell/ec      
vmeshell/fa.vme  
vmeshell/map.vme 
vmeshell/tmp.vme 
vmeshell/vmedb   
vmeshell/vmedl   
vmeshell/vmedw   
vmeshell/vmemap  
vmeshell/vmerb   
vmeshell/vmerf   
vmeshell/vmerl   
vmeshell/vmerw   
vmeshell/vmewb 
vmeshell/vmewf 
vmeshell/vmewl 
vmeshell/vmeww 
</verb>
<p>
<!--In the vmeutils directory you should find: -->
vmeutils のディレクトリには、以下のファイルがあります -
<verb>
vmeutils/commands.cpp 
vmeutils/commands.h   
vmeutils/universe.h   
vmeutils/Makefile     
vmeutils/vmeutils.h   
vmeutils/unilib.h     
vmeutils/unilib.cpp   
vmeutils/vmeutils.cpp 
vmeutils/README       
</verb>
<sect1> 
<!-- Compile the VMELinux components -->
VMELinux コンポーネントのコンパイル
<p>
<!--
Enter the "ca91c042" directory and make the VMELinux device driver 
module.
-->
ca91c042 ディレクトリに入って、VMELinux デバイスドライバ・モジュール
を作ります。
<verb>
make
</verb>
<p>
<!-- Now you must create the several /dev driver files.  Type: -->
この時点で、 /dev にいくつかドライバ・ファイルを作らなければなりま
せん。以下のようにタイプしてください -
<verb>
make devices
</verb>
<p>
<!-- 
Once made, you should see the file "ca91c042.o" in the directory.  
This is a loadable module.  See below for loading information.  
Plus, you should find several "vme..." files in the /dev directory.
<p>Once the devices are made in the /dev directory you must change 
their permissions.  Type:
-->
make が終了すると、ディレクトリの中に「ca91c042.o」というファイルが
できているでしょう。これはローダブルなモジュールです。下記のロード
するための情報を見てください。それと /dev ディレクトリに数個の「vme...
」ファイルができているでしょう。
<p>
デバイスファイルを /dev ディレクトリに作ったら、それらのパーミ
ッションを変更しなくてはいけません。以下のようにタイプしてください -
<verb>
cd /dev
chmod 666 vme*
</verb>
<!-- Here is how the files should look: -->
ファイルがどのように見えているべきか示します。
<verb>
hostname:/dev# ls -l vme*                                           
crw-rw-rw-   1 root     root      70,   8 Jul 30 10:51 vme_ctl    
crw-rw-rw-   1 root     root      70,   0 Jul 30 10:51 vme_m0     
crw-rw-rw-   1 root     root      70,   1 Jul 30 10:51 vme_m1     
crw-rw-rw-   1 root     root      70,   2 Jul 30 10:51 vme_m2     
crw-rw-rw-   1 root     root      70,   3 Jul 30 10:51 vme_m3     
crw-rw-rw-   1 root     root      70,   4 Jul 30 10:51 vme_s0     
crw-rw-rw-   1 root     root      70,   5 Jul 30 10:51 vme_s1     
crw-rw-rw-   1 root     root      70,   6 Jul 30 10:51 vme_s2     
crw-rw-rw-   1 root     root      70,   7 Jul 30 10:51 vme_s3     
hostname:/dev#                                                      
</verb>
<p>
<!-- Change to the "vmeutils" directory and type make there. -->
「vmeutils」ディレクトリへ移ってそこで「make」と入力します。
<verb>
make
</verb>
<p>
<!--
This will compile the "vmeutils" program.  This program directly 
speaks to the kernel driver.  It is a reference work for those of 
you who wish to write your own programs to directly speak with the 
driver.
-->
これで「vmeutils」プログラムがコンパイルされます。このプログラムは直接カーネ
ル・ドライバと対話します。これは直接ドライバと対話する
プログラムを自分で書きたいと思っている人のための参考となるものです。
<p>
<!--
Copy the program "vmeutils" to your user binary directory.  On our 
system this is "/usr/local/bin."  Alternatively, you can create a 
link in the user bin directory to the "vmeutils" program.
-->
「vmeutils」を、ユーザのバイナリ・ファイルを置くディレクトリへコピーし
てください。我々のシステムでは、これは「/usr/local/bin」です。
あるいは、「vmeutils」プログラムをユーザのバイナリ・ファイルを置く
ディレクトリへリンクすることもできます。
<p>
<!--
Change to the "vmeshell" directory.  There are no files to be 
compiled here.  These are shell programs that use the "vmeutils" 
program to access the VMEbus.  All the files beginning with "vme" 
should with have a link made or be copied to the "/usr/local/bin" 
directory.
-->
「vmeshell」ディレクトリへ移ります。ここにはコンパイルするファイルは
ありません。「vmeutils」プログラムを使って VMEbus へアクセスするため
のシェル・プログラムがあります。「vme」で始まる全てのファイルは
「/usr/local/bin」ディレクトリへリンクかコピーされていなければなり
ません。
<p>
<!-- You are now ready to try the driver. -->
これでドライバを使うための準備ができました。
<sect1>
<!-- Load the VMELinux Kernel Module -->
VMELinux カーネル・モジュールのロード
<p>
<!--
Make sure you are root and insert "load" the VMELinux Kernel Module 
for the Universe chip by typing...
-->
あなたが root であることを確認してください。そして 以下のように 
Universe チップ用の VMELinux カーネル・モジュールを組み込み(ロード)し
ます。
<verb>
insmod ca91c042
</verb>
<p> 
<!--
Or just type "ins" to let the shell script do this for you.  Once 
complete, type...
-->
もしくは「ins」とだけタイプして、あとはシェルスクリプトにまかせましょう。
終了したら、以下のようにタイプしてください -
<verb>
stat
</verb>
<!--
You should see a list of registers displayed on your screen.  
Something like this...
-->
画面にこのようなレジスタのリストが表示されるでしょう。
<verb>
Universe driver info:                                  
  Control Pointer = 0000                               
  Stats  reads = 0  writes = 0  ioctls = 0             
  LSI0_CTL = 00800000    LSI1_CTL = 00800000           
  LSI0_BS  = C0000000    LSI1_BS  = 00000000           
  LSI0_BD  = C0010000    LSI1_BD  = 00000000           
  LSI0_TO  = 40009000    LSI1_TO  = 00000000           
  LSI2_CTL = 00800000    LSI3_CTL = 00800000           
  LSI2_BS  = 00000000    LSI3_BS  = 00000000           
  LSI2_BD  = 00000000    LSI3_BD  = 00000000           
  LSI2_TO  = 00000000    LSI3_TO  = 00000000           
  image_va0   = 00000000     image_va1   = 00000000    
  image_va2   = 00000000     image_va3   = 00000000    
                                                       
Driver Program Status:                                 
  DMACTL 0    = 00000000 DMACTL 1    = 00000000        
  DMACTL 2    = 00000000 DMACTL 3    = 00000000        
  OkToWrite 0 = 0        OkToWrite 1 = 0               
  OkToWrite 2 = 0        OkToWrite 3 = 0               
  Mode 0      = 0        Mode 1      = 0               
  Mode 2      = 0        Mode 3      = 0               
</verb> 
<!-- If not, something went wrong. -->
もし、上記と異なっていれば何か間違っています。
<sect1> 
<!-- Difficulties -->
困難な点
<p>
<!--
The Universe driver does a good job of finding the Universe chip on 
a PCI bus, but differences in board design may prevent this.  We 
tested all our routines on a Xycom XVME-655 board.  There is little 
reason why this should not work on any other Intel board with a PCI 
bus and the Universe PCI-VME bridge chip.  If you encounter problems
, please let us know at the <htmlurl url="mailto:vmelinux@va.net" 
name="The VMELinux Project">
-->
Universe ドライバは PCI bus 上できちんと Universe チップを探しだして
くれますが、ボードの設計が違うと探しだせないかもしれません。我々は
 Xycom 社の XVME-655 ボードで全てのルーチンをテストしました。
Universe 社の PCI-VME ブリッジチップと PCI bus をもつ他の Intel 
ボードでも、これが動かない原因はほとんどないはずです。もし、あなたが
問題に出会ったらどうか我々へお知らせください。 - 
The VMELinux Project (vmelinux@va.net)
<sect> 
<!-- 
How to talk to the VMEbus with the VMEUtils and the VMEShell 
Packages 
-->
VMEUtils と VMEShell パッケージで VMEbus と対話する方法
<sect1> 
<!-- What is the VMEUtils program -->
VMEUtils プログラムとは何か
<p>
<!--
This program can be run as is.  Once started, you will see a command
 prompt.  Type ? And you will see a list of commands.  While useful,
 I think you will find the VMEShell scripts a better way to go.  The
y do use this program to speak with the kernel driver so it is 
necessary to have this program available in the current PATH.
-->
このプログラムはそのまま実行できます。一度スタートしたら、コマンド
・プロンプトが現れます。「?」をタイプすればコマンドのリストが
現れます。これでも使えるでしょうが、VMEShell スクリプトを
使う方が便利だということに気が付かれることでしょう。
VMEShell スクリプトはカーネル・ドライバと対話するために VMEUtils 
プログラムを使うので、環境変数 PATH に VMEUtils へのパスを設定して
おく必要があります。
<p>
<!--
The source code for "vmeutils" is also instruction on how to speak 
directly to the kernel driver.  For those of you who wish to create 
programs that directly speak with the driver, these source files 
are good examples.
-->
「vmeutils」のソースコードも、カーネル・ドライバと直接対話する仕方
のお手本です。直接ドライバと対話をするプログラムを作りたい人にとって
、これらのソースファイルは良い実例です。
<sect1> 
<!-- What are the VMEShell Scripts -->
VMEShell スクリプトとは何か
<p>
<!-- 
The VMEShell programs are unix shell scripts.  They offer the 
operator a simple way to access the data on a VMEbus.  Using these 
commands creates temporary files in the user's working directory 
which store information on the last access you did.  This is nice 
because it will be possible to log off the machine, log back in and 
proceed from where you left off without having to re-enter VMEbus 
information again.  

Plus, these files are stored in the current 
working directory, so you can have different VME access 
configuration just by setting up different directories for each VME 
board of interest.
-->
VMEShell プログラムは、UNIX シェル・スクリプトです。これはオペレータ
に VMEbus 上のデータにアクセスするためのシンプルな方法を提供します。
これらのコマンドを使うことにより最新のアクセス情報を保存したテンポラ
リ・ファイルをユーザのワーキング・ディレクトリに作ります。これは
なかなか嬉しい機能です。なぜならマシンから一度ログオフし、再度ログインして
中断したところから続行するときに、VMEbus の情報を再度入手する必要がない
からです。
さらに、これらのファイルはカレント・ディレクトリに保存されるので、
アクセスしたい VME ボード毎に異なるディレクトリを設定すれば、
それぞれの VME アクセス設定を別々に保存しておけます。
<p>
<!-- 
Assuming you placed the shell programs and the "vmeutils" program in
 the /usr/local/bin directory, you should be able to log in as a 
regular user and run them.  What follows assumes exactly this.
-->
シェル・プログラムと「vmeutils」プログラムが /usr/local/bin ディレクト
リにあるなら、一般ユーザとしてログインし、それらを実行すること
ができるでしょう。以下の記述では、このことを前提としています。
<sect1> 
<!-- The "vmemap" command. -->
vmemap コマンド
<p>
<!--
Login as a regular user and create a directory to experiment with.  
Once in this directory type:
-->
一般ユーザとしてログインし、テスト用のディレクトリを作ります。
このディレクトリで以下のようにタイプします -
<verb>
vmemap
</verb>
<!-- You should get a help screen like this... -->
このようなヘルプ画面が表示されます。
<verb>
Usage:  map address count space size type                   
  where address is VME Address to set Universe image to     
                                                            
    Space = 0 CR/CSR    Space = 1 A16                       
    Space = 2 A24       Space = 3 A32                       
                                                            
    Size  = 1 8 bit     Size  = 2 16 bit                    
    Size  = 3 32 bit    Size  = 4 64 bit                    
                                                            
    Type  = 0 USR/DATA  Type  = 1 USR/PRG                   
    Type  = 2 SUP/DATA  Type  = 3 SUP/PRG                   
</verb>
<!--
This is where you tell VMELinux how you want to access the VMEbus.  
We assume you already know about the VMEbus' many modes of operation
, but here is a short list to help you.
-->
ここは VMEbus にどのようにアクセスしたいかを VMELinux へ教えるところで
す。あなたはすでに VMEbus のたくさんのオペレーション・モードを知
っていると思いますが、助けになるように短いリストを示します。
<itemize>
<item> 
<!--
<bf>address</bf> is the actual VMEbus address you wish to see.  
This should be set to the lower most value of the address range of 
interest.
-->
<bf>address</bf> は見たいと思う VMEbus の実際のアドレスです。これは
見たいアドレス範囲の最低値に設定しなくてはいけません。
<item> 
<!--
<bf>count</bf> is the number of bytes you consider a valid range to 
view.  This is the number of bytes starting at the address specified
 above.
-->
<bf>count</bf> は見たい範囲のバイト数です。正しい値を入れてください。
これは上記で指定したアドレスから始まるバイト数です。
<item> 
<!--
<bf>space</bf> is the addressing space (mode).  For those of you who
 do not know what we are talking about here, the VMEbus has four 
overlapping address spaces that can be called independant of each 
other.  A16 is a 64 KiloByte space.  A24 is a 16 MegaByte space.  
A32 is a 4 GigaByte space.  There is an A64 space defined the VME 
specification, but the Universe does not support it.
-->
<bf>space</bf> はアドレス空間 (モード) です。何のことか分からな
い人のために説明すると、VMEbus は 4 つのオーバーラップしたアドレス空間を
持っていて、それぞれ独立に呼ぶことができるのです。A16 は 64KB、A24 
は 16MB、A32 は 4GB の空間です。VME 規格では A64 空間も定義されていますが、
Universe チップはサポートしていません。
<item> 
<!--
<bf>Size</bf> refers to the maximum datawidth allowed for the VME 
board you are accessing.  Some VMEbus board only handle 8 bit data 
paths.  Others transfer 32 bits (four bytes) at a time.  Some can 
handle a special VME block mode which can move 64 bits per 
transaction.  The Universe can handle all these modes allowing you 
to mix inexpensive serial port boards with hugh memory arrays.
-->
<bf>Size</bf> はアクセスしている VME ボードの許される最大のデータ幅
です。VME ボードの中には 8 ビットのデータ幅しか扱えないもの、
一度に 32 ビット(4 バイト) を転送するもの、中には一度の処理で 64 
ビットを移動できる特別な VME ブロックモードを操作できるものもあります。Universe
チップはこれら全てのモードが操作でき、安いシリアルポートとも、
また巨大なメモリ配列とも一緒に使うことができます。
<item> 
<!--
<bf>Type</bf> is the type of VME transaction performed.  Some VME 
boards make a distinction between "User" access (USR) and 
"Supervisior" access (SUP).  Also, some boards allow access to two 
"pages" of memory: Program (PRG) and Data.  The Universe supports 
all modes.
-->
<bf>Type</bf> は実行されている VME トランザクションのタイプです。
あるボードは「ユーザ(USR)」アクセスと「スーパバイザー(SUP)」アクセスを
区別します。また中にはメモリの 2 「ページ」(プログラム(PRG)とデータ)
へのアクセスを許可するボードもあります。Universe チップは全てのモード
に対応しています。
</itemize>
<!--
Typing...
-->
次のようにタイプすると...
<verb>
vmemap 0x8000 0x100 1 2 0
</verb>
<!--
sets up the VMELinux driver to access an A16 board at base address 
8000 Hex with a range of 100H bytes with 16 bit data width and 
USR/DATA mode.
-->
VMELinux ドライバを、 A16 ボードのベースアドレス 0x8000 から
0x100 バイトのメモリ領域に、 16 ビットのデータ幅、 USR/DATA
モードでアクセスするように設定します。
<p>
<!--
You will find two new files in your current directory.
-->
カレント・ディレクトリに 2 つ新しいファイルができるはずです。
<itemize>
<item> fa.vme
<item> map.vme
</itemize>
<!--
<bf>fa.vme</bf> stores a "fixed adder" value that will be added to 
all subsequent accesses with the programs below.
-->
<bf>fa.vme</bf> 
は「固定アドレス」値を保存しています。このアドレス値は次に挙げる
プログラムが後でアクセスを行う際に必ず加えられます。
<p>
<!--
<bf>map.vme</bf> store the parameters above so you do not have to 
enter them every time.
-->
<bf>map.vme</bf> は毎回上記のパラメータを入力しなくてもよいよう
に、それらを保存しています。
<p>
<!--
All the following shell utilities read values from these two files 
to performs VME accesses.
-->
以下の全てのシェル・ユーティリティは、 VME アクセスを実行する際、
これら 2 つのファイルから値を読みます。
<sect1> 
<!--
Read Byte, Word or Long
-->
バイト、ワード、ロング長のデータを読む
<p>
Syntax:
<itemize>
<item> vmerb -&lsqb;options&rsqb; address size
<item> vmerw  -&lsqb;options&rsqb; address size
<item> vmerl -&lsqb;options&rsqb; address size
</itemize>
<sect1> 
<!--
Write Byte, Word or Long
-->
バイト、ワード、ロング長のデータを書く
<p>
Syntax:
<itemize>
<item> vmewb -&lsqb;options&rsqb; address value
<item> vmeww  -&lsqb;options&rsqb; address value
<item> vmewl -&lsqb;options&rsqb; address value
</itemize>
<sect1>
<!--
Read the VMEbus to a file
-->
ファイルで VMEbus のデータを読む
<p>
Syntax:
<itemize>
<item> vmerf -&lsqb;options&rsqb; address size filename
</itemize>
<sect1> 
<!--
Write a file to the VMEbus
-->
VMEbus のデータをファイルへ書く
<p>
Syntax:
<itemize>
<item> vmewf -&lsqb;options&rsqb; address filename
</itemize>
<sect1> 
<!-- Parameters -->
パラメータ
<p>
<!--
There are several parameters used with these commands: address, 
size and filename.
-->
これらのコマンドと共に使用するパラメータがいくつかあります - 
address, size, filename です。
<itemize>
<item> 
<!--
address - The actual hexadecimal VMEbus address you wish to read.  
If the map command is set to access A16 VME address space, the 
address should be 0xABCD.  If the space is A24 then use 0xABCDEF.  
For A32 space use 0xABCDEFGH.
-->
address - 読みたい VMEbus アドレスの実際の 16 進値。
A16 VME アドレス空間へアクセスするように map コマンドを設定するなら
、そのアドレスは 0xABCD となります。A24 VME アドレス空間なら 
0xABCDEF、A32 VME アドレス空間なら 0xABCDEFGH となります。
<item> 
<!--
size - The number of bytes to read.  This value is always the number
 of bytes regardless of the data word size read.  For example, if 
you want to read 16 bytes of information and use vmerl, the display
 will show 16 bytes displayed as 4 long words.
-->
size - 読みたいバイト数。この値は読みたいデータのワードサイズに関係
なく常にバイト数です。例えば vmerl を使って 16 バイトの情報を読みた
ければ、ディスプレイには 16 バイトが 4 つのロングワードで表示されるでしょう。
<item> 
<!--
filename - The name of the file to send "read" VMEbus data to or 
"write" VMEbus data from. 
-->
filename - 読み込んだ VMEbus のデータを送るファイル名、
あるいは VMEbus へ書き込むデータをとってくるファイル名。
<item> 
<!-- value - a hex value written as "0xXXXX." -->
value - 「0xXXXX」のように書かれた 16 進数。
</itemize>
<sect1> 
<!-- Options -->
オプション
<p>
<!--
Available options are defined with a single dash with the any 
combination of the following:
-->
使用できるオプションは、 - (ハイフン)をつけて明示します。
以下の任意の組合せが可能です。
<itemize>
<item>
<!-- 
q - Hides details on the access to the vmeutils program (default)
-->
q - vmeutils プログラムへのアクセスの詳細を表示しない(デフォルト)
<item> 
<!-- Q - Shows details on the access to the vmeutils program -->
Q - vmeutils プログラムへのアクセスの詳細を表示する
<item> 
<!-- 
p - Single access PCI addressing mode (opposite of d) (default) 
-->
p - シングル・アクセス PCI アドレッシングモード(d と反対)
(デフォルト)
<item> 
<!-- 
d - DMA access PCI addressing mode (opposite of p) (very fast 
access to the VMEbus) 
-->
d - DMA アクセス PCI アドレッシングモード(p と反対)(VMEbus への非常
に速いアクセス)
<item> 
<!-- 
0, 1, 2, or 3 - Which Universe chip "Image" to use (defaults to 0) 
-->
0, 1, 2, 3 - Universe チップのどの "Image" をつかうか(デフォルトは 0)
<item> 
<!-- b - binary mode off (default) -->
b - バイナリ・モードをオフ(デフォルト)
<item> 
<!-- B - binary mode on -->
B - バイナリモードをオン
<item> 
<!-- v - turn off verbose parameter printing (default) -->
パラメータの冗長な表示をしない(デフォルト)
<item> 
<!-- V - turn on verbose parameter printing to see how the driver is
 begin used -->
ドライバがどのように使われているかを見るためにパラメータの冗長な表示をする
</itemize>
<sect1> 
<!-- A Note about DMA mode. -->
DMA モードに関する注意
<p>
<!--
VMELinux offers access to all the features of the Universe Chip.  
Especially useful is access to the DMA engine on the chip.  With 
this feature the Universe chip transfers data on the PCI bus by 
becoming a PCI master.  This is nice, but the real benefit comes 
from the VMEbus accesses.  Even if the VMEbus interface is not using
 block mode transfers, the Universe chip can complete VMEbus 
transfers under 400 nanoseconds sustained.  This is the direct 
result of the Universe taking complete control of both the PCI bus 
and the VMEbus.  Thus, it is possible to access non block mode 
VMEbus peripherals much faster than older technologies.
-->
VMELinux は、Universe チップの機能への全てのアクセスを提供します。
特に有用なものは、チップ上の DMA エンジンへのアクセスです。この機能を
使うと、Universe チップは PCI マスターになって PCI bus 上でデータ
を転送します。これも嬉しい機能ですが、しかし本当の利益は VMEbus
アクセスに由来します。たとえ VMEbus インターフェイスがブロックモード
転送を使用していなくても、Universe チップは 400 ナノ秒で転送を完了し
ます。これが Universe が PCI bus と VMEbus の両方を完全にコントロール
したことによる直接の結果です。したがって古いテクノロジーのものより、
さらに速くノンブロック・モードの VMEbus 周辺機器へアクセスが可能なのです。
<sect> 
<!-- 
How to talk to the Tundra Universe PCI-VME bridge using the 
devices drivers. 
-->
デバイスドライバによる Tundra Universe PCI-VME ブリッジとの対話の仕方
<sect1> 
<!-- The device drivers used with VMELinux -->
VMELinux と共に用いられるデバイスドライバ
<p>
<itemize>
<item> /dev/vme_ioctl
<item> /dev/vme_m0
<item> /dev/vme_m1
<item> /dev/vme_m2
<item> /dev/vme_m3
<item> /dev/vme_s0
<item> /dev/vme_s1
<item> /dev/vme_s2
<item> /dev/vme_s3
</itemize>
<sect1> 
<!-- VMEMaster Device Drivers -->
VMEMaster デバイスドライバ
<p>
<!-- 
/dev/vme_m* are drivers used to access the VMEbus as a bus master. 
-->
/dev/vme_m* は通常、バス・マスタとしてVMEbus にアクセスする
ドライバです。
<p>
<!-- 
The Universe chip offers the programmer four VMEMaster windows to 
the VMEbus.  These windows are called Images.  The details of the 
registers within these windows is beyond the scope of this Howto.  
Please refer to the Universe documentation for details. 
<htmlurl url="http://www.tundra.com/Tundra/unidex.html" 
name="Tundra Universe">
-->
Universe チップは、VMEbus への 4 つの VMEMaster ウインドウをプログラ
マへ提供します。これらのウインドウは image と呼ばれます。これらの
ウインドウ内のレジスタの詳細はこの HOWTO の範囲を超えます。詳細に
ついては Universe のドキュメントを参照してください。
<htmlurl url="http://www.tundra.com/Tundra/unidex.html" 
name="Tundra Universe">
<sect1> 
<!-- VMESlave Device Drivers -->
VMESlave デバイスドライバ
<p>
<!-- /dev/vme_s* are drivers used to allow another VMEbus master to 
access this device. -->
/dev/vme_s* は通常、別の VMEbus マスタがこのデバイスにアクセスする
ことを許可するドライバです。
<p>
<!--
The Universe chip offers the programmer four VMESlave windows to the
 VMEbus.  These windows are called Images.  The details of the 
registers within these windows is beyond the scope of this Howto.  
Please refer to the Universe documentation for details. 
<htmlurl url="http://www.tundra.com/Tundra/unidex.html" 
name="Tundra Universe">
-->
Universe チップは、VMEbus への 4 つの VMESlave ウインドウをプログラ
マへ提供します。これらのウインドウは image と呼ばれます。これらの
ウインドウ内のレジスタの詳細はこの HOWTO の範囲を越えます。詳細に
ついては Universe のドキュメントを参照してください。
<htmlurl url="http://www.tundra.com/Tundra/unidex.html" 
name="Tundra Universe">
<p>
<!-- Slave VME modes are not yet supported by VMELinux. -->
スレーブ VME モードは、VMELinux ではまだサポートしていません。
<sect1> 
<!-- Direct Control of the Universe Registers -->
Universe のレジスタの直接制御
<p>
<!-- 
/dev/vme_ioctl allows read and write access to the Universe 
registers.
-->
/dev/vme_ioctl を使うと Universe のレジスタを読み書きできます。
<p>
<!-- 
For experienced users, this device allows direct access to the 
Universe chip's internal registers.  Explanation of these registers 
and what they do is beyond the scope of this howto. Please consult 
the Universe documentation available from 
<htmlurl url="http://www.tundra.com/Tundra/unidex.html" 
name="Tundra Universe">
-->
経験豊かなユーザであれば、このデバイスを使って Universe チップの内部の
レジスタへ直接アクセスできます。これらのレジスタの説明とその動作は
この HOWTO の範囲を超えてしまいます。
以下から入手可能な Universe のドキュメントを調べてください。
<htmlurl url="http://www.tundra.com/Tundra/unidex.html" 
name="Tundra Universe">
<sect1> read()
<p>
n = read(vme_handle,buf,len);
<p>
<!-- Where: -->
引数の意味は以下の通りです -
<itemize>
<item> 
<!-- vme_handle = The value returned by "open," -->
vme_handle : open() からの戻り値
<item> 
<!-- buf = pointer to data block, -->
buf : データ・ブロックへのポインタ
<item> 
<!-- len = number of bytes to read from the VMEbus. -->
len : VMEbus から読み込むバイト数
</itemize>
<sect1> write()
<p>
write(vme_handle,buf,len);
<p>
<!-- Where: -->
引数の意味は以下の通りです -
<itemize>
<!-- vme_handle = The value returned by "open," -->
vme_handle : open() からの戻り値
<item> 
<!-- buf = pointer to data block, -->
buf : データ・ブロックへのポインタ
<item> 
<!-- len = number of bytes to write to the VMEbus. -->
len : VMEbus へ書き込むバイト数
</itemize>
<sect1> lseek()
<p>
lseek(vme_handle,vme_pnt,Seek_Type);
<p>
<!-- Where: -->
引数の意味は以下の通りです -
<itemize>
<item> 
<!-- vme_handle = The value returned by "open," -->
vme_handle : open() からの戻り値
<item> 
<!-- vme_pnt = The actual VME address to access, -->
vme_pnt : アクセスしたい実際の VME 上のアドレス
<item> 
<!-- Seek_Type = SEEK_SET or SEEK_CUR -->
Seek_Type :  SEEK_SET または SEEK_CUR
</itemize>
<sect1> ioctl()
<p>
ioctl(vme_handle, command, argument);
<p>
<!-- Where: -->
引数の意味は以下の通りです -
<itemize>
<!-- vme_handle = The value returned by "open," -->
vme_handle : open() からの戻り値
<item> 
<!--
command = IOCTL_SET_CTL or IOCTL_SET_MODE or IOCTL_SET_BS or IOCTL_SET_BD 
or IOCTL_SET_TO
-->
command : IOCTL_SET_CTL, IOCTL_SET_MODE, IOCTL_SET_BS, IOCTL_SET_BD, IOCTL_SET_TO
<item> 
<!-- argument to be sent -->
argument : 引数
</itemize>
<!-- And: -->
また - 
<itemize>
<item> 
<!--
IOCTL_SET_CTL = Sets the image CTL register to argument. Argument must be 32 
bits.
-->
IOCTL_SET_CTL : イメージ CTL レジスタへ引数をセットする。引数は 32 ビットで
なければならない。
<item> 
<!--
IOCTL_SET_MODE = "MODE_DMA" or "MODE_PROGRAMMED" - Sets the mode by which the 
Universe chips communicates to the PCI bus (Not VME Block Mode)
-->
IOCTL_SET_MODE : "MODE_DMA" または "MODE_PROGRAMMED" - Universe チップが PCI bus
 と通信するためのモードを設定する。(VME ブロック・モードではない)
<item> 
<!--
IOCTL_SET_BS = Sets the image BS register to arguments.  NOTE: The BD register 
must already be set prior to making this call.
-->
IOCTL_SET_BS : イメージ BS レジスタへ引数をセットする。注 - この関数のコールの
前に BD レジスタをセットしておかなければならない。
<item> 
<!-- IOCTL_SET_BD = Sets the image BD register to argument. -->
IOCTL_SET_BD : イメージ BD レジスタへ引数をセットする。
<item> 
<!-- IOCTL_SET_TO = Set the image TO register to argument. -->
IOCTL_SET_TO : イメージ TO レジスタへ引数をセットする。
</itemize>
<sect1> 
<!-- open() and close() -->
open() と close()
<p>
<!--
Here is where you open and close the four VMELinux Master or Slave devices 
plus the Control device.  Slave images are not yet supported.
-->
4 つの VMELinux マスタあるいはスレーブ・デバイスとコントロール・デバイスを
オープン/クローズします。スレーブイメージはまだサポートされていません。
<itemize>
<item> vme_handle = open("/dev/vme_m0",O_RDWR,0);
<item> uni_handle = open("/dev/vme_ctl",O_RDWR,0);
</itemize>
<p>
<itemize>
<item> close(vme_handle);
<item> close(uni_handle);
</itemize>
<sect> 
<!-- Advantages of the VMEbus, Linux and VMELinux -->
VMEbus、Linux、VMELinux の長所
<sect1> 
<!-- Pin and socket connectors -->
ピン・コネクタとソケット・コネクタ
<p>
<!-- 
The VMEbus standard uses pin and socket connectors. This is superior to edge 
connections in that the connection is not exposed to humidity and other 
environmental conditions. It is a more expensive way of doing things, but 
offers longer times before failure.
-->
VMEbus 規格では、ピン・コネクタとソケット・コネクタを用います。これは接触
部分が
湿気などの環境条件にさらされないということでエッジ型のコネクタより優れて
います。より高価ですが、信頼性がより向上するのです。
<sect1> 
<!-- Eurocard assembly -->
Eurocard の組み立て
<p>
<!--
A VMEboard is either a 3U (160 x 100 mm) or a 6U size (160 x 233.35 mm). These 
sizes correspond to the Eurocard standard for board modules and card cages. 
Eurocard is a popular format used by many different busses including CompactPCI.
 This popularity makes the materials needed for cage assembly inexpensive and 
easy to obtain.
-->
VME ボードは、3U (160 x 100 mm) か 6U (160 x 233.35 mm) です。
これらのサイズは Eurocard 規格のボード・モジュールやラックと一致します。
Eurocard は、CompactPCI を含む
様々な bus で使用されている一般的なフォーマットです。このように
人気があるので、箱の組み立てに必要な材料が安価かつ入手しやすくなっています。
<sect1> 
<!-- Linux is Low Cost -->
Linux は安価である
<p>
<!--
The nature of Linux is in its user supported and freely available format. 
The number of people using Linux is growing. The number of people contributing
 to the continued development of the Linux software base is growing. It is 
unfair to state that Linux is a good value because it is available for little
 to no charge. Linux is a good value because it works.
-->
Linux の本質は、ユーザによりサポートされ、自由に入手できるという点にあります。
Linux を使用している人の数は増え続けています。Linux のソフトウエアの絶えま
ない開発に貢献する人の数は増え続けています。Linux は、無料あるいは安価に手に入る
から価値があるというのは正しくありません。Linux は、ちゃんと動くから価値が
あるのです。
<sect1> 
<!-- Linux is Stable -->
Linux は安定している
<p>
<!-- 
There are those who say that Linux us an unstable operating system. It is true
 that the new Linux kernels in development are experimental and should not be 
relied on for critical applications. However, stable versions of the Linux OS 
are always available and provide very stable operation. VMELinux is always 
based on the stable versions of the kernel source; Today's stable kernels are 
the 2.0.X series.
-->
Linux は不安定な OS だという人たちがいます。開発中の新しい Linux カーネルは
実験のためのものなので、重要な用途では当てにするべきでは
ありません。しかし安定版の Linux OS も常に入手可能であり、これは非常に
安定した動作をします。VMELinux は常にカーネル・ソースの安定版をベースに
しています - 現在の安定版カーネルは、2.0.X シリーズです。
(訳者注：2000 年 3 月の時点での安定版カーネルは、2.2.X シリーズです)
<sect1> 
<!-- Linux is Dynamic -->
Linux はダイナミックである
<p>
<!-- 
Because so many people are developing Linux, you do not have to wait long for
 improvements, fixes or new features to become part of the Linux distribution.
-->
大変多くの人々が Linux を開発しているので、改善や修正、新機能が Linux 
ディストリビューションの一部となるのを長期間待つ必要はありません。
<sect> 
<!-- Current and planned Board Support -->
現在そして検討中のボードのサポートについて
<p>
<!-- 
While the VMELinux driver should work with any PCI based design, the following
 boards have actually run our software.
-->
VMELinux ドライバはどんな PCI ベースの設計でも動くはずですが、
次に述べるボードでは実際に我々のソフトが動いています。
<sect1> 
<!-- Xycom XVME655 Pentium VMEbus Board -->
Xycom 社 XVME655 Pentium VMEbus ボード
<p>
<itemize>
<item> 
<!--
This XyCom board is compatible with the standard VMELinux kernel driver package
 from <htmlurl url="http://www.vmelinux.org/" name="VMELinux Project">
-->
この Xycom 社のボードは以下から得られる標準の VMELinux カーネル・ドライバ
のパッケージと一緒に動作します。
<htmlurl url="http://www.vmelinux.org/" name="VMELinux Project">
<item> 
<!--
A prepared kernel will be available soon.  It will be based on the newest 
version of the Linux kernel and will include appropriate drivers for the 
onboard NE2100 Ethernet interface.  Check the website for details.
-->
コンパイル済みのカーネルのバイナリもすぐに登場するでしょう。これは最新版の 
Linux カーネルをベースにしています。そして、オンボードの NE2100 Ethernet 
インターフェイスに対応したドライバも入っているはずです。詳細は Web サイトを
見てください。
</itemize>
<sect1> 
<!-- XyCom XVME656 Pentium VMEBus Board -->
Xycom社 XVME656 Pentium VMEBus ボード
<p>
<itemize>
<item> 
<!--
This XyCom board is compatible with the standard VMELinux kernel driver 
package from <htmlurl url="http://www.vmelinux.org/" name="VMELinux Project">
-->
この Xycom 社のボードは以下から得られる標準の VMELinux カーネル・ドライバの
パッケージと一緒に動作します。
<htmlurl url="http://www.vmelinux.org/" name="VMELinux Project">
<item> 
<!--
A prepared kernel will be available soon.  It will be based on the newest 
version of the Linux kernel and will include appropriate drivers for the 
onboard AHA2940/AIC7000 SCSI and 82558 Intel EtherExpress Ethernet peripherals. 
 Check the website for details.
-->
コンパイル済みのカーネルのバイナリもすぐに登場するでしょう。
これは、最新版の Linux 
カーネルをベースにしています。そして、オンボードの AHA2940/AIC7000 SCSI と 
82558 Intel EtherExpress Ethernet 機器に対応したドライバも入っている
はずです。詳細は Web サイトを見てください。
</itemize>
<sect1> Dynatem DPC1-0367 
<p>
<itemize>
<item> 
<!--
This board is compatible with the standard VMELinux kernel driver package 
from <htmlurl url="http://www.vmelinux.org/" name="VMELinux Project">
-->
このボードは以下から得られる標準の VMELinux カーネル・ドライバのパッケージと
一緒に動作します。
<htmlurl url="http://www.vmelinux.org/" name="VMELinux Project">
<item> 
<!--
A prepared kernel will be available soon.  It will be based on the newest 
version of the Linux kernel and will include appropriate drivers for the 
onboard SCSI and Tulip Ethernet peripherals.  Check the website for details.
-->
コンパイル済みのカーネルのバイナリもすぐに登場するでしょう。
これは、最新版の 
Linux カーネルをベースにしています。そして、オンボードの SCSI と 
Tulip Ethernet 機器に対応したドライバを含んでいるはずです。詳細は Web
サイトを見てください。
</itemize>
<sect1> 
<!-- Planned Board Support -->
サポート計画中のボード
<p>
<!--
If you do not see VMELinux support for your board let us know. Maybe the 
manufacture will lend us a board for development.
-->
あなたのボードが VMELinux でサポートされていなければ、我々にお知らせください。
多分、メーカは開発のために我々にボードを貸してくれるでしょう。
<sect> 
<!-- Conclusion -->
まとめ
<p>
<!-- 
VMELinux offers the user a low cost way to implement a VMEbus system quickly, 
reliably and with all the advantages of a unix environment.  We are using 
VMELinux in our projects so you can be sure future developments will come quick.
  On the drawing board for this year are:
-->
VMELinux は、UNIX 環境の長所全てと共に VMEbus システムを迅速・確実に実装
する安価な手段をユーザに提供します。

我々は VMELinux を我々のプロジェクトで用いており、
したがって将来の開発も活発に行われるものと期待していただいて結構です。
今年の予定としては - 
<itemize>
<item> 
<!-- Implementation of Interrupts and Handling thereof, -->
割り込みの実装とそのハンドリング
<item> 
<!-- Porting to other brands of Intel VMEbus boards, -->
Intel ベースの他ブランドの VMEbus ボードへのポーティング
<item> 
<!-- Porting of VMELinux to other processors that use the Universe chip, -->
Universe チップを使用している他のプロセッサへの VMELinux のポーティング
<item> 
<!-- 
A study of running the VMELinux kernel driver module as a RT-Linux task. 
-->
RT-Linux タスクとして VMELinux カーネル・ドライバ・モジュールを走らせる研究
</itemize>
<p>
<!-- 
This document outlines the steps you need to install the VMELinux Kernel Driver
 into the example Xycom XVME-655 Pentium VME board.  It is our hope that others
 will attempt installation of VMELinux into other boards and let us know their
 success.
-->
このドキュメントは、例として Xycom 社 XVME-655 Pentium VME ボードへの VMELinux
 カーネル・ドライバのインストールに必要な手順の概要を述べています。他の人々が
他のボードへの VMELinux のインストールを試み、その成功を知らせてくれることが
我々の希望です。
<p>
<!-- 
Mail any responses to 
<htmlurl url="mailto:vmelinux@va.net" name="The VMELinux Project">.  
If you have a question or an update to the document let us know and we will 
add it.
-->
問い合わせは以下にメールをください
: The VMELinux Project (vmelinux@va.net)
。もし、
質問や文章を更新すべき点があればお知らせください。それを付け加えます。
<sect> 
FAQ
<p>
<sect1> 
<!--
The Shell utilities return a bunch of stars (*) when I access a board I know
 is there.  What gives?
-->
ボードはちゃんと存在するのに、いざシェル・ユーティリティでアクセスしてみると、アスタリスク(*)の行列が返ってきます。何なの？
<p>
<!--
Check to be sure the /dev/vme... files have their permissions set to 666.  
If not, the shell utilities will return a * in place of data to indicate an 
error condition similar to a VME bus error.
-->
/dev/vme... ファイルのパーミッションが 666 にセットされているか確認して
ください。そうでないと、シェル・ユーティリティは VME bus エラーと同様な
エラーを示すためデータの代わりに * を返します。
<sect1> 
<!--
How does VMELinux handle interrupts?
-->
VMELinux はどうやって割り込みをハンドリングするの？
<p>
<!--
Right now it doesn't.  However, we are planning to get that part going soon.  
Please be patient.
-->
いまのところできません。しかし、我々はすぐにその部分を実現できるよう
計画中です。どうかしばらくお待ちください。
<sect1> 
<!--
I have RedHat 5.1 and can't get VMELinux programs to compile.
-->
私は RedHat 5.1 を持っています。でも VMELinux のプログラムをコンパイルできません。
<p>
<!--
RedHat 5.1 includes a new compiler.  If you manually edit the Makefile in each
 directory to call up the new egcs compiler, things should compile.  We fully
 intend to support RedHat 5.1 installations, but for now I suggest using 5.0
 or Slackware.
-->
RedHat 5.1 には、新しいコンパイラが含まれています。 新しい egcs コンパイラに
あわせて、それぞれのディレクトリにある Makefile を手作業で編集できれば
コンパイルは可能でしょう。我々は RedHat 5.1 でのインストールを十分にサポート
するつもりです。しかし、現時点では RedHat 5.0 か Slackware をお薦めします。
<sect> 日本語訳について
<p>
日本語訳は Linux Japanese FAQ Project が行いました。翻訳に関するご意見は JF プロジェクト &lt;JF@linux.or.jp&gt; 宛に連絡
してください。

改訂履歴を以下に示します。

<descrip>
<tag>v0.8a-j, 2000 年 6 月 </tag>
翻訳: 仲吉一男 &lt;kazuo.nakayoshi@kek.jp&gt;
<p>
校正: 
<itemize>
<item>佐藤亮一 &lt;rsato@ipf.de&gt;
<item>武井伸光 &lt;takei@webmasters.gr.jp&gt;
<item>青野正幸 &lt;masayuki@shikoku.ne.jp&gt;
<item>中野武雄 &lt;nakano@apm.seikei.ac.jp&gt;
<item>藤原輝嘉 &lt;fujiwara@linux.or.jp&gt;
<item>山下義之 &lt;dica@eurus.dti.ne.jp&gt;
</itemize>
</descrip>

<!-- Ending -->

</article>










