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 -[options] address size <item> vmerw -[options] address size <item> vmerl -[options] address size </itemize> <sect1> <!-- Write Byte, Word or Long --> バイト、ワード、ロング長のデータを書く <p> Syntax: <itemize> <item> vmewb -[options] address value <item> vmeww -[options] address value <item> vmewl -[options] address value </itemize> <sect1> <!-- Read the VMEbus to a file --> ファイルで VMEbus のデータを読む <p> Syntax: <itemize> <item> vmerf -[options] address size filename </itemize> <sect1> <!-- Write a file to the VMEbus --> VMEbus のデータをファイルへ書く <p> Syntax: <itemize> <item> vmewf -[options] 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 プロジェクト <JF@linux.or.jp> 宛に連絡 してください。 改訂履歴を以下に示します。 <descrip> <tag>v0.8a-j, 2000 年 6 月 </tag> 翻訳: 仲吉一男 <kazuo.nakayoshi@kek.jp> <p> 校正: <itemize> <item>佐藤亮一 <rsato@ipf.de> <item>武井伸光 <takei@webmasters.gr.jp> <item>青野正幸 <masayuki@shikoku.ne.jp> <item>中野武雄 <nakano@apm.seikei.ac.jp> <item>藤原輝嘉 <fujiwara@linux.or.jp> <item>山下義之 <dica@eurus.dti.ne.jp> </itemize> </descrip> <!-- Ending --> </article>