基于RT-studioRT-Thread 入门系列1——点亮LED最近在学习RTOS,对比了几款,感觉RT-thread支持比较全面,所以打算从RT-thread入手。学习过程中的遇到一些问题,在此做下记录,如果能帮到一起学习的同学,那就最好了! 目前的学习感觉是这样的,我最早是从裸机开发转过来的,因为知识面的缘故基本都不涉及RTOS的任何概念。所以入门时阅读相关RTOS的文档,是比较累的。RT
1 背景介绍gdb 调试多任务程序时会有些麻烦: fork 之后没法同时跟踪父进程和子进程,如果在子进程里设置了一个 breakpoint,那么子进程将会收到一个 SIGTRAP 信号并退出。gdb 手册里提到了一种小技巧,那就是在想要插入 breakpoint 的位置添加 sleep() 调用。但经过笔者试验,添加以下代码更加适合:  
转载 2024-05-21 17:15:25
47阅读
声明本文主要针对x86架构进行说明。使用的qemu版本是:qemu-kvm-1.2.0-rc21)PCI结构简介每个PCI设备都有一个配置空间和若干个地址空间,按照固定的顺序放置CPI的各种配置参数。关于详细的介绍可以在网上搜索相关的资料。下面是在busybox下lspci -mk的输出内容说明:00:00.0 "Class 0600" "8086" "1237" "1af4" "1100" 00
转载 2024-04-30 14:44:46
233阅读
qemu提供了控制台console和串口serial用来与虚拟机进行交互通讯。本文讲述如何通过console进入虚拟机的控制台,以及如何通过serial与虚拟机进行串口通讯。 libvirt给虚拟机创建serial和console <serial type='pty'> <target type='isa-serial' po
一.安装qemu注意,目前kata-container所要求的qemu最低版本是v2.7.0.在笔者的环境下(Ubuntu16.04 VM),apt-get官方源的最高版本是v2.5.0.所以不要用apt-get install的方式安装qemu.从github下载源码进行安装.这里推荐安装v2.8.1版本.因为更高版本的qemu的依赖无法用apt-get insta
    USB规范定义function 为主机提供单个功能的设备。     hub是一个包含有一个或多个到USB设备的接口或内部连接的设备。同时这个设备还带有使该设备能与每个外设通信的硬件设施。集线器重复接收通信,同时也有处理以下状况的能力;管理电源、发送和响应状态和控制消息以及防止全速数据输出到低速设备。&
1、概述最近项目需要,在Windows下操作USB设备,决定采用QT进行操作,由于没有安装其它编译器,只有采用minGW编译器,网上搜了好多方法,比如hidapi库等,但还需要安装驱动,比较麻烦,我的是HID设备,采用libusb可以直接操作USB,非常方便。大致流程如下:2、libusb库2.1 下载libusb库想挑战自己的可以下载libusb源码,安装minGW进行自己编译。我比较懒,直接下
转载 2024-03-26 21:44:25
188阅读
KVM虚拟机和QEMUKVM 安装 示例1:Redhat系统KVM 创建磁盘 配置桥接 使用桥接网卡 QEMU常见使用 使用vnc QEMU选项: 一般选项 USB选项 网络选项 Linux启动选项 调试选项 组合键 磁盘映像 网络Ubuntu【测试环境 10.04】安装 kvm 和 网卡桥接工具:sudo aptitude install kvm qemu bridge-utils uml-ut
转载 2024-04-25 17:34:39
628阅读
简介最近看一些USB fuzzing方面的东西,总结一下。主要是软件方面的工作。vUSBf文章在这里:https://www.blackhat.com/docs/eu-14/materials/eu-14-Schumilo-Dont-Trust-Your-USB-How-To-Find-Bugs-In-USB-Device-Drivers-wp.pdfqemu支持USB重定向协议,用来远程连接US
转载 2024-04-27 13:34:07
187阅读
简介:AddressSpace 的root域及其子树共同构成了 Guest 的物理地址空间,但这些都是在 QEMU 侧定义的。要传入 KVM/HAXM 进行设置时,复杂的树状结构是不利于内核进行处理的,因此需要将其转换为一个“平坦”的地址模型,也就是一个从零开始、只包含地址信息的数据结构,这在 QEMU 中通过FlatView 来表示。每个 AddressSpace 都有一个与之对应的
# 在QEMU添加BIOS:科普与实践指南 ## 引言 QEMU是一个开源的虚拟机监控器,广泛应用于虚拟化和系统模拟中。对于开发者和系统管理员来说,正确配置QEMU是至关重要的,其中一个关键因素就是BIOS的正确设置。本文将介绍如何在QEMU添加和配置BIOS,并给出示例代码。 ## 什么是BIOS? 基本输入输出系统(BIOS)是计算机系统的一部分,它负责在系统启动时执行硬件自检(P
原创 8月前
189阅读
virtioVirtio是IO虚拟化中的一个优化方案,属于para-virtulization的一种实现,即Guest OS中需要运行virtio的驱动程序,通过virtio设备和后端(KVM/QEMU)进行交互。Virtio设备可以视为QEMU为Guest模拟的一个PCI设备,因此可以像普通PCI设备一样配置、使用中断和DMA机制,这对设备驱动开发者来说很方便。Virtio 使用 virtque
本应用笔记描述了在 Windows 平台使用 QEMU 运行 RT-Thread 动态模块。
原创 2021-08-10 17:19:32
596阅读
本应用笔记描述了在 Windows 平台使用 VS Code 调试 RT-Thread qemu-vexpr
原创 2021-08-11 11:43:24
2389阅读
一、QEMU的运行模式直接摘抄自己《揭秘家用路由器0day挖掘技术》,网上查了一下也没有找到令人满意的QEMU的使用说明,就采用这本书上的介绍。如果后期能够找到比较满意的QEMU的使用方法的说明,再添加上来。QEMU模拟器主要有两种比较常见的运作模式:User Mode(使用者模式)、System Mode(系统模式)。User Mode模式下,用户只需要将各种不同平台的处理编译得到的Linux程
转载 2024-03-25 11:36:33
264阅读
RT-Thread qemu-virt64-aarch64开启 rt-smart
原创 2023-03-25 11:40:26
135阅读
本文主要介绍在 MacOS 上使用 qemu 搭建 Linux Kernel 的开发环境。(在开始之前需要注意的是,本文中的 Linux 开发环境是一个远程服务器,而 qemu 被安装在本地的 MacOS 上。通常并不需要这样折腾,直接将 qemu 安装在 Linux 中更加方便,而且 qemu 是可以 -nographic 无图形界面运行的。)1. 为什么需要 qemu?qemu 是一个硬件虚拟
qemu负责模拟虚机的外设,因此虚机的线性地址空间主要由qemu进行管理,也就是确定线性地址空间中哪段地址属于哪个设备或者DRAM或者其他的什么。1、数据结构1、RAMBLOCK(最直接接触host内存,有hva)RAMBLOCK才是真正分配了host内存的地方,如果把它直接理解成一个内存条也是非常合适的,但实际上不仅仅如此,还有设备自有内存,显存。ram_list则是RAMBlock的链表。每个
文章目录系列文章目录第二十一章 QEMU系统仿真的机器创建分析实例前言一、QEMU是什么?二、QEMU系统仿真的机器创建分析实例1.系统仿真的命令行参数2. 解析机器的存储设备设置qemu_resolve_machine_memdev()object_property_set_link()3.调试输出总结 前言本文以 QEMU 8.2.2 为例,分析其作为系统仿真工具的工作过程,并为读者展示各种
使用qemu运行riscv64 linux本文使用qemu运行riscv64 linux旨在与真实硬件板保持一致,因此不使用qemu提供的任何直接加载elf文件的方式启动,而是从头到尾均加载原始的bin文件程序给qemu,使其完整的执行opensbi、u-boot、kernel。如读者想利用qemu加载elf文件直接启动内核,是更为容易的,也不必再阅读本文。本文Ver1.0编写于2021.6.6,
转载 2024-04-12 15:44:37
885阅读
  • 1
  • 2
  • 3
  • 4
  • 5