帮内核设置串口0, (内核启动会打印出启动信息) 2.2把内核读入到SDRAM 2.3设置参数(参考u-boot-1.1.6 /lib_arm/armlinux.C中do_bootm_linux...setup_memory_tags (void); //保存memory_tag数据,让内核知道内存多大 setup_commandline_tag (“boottargs=noinitrd.../**cmdline :指向命令行参数 */ /*一般为:“boottargs=noinitrd...//定义CC变量=arm-linux-gcc,简化书写,编译命令,(*.C,*.S)文件生成*.O文件 LD = arm-linux-ld...arm-linux-objcopy //复制/格式转换命令, boot.elf生成boot.dis OBJDUMP = arm-linux-objdump /
> Busybox Library Tuning选上: [*] Tab completion //tab补齐命令 然后输入vi Makefile,找到CROSS_COMPILE字段,后面添加”arm-linux...cd /work/nfs_root/busybox1.7_fs mkdir lib //创建lib目录 (存放库函数) cd /work/tools/gcc-3.4.5-glibc-2.3.6/arm-linux...设置启动参数: set bootargs noinitrd root=/dev/mtdblock3 rootfstype=yaffs2 init=/linuxrc console=ttySAC0 save...nand write.jffs2 0x30000000 0x260000 $(filesize) // write. jffs2 :和yffs原理一样 设置启动参数: set bootargs noinitrd...hostname:主机名,可以不填 device: 网卡设备,默认一个网卡就填eth0 autoconf: 自动连接,填off不自动连接 6.2 所以设置启动参数为 set bootargs noinitrd
.ppm 注意:转换后的文件名有规定,必须是logo_linux_clut224.ppm 3.生成的logo_linux_clut224.ppm就是我们需要的logo文件,把它拷贝到内核目录...覆盖原来的logo文件 $ cd /work/system/linux-2.6.22.6/drivers/video/logo/ $ cp /work/logo_linux_clut224.ppm ....//笔者制作的logo文件在/work/目录 查看logo目录是否存在logo_linux_clut224.o的文件,如果有一定要删除!...$ rm logo_linux_clut224.o 配置内核支持logo显示(如果内核用的是linux-2.6.22.6_jz2440.patch补丁,默认已经支持logo显示) $ make menuconfig...擦除kernel分区 nand write.jffs2 30000000 kernel //烧写uImage 因为笔者的文件系统在nfs上, 所以先设bootargs set bootargs noinitrd
Hit any key to stop autoboot: 0 Booting Linux ......Image Name: Linux-3.4.2 Created: 2014-09-19 15:10:15 UTC Image Type: ARM Linux Kernel...② #define CONFIG_BOOTARGS "noinitrd root=/dev/mtdblock3 init=/linuxrc console=ttySAC0" 改为...#define CONFIG_BOOTARGS "noinitrd root=/dev/mtdblock3 init=/linuxrc console=ttySAC1" 大家都知道这个参数是传递给内核的...=0 改为 CONFIG_DEBUG_S3C_UART=1 这是告诉Linux系统,要把调试信息输出到串口2上面。
第二,set bootargs noinitrd root=/dev/nfs nfsroot=202.193.61.195:/work/nfs_root/first_fs ip=202.193.61.196...= arm-linux- (4)执行make命令编译。 报错: ?...=arm-linux-,之后保存退出。 ...在first_fs下使用vi etc/fstab打开文件(参考linux应用开发手册370页!!!认真看!!!...直接从nfs启动,修改set bootargs noinitrd root=/dev/nfs nfsroot=202.193.61.195:/work/nfs_root/first_fs ip=202.193.61.196
开发板:jz2440 主机linux:ubuntu 9.10(资料光盘那个) 内核:linux2.6.22.6 交叉编译器:arm-linux-gcc 3.4.5(也可以用毕业班4.3.2那个编译器...= arm-linux- make 出现错误: 解决方法: 配置busybox去掉 ionice 选项。...2.6.22.6到ubuntu,解压打补丁编译: $ tar xjf linux-2.6.22.6.tar.bz2 $ cd linux-2.6.22.6 $ patch -p1 < ...../etc/exports 追加一行:/work/busybox-1.21.0/rootfs *(rw,sync,no_root_squash) b.设置bootargs set bootargs noinitrd...yaffs2 2.把20170607.yaffs2 拷贝到window tftp软件所在目录,设置bootargs: setenv bootargs ‘root=/dev/mtdblock3 noinitrd
0x30007FC0’ // 使用flash中的文件系统启动,默认为yaffs2文件系统,如果是jffs2文件系统,添加 rootfstype=jffs2 // yaffs2 setenv bootargs noinitrd...root=/dev/mtdblock3 init=/linuxrc console=ttySAC0,115200 // jffs2 setenv bootargs noinitrd root=/dev...xxxx // 使用nfs网络文件系统启动,默认为yaffs2文件系统,如果是jffs2文件系统,添加rootfstype=jffs2 // yaffs2 ,注意是一行 setenv bootargs noinitrd...192.168.1.3:192.168.1.2:192.168.1.1:255.255.255.0::eth0:off init=/linuxrc // jffs2 ,注意是一行 setenv bootargs noinitrd
1.2 设置bootargs启动网络文件系统 1.2.1 打开linux-2.6.22.6(也就是开发板内核)内核文件目录,在"/documentation"找到"nfsroot.txt"资料文件。...最后将上面两个参数,代入到bootargs中,步骤: set bootargs noinitrd root=/dev/nfs nfsroot=192.168.1.106:/work/nfs_root...2.2 在Linux中编译驱动,这里以LED程序为例.... make编译 ,生成first_drv.ko文件 (ko文件用来insmod命令加载) arm-linux-gcc
主机开发环境: Ubuntu9.10 内核: Linux2.6.22.6 文件系统: fs_qtopia.yaffs2 开发板:JZ2440 目的:通过SD卡传文件到开发板 其实很简单,就一条挂载命令,...需要你通过jlink或者eop下载uboot到板子(nand或者NOR) 然后上传linux 2.6.22.6到ubuntu,解压打补丁编译: tar xjflinux-2.6.22.6.tar.bz2...cd linux-2.6.22.6 patch -p1 < ...../linux-2.6.22.6_jz2440.patch cp config_ok .config make uImage 进入uboot,tftp下载uImage到jz2440,并烧写 先设置网络...nand read.jffs2 0x30007FC0kernel; bootm 0x30007FC0 save 设置bootargs setenv bootargs 'root=/dev/mtdblock3noinitrd
能正常开机进入Linux系统 3.uboot中启动参数类似这种 bootargs=noinitrd root=/dev/mtdblock3 init=/linuxrc console=ttySAC0...很多初学者以为,在uboot状态下设置完IP能ping通Ubuntu那么开发板进入Linux后也一定能ping通Ubuntu,这是不对的。...两种状态下的IP互不影响,也就是说uboot的IP不会传递给Linux,如果需要使用网络都需要分别设置IP。 ?...以保证开发板有挂载这个目录的权限 3.重启nfs服务器 4.再次确认刚才设置的目录是否生效 5.查看Ubuntu的IP和开发板的IP,等会设置uboot启动参数时会用到 6.设置uboot启动参数 set bootargs noinitrd...光盘里提供的文件系统都是用arm-linux-gcc(3.4.5版本制作的),因此你必须使用2.6.22.6的内核来启动,否则无法挂载文件系统。
IPNC_RDK_DM36x_Version3.1.0.tar.gz: 这是linux tar文件,需要解压在linux机器。这是主要tar文件IPNC RDK安装。...构建 — “make lsp” 清除Linux构建 — “make lspclean” 重建整个Linux — “make lspall” 对于增量DVSDK构建 — “make dvsdk”...bootcmd ‘nboot 0x80700000 0 0x500000;bootm 0x80700000′ setenv bootargs ‘mem=48M console=ttyS0,115200n8 noinitrd...cmemk.allowOverlap=1 cmemk.useHeapIfPoolUnavailable=1 eth=$(ethaddr) setenv bootargs mem=48M console=ttyS0,115200n8 noinitrd...acpi_pm lpj=1077248 eth=$(ethaddr) setenv bootargs dm365_imp.oper_mode=0 mem=48M console=ttyS0,115200n8 noinitrd
glibc库 mkdir lib //在mini_fs目录下创建个lib目录 (存放库函数) cd /work/tools/gcc-3.4.5-glibc-2.3.6/arm-linux...它同时也是用来接替devfs及热插拔的功能 mdev使用说明在busybox-1.7.0/docs/medev.txt中以及linux应用开发手册第369页,如下图: ?...9 mkfs.jffs2制作jffs2文件系统(参考linux应用手册375页) 9.1 安装zlib(压缩动态库) cd /work/GUI/xwindow/X/deps tar -xzf zlib-...,-e:一块大小为128kb -d:制作的dir目录,-o:输出文件 */ 9.4 烧入板子中,并设置bootags参数为yaffs启动 在uboot中输入: set bootargs noinitrd...来更改开机自动进入nfs文件系统,不需要mount指令 步骤(参考http://www.cnblogs.com/lifexy/p/7049743.html): 进入uboot,输入: set bootargs noinitrd
1.开场白 环境: 处理器架构:arm64 内核源码:linux-5.9.2 ubuntu版本:20.04.1 代码阅读工具:vim+ctags+cscope 对于Linux爱好者,你是否也有这样的困扰...--host=x86_64-linux-gnu --target=aarch64-linux-gnu --program-prefix=aarch64-linux-gnu- --includedir=...linux-5.9.2.tar.xz 3)放置根文件系统到源码目录: cd linux-5.9.2 cp ../.....cpu cortex-a57 -machine type=virt \ -m 1024 -smp 4 -kernel arch/arm64/boot/Image --append "noinitrd...\ -device virtio-9p-device,fsdev=kmod_dev,mount_tag=kmod_mount 我们可以发现,传递给内核的命令行参数变化了,添加了noinitrd
其中bootm要做的事情: a 读取头部,把内核拷贝到合适的地方(0X30008000) b 在do_boom_linux()中把参数给内核准备好,并告诉内核参数的首地址 c 在do_boom_linux...系统,执行该段case #ifdef CONFIG_SILENT_CONSOLE fixup_silent_linux(); #endif do_bootm_linux(cmdtp, flag, argc....... } do_bootm()函数若执行无误,最终会执行do_bootm_linux()函数 1.3 bootm命令之do_bootm_linux函数分析 进入do_bootm_linux()...用于后面setup_commandline_tag的形参 //在本uboot界面中输入print指令就能得到"bootargs=noinitrd root=/dev/mtdblock3 init=/linuxrc...; 实现4字节对齐 */ strcpy (params->u.cmdline.cmdline, p); //存放命令行参数:params->u.cmdline.cmdline=boottargs=noinitrd
l kernel /dev/fs/fat@usb0/boot/vmlinuz //加载内核 l noinitrd /dev/fs/fat@usb0/boot/rootfs.cpio.gz //加载文件系统...盘烧写内核和文件系统镜像,如下图所示: 烧写完内核和文件系统,会启动内核并最终进入到文件系统,如下图所示: 文件系统的登录用户名默认是“ root”,我们输入“ root”,然后按回车即可进入 linux...文件系统,如下 图所示: 至此,通过 U 盘启动官方 Linux 文件系统我们就讲解完了。
这个过程就叫建立文件系统 种类: 1 ext2与ext3是linux专门设计的硬盘文件系统一般称为扩展文件系统。Ext3增加了日志记录功能。...fdisk 分区在终端会显示打印信息 mkfs.ext4 /dev/XXX sfdisk [options] device 可以直接执行分区 2 swap文件系统 用于linux的交换分区,用来提供虚拟内存...由操作系统自行管理 3 vfat 是linux对DOS,windows系统下的FAT文件系统的一个统称 4 NFS文件系统 即网络文件系统,用于系统间通过网络进行文件共享, 不能建立在flash上,...此外,YAFFS自带NAND芯片的驱动,并且为嵌入式系统提供了直接访问文件系统的API,用户可以不使用Linux中的MTD与VFS,直接对文件系统操作。...1)启动U-boot,修改启动参数 setenv bootargs noinitrd root=/dev/mtdblock2 rootfstype=yaffs2 rw console=ttySAC0,115200
Re-scan Nor Flash [u] Copy bootloader from nand to nor [v] Copy bootloader from nor to nand [k] Download Linux...image [y] Download root_yaffs image [d] Download to SDRAM & Run [z] Download zImage into RAM [g] Boot linux...磨刀不误砍柴工,在配置之前我们第一步就是配置环境变量,目的是对接好我们PC,使用 print命令查看当前 uboot 的环境信息: OpenJTAG> print bootargs=noinitrd...30000000 192.168.0.20:/work/nfs_root/uImage_alsa; bootm 30000000' #由于是两条指令,因此需要用''引起来 setenv bootargs noinitrd
介绍 QEMU是一套由法布里斯·贝拉(Fabrice Bellard)所编写的以GPL许可证分发源码的模拟处理器,在GNU/Linux平台上使用广泛。...接着,输入nfs的启动参数 set bootargs noinitrd root=/dev/nfs rw nfsroot=192.168.31.196:/home/bigmagic/work/fs_qtopia...以后表示调试Linux都方便多了!再也不用下载程序到开发板这么麻烦了!
initramfs与initrd区别 (1) Linux内核只认cpio格式的initramfs文件包(因为unpack_to_rootfs只能解析cpio格式文件),非cpio格式的 initramfs...单独加载到ram中内核空间外的地址,比如加载的地址为addr(是物理地址而非虚拟地址),大小为8MB,那么只要在命令行加入”initrd=addr,8M”命令,系统就可以找到 initrd(当然通过适当修改Linux...init -> bin/busybox,否则内核启动将会失败) 链接入内核的initramfs文件在linux-2.6.24/usr/initramfs_data.cpio.gz 使用initrd...内核启动参数不需要”initrd=”(也可以写成”noinitrd”); root=/dev/mtdblock2 (/dev/mtdblock2 — 根文件系统所烧写的FLASH分区) 2.
领取专属 10元无门槛券
手把手带您无忧上云