Quick guide for porting linux to ALTERA DE2 70
Platform and tools: Ubuntu 9.04
Step 1, Download the nios linux tallbal
wget http://www.niosftp.com/pub/linux/nios2-linux-20090929.tar
or use xunlei to fix it.
Step2,
tar xvf nios2-linux-20090929.tar
cd nios2-linux
./checkout
Step 3, Generate the fpga.h file
First, a nios processor should be constructed.
Use any one of examples in the DE2 cd. For instance, use E:\fpga\de2_70\DE2_70_demonstrations\DE2_70_NIOS_HOST_MOUSE_VGA
Then add a mmu as pics bellow. Remember to click the Auto-Assign Base Addresses, or it will sthick on the booting stage.
Click Generate, this takes a while.
Alfter above steps, we can get fpga.h file now.Open Nios II Command Shell, cd to this DE2...vga DIR, and key in the following commond
sopc-create-header-files --single fpga.h
start complication
copy ***VGA.sof to c:/
then copy the fpga.h file to /softs/nios2-linux/linux-2.6/arch/nios2/include/asm
Step 4 Building the linux kernel
Add "PATH=$PATH:~/nios2-linux/toolchain-mmu/x86-linux2/bin" to ~/.bashrc file
cd /softs/nios2-linux/uClinux-dist
make menuconfig
#Enable the dma9000 and mtd drivers
make
cd images
copy linux.initramfs.gz to windows xp c:/
Step 5 Flash Linux kelnel to DE2-70
Open Nios II Command Shell, cd to this DE2...vga DIR, and key in the
following commonds
nios2-configure-sof ***.sof
nios2-download -g linux.initramfs.gz
nios2-terminal
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
[NiosII EDS]$ nios2-terminal
nios2-terminal: connected to hardware target using JTAG UART on cable
nios2-terminal: "USB-Blaster [USB-0]", device 1, instance 0
nios2-terminal: (Use the IDE stop button or Ctrl-C to terminate)
Linux
相关文档:
这段时间学习字符设备的驱动模块程序,主要是借鉴书籍<linux驱动开发详解>及网络资源,在此,我依据个人的理解,
对现在自己所理解的进行小结。
整体出发一点,应用程序和vfs之间的接口是系统调用,而VFS与磁盘文件系统及普通设备之间的接口是file_operations
结构体成员函数,这个接口体包含对文件进行打开、关闭 ......
你了解Linux系统么?你是Linux系统的应用者么?如果你要学习linux,你可能会遇到Linux Shell自动交互问题,这里将介绍Linux Shell自动交互的解决方法,在这里拿出来和大家分享一下。
一、背景
shell脚本在处理自动循环或大的任务方面可节省大量的时间,通过创建一个处理任务的命令清单,使用变量、条件、算术和循环等方 ......
vi编辑命令
进入编辑模式 --> i (insert) 或者 a (append)
进入命令模式 --> Esc
命令模式常用操作:
删除一行 --> dd
复制一行 --> yy
粘贴 --> p ( yy 和 p 是结合使用)
替换 --> :s/oldwords/newwords 替换当前行 :%s/oldwords/newwords 替换所有
注:特殊字符用"\"转义&n ......
宏内核与微内核
(
P2
)
宏内核(
Monolithic
Kernel
)操作系统的
kernel
中既包含管理用户进程的组件,又包含向用户进程提供服务的组件(例如进程间通信、设备驱动程序、文件系统等),从而使得用户进程与操作系统
kernel
间存在着典型的
client/server
模型,但是这 ......
在开发一个系统时,一般是将一个系统分成几个模块,这样做提高了系统的可维护性,但由于各个模块间不可避免存在关联,所以当一个模块改动后,其他模块也许会有所更新,当然对小系统来说,手工编译连接是没问题,但是如果是一个大系统,存在很多个模块,那么手工编译的方法就不适用了。为此,在Linux系统中,专门提供了一个m ......