linux mp,vim文件
zynqmp 怎么将linux系统下载到emmc
1,vivado硬件配置,要选择EMMC代表的SD1;
2,编译petalinux:执行petalinux-config。
(1)选择Subsystem AUTO Hardware Setting
-> Advanced bootable images storage settings
->boot image settings;
选择primary flash,这里是将BOOT.bin设置为从qspi flash启动
(2)选择Subsystem AUTO Hardware Setting
-> Advanced bootable images storage settings
->kernel image settings;
选择primary sd,进入后我们看到这里实际就是设置image.ub的存放区域。
(3)选择Image Packaging Configuration,设置启动启动文件系统所在位置;
在设置启动方式的时候,如下两张图这样设置读取根文件系统的位置/dev/mmcblk1p2。
(4)设置你的驱动然后编译,依次执行:petalinux-config-c kernel;petalinux-config-c rootfs;
petalinux-build;petalinux-package--boot--fsbl./images/linux/zynq_fsbl.elf--fpga--u-boot--force;
3,做之前先分区(把EMMC分区),先做一个SD卡启动的petalinux文件,
petalinux系统在zynq上面启动起来以后就进行如下分区:即是mmcblk1分为mmcblk1p1和mmcblk1p2
具体步骤如下:
(1)把EMMC进行分区,执行命令: fdisk/dev/mmcblk1
(2)使用n命令,添加一个新的分区
Command(m for help): n
Command action
e extended
p primary partition(1-4)
选择p,添加主分区
,(3)选择分区号,选择1,
Partition number(1-4): 1//选择分区号
First cylinder(1-238592, default 1): Using default value 1//选择分区的第一个柱面,选择1
Last cylinder or+size or+sizeM or+sizeK(1-238592, default 238592): Using default value 238592//选择最后一个柱面
注意:1-238592,first要选第一个数,last要选择的比238592小,其中1024就是表示1M
(4)使用t命令,设置分区格式
Command(m for help): t
Selected partition 1
Hex code(type L to list codes): b
Changed system type of partition 1 to b(Win95 FAT32)
(5)使用w命令,保存配置,必须保存配置
Command(m for help): w
The partition table has been altered.
Calling ioctl() to re-read partition table
(6)使用对应文件系统工具对分析进行格式化(只能在debian里面才能识别命令)
mkfs.fat/dev/mmcblk1p1设置为fat32格式
mkfs.ext4/dev/mmcblk1p2设置为ext4格式
注意:执行完w命令然后才算分区成功,执行完mkfs命令才算格设置内存属性成功。
以上分区完成后,可以使用p命令,显示分区信息;也可以使用用d命令表示删除分区
Command(m for help): p
Disk/dev/mmcblk0: 7818 MB, 7818182656 bytes
4 heads, 16 sectors/track, 238592 cylinders
Units= cylinders of 64* 512= 32768 bytes
Device Boot Start End Blocks Id System
/dev/mmcblk0p1 1 238592 7634936 83 Linux
(7)执行这句:mkdosfs-F 32/dev/mmcblk0p1
当然,可以重复上述步骤,多分几个区,用来存放不同的状态:
FLASH要要用来存放BOOT.bin
第一个分区用来存放image.ub或者设备树(比如uImage和devicetree.dtb)等文件;--可以设置为128MB
第二个分区用来存放用户数据(比如可执行程序);可以设置为2048MB
第三个分区用来存放程序执行需要的库文件(opencv的库,qtcreator库,相机库,视频编码解码库等);剩余的1个多GB
4,把系统同步到ext4里面
先把sd卡里面系统挂载进来:mount/dev/mmcblk0p2/mnt
再把刚刚弄好的系统挂进来: mount/dev/mmcblk1p2/tmp,然后cd/mnt
然后进入把SD卡里面的系统同步到emmc里面:rsync-av./*/tmp,时间有点久,直到结束为止。
(要是不用SD卡也可以挂载U盘,解压,然后进行系统同步到EMMC所挂载的地方/tmp)
5,然后将BOOT.BIN和image.ub烧录到QSPI-FLASH中
首先擦除QSPI-FLASH:flash_eraseall/dev/mtd0
存放BOOT.bin到flash: flashcp BOOT.bin/dev/mtd0
此处若是将image.ub写入emmc的FAT分区中(不存放到flash中),先使用mount挂载eMMC的FAT分区,
然后将image.ub使用cp指令拷贝进/mnt/mmcFat即可,也就是把uImage拷贝到/dev/mmcblk1p1;
进入uImage所在目录,然后执行 cp uImage/tmp;也就是把uImage存放到了/dev/mmcblk1p1里面。
6,最后断电拔出SD卡,将拨码开关设置为flash启动,就能看到petalinux启动起来;
7,报错及其解决办法
————————————————
版权声明:本文为CSDN博主「寒听雪落」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:
想做个嵌入式Linux板子玩玩,推荐用什么芯片
选择嵌入式Linux开发板时,通常会考虑处理能力、支持度、社区活跃度和开发环境等因素。以下是一些常见的嵌入式Linux开发板芯片推荐:
1. Raspberry Pi系列
推荐芯片:Broadcom BCM283x系列(如Raspberry Pi 4的BCM2711)
优点:成本低廉、社区支持广泛、丰富的周边设备和软件支持、适合教学和个人项目。
适用场景:初学者、教育、小型项目和原型开发。
2. BeagleBone系列
推荐芯片:Texas Instruments AM335x系列(如BeagleBone Black的AM3358)
优点:功能丰富、GPIO丰富、适合嵌入式控制应用、开源硬件设计。
适用场景:嵌入式控制、自动化、物联网设备。
3. NVIDIA Jetson系列
推荐芯片:NVIDIA Tegra系列(如Jetson Nano的Tegra X1)
优点:强大的图形处理能力、适合机器学习和视觉处理、丰富的软件支持。
适用场景:机器人、AI应用、高性能图像处理。
4. ODROID系列
推荐芯片:Samsung Exynos系列(如ODROID-XU4的Exynos 5422)
优点:性能强劲、支持Linux和Android系统、适合需求较高的应用。
适用场景:多媒体、嵌入式开发、高性能计算。
5. Arduino系列
推荐芯片:ATmega系列(如Arduino Due的Atmel SAM3X8E)
优点:简单易用、丰富的Arduino社区和库支持、适合初学者和简单的物联网项目。
适用场景:教育、小型传感器网络、嵌入式控制。
6. Orange Pi系列
推荐芯片:Allwinner H系列(如Orange Pi PC的H3)
优点:性价比高、适合低成本项目和多媒体应用、社区支持较好。
适用场景:家庭媒体中心、物联网设备、低成本嵌入式开发。
7. UP Board
推荐芯片:Intel Atom系列(如UP Board的Intel Atom x5-Z8350)
优点:x86架构、性能稳定、广泛的操作系统支持(包括Linux和Windows)。
适用场景:工业控制、嵌入式系统、高性能计算需求。
选择建议:
需求分析:根据项目需求和预算选择合适的芯片和开发板。
开发环境:考虑开发环境和工具链的兼容性。
支持和社区:选择有活跃社区和良好技术支持的开发板,有助于解决开发过程中的问题。
以上推荐基于常见的开发板和芯片组合,具体选择应根据个人或项目的具体需求和偏好进行。
linux里面last -f /var/log/wfmp作用是什么
对于RPM包封装的Linux发行版本,系统日志多数存放在/var/log目录下,对于了解此目录的文档作用就十分重要,下面列出了常用的日志文档,包括楼主提到的文件作用:
/var/log:常用目录,专门用来存放所有日志文件的目录,里面存放很多系统、软件、用户等相关的日志信息;里面有一些文件是比较常用的;
lastlog:记录用户最后一次登录的信息,使用lastlog命令读取;
message:记录系统的几乎所有信息,主要包括启动信息,syslogd服务记录的信息等;
wtmp:记录所有用户登陆及注销的信息,使用last命令读取;
secure:记录登录系统访问数据的文件,如ssh pop3 telnet ftp等都会记录在此文件中
/var/log/httpd/access_log:httpd访问日志
/var/log/httpd/error_log:httpd错误日志
btmp:记录失败的用户登录
utmp:纪录当前登录的每个用户
xferlog:ftp会话日志
boot.log:记录开机或一些服务启动时所显示的启动和关闭信息
/var/log/maillog或/var/log/mail/*:记录邮件访问或往来的用户信息
cron:记录crontab例行性服务的内容
dmesg:开机引导日志信息
sudolog:纪录使用sudo发出的命令
sulog:纪录使用su命令的使用