QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1273|回复: 0

DOC在嵌入式系统Linux下的安装使用

[复制链接]
发表于 2006-9-13 00:13:46 | 显示全部楼层 |阅读模式
DOC在嵌入式系统Linux下的安装使用

安装前的准备:
   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启动,就代表你已经完
   成了整个的安装过程。



--
※ 来源:.天大求实BBS http://bbs.tju.edu.cn [FROM: 60.25.141.74]
您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-25 21:11 , Processed in 0.092179 second(s), 16 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表