问题杂录-NVIDIA Bluefield DPU bfb-build编译报错记录与处理办法?(无数坑)

news2024/10/26 1:21:16

文章目录

  • 背景
    • bfb-build之后直接退出
    • docker.io无法访问
    • 报错 ERROR: failed to solve: process
    • kubernotes 下载失败
    • 报错mlnx-fw-updater-signed-24.07-0.6.1.1.aarch64: Cannot download
    • 报错 No match for argument: bf-release
    • 报错
  • 放弃编译anolis,直接编译老版ubuntu
    • 全量日志
  • 最后效果:

背景

bfb-build是用来根据NVIDIA提供的repo仓库,生成DPU使用的OS镜像库。具体可以参考github:https://github.com/Mellanox/bfb-build/
尝试需谨慎,坑无数。不过填萝卜多了,对bfb-build以及DPU OS构建会有不一样的理解。
本文仅记录编译过程中遇到的异常与处理策略。比较零散,仅供未来查阅,以及相关同行遇到问题后做一个辅助。核心点有几个:1. 建议使用lts版本的分支 2. 老卡建议用老的版本 3.尽量先编译linux
本文使用Bluefield 2进行实际测试,编译环境使用的是anolis的Linux,编译目标是BFB的ubuntu 20.2版本。本文先尝试直接build主干分支的anolis 8.6到DPU上,结果遇到各种问题。最后放弃,切换到了doca1.5的lts分支build。

相关信息:

# OS:
Linux one.one.one.one 4.18.0-553.22.1.0.1.an8.x86_64 #1 SMP Wed Sep 25 18:10:22 CST 2024 x86_64 x86_64 x86_64 GNU/Linux
# Bluefiled
[PN] Part number: MBF2M355A-VESOT_SS    
# BFB branch
remotes/origin/lts-1.5.3
# BFB build最终命令
IMAGE_TYPE=dev ./bfb-build ubuntu 20.04

bfb-build之后直接退出

现象:
在这里插入图片描述
进一步添加-x查看:IMAGE_TYPE=dev INCLUDE_BF3BMC=no ./bfb-build ubuntu 20.04

ERROR: Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?

原因:没启动docer服务器
解决办法:

sudo systemctl restart docker

docker.io无法访问

解决办法:
添加镜像加速服务
添加阿里云为例:
https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors
点击镜像加速服务,然后按照操作处理:centos为例

1. 安装/升级Docker客户端
推荐安装1.10.0以上版本的Docker客户端,参考文档docker-ce
2. 配置镜像加速器
针对Docker客户端版本大于 1.10.0 的用户
您可以通过修改daemon配置文件/etc/docker/daemon.json来使用加速器
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://69mp4xz9.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

修改后:可以正常下载dockerbuild中的下载项
在这里插入图片描述

报错 ERROR: failed to solve: process

ERROR: failed to solve: process "/bin/sh -c echo 'excludepkgs=OpenIPMI' >> /etc/dnf/dnf.conf &&     dnf -y clean all &&     dnf install -y epel-release &&     dnf --exclude='mlxbf-bootimages*' -y update &&     dnf --exclude='mlxbf-bootimages*' -y install coreutils-single && 
   dnf --exclude='mlxbf-bootimages*' -y install         acpid         audit         chkconfig         chrony         containerd.io       
 cri-tools         cryptsetup         curl         dhcp-client         dosfstools         dracut         dracut-network         dracut-tools         e2fsprogs         edac-utils         efibootmgr         findutils         gawk         glibc-langpack-en         grub2        
grubby         i2c-tools         iperf3         ipmitool         iproute-tc         iputils         jq         kexec-tools         kmod  
      kubeadm         kubelet         kubernetes-cni         libguestfs-tools         libhugetlbfs-utils         libvirt         lm_sensors         lm_sensors-sensord         lsof         ltrace         lvm2         mmc-utils         mokutil         mstflint         net-tools         NetworkManager         NetworkManager-config-server         NetworkManager-ovs         network-scripts         nfs-utils        
nvme-cli         openssh-clients         openssh-server         openssl         parted         passwd         pciutils         perf      
  python3-pip         qemu-kvm         rasdaemon         rsyslog         sg3_utils         shim         sshpass         sudo         sysstat         systemd-timesyncd         system-lsb         tar         tcpdump         unzip         usbutils         util-linux         vim
        virt-install         watchdog         wget         which         xfsprogs         doca-runtime         doca-devel         strongswan-bf         ${MLNX_FW_UPDATER}     &&     dnf --exclude='mlxbf-bootimages*' -y reinstall bf-release &&     dnf -y clean all &&     rm -rf /var/cache/* &&     truncate -s0 /etc/machine-id &&     update-pciids" did not complete successfully: exit code: 1

网上追述:

959.9 [MIRROR] doca-sdk-telemetry-exporter-devel-2.8.0081-1.an8.aarch64.rpm: Curl error (18): Transferred a partial file for https://linux.mellanox.com/public/repo/doca/2.8.0/anolis8.6/arm64-dpu/doca-sdk-telemetry-exporter-devel-2.8.0081-1.an8.aarch64.rpm [transfer closed with 13164 bytes remaining to read]
959.9 [FAILED] doca-sdk-telemetry-exporter-devel-2.8.0081-1.an8.aarch64.rpm: No more mirrors to try - All mirrors were already tried without success

kubernotes 下载失败

816.4 (387/586): hwdata-0.314-8.22.0.1.an8.noarch.rpm 1.5 MB/s | 1.8 MB     00:01    
816.5 [MIRROR] kubelet-1.29.9-150500.1.1.aarch64.rpm: Curl error (18): Transferred a partial file for https://prod-cdn.packages.k8s.io/repositories/isv:/kubernetes:/core:/stable:/v1.29/rpm/aarch64/kubelet-1.29.9-150500.1.1.aarch64.rpm [transfer closed with 15234388 bytes remaining to read]
816.5 [FAILED] kubelet-1.29.9-150500.1.1.aarch64.rpm: No more mirrors to try - All mirrors were already tried without success
816.6 
816.6 The downloaded packages were saved in cache until the next successful transaction.
816.6 You can remove cached packages by executing 'dnf clean packages'.
816.9 Error: Error downloading packages:
816.9   kubelet-1.29.9-150500.1.1.aarch64: Cannot download, all mirrors were already tried without success
------
Dockerfile:24

解决办法更换阿里云的mirror
https://developer.aliyun.com/mirror/kubernetes?spm=a2c6h.13651102.0.0.73281b11UWPjI2

并且同步把docker也更换为阿里云的:

https://developer.aliyun.com/mirror/docker-ce?spm=a2c6h.13651102.0.0.57e31b11smKgIl

效果:
在这里插入图片描述
修改后多个repos文件修改为:

[root@localhost repos]# pwd
/root/workspace/bfb-build/anolis/8.6/repos
[root@localhost repos]# for f in `ls`; do echo ;echo \#==$f==; cat $f; done

#==AnolisOS-Experimental.repo==
[Experimental]
name=AnolisOS-$releasever - BaseOS
baseurl=http://mirrors.openanolis.cn/anolis/8.6/Experimental/$basearch/os
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ANOLIS
gpgcheck=1

#==doca.repo==
[doca] 
name=Nvidia DOCA repository 
baseurl=https://linux.mellanox.com/public/repo/doca/2.8.0/anolis8.6/arm64-dpu/ 
gpgcheck=0 
enabled=1

#==docker.repo==
[docker-ce-stable]
name=Docker CE Stable - $basearch
baseurl=https://mirrors.aliyun.com/docker-ce/linux/centos/8/$basearch/stable
enabled=1
gpgcheck=1
gpgkey=https://mirrors.aliyun.com/docker-ce/linux/centos/gpg

#==kubernetes.repo==
[kubernetes]
name=Kubernetes
baseurl=https://mirrors.aliyun.com/kubernetes-new/core/stable/v1.28/rpm/
enabled=1
gpgcheck=1
gpgkey=https://mirrors.aliyun.com/kubernetes-new/core/stable/v1.28/rpm/repodata/repomd.xml.key

报错mlnx-fw-updater-signed-24.07-0.6.1.1.aarch64: Cannot download

990.3 (584/586): kubelet-1.28.14-150500.2.1.aarch64.r 2.0 MB/s |  16 MB     00:08    
1080.4 [MIRROR] mlnx-fw-updater-signed-24.07-0.6.1.1.aarch64.rpm: Curl error (18): Transferred a partial file for https://linux.mellanox.com/public/repo/doca/2.8.0/anolis8.6/arm64-dpu/mlnx-fw-updater-signed-24.07-0.6.1.1.aarch64.rpm [transfer closed with 239786137 bytes remaining to read]
1243.4 [MIRROR] mlnx-fw-updater-signed-24.07-0.6.1.1.aarch64.rpm: Curl error (18): Transferred a partial file for https://linux.mellanox.com/public/repo/doca/2.8.0/anolis8.6/arm64-dpu/mlnx-fw-updater-signed-24.07-0.6.1.1.aarch64.rpm [transfer closed with 241948825 bytes remaining to read]
1257.0 [MIRROR] mlnx-fw-updater-signed-24.07-0.6.1.1.aarch64.rpm: Curl error (18): Transferred a partial file for https://linux.mellanox.com/public/repo/doca/2.8.0/anolis8.6/arm64-dpu/mlnx-fw-updater-signed-24.07-0.6.1.1.aarch64.rpm [transfer closed with 239507609 bytes remaining to read]
1257.0 [FAILED] mlnx-fw-updater-signed-24.07-0.6.1.1.aarch64.rpm: No more mirrors to try - All mirrors were already tried without success
1257.0 
1257.0 The downloaded packages were saved in cache until the next successful transaction.
1257.1 You can remove cached packages by executing 'dnf clean packages'.
1257.4 Error: Error downloading packages:
1257.4   mlnx-fw-updater-signed-24.07-0.6.1.1.aarch64: Cannot download, all mirrors were already tried without success
------

只能暂时删掉mlnx的不安装到docker里面,先往后跑

报错 No match for argument: bf-release

2178.8   zip-3.0-23.0.1.an8.aarch64                                                    
2178.9 
2178.9 Complete!
2185.5 Last metadata expiration check: 0:34:13 ago on Sat Oct 12 16:35:31 2024.
2192.6 Package bf-release available, but not installed.
2192.6 No match for argument: bf-release
2192.7 Error: No packages marked for reinstall.
------

临时删掉dockerfile中最后一个

报错

WARNING: The requested image's platform (linux/arm64) does not match the detected host platform (linux/amd64/v2) and no specific platform was requested

在这里插入图片描述

放弃编译anolis,直接编译老版ubuntu

先切换到分支,remotes/origin/lts-1.5.3
根据已经积累的相关repo,直接build ubuntu,能够一把过
在这里插入图片描述

全量日志

注意我编译的dev类似,dev和prod区别是,prod是product缩写表示正式产品,dev是工程样机就是Engineer simples的

[root@localhost bfb-build]# IMAGE_TYPE=dev ./bfb-build ubuntu 20.04
Downloading bootimages...
Downloading http://cloud-images.ubuntu.com/releases/focal/release/ubuntu-20.04-server-cloudimg-arm64-root.tar.xz...
[+] Building 3953.1s (73/73) FINISHED                                                       docker:default
 => [internal] load build definition from Dockerfile                                                  0.0s
 => => transferring dockerfile: 6.63kB                                                                0.0s
 => [internal] load .dockerignore                                                                     0.0s
 => => transferring context: 2B                                                                       0.0s
 => [internal] load build context                                                                     8.1s
 => => transferring context: 366.30MB                                                                 8.0s
 => [ 1/69] ADD ubuntu-20.04-server-cloudimg-arm64-root.tar.xz /                                     37.7s
 => [ 2/69] ADD qemu-aarch64-static /usr/bin/                                                        31.0s
 => [ 3/69] WORKDIR /root/workspace                                                                   0.1s
 => [ 4/69] ADD install.sh .                                                                          0.1s
 => [ 5/69] ADD create_bfb .                                                                          0.1s
 => [ 6/69] ADD bootimages bootimages/                                                                0.1s
 => [ 7/69] RUN mkdir -p /run/systemd; echo docker > /run/systemd/container                           0.6s
 => [ 8/69] RUN apt update                                                                          139.4s
 => [ 9/69] RUN apt remove --purge -y snapd plymouth                                                 67.8s 
 => [10/69] RUN apt autoremove -y                                                                    33.0s 
 => [11/69] RUN apt install -y watchdog binutils sbsigntool rasdaemon net-tools nfs-common iptable  320.7s 
 => [12/69] RUN apt install -y ipmitool openipmi-                                                    46.6s 
 => [13/69] RUN apt install -y docker.io; systemctl disable docker.service || true; systemctl disa  152.1s 
 => [14/69] RUN apt install -y python3-pip                                                          294.1s 
 => [15/69] RUN apt install -y build-essential                                                        3.7s 
 => [16/69] RUN apt install -y libpam-pwquality; echo "minlen = 8" >> /etc/security/pwquality.conf;  45.9s 
 => [17/69] RUN apt install -y python2.7 python3.8 python3-pyinotify                                 56.5s 
 => [18/69] RUN apt update                                                                           41.6s 
 => [19/69] RUN apt install -y grub-efi-arm64-signed grub-efi-arm64-bin shim-signed                  96.8s 
 => [20/69] RUN perl -ni -e 'print unless /focal-proposed/' /etc/apt/sources.list                     0.7s 
 => [21/69] RUN apt update                                                                           70.9s 
 => [22/69] RUN echo 'set superusers="admin"' >> /etc/grub.d/40_custom;  echo 'password_pbkdf2 admin  0.7s 
 => [23/69] RUN update-alternatives --install /usr/bin/python python /usr/bin/python3.8 1             0.7s 
 => [24/69] RUN update-alternatives --install /usr/bin/python python /usr/bin/python2.7 10            0.7s 
 => [25/69] RUN mkdir -p -m 755 /etc/apt/keyrings/                                                    0.6s 
 => [26/69] RUN echo "deb [signed-by=/etc/apt/keyrings/kubernetes-apt-keyring.gpg] https://pkgs.k8s.  1.0s 
 => [27/69] RUN mkdir -p /etc/apt/keyrings/                                                           0.6s 
 => [28/69] RUN curl -fsSL https://pkgs.k8s.io/core:/stable:/v1.25/deb/Release.key | sudo gpg --dear  3.6s
 => [29/69] RUN apt update                                                                           46.4s
 => [30/69] RUN apt install -y cpu-checker libvirt-clients libvirt-daemon qemu qemu-kvm             321.2s
 => [31/69] RUN apt install -y kubelet=1.25.16-1.1 runc containerd cri-tools=1.26.0-1.1 kubernetes  106.2s
 => [32/69] RUN apt-mark hold kubelet cri-tools kubernetes-cni                                        2.4s
 => [33/69] RUN wget -qO - https://linux.mellanox.com/public/repo/doca/1.5.3/GPG-KEY-Mellanox.pub |  21.7s
 => [34/69] RUN echo "deb [trusted=yes] https://linux.mellanox.com/public/repo/doca/1.5.3/ubuntu20.0  1.0s
 => [35/69] RUN apt update || true                                                                   83.0s
 => [36/69] RUN apt install -y -f     linux-bluefield=5.4.0.1087.83     linux-bluefield-headers-5.  316.0s
 => [37/69] RUN apt install -y -f doca-runtime doca-tools doca-sdk || true                         1298.4s
 => [38/69] RUN apt --fix-broken install -y || true                                                   3.6s
 => [39/69] RUN apt-mark hold linux-tools-bluefield linux-image-bluefield linux-bluefield linux-head  2.4s
 => [40/69] RUN apt update || true                                                                   93.1s
 => [41/69] RUN /usr/sbin/dpkg-reconfigure bf-release || true                                       140.0s
 => [42/69] RUN mkdir -p /etc/kubelet.d                                                               0.6s
 => [43/69] RUN mkdir -p /workspace                                                                   0.6s
 => [44/69] RUN dpkg -i bootimages/mlxbf-bootimages*_arm64.deb                                        3.3s
 => [45/69] RUN /bin/rm -f /etc/ssh/sshd_config.d/60-cloudimg-settings.conf || true                   0.6s
 => [46/69] RUN /bin/rm -f /etc/default/grub.d/50-cloudimg-settings.cfg || true                       0.6s
 => [47/69] RUN systemctl enable mlx-regex.service || true                                            0.7s
 => [48/69] RUN systemctl enable NetworkManager.service || true                                       0.7s
 => [49/69] RUN systemctl enable NetworkManager-wait-online.service || true                           0.7s
 => [50/69] RUN systemctl enable networking.service || true                                           2.0s
 => [51/69] RUN systemctl enable mlnx_snap.service || true                                            0.7s
 => [52/69] RUN systemctl enable acpid.service || true                                                1.6s
 => [53/69] RUN systemctl enable mlx-openipmi.service || true                                         1.9s
 => [54/69] RUN systemctl enable mlx_ipmid.service || true                                            0.7s
 => [55/69] RUN systemctl enable set_emu_param.service || true                                        0.7s
 => [56/69] RUN systemctl disable openvswitch-ipsec || true                                           2.0s
 => [57/69] RUN systemctl disable srp_daemon.service || true                                          0.7s
 => [58/69] RUN systemctl disable ibacm.service || true                                               0.8s
 => [59/69] RUN systemctl disable opensmd.service || true                                             2.0s
 => [60/69] RUN systemctl disable unattended-upgrades.service || true                                 1.7s
 => [61/69] RUN systemctl disable apt-daily-upgrade.timer || true                                     0.7s
 => [62/69] RUN systemctl disable docker.service || true                                              0.8s
 => [63/69] RUN systemctl disable docker.socket || true                                               0.7s
 => [64/69] RUN systemctl disable kubelet.service || true                                             0.8s
 => [65/69] RUN systemctl disable containerd.service || true                                          0.8s
 => [66/69] RUN systemctl disable mosquitto.service || true                                           0.8s
 => [67/69] RUN /usr/sbin/update-pciids || true                                                       5.4s
 => [68/69] RUN mkdir -p /boot/efi/EFI/ubuntu/;  cp /usr/lib/grub/arm64-efi-signed/grubaa64.efi.sign  1.2s
 => [69/69] RUN sed -i -e "s/signed/dev/" /etc/mlnx-release                                           0.6s
 => exporting to image                                                                               27.9s
 => => exporting layers                                                                              27.9s
 => => writing image sha256:feb34414e98f34602f75a073fbaa77100832694cc603682fccd4e77eb96cbd27          0.0s
 => => naming to docker.io/library/bfb_runtime_ubuntu20.04                                            0.0s
Work directory: /root/workspace/bfb
update-initramfs: Generating /boot/initrd.img-5.4.0-1087-bluefield
cryptsetup: ERROR: Couldn't resolve device overlay
cryptsetup: WARNING: Couldn't determine root device
Unsupported ioctl: cmd=0x5331
Unsupported ioctl: cmd=0x5331
Unsupported ioctl: cmd=0x5331
W: Couldn't identify type of root file system for fsck hook
mkdir -p /root/workspace/bfb
cd /root/workspace/bfb
rm -rf initramfs
Rebuilding /root/workspace/bfb/dump-initramfs-v0
82527 blocks
filename:       /lib/modules/5.4.0-1087-bluefield/updates/dkms/mlx5_ib.ko
alias:          auxiliary:mlx5_core.rdma-rep
alias:          auxiliary:mlx5_core.multiport
alias:          auxiliary:mlx5_core.rdma
license:        Dual BSD/GPL
description:    Mellanox 5th generation network adapters (ConnectX series) IB driver
author:         Eli Cohen <eli@mellanox.com>
srcversion:     35FA1879D2F0B59D7AB0915
depends:        mlx5_core,ib_core,mlx_compat,ib_uverbs,auxiliary
name:           mlx5_ib
vermagic:       5.4.0-1087-bluefield SMP preempt mod_unload modversions aarch64
sig_id:         PKCS#7
signer:         NVIDIA BlueField Secure Boot EFI Signing 2022-A
sig_key:        CE:B8:B1:98:98:A9:99:B6
sig_hashalgo:   sha256
signature:      53:86:CD:41:24:74:14:21:ED:6B:1B:E4:5F:6C:D4:D5:CF:E4:01:A5:
                E6:3A:49:3E:A7:94:EC:F1:3F:E7:BD:B3:4A:4C:3D:C1:3F:CA:1F:3C:
                B2:D5:C9:C5:21:41:49:24:69:4C:E0:CA:7A:A6:08:F4:2F:50:2F:A7:
                65:58:9E:80:81:C6:10:74:A9:66:FD:11:27:68:5A:AB:F5:7D:50:3A:
                C9:B8:2A:E3:45:9C:A2:E2:4C:D1:7A:C4:A9:11:01:B6:37:CB:8D:1C:
                AC:4C:C8:31:44:5E:53:53:9E:C5:21:32:10:CA:69:E5:21:65:FB:77:
                21:8B:2A:62:3D:AE:06:11:74:D5:3F:31:40:91:8A:8A:76:9D:2F:0E:
                5F:7C:42:3E:B6:22:75:99:94:EA:B0:35:DF:29:58:7C:23:50:E3:BB:
                24:7C:74:50:5E:0A:68:2A:09:E5:20:EB:C2:C3:36:64:DD:6D:52:F3:
                09:F0:1A:67:2C:18:8D:C5:9D:E8:DD:23:93:BF:6D:E0:8C:30:90:98:
                CF:E0:BC:B5:8E:FE:1C:B3:DB:97:9E:22:AB:B7:5C:42:09:41:71:81:
                EE:C5:FD:F3:7B:E9:1C:24:DF:79:79:90:55:63:7D:90:1D:12:C4:3A:
                1A:09:0C:27:AC:EE:94:1B:57:A0:21:67:DB:0B:27:ED
parm:           dc_cnak_qp_depth:DC CNAK QP depth (uint)
filename:       /lib/modules/5.4.0-1087-bluefield/updates/dkms/mlx5_core.ko
alias:          auxiliary:mlx5_core.eth-rep
alias:          auxiliary:mlx5_core.eth
basedon:        Korg 5.17-rc4
version:        5.8-5.1.1
license:        Dual BSD/GPL
description:    Mellanox 5th generation network adapters (ConnectX series) core driver
author:         Eli Cohen <eli@mellanox.com>
srcversion:     8569B3E0CFE5558D52DD122
alias:          pci:v000015B3d0000A2DFsv*sd*bc*sc*i*
alias:          pci:v000015B3d0000A2DCsv*sd*bc*sc*i*
alias:          pci:v000015B3d0000A2D6sv*sd*bc*sc*i*
alias:          pci:v000015B3d0000A2D3sv*sd*bc*sc*i*
alias:          pci:v000015B3d0000A2D2sv*sd*bc*sc*i*
alias:          pci:v000015B3d00001023sv*sd*bc*sc*i*
alias:          pci:v000015B3d00001021sv*sd*bc*sc*i*
alias:          pci:v000015B3d0000101Fsv*sd*bc*sc*i*
alias:          pci:v000015B3d0000101Esv*sd*bc*sc*i*
alias:          pci:v000015B3d0000101Dsv*sd*bc*sc*i*
alias:          pci:v000015B3d0000101Csv*sd*bc*sc*i*
alias:          pci:v000015B3d0000101Bsv*sd*bc*sc*i*
alias:          pci:v000015B3d0000101Asv*sd*bc*sc*i*
alias:          pci:v000015B3d00001019sv*sd*bc*sc*i*
alias:          pci:v000015B3d00001018sv*sd*bc*sc*i*
alias:          pci:v000015B3d00001017sv*sd*bc*sc*i*
alias:          pci:v000015B3d00001016sv*sd*bc*sc*i*
alias:          pci:v000015B3d00001015sv*sd*bc*sc*i*
alias:          pci:v000015B3d00001014sv*sd*bc*sc*i*
alias:          pci:v000015B3d00001013sv*sd*bc*sc*i*
depends:        mlx_compat,auxiliary,mlxdevm,mlxfw,psample
name:           mlx5_core
vermagic:       5.4.0-1087-bluefield SMP preempt mod_unload modversions aarch64
sig_id:         PKCS#7
signer:         NVIDIA BlueField Secure Boot EFI Signing 2022-A
sig_key:        CE:B8:B1:98:98:A9:99:B6
sig_hashalgo:   sha256
signature:      3F:1C:67:3D:4D:B0:6F:EF:E7:F0:54:AD:B9:BB:F4:EB:02:E8:1D:1B:
                35:8A:38:D2:9F:19:B1:D5:8C:61:50:56:88:9E:98:71:85:FA:CE:ED:
                E0:CA:73:06:66:9F:9A:D1:1E:96:29:9A:AE:DF:E4:AC:95:AA:41:02:
                5E:16:DD:9B:A1:DF:BC:D9:AB:57:9B:65:68:2A:EC:81:F5:C4:EB:02:
                F7:78:E3:16:40:2F:25:34:89:D1:79:CC:45:88:42:B9:2C:83:03:38:
                E4:9B:B4:38:63:50:4B:C7:EF:21:D5:47:DA:81:A1:69:42:2F:1C:32:
                74:80:24:90:9F:AF:95:B8:25:C7:69:FB:96:CC:FB:F2:A3:5A:CA:27:
                75:A8:FA:95:B9:E6:8A:0F:0C:66:93:15:F2:A7:D3:8F:55:7C:E3:61:
                D2:87:23:3E:BF:6F:72:5B:35:38:C3:42:FB:92:95:D2:7E:A3:0A:33:
                C8:8E:B4:DA:D3:53:B6:08:DC:54:C4:F8:1D:35:F2:C1:B7:71:5C:FB:
                E4:5C:F6:76:42:05:D4:1F:E8:F9:FC:31:C9:5A:55:24:C2:BD:B9:88:
                B6:5C:D0:F9:5F:1E:CE:15:1D:90:C4:1F:CA:28:5F:A6:C5:10:8D:E7:
                47:D0:E8:8C:94:89:12:51:24:DC:4B:6C:71:0B:A7:7E
parm:           guids:charp
parm:           node_guid:guids configuration. This module parameter will be obsolete!
parm:           num_of_groups:Eswitch offloads number of big groups in FDB table. Valid range 1 - 1024. Default 15 (uint)
parm:           debug_mask:debug mask: 1 = dump cmd data, 2 = dump cmd exec time, 3 = both. Default=0 (uint)
parm:           prof_sel:profile selector. Valid range 0 - 3 (uint)
parm:           probe_vf:probe VFs or not, 0 = not probe, 1 = probe. Default = 1 (bool)
filename:       /lib/modules/5.4.0-1087-bluefield/updates/dkms/auxiliary.ko
author:         Kiran Patil <kiran.patil@intel.com>
author:         David Ertman <david.m.ertman@intel.com>
supported:      external
description:    Auxiliary Bus
license:        GPL v2
srcversion:     F605605E679858AE69FC50F
depends:        mlx_compat
name:           auxiliary
vermagic:       5.4.0-1087-bluefield SMP preempt mod_unload modversions aarch64
sig_id:         PKCS#7
signer:         NVIDIA BlueField Secure Boot EFI Signing 2022-A
sig_key:        CE:B8:B1:98:98:A9:99:B6
sig_hashalgo:   sha256
signature:      46:F3:6F:DC:23:91:FF:E9:6D:51:79:2A:BE:2A:A4:9B:25:CB:3F:DB:
                5F:83:19:A0:63:27:D4:AB:A5:CC:4A:7B:C9:6A:EB:85:8E:E7:F3:FC:
                74:8D:40:02:30:8B:98:F3:5F:28:70:8B:65:BE:4E:0D:3E:D5:7A:ED:
                89:DB:7A:4D:70:8F:46:55:3F:23:B2:A3:A3:2C:97:B8:97:FA:74:D0:
                FE:23:38:1A:23:7A:C8:49:D9:46:D3:BF:BF:B4:AF:B5:0A:32:FA:8A:
                78:5F:57:7E:4D:69:6B:C9:22:1C:75:76:EC:14:CA:F6:6B:D7:1C:88:
                99:87:CA:77:D5:90:57:14:BE:64:53:2E:87:E3:BE:67:EB:0F:EA:EC:
                20:40:2F:53:A7:F6:E4:02:2B:EA:AB:66:E5:30:EB:A4:F8:5C:54:F8:
                22:A8:55:B8:F4:64:A0:CC:E0:E2:C4:F3:B8:0D:49:5F:B3:18:2B:91:
                36:B7:E5:62:FC:4E:4F:D9:3A:94:34:D9:3E:E0:A5:1B:38:D0:E8:82:
                B6:79:52:3D:94:DE:AB:A0:C2:55:2C:33:F4:AA:D9:61:9F:6F:86:29:
                3C:49:F1:47:F5:9B:13:0B:43:43:5D:58:E3:9F:91:11:BD:62:15:BC:
                CB:3D:92:B0:BE:E0:A1:74:57:9D:F7:AC:77:E3:73:B8
filename:       /lib/modules/5.4.0-1087-bluefield/updates/dkms/mlxdevm.ko
version:        1.0.0
license:        Dual BSD/GPL
supported:      external
description:    mlxdevm kernel module
author:         Parav Pandit
srcversion:     86EE6595BE20F9952ED5967
depends:        mlx_compat
name:           mlxdevm
vermagic:       5.4.0-1087-bluefield SMP preempt mod_unload modversions aarch64
sig_id:         PKCS#7
signer:         NVIDIA BlueField Secure Boot EFI Signing 2022-A
sig_key:        CE:B8:B1:98:98:A9:99:B6
sig_hashalgo:   sha256
signature:      19:3A:E2:20:2C:9E:72:D5:10:B9:0B:AE:EE:F7:53:F6:E4:26:33:58:
                FA:3B:81:D1:9A:52:10:57:28:65:EF:55:4F:86:A5:A7:0D:64:B8:A8:
                76:7F:C9:EF:F1:15:75:A6:1C:C5:59:3C:B9:C3:20:60:FD:39:1D:13:
                94:77:FD:53:94:B0:A7:27:BA:F2:89:4A:8D:E7:87:FB:5D:C2:08:D4:
                89:19:C9:50:A8:B6:C5:54:4A:84:FF:29:4E:57:D5:F8:24:22:54:0B:
                87:04:42:99:A0:E7:20:6F:F8:FC:BA:60:08:6D:E4:E3:D4:9E:DD:C0:
                8D:86:FA:4F:4B:8B:99:73:41:3C:8F:DA:A2:76:16:32:CF:79:AC:4B:
                F6:FF:96:B0:A2:FE:2E:CA:AC:CF:EB:F3:C7:52:63:8C:32:71:BB:2F:
                BC:BC:3B:32:4C:A9:83:4D:0B:DF:0B:C6:B2:03:7A:5E:C9:46:53:28:
                24:00:4B:E5:BE:DB:F8:9A:B9:DE:C7:57:0A:DC:E1:EE:6F:58:5A:2A:
                DD:74:BB:E4:16:B3:C0:67:E0:11:81:76:33:C2:3E:B1:D2:3B:B3:DD:
                CB:51:06:C4:DD:49:3F:89:1C:E7:B5:FD:DD:CF:5B:61:54:60:74:B3:
                ED:AD:C7:9F:94:66:B1:D4:BA:E2:4A:8F:53:F8:E0:44
filename:       /lib/modules/5.4.0-1087-bluefield/updates/dkms/mlxfw.ko
description:    Mellanox firmware flash lib
author:         Yotam Gigi <yotamg@mellanox.com>
license:        Dual BSD/GPL
srcversion:     43D7A3CCEF95850986FB5DC
depends:        
name:           mlxfw
vermagic:       5.4.0-1087-bluefield SMP preempt mod_unload modversions aarch64
sig_id:         PKCS#7
signer:         NVIDIA BlueField Secure Boot EFI Signing 2022-A
sig_key:        CE:B8:B1:98:98:A9:99:B6
sig_hashalgo:   sha256
signature:      02:21:50:02:68:34:8E:74:24:F2:AA:CC:5C:3E:D1:35:C7:8A:E2:A3:
                A9:F2:F3:C8:D0:97:98:9B:1F:B1:DF:B8:6D:C2:7E:2D:B1:55:9E:6D:
                FB:2C:A2:51:A8:74:98:D4:E4:BC:AA:1A:10:66:A7:2A:1E:8C:0E:5F:
                61:E0:49:20:DB:8D:98:10:76:02:8C:57:06:E9:78:F4:F3:48:D5:7B:
                FE:AB:86:2D:E1:01:3D:4F:77:96:64:67:C7:EF:3A:8A:FA:AC:8E:60:
                85:FD:2E:D6:2D:44:AA:66:F0:12:D3:CF:9F:EC:7F:02:8B:1E:43:6B:
                86:38:24:06:54:B0:D8:0C:48:04:ED:06:C2:0E:45:A6:F5:EE:AB:88:
                F9:13:11:9D:0B:AB:DE:06:2A:CB:6A:CF:FD:D0:97:9F:E9:5C:57:98:
                15:E7:32:88:7B:12:EF:D4:15:1C:6F:B6:D8:CF:B5:27:24:DE:76:AF:
                67:C4:85:F4:A6:47:DA:70:1A:CA:76:2E:EF:39:D9:9A:62:3F:10:46:
                AA:6A:1D:3D:85:D3:05:54:56:33:54:01:7C:3B:FE:CA:6D:07:BC:4B:
                2A:52:24:28:CA:87:F3:AD:E3:F3:78:74:D5:D2:6A:31:5E:0B:77:FD:
                95:3F:9B:47:95:6E:84:76:FC:D1:D4:55:6F:71:9F:22
filename:       /lib/modules/5.4.0-1087-bluefield/kernel/net/psample/psample.ko
license:        GPL v2
description:    netlink channel for packet sampling
author:         Yotam Gigi <yotam.gi@gmail.com>
srcversion:     74B88D67C7B3155495A8492
depends:        
intree:         Y
name:           psample
vermagic:       5.4.0-1087-bluefield SMP preempt mod_unload modversions aarch64
sig_id:         PKCS#7
signer:         Build time autogenerated kernel key
sig_key:        7D:AA:27:CE:42:EC:AB:16:34:0E:B9:F8:0B:C3:36:EC:9F:2F:F6:56
sig_hashalgo:   sha512
signature:      4E:32:F2:41:91:11:A4:2E:DE:F5:0E:15:26:48:EC:B0:E8:B1:36:92:
                6A:06:42:AF:CF:BD:3F:A4:D3:50:33:8A:E6:EA:28:0E:CD:3C:74:B7:
                37:86:F8:A2:61:48:DF:3B:06:6D:59:C0:29:30:FB:31:05:DC:B9:A1:
                2C:81:BC:D7:0B:56:9E:21:10:61:93:07:20:DC:41:D6:F7:4C:87:51:
                2E:C5:C3:7C:92:D1:A2:E3:9E:C4:AA:61:46:2D:59:55:0B:FB:A1:D9:
                E8:55:B4:09:5E:C8:ED:B0:CA:E2:A4:94:E6:70:1D:F6:3D:1E:27:B4:
                69:E3:81:A3:44:E3:BD:49:F1:DB:4E:02:60:30:7B:BF:1B:91:5A:C3:
                FB:84:1C:FE:49:09:D3:4B:14:42:C6:A8:3B:9D:A4:E4:D1:CF:84:48:
                BC:CA:4B:C4:7D:B9:A6:50:DC:4A:40:52:77:95:8F:94:51:6B:55:7C:
                79:F9:5A:BD:32:44:67:4D:B0:76:3A:92:E8:8D:3F:7F:8E:E2:52:75:
                66:D0:C1:72:F2:22:54:23:30:EB:71:BB:21:0B:01:A3:07:4C:76:62:
                D2:94:C1:21:94:F9:B3:85:83:44:DF:51:A8:CA:16:22:EF:E9:BF:0C:
                33:D4:27:8F:0C:51:1D:DA:61:7B:BF:E6:19:F2:2D:C9:B6:0C:CC:ED:
                FD:98:C2:85:50:04:C4:35:0A:A8:35:F9:43:C3:F4:42:EA:55:92:CA:
                92:E1:D0:7A:39:16:BA:72:94:52:12:79:1D:33:DB:0E:BE:EE:20:A4:
                6D:88:7E:C8:E1:89:C5:36:F0:7F:99:E2:DA:73:A7:5F:77:D3:E8:7F:
                CD:65:59:27:0A:05:66:60:72:55:A9:42:84:05:12:43:A9:A7:FC:F0:
                04:59:19:A2:75:01:E7:C4:4D:34:4B:28:0B:E5:A3:9B:B7:45:51:EE:
                A6:7D:04:13:85:2A:92:11:D7:BC:C5:11:D0:46:6D:76:41:94:86:56:
                E9:05:97:CD:A6:96:1B:27:86:84:CD:70:33:CE:24:26:8D:2E:7E:CF:
                47:F8:57:0E:B0:23:59:E1:8B:98:D3:46:92:08:A4:2C:DB:B1:FE:53:
                14:57:5A:A7:2B:EC:9E:6F:CC:0A:93:17:42:2E:97:16:CD:21:13:39:
                26:13:8C:C7:CE:87:AF:B7:C0:EE:0E:CA:01:98:5F:9C:8C:C7:0E:36:
                FD:67:08:85:36:5A:C8:A3:D8:9C:76:E9:3E:44:92:12:55:04:79:D6:
                0B:EA:CD:12:FD:87:0A:72:27:E4:8F:31:53:98:EC:D7:08:BD:E7:BA:
                01:89:9E:AD:D2:AE:23:6C:F6:B0:DB:F0
filename:       /lib/modules/5.4.0-1087-bluefield/updates/dkms/ib_uverbs.ko
alias:          rdma-client-uverbs
license:        Dual BSD/GPL
description:    InfiniBand userspace verbs access
author:         Roland Dreier
srcversion:     A19DBFDFCE3B792F8358DDB
depends:        ib_core,mlx_compat
name:           ib_uverbs
vermagic:       5.4.0-1087-bluefield SMP preempt mod_unload modversions aarch64
sig_id:         PKCS#7
signer:         NVIDIA BlueField Secure Boot EFI Signing 2022-A
sig_key:        CE:B8:B1:98:98:A9:99:B6
sig_hashalgo:   sha256
signature:      40:16:83:30:CE:C3:88:74:93:F1:5A:8E:1F:DB:76:B7:AF:57:CC:31:
                DA:97:1C:35:66:C7:ED:FF:D4:79:03:03:F4:36:8D:45:28:B2:DC:A1:
                E3:67:60:D3:29:7F:0E:09:98:A6:8F:B8:96:06:32:18:A7:79:1E:0F:
                38:79:3E:9F:A3:5B:89:DD:D9:2C:98:EF:15:93:B5:A4:9D:F6:E2:F9:
                42:B4:3F:B0:F7:59:DE:98:17:84:7A:71:D6:8A:90:24:30:0B:38:70:
                FD:59:69:AB:44:45:C0:94:1C:B2:C7:B3:19:53:E4:3B:02:A7:EB:05:
                8A:7D:1D:C1:EC:74:E4:43:7D:E8:D4:5C:1D:53:49:46:0B:02:10:FD:
                84:A6:48:5F:C5:98:E9:82:BD:40:7F:A4:06:09:14:B3:C5:9C:5B:C9:
                7E:2E:27:F0:C9:D9:90:90:80:6C:2A:AC:79:62:C7:7D:D5:FC:53:A7:
                DF:63:14:44:7F:03:57:99:C1:0F:15:B4:03:35:B3:46:89:88:96:60:
                72:FB:B2:BA:B2:B7:14:68:58:F1:43:F0:7A:FC:B9:43:EF:26:98:A1:
                D5:D0:F1:0B:6C:58:0E:18:A9:A1:5F:DC:9A:06:78:19:91:F9:98:46:
                89:D8:BE:B3:DF:E7:CE:F2:2E:38:19:00:43:C8:A7:FC
filename:       /lib/modules/5.4.0-1087-bluefield/updates/dkms/ib_ipoib.ko
license:        Dual BSD/GPL
description:    IP-over-InfiniBand net driver
author:         Roland Dreier
alias:          rtnl-link-ipoib
srcversion:     146E26E3CD455A3B124A129
depends:        ib_core,ib_cm,mlx_compat,ipv6
name:           ib_ipoib
vermagic:       5.4.0-1087-bluefield SMP preempt mod_unload modversions aarch64
sig_id:         PKCS#7
signer:         NVIDIA BlueField Secure Boot EFI Signing 2022-A
sig_key:        CE:B8:B1:98:98:A9:99:B6
sig_hashalgo:   sha256
signature:      10:DC:F8:6B:2E:02:D6:8A:7F:53:8D:49:7D:F1:33:98:5F:14:F1:50:
                8C:33:2F:36:57:7D:D0:03:AC:BC:5D:45:70:F9:F7:05:FA:E2:DC:58:
                F3:98:1D:18:F0:14:20:D9:D0:DE:45:45:3C:71:32:A1:1A:06:46:B3:
                BE:28:53:9C:A3:A6:C2:21:5D:74:FB:BD:3A:52:67:DB:B4:41:D2:26:
                91:06:43:87:20:3C:3E:00:F8:FB:92:8B:98:03:2E:2E:30:62:76:E0:
                42:6A:7E:26:E3:A0:12:F7:01:16:27:E9:04:DE:A3:0D:D1:A6:A9:EB:
                97:2C:CE:A1:C3:E5:8A:A9:CF:16:E6:C7:3C:41:F9:FE:B8:49:5A:57:
                9E:7C:21:AE:98:E8:56:91:6F:E9:76:61:2A:B6:7B:83:B0:FF:9B:B0:
                8D:02:72:A6:7D:B1:11:19:40:B9:1E:84:54:31:68:F9:26:D8:50:49:
                B1:7E:E9:AA:FF:E6:01:76:5F:D5:95:A5:45:86:12:6E:1C:26:C3:56:
                FD:78:DF:75:C7:DE:DD:E9:D2:26:EC:D6:13:5A:5C:3D:3B:49:4F:CE:
                E1:E9:FD:C3:74:DE:04:D3:E2:94:6F:0C:90:F8:A3:D1:F6:5A:74:D1:
                3E:FE:7D:0B:2C:6D:C0:C7:39:D8:AA:B7:8C:8B:77:56
parm:           max_nonsrq_conn_qp:Max number of connected-mode QPs per interface (applied only if shared receive queue is not available) (int)
parm:           mcast_debug_level:Enable multicast debug tracing if > 0 (int)
parm:           send_queue_size:Number of descriptors in send queue (int)
parm:           recv_queue_size:Number of descriptors in receive queue (int)
parm:           debug_level:Enable debug tracing if > 0 (int)
parm:           ipoib_enhanced:Enable IPoIB enhanced for capable devices (default = 1) (0-1) (int)
mkdir -p ubuntu
  100 %      495.8 MiB / 2806.8 MiB = 0.177   7.4 MiB/s       6:19             
install -m 0755 /root/workspace/install.sh ./ubuntu/install.sh
1622888 blocks
/usr/bin/mlx-mkbfb --image /root/workspace/bfb/vmlinuz --initramfs /root/workspace/bfb/dump-initramfs-v0 --capsule /lib/firmware/mellanox/boot/capsule/boot_update2.cap --boot-args-v0 /tmp/tmp.Cu3XssWJU2 --boot-args-v2 /tmp/tmp.D9mzSxzxEr --boot-path /tmp/tmp.ZFGqmVuAP4 --boot-desc /tmp/tmp.IPl4bbw5Ui /lib/firmware/mellanox/boot/default.bfb /workspace/DOCA_1.5.3_BSP_3.9.8_Ubuntu_20.04-11.24-06-LTS.bfb
BFB is ready: /workspace/DOCA_1.5.3_BSP_3.9.8_Ubuntu_20.04-11.24-06-LTS.bfb
/tmp/ubuntu20.04.1916184/DOCA_1.5.3_BSP_3.9.8_Ubuntu_20.04-11.24-06-LTS.bfb
Default user ubuntu password is: ubuntu

最后效果:

在这里插入图片描述
通过rshim烧录效果
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2210595.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

RabbitMQ 入门(二)基本结构和消息模型

一、RabbitMQ的基本结构、角色和消息模型 MQ的基本结构&#xff1a; RabbitMQ中的一些角色&#xff1a; - publisher&#xff1a;生产者 - consumer&#xff1a;消费者 - exchange个&#xff1a;交换机&#xff0c;负责消息路由 - queue&#xff1a;队列&#xff0c;存储消息…

初步认识torch自定义算子

此篇为PyTorch 自定义算子&#xff1a;复现CPU和CUDA版的二维卷积的代码详解 这篇是为了展示setup在构建简单的cpp算子的使用 1.环境配置 整体结构如下图所示 pytorch_cpp_helper.hpp中准备了CPU版卷积需要的头文件 pytorch_cuda_helper.hpp和common_cuda_helper.hpp是cuda…

板级支持包构建1

开发板&#xff1a;STM32h743xi 编程软件&#xff1a;Keil 项目&#xff1a;GPIO外设操作&#xff08;彩色LED灯&#xff09; 学习打卡&#xff1a;Day2 学习地址&#xff1a;【野火】STM32 HAL库开发实战指南 教学视频 手把手教学STM32全系列 零基础入门CubeMXHAL库&#xff0…

jQuery——自定义jQuery插件

1、扩展jQuery&#xff08;将$看成对象&#xff09;的工具方法 $.extend&#xff08;object&#xff09; min&#xff08;a&#xff0c;b&#xff09; 返回较小的值 max&#xff08;c&#xff0c;d&#xff09; 返回较大的值 leftTrim&#xff08;&#xff09; 去掉字符串…

9.4 栅格图层符号化山体阴影渲染

9.4 栅格图层符号化山体阴影渲染-CSDN博客 目录 前言 山体阴影渲染 QGis设置为山体阴影 二次开发代码实现山体阴影 总结 前言 介绍栅格图层数据渲染之山体阴影渲染说明&#xff1a;文章中的示例代码均来自开源项目qgis_cpp_api_apps 山体阴影渲染 以“3420C_2010_327_…

leetcode二叉树(一)-理论基础

本节主要参考代码随想录&#xff1a;代码随想录 题目分类 二叉树的种类 满二叉树 满二叉树&#xff1a;如果一棵二叉树只有度为0的结点和度为2的结点&#xff0c;并且度为0的结点在同一层上&#xff0c;则这棵二叉树为满二叉树。 这棵二叉树为满二叉树&#xff0c;也可以说深…

产品设计——应用架构

我的理解应用架构是业务架构的落地&#xff0c;微服务架构下平台的应用架构设计&#xff0c;实质是根据业务来明确应用微服务的边界。因此业务不同&#xff0c;应用架构图也不同。但是基本框架应该相差不大。 其划分原则莫过于高内聚、低耦合。这个跟接口设计是一致的。我们总是…

MySQL数据库安装手册

MySQL数据库安装手册 MySQL数据库的下载与安装 在上一小节我们已经简单了解了数据库与一些相关概念 没看上一节的同学戳这里 接下来我们首先需要学会如何下载和安装数据库 1 MySQL数据库的版本 目前MySQL官网为我们提供了两个版本&#xff0c;一个是社区版本&#xff0c;…

<<迷雾>> 第11章 全自动加法计算机(4)--带地址译码器的内存模型 示例电路

地址译码器 info::操作说明 书中没有给出具体的实现电路. 这里根据电路特性采用自定义逻辑实现. 关于 “自定义逻辑”, 可参考此链接的说明: https://book.xiaogd.net/usage-of-circuitjs/circuitjs-custom-logic.html 这里本质上就是利用两个 2-4 译码器分别控制读和写. 注: 在…

Linux进程控制(3)(进程程序替换2 -- 微型shell)

目录 补充 一.引入 二.自助微型shell 1&#xff1a;输出一个命令行 2&#xff1a;获取用户命令字符串 3&#xff1a;命令行字符串的分割 4&#xff1a;先试着执行一下命令 5&#xff1a;关键点&#xff1a;需要在执行命令前检查是否为内建命令 其他&#xff1a; 三&…

JSONAJAX

JSON&&AJAX 一、JSON 1.1 json简介 JSON (JavaScript Object Notation) 是一种轻量级的数据交换格式。易于人阅读和编写。同时也易于机器解析和生成。JSON采用完全独立于语言的文本格式&#xff0c;而且很多语言都提供了对 json 的支持&#xff08;包括 C, C, C#, J…

常用的devops工具集成方法

常用的devops工具集成方法涵盖了软件开发和运维的各个方面&#xff0c;从版本控制到自动化构建、测试、部署和监控。这些工具的有效集成可以帮助团队提高协作效率&#xff0c;减少沟通障碍&#xff0c;实现快速、高质量的软件交付。以下是对这些工具集成方法的具体介绍&#xf…

双核DSP芯片的内存管理

总体框图 总的来说&#xff0c;在这款DSP芯片上&#xff0c;RAM分成了四种不同的类型&#xff1a; 专用RAM: CPU专用的内存&#xff0c;其他主机无法访问。 双核共享RAM: CLA和CPU共享内存&#xff0c;双方都可以对内存地址进行访问 MSGRAM&#xff1a; CLA和CPU之间传递数据的…

【自动驾驶汽车通讯协议】I2C(IIC)总线通讯技术详解

文章目录 0. 前言1. I2C简介2.I2C的工作原理2.1 硬件要求&#xff1a;2.2 半双工通信&#xff1a; 3. 通信时序4. 其他特性4.1 通信速率4.2 抗干扰措施4.3 注意事项 5. 在自动驾驶汽车中的应用5.1 I2C操作模式5.2 I2C的用途 6. 总结 0. 前言 按照国际惯例&#xff0c;首先声明&…

Spring Boot知识管理系统:创新与实践

2相关技术 2.1 MYSQL数据库 MySQL是一个真正的多用户、多线程SQL数据库服务器。 是基于SQL的客户/服务器模式的关系数据库管理系统&#xff0c;它的有点有有功能强大、使用简单、管理方便、安全可靠性高、运行速度快、多线程、跨平台性、完全网络化、稳定性等&#xff0c;非常适…

【含开题报告+文档+PPT+源码】基于人脸识别的课堂考勤系统的设计与实现

开题报告 随着科技的不断发展&#xff0c;人脸识别技术已经逐渐渗透到各个领域&#xff0c;包括教育领域。传统的课堂考勤方式通常依赖于学生签到或教师手动记录&#xff0c;这种方式存在着许多不足之处&#xff0c;例如容易出现人为错误、耗费时间和资源等。为了解决这些问题…

机器学习:强化学习中的探索策略全解析

引言 在机器学习的广阔领域中&#xff0c;强化学习&#xff08;Reinforcement Learning, RL&#xff09;无疑是一个充满魅力的子领域。它通过智能体与环境的交互&#xff0c;学习如何在特定的任务中做出最优决策。然而&#xff0c;在这个过程中&#xff0c;探索&#xff08;ex…

linux 配置ssh免密登录

一、 cd /root/.ssh/ #不存在就创建mkdir /root/.ssh ssh-keygen #连续按4个回车 ll二、将公钥发送到目标服务器下 #公钥上传到目标服务器 ssh-copy-id root192.168.31.142 #回车完也是要输入密码的 #测试一下免密登录&#xff1a; ssh root192.168.31.142 成功

二、后台管理系统布局菜单可拖动

前两天产品提出了一个需求&#xff0c;说后台管理系统的左边菜单的名称字数过多&#xff0c;遮挡了。希望能让客户能够看到全部的名称&#xff0c;给左侧菜单增加一个可拖动的功能&#xff0c;经过我的研究&#xff0c;这个功能最终也做出来了&#xff0c;先看效果&#xff0c;…

IDEA之手动添加作者信息

IDEA不能像eclipse一样&#xff0c;直接使用/**注释快捷键在类上带出作者信息。 解决方案&#xff1a; 手动添加自定义作者注释快捷键 /*** Author: TroubleBoy* Date: $DATE$* Description: TODO*/ 6.编辑日期变量&#xff0c;设置变量DATE的Expression为date() 7.应用Java…