航天
航空
核工业
船舶
兵器
军事电子
综合
可靠性
仪器仪表
自动化
当前位置:案例 » 核工业应用案例 » 正文

基于DiskOnChip在linux下的安装使用

点击图片查看原图
  • 发布日期:2009-12-08 14:17
  • 有效期至:长期有效
  • 案例区域:广东湛江市
  • 浏览次数4943
  • 留言咨询
 
详细说明

———DiskOnChip使用手册

 本安装手册的目的是介绍如何在Redhat 7.1上安装一块可以引导的16MB DiskOnChip,
为了与GPL协议兼容,我们将DOC的驱动程序以模块的方式加载。

安装前的准备:
1. 到艾蒙公司的网站www.m-sys.com下载以下两个驱动程序,
DOC_Linux-4.2.2 (DOC的Linux驱动程序,该驱动支持2.4.X的Kernel)
DOC-DOS-UTILSver4.2 (DOC的DOS应用程序)
2. RedHat 7.1 安装光盘
3. 一块16MB的DiskOnChip

内容:
-----------------
1. 安装RedHat Linux 7.1
2. 解压缩DOC的Linux驱动程序文件
3. 安装 doc-lilo程序
4. 安装DOC的Linux驱动程序TrueFFS for Linux
5. 编译驱动程序
6. 生成 Initrd 文件
7. 做一张备份启动软盘
8. 测试你的DOC
9. 给DOC分区
10. 将Linux的系统文件拷贝到DOC上
11. 使DOC变成启动盘
12. 测试DiskOnChip能否启动
13. 联系信息

1. 安装RedHat Linux 7.1
-----------------

安装RedHat Linux 7.1时,最好采用定制方式安装,选中Development和Kernel
Development,这样就可以安装
上开发工具和Kernel的源代码,其它的内容根据自己的需要选择安装。

为了保险起见,安装时做一张启动软盘,以备不时之需。

如果你在安装时没有安装Kernel 的源代码,可以按以下方法来安装:

将Redhat Linux 7.1的第二安装光盘放入光驱,切换为root用户身份,运行命令

#mount /dev/cdrom
加载光盘,然后运行下面的命令来安装Kernel的源代码

#cd /mnt/cdrom/RedHat/RPMS
#ls kernel-source-
#rpm -ivh kernel-source-2.4.2-2.i386.rpm


运行以下命令卸载光驱,取出光盘:

#cd /
#umount /mnt/cdrom
#eject cdrom


2. 解压缩DOC的Linux驱动程序文件
---------------------------------

将我们下载的DOC的Linux驱动程序拷贝到/tmp目录下,运行下列命令:

#cd /tmp
#tar zxvf /tmp/DOC_linux-4.2.2.tgz

会在你的/tmp目录下生成一个doc-linux-4.2.2的目录,这个目录里的内容就是DOC的
Linux驱动程序。


3. 安装 doc-lilo程序
-------------------

标准的lilo程序不支持DOC,所以我们要用DOC的Linux驱动程序中的lilo来取代系统自带
的lilo。

运行下列命令:

#cd /tmp/doc-linux-4.2.2/lilo
#rpm -ivh doc-lilo-0.21-19.i386.rhat62.rpm

将在你的系统中安装下面这两个文件

/sbin/doc-lilo
/boot/doc.b

同时会自动生成/etc/doc-lilo.conf这个文件,我们可以用

#less /etc/doc-lilo.conf
命令来查看该文件。

我们用新的doc-lilo 来取代原有的lilo,运行命令:

#doc-lilo -v -C /etc/doc-lilo.conf

用下面的命令重新启动系统

#shutdown -r now

或者同时按

三个键。

在开机时,你应该看见类似下面的提示符,

dLILO
Low memory: 02CF Kb

如果没有话,就表明你的doc-lilo程序没有正确安装,请按上面的方法重新安装。


4. 安装DOC的Linux驱动程序TrueFFS for Linux
-----------------------------------

运行下列命令来安装驱动程序:

#cd /tmp/doc-linux-4.2.2/driver
#./patch_linux linux-2_4-patch driver-patch /usr/src/linux-2.4

运行完此命令后,就会在/usr/src/linux-2.4/drivers/block中生成doc这个目录,这
个目录中的文件就是DOC

的Linux驱动程序。

然后运行命令:
./mknod_fl

在/dev/msys目录中生成DOC的设备文件。


5. 编译驱动程序
----------------------------------------

编译Kernel 的源代码和DOC的驱动程序,运行下列命令:

#cd /usr/src/linux-2.4
#make menuconfig

出现选项菜单,可以根据自己的实际需要来选择,这里我们选择以下几项:

Loadable module support
- Enable loadable module support (必需选)
Processor Type and features
- 386 processor family
- 1G Maximum Physical Memory
General Setup
- Kernel support for ELF binaries
Block Devices
- Normal PC floppy disk support
- Loopback device support
- RAM disk support
- M-Systems DOC device support (必需选为模块,选中后按M键即可)
Character devices
- Virtual Terminal
- Support for console on virtual terminal
- Standard/generic (8250/16550 and compatible UARTs) serial support
Filesystems

- DOS FAT fs support
- MSDOS fs support
- VFAT (Windows-95) fs support
- /proc filesystem support
- Second extended fs support
Console Drivers
- VGA text console
退出存盘,运行下面的命令编译:
#make dep
#make clean
#make bzImage
#make install
#make modules
#make modules_install

如果发生编译无法通过的情况,可以在运行make dep命令之前先做如下处理,
#vi /usr/src/linux-2.4/Makefile

找到
HOSTCC = gcc
将其改为
HOSTCC = kgcc

找到
CC = $(CROSS_COMPILE)gcc
将其改为
CC = $(CROSS_COMPILE)kgcc

存盘退出,然后重运行上面的命令编译,应该就可以了。

6. 生成 Initrd 文件
----------------------

运行命令:

insmod loop

然后运行命令:

lsmod loop

看是否有loop的显示,如果有的话就代表loop这个模块已经被加载了。

运行下列命令:
#cd /tmp/doc-linux-4.2.2/driver
#./mkinitrd_doc

会在 /etc/lilo.conf-initrd 这个文件中加上

initrd=/boot/initrd-2.4.2-2.img

这一行。

运行下面的命令:

#doc-lilo -v -C /etc/lilo.conf-initrd

更新lilo的配置,然后重新启动你的电脑。

7. 做一张备份启动软盘
-------------------------------

为了预防万一,我们做一张DOC的备份启动软盘,运行下列命令:

#cd /tmp/doc-linux-4.2.2
#./mkbootdisk_doc --device /dev/fd0 2.4.2.-2

在盘上贴上标签"Emergency Boot disk - DiskOnChip, doc-lilo".



8. 测试你的DOC
-------------------

将你的DOC插到电脑上,重新开机,你会看到类似下面的几行

Flash disk driver for DiskOnChip2000
Copyright (C) 1998,2000 M-Systems Flash Disk Pioneers Ltd.
Copyright (C) 2000 Lineo
DOC device(s) found: 1
Fat Filter Enabled
fl_init: registered device at major: 100
fl :fl_doc_mount: VOL: 0
fl :debug: entering NFDC 2148 identification routine.
fl :Debug: identified NFDC 2148.
fl :Debug: starting NFTL mount.

fl :Debug: finished NFTL mount.
fla: unknown partition table
partition: 0: start_sect: 0, nr_sects: 7cf0 Fl_blk_size[]: 3e78kb
partition: 1: start_sect: 0, nr_sects: 0 Fl_blk_size[]: 0kb

如果系统运行太快看不清楚的话,可以用

#less /var/log/dmesg

命令查看。

你也可以用命令:

#lsmod

查看是否有TrueFFS 的显示,有的话就代表DOC已经顺利的驱动。


9. 给DOC分区
-------------------------

运行命令:

#fdisk /dev/msys/fla

查看DOC的分区情况,:

p

如果你看见已经有一个DOS分区的话,运行下列命令将其改为Linux分区:

t

1
83

如果显示没有分区的话,运行下列命令创建一个新的分区,你也可以创建多个分区:

n
p
1



存盘退出:

w


10. 将Linux的系统文件拷贝到DOC上
------------------------------------------

我们把Linux的系统文件拷贝到DOC上,运行命令:

#cd /tmp/doc-linux-4.2.2/build
#./mkdocimg redhat-6.2.files

我们可以根据自己的实际需要编辑redhat-6.2.files 这个文件,添加或删除一些文件,
比方如果你不用vi这
个文件的话,可以删掉这一行,但在删除lib文件时一定要小心。重新启动你的电脑。


11. 使DOC变成启动盘
----------------------------

上面我们已经将Linux的系统文件拷贝到DOC中,现在我们要将DOC做成一个可引导的盘。


将我们刚才下载的DOC-DOS-UTILSver4.2 文件在windows下解压缩,然后在windows下用
命令:

C:> format a:/s

制作一张启动软盘。

将解压缩文件中的下列文件拷贝到A盘:

DFORMAT.EXE
DINFO.EXE
DOCxx.EXB
DUPDATE.EXE
DOC42.exb

用这张软盘启动系统,运行命令:

DUPDATE /WIN:{address} /S:DOC42.exb /first

来刷新DOC的firmware部分,使DOC可以启动。在这里,WIN:{address} 是DOC中的 8K
驻留内存的起始地址,一
般DOC的地址是D000,我们就可以用下面的命令:

DUPDATE /WIN:D000 /S:DOC42.EXB /first


12. 测试DiskOnChip能否启动
--------------------

重新开机,看系统是否从DOC启动而不是从硬盘启动。如果是从DOC启动,就代表你已经完
成了整个的安装过程。

关于华高科技:
  华高科技(集团)有限公司于1996年成立于香港。公司自成立以来一直站在Flsah存储、视频存储以及半导体传感器领域的前言。并在深圳、北京、成都设有分公司,拥有一批经验丰富的高级工程师和技术队伍。公司主要产品有:以色列M-systems公司以及美国Sandisk公司的Flash电子盘系列产品;日本硅素感应系统有限公司的角速度传感器、惯性导航陀螺仪。公司的产品专业应用于:航天航空、电信、卫星系统、电力系统、网络计算机以及信息家电等领域。我司本着精益求精、优质服务的宗旨。根据客户的要求,为客户提供全方位的技术方案和服务。我们真诚希望能与社会各界专家、朋友合作,携手走向辉煌。详细情况请登陆:

SMART WORLD TECHNOLOGY CO.,LTD.
http://www.smart-disk.com
北京市海淀路中关村酒店商务中心一楼
电话:010--82872251 62565577--2776
传真:010--62659642

 

 
0条 [查看全部]  相关评论

公司信息







该企业最新案例
在线客服

18682042306

© 2008-2023 运营商: 湛江市东龙网络科技有限公司 国防科技网 www.81tech.com 广东通信管理局备案:粤ICP备2023038372号-2
全国公安机关 备案信息 可信网站不良举报 文明转播