当前位置: 首页 > news >正文

Ubuntu下运行QEMU模拟riscv64跑Debian

1.安装QEMU

下载地址:

https://www.qemu.org/download/
建议选择稳定版本,下载后解压,然后make

wget https://download.qemu.org/qemu-8.0.3.tar.xz
tar xjvf qemu-8.0.3.tar.xz
cd qemu-8.0.3
./configure --enable-kvm --enable-virtfs
make
--enable-virtfs 用户虚拟机和宿主机之间共享文件

2.安装u-boot-qemu

sudo apt install u-boot-qemu

3.下载Debian的riscv64 image

下载地址:https://cdn.artifacts.gitlab-static.net/9d/f6/9df69d693033f3071b9dee279b40dead9517d1ec9a95eb4bf3404e5d8767b683/@final/4c/40/b1a5e7823e522f8e18d15a30458eb6bf7a81b06fb4e5d1446abf0a994e8a?Expires=1693379985&KeyName=gprd-artifacts-cdn&Signature=v7OlQeXqgcjDlFjmMu38g7wZ2S4=

下载后解压,得到 image.qcow2

4.启动Qemu

qemu-system-riscv64 -machine virt -cpu rv64 -m 8G -smp 4 -nographic \
    -append "console=ttyS0 rw root=/dev/vda1" \
    -device virtio-blk-device,drive=hd \
    -drive file=imge.qcow2,if=none,id=hd \
    -device virtio-net-device,netdev=net \
    -netdev user,id=net,hostfwd=tcp::2222-:22 \
    -kernel /usr/lib/u-boot/qemu-riscv64_smode/uboot.elf \
    -object rng-random,filename=/dev/urandom,id=rng \
    -device virtio-rng-device,rng=rng \
    -virtfs local,path=~/shared,mount_tag=host0,security_model=passthrough,id=host0 

5.访问Debian

可直接在Qemu上登录,账号密码是 root : root

相关文章:

Ubuntu下运行QEMU模拟riscv64跑Debian

1.安装QEMU 下载地址: https://www.qemu.org/download/ 建议选择稳定版本,下载后解压,然后make wget https://download.qemu.org/qemu-8.0.3.tar.xz tar xjvf qemu-8.0.3.tar.xz cd qemu-8.0.3 ./configure --enable-kvm --enable-virtfs …...

移动基站ip的工作原理

原理介绍 Basic Principle 先说一下概念,大家在不使用 WIFI 网络的时候,使用手机通过运营商提供的网络进行上网的时候,目前都是在用户端使用私有IP,然后对外做 NAT 转换,这样的情况就导致大家统一使用一些 IP 段进行访…...

Kubernetes技术--使用kubeadm搭建高可用的K8s集群(贴近实际环境)

1.高可用k8s集群架构(多master) 2.安装硬件要求 一台或多台机器,操作系统 CentOS7.x-86_x64 硬件配置:2GB或更多RAM,2个CPU或更多CPU,硬盘30GB或更多 注: 这里属于教学环境,所以使用三台虚拟机模拟实现。 3.部署规划 4.部署前准备 (1).关闭防火墙 systemctl stop fi…...

【Linux】文件

Linux 文件 什么叫文件C语言视角下文件的操作文件的打开与关闭文件的写操作文件的读操作 & cat命令模拟实现 文件操作的系统接口open & closewriteread 文件描述符进程与文件的关系重定向问题Linux下一切皆文件的认识文件缓冲区缓冲区的刷新策略 stuout & stderr 什…...

Android OTA 相关工具(六) 使用 lpmake 打包生成 super.img

我在 《Android 动态分区详解(二) 核心模块和相关工具介绍》 介绍过 lpmake 工具,这款工具用于将多个分区镜像打包生成一个 Android 专用的动态分区镜像,一般称为 super.img。Android 编译时,系统会自动调用 lpmake 并传入相关参数来生成 sup…...

信创环境 Phytium S2500 虚拟机最大内存规格测试

在 ARM 架构中,"IPA" 通常指的是 "Instruction Set Architecture"(指令集架构),arm环境的虚拟机支持的最大内存规格与母机上内存多少无关,由arm本身的ipa size决定,ipa size 可以理解为虚拟机的物理地址空间,kernel5.4.32中ipa默认是44bits(16T si…...

新建工程——第一个S32DS工程

之前的"测试开发板"章节 测试开发板——第一个AutoSAR程序,使用了一个 demo 工程,不管是裸机程序还是 AutoSAR 程序,那都是别人已经创建好的工程。本节来介绍如何来创建自己的工程,本节介绍如何创建一个 S32DS 的工程,点亮开发板上的 LED 我们从官方提供的例程…...

基于Open3D的点云处理16-特征点匹配

点云配准 将点云数据统一到一个世界坐标系的过程称之为点云配准或者点云拼接。(registration/align) 点云配准的过程其实就是找到同名点对;即找到在点云中处在真实世界同一位置的点。 常见的点云配准算法: ICP、Color ICP、Trimed-ICP 算法…...

设计模式—简单工厂

目录 一、前言 二、简单工厂模式 1、计算器例子 2、优化后版本 3、结合面向对象进行优化(封装) 3.1、Operation运算类 3.2、客户端 4、利用面向对象三大特性(继承和多态) 4.1、Operation类 4.2、加法类 4.3、减法类 4…...

真机安装Linux Centos7

准备工具: 8G左右U盘最新版UltraISOCentOS7光盘镜像 操作步骤 下载镜像 地址:http://isoredirect.centos.org/centos/7/isos/x86_64/ 安装刻录工具UltraISO,刻录镜像到U盘 ① 选择ISO镜像文件 ② 写入磁盘镜像,在这里选择你的U盘…...

ceph peering机制-状态机

本章介绍ceph中比较复杂的模块: Peering机制。该过程保障PG内各个副本之间数据的一致性,并实现PG的各种状态的维护和转换。本章首先介绍boost库的statechart状态机基本知识,Ceph使用它来管理PG的状态转换。其次介绍PG的创建过程以及相应的状…...

Java | File类

目录: File类File类中常用的方法:boolean exists( ) :判断此 文件/目录 是否存在boolean createNewFile( ) :创建一个文件boolean mkdir( ) :创建 “单层” 目录/文件夹boolean mkdirs( ) :创建 “多层” 目…...

数学建模之灰色预测

灰色预测(Grey Forecasting)是一种用于时间序列数据分析和预测的方法,通常用于处理具有较少历史数据的情况或者数据不够充分的情况。它是一种非常简单但有效的方法,基于灰色系统理论,用来估计未来的趋势。 以下是灰色…...

03_nodejd_npm install报错

npm install报错 npm ERR! code ERESOLVE npm ERR! ERESOLVE unable to resolve dependency tree npm ERR! npm ERR! While resolving: 5kcrm11.0.0 npm ERR! Found: vue2.5.17 npm ERR! node_modules/vue npm ERR! vue"2.5.17" from the root project npm ERR! np…...

three.js(二):webpack + three.js + ts

用webpackts 开发 three.js 项目 webpack 依旧是主流的模块打包工具;ts和three.js 是绝配,three.js本身就是用ts写的,ts可以为three 项目提前做好规则约束,使项目的开发更加顺畅。 1.创建一个目录,初始化 npm mkdir demo cd de…...

最小二乘法处理线性回归

最小二乘法是一种数学优化技术,用于查找最适合一组数据点的函数。 该方法主要用于线性回归分析,当然,也可用于非线性问题。 开始之前,我们先理解一下什么是回归。 回归:回归是一种监督学习算法,用于建模和…...

ModbusCRC16校验 示例代码

作者: Herman Ye Galbot Auromix 测试环境: Ubuntu20.04 更新日期: 2023/08/30 注1: Auromix 是一个机器人爱好者开源组织。 注2: 本文在更新日期经过测试,确认有效。 笔者出于学习交流目的, 给…...

一不留神就掉坑

乘除顺序问题 在据卡特兰数[1]公式,解决leetcode-96 不同的二叉搜索树[2]时,遇到一个非常诡异的问题, package mainimport "fmt"func main() { for i : 0; i < 40; i { fmt.Printf("第%d个卡特兰数为:%d\n", i, numTrees(i)) }}func numTrees(n int) i…...

Redis数据类型(list\set\zset)

"maybe its why" List类型 列表类型是⽤来存储多个有序的字符串&#xff0c;列表中的每个字符串称为元素&#xff08;element&#xff09;&#xff0c;⼀个列表最多可以存储个2^32 - 1个元素。在Redis中&#xff0c;可以对列表两端插⼊&#xff08;push&#xff09…...

TongWeb安装以及集成

TongWeb 安装步骤 静默安装 获取linux可执行安装包 如: Install_TWx.x.x.x_Enterprise_Linux.bin 创建安装所需配置文件 install.properties 内容如下 [root@node5 tongweb]# cat install.properties INSTALL_UI=silent USER_INSTALL_DIR=/home/tongweb SILENT_JDK_HOME=/jd…...

Next.js Monorepo包管理:使用Yarn Workspace的10个最佳实践指南

Next.js Monorepo包管理&#xff1a;使用Yarn Workspace的10个最佳实践指南 【免费下载链接】nextjs-monorepo-example Collection of monorepo tips & tricks 项目地址: https://gitcode.com/gh_mirrors/ne/nextjs-monorepo-example 在现代前端开发中&#xff0c;…...

Lusca CSP策略完全指南:构建安全的内容安全策略

Lusca CSP策略完全指南&#xff1a;构建安全的内容安全策略 【免费下载链接】lusca Application security for express apps. 项目地址: https://gitcode.com/gh_mirrors/lu/lusca Lusca是一款专为Express应用打造的安全中间件&#xff0c;提供了全面的内容安全策略&…...

地空协同巡检新范式:elec-ops-inspection 3D空间建模技术

地空协同巡检新范式&#xff1a;elec-ops-inspection 3D空间建模技术 【免费下载链接】elec-ops-inspection elec-ops-inspection 是 CANN 社区 Electrical Engineering SIG&#xff08;电力行业兴趣小组&#xff09;旗下的电力装备巡检算子库&#xff0c; 覆盖 CV 视觉检测与具…...

Day33-1: Serilog(日志中间件)VS OperLogHelper(操作日志帮助类)

一、一句话分清它们的作用 1. Serilog&#xff08;日志中间件&#xff09; 作用&#xff1a;记录系统运行日志 → 给程序员看的 控制台打印文件保存报错、异常、请求信息用于排查问题、调试、监控 2. OperLogHelper&#xff08;操作日志帮助类&#xff09; 作用&#xff1…...

互联网大厂 Java 求职者面试:音视频场景下的技术挑战

互联网大厂 Java 求职者面试&#xff1a;音视频场景下的技术挑战在一次互联网大厂的面试中&#xff0c;面试官和候选人燕双非之间展开了一场精彩的对话。燕双非是一位幽默风趣的程序员&#xff0c;尽管他在技术上并不是特别扎实&#xff0c;但他总是能用他的幽默化解紧张氛围。…...

Linux玩转硬件调试:用CH347芯片一站式搞定JTAG、SWD、SPI Flash和EEPROM(含中断检测实战)

Linux玩转硬件调试&#xff1a;用CH347芯片一站式搞定JTAG、SWD、SPI Flash和EEPROM&#xff08;含中断检测实战&#xff09; 在嵌入式开发和硬件逆向工程领域&#xff0c;调试工具的选择往往决定了工作效率的上限。传统方案需要购置价格高昂的专用调试器&#xff0c;而CH347芯…...

你的电机为什么抖?排查STM32F4 PWM驱动TB6612的5个常见硬件坑(附示波器实测)

你的电机为什么抖&#xff1f;排查STM32F4 PWM驱动TB6612的5个常见硬件坑&#xff08;附示波器实测&#xff09; 电机控制系统中&#xff0c;PWM信号的质量直接影响着驱动芯片和电机的性能表现。许多工程师在使用STM32F4系列MCU配合TB6612驱动模块时&#xff0c;常常遇到电机抖…...

从CVE到ATTCK:如何用Elastic Stack构建你的个人安全情报仪表盘

从CVE到ATT&CK&#xff1a;如何用Elastic Stack构建你的个人安全情报仪表盘 在安全运营领域&#xff0c;数据孤岛一直是分析师面临的主要挑战。CVE漏洞数据库、CWE弱点分类、CAPEC攻击模式以及ATT&CK框架各自提供了宝贵的安全情报&#xff0c;但这些数据往往分散在不同…...

AArch64虚拟内存系统架构与硬件自动更新机制详解

1. AArch64虚拟内存系统架构概述AArch64是ARMv8及ARMv9架构的64位执行状态&#xff0c;其虚拟内存系统架构&#xff08;Virtual Memory System Architecture&#xff09;是现代ARM处理器的核心组成部分。这套系统通过多级页表机制实现虚拟地址到物理地址的转换&#xff0c;为操…...

CuteTranslation:Linux系统上的专业级屏幕取词翻译解决方案

CuteTranslation&#xff1a;Linux系统上的专业级屏幕取词翻译解决方案 【免费下载链接】CuteTranslation Linux屏幕取词翻译软件 项目地址: https://gitcode.com/gh_mirrors/cu/CuteTranslation CuteTranslation是一款基于Qt框架和X11系统开发的Linux屏幕取词翻译软件&…...