- 博客(12)
- 收藏
- 关注
原创 C# MQTT(MQTTnet)客户端
MQTTnet 是一个高性能 .NET 库,用于基于 MQTT 的通信。它提供了一个 MQTT Client和一个 MQTT Server(代理)。
2022-11-21 17:21:49
6805
1
原创 Tftp服务器的搭建和使用
本文章操作均在Ubuntu 18.04 LTS bionic上验证通过。服务端操作安装tftp服务器$ sudo apt-get install tftpd-hpa修改配置文件使用命令sudo vim /etc/default/tftpd-hpa修改tftp服务配置文件,此处给出参考:TFTP_USERNAME = "tftp"TFTP_DIRCTORY = "/tftpboot"TFTP_ADDRESS = "0.0.0.0:69"TFTP_OPTIONS = "-l -c -s"
2021-03-23 17:37:32
336
原创 Ubuntu搭建和挂载NFS
服务器上操作安装nfs服务端$ sudo apt install nfs-kernel-server创建nfs共享目录$ sudo mkdir /nfs配置nfs服务使用命令sudo vim /etc/exports编辑配置文件,此处给个参考:/nfs *(rw,sync,no_subtree_check,no_root_squash)重启nfs服务$ sudo service nfs-kernel-server restart客户端上操作安装nfs客户端$ sudo apt
2021-03-23 17:23:53
872
原创 使用qemu调试openwrt固件
本文章使用Ubuntu focal 20.04 LTS作为宿主机qemu版本为5.2.0,以x86_64构架openwrt为例。直接启动固件因为宿主机也是x86_64构架且支持硬件虚拟化,所以这里启动kvm加速,openwrt-x86-64-generic-squashfs-combined.img是编译好的固件。qemu-system-x86_64 --enable-kvm openwrt-x86-64-generic-squashfs-combined.img可以看见openwrt成功运行并打
2021-02-06 12:45:25
2974
原创 安卓编译环境搭建(物理机+Docker)
本文在谷歌官方推荐的Ubuntu14.04上搭建并成功编译安卓固件。Docker环境使用docker-ce 20.10.2版本。物理机安装方法安装编译所需要的依赖sudo apt-get updatesudo apt-get install -y openjdk-8-jdk git-core gnupg flex bison gperf libsdl1.2-dev bc libesd0-dev libwxgtk2.8-dev squashfs-tools build-essential zip cu
2021-02-06 11:39:53
603
原创 使用apt-get、yum 、下载开源软件速度慢的解决方法
国内新手在使用Ubuntu、Centos等系统更新源或者下载诸如Git、VirtualBox这些软件时经常遇到下载速度只有几十k甚至下载失败的问题,原因是因为这些软件的服务器一般架设在国外,其中的原因可能性非常多:1.架设电缆不可能是直线,并且传播速度是小于光速的。也就是说,理论物理距离/光速 <实际物理距离/实际传播速度,即美帝至国内的延时至少有100+毫秒。这是目前阶段下,投入和结果相对平衡的延时。2.除了线路中的传播延时,同时还有服务器间的处理时延、排队时延等,包括DNS询问IP所需时延,如
2021-02-05 10:01:29
490
原创 定制Ubuntu文件系统
上一篇文章介绍了如何构建一个Linux系统,里面用到了一个叫ubuntu-base的包,这个包就是个最简化的ubuntu文件系统,如果使用qemu模拟器启动这个系统会发现里面除了基础文件读写功能外啥玩意也没有,甚至没有网络?这能忍?这篇文章就介绍如何从ubuntu-base包里构建出一个功能更加完善的ubuntu系统。获取Ubuntu-baseUbuntu-base可以从Ubuntu-cdimage网站获取,网址为:http://cdimage.ubuntu.com/,如果你身处中国大陆,推荐从中科大镜
2021-02-05 09:58:11
598
原创 模拟标准PC 从源代码构建Linux系统
模拟标准PC 从源代码构建Linux系统本文介绍怎样从0使用源代码构建一个可以运行的Linux系统,并使用QEMU模拟一台标准x86_64 PC运行构建完成的系统镜像。标准PC的启动流程从打开电源到开始操作,PC的启动是一个非常复杂的过程。但是简而言之可以简化成以下几个步骤。1.进入BIOS程序完成自检2.从启动介质中读取系统镜像文件3.运行启动文件进入系统其中1,2两步是固化在标准PC主板Flash上的程序,本文讲的是构建一个可以运行的系统镜像文件。模拟标准PC本文使用QEMU模拟标准P
2021-02-05 09:57:09
768
原创 ubuntu/linux mint 按照ROS官方教程无法正常安装Melodic的解决方法
按照官方wiki教程Ubuntu install of ROS Melodic用下面命令之后$ sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'$ sudo apt-key adv --ke...
2019-12-28 13:34:07
1304
1
原创 linux container_of宏
阅读过linux内核源代码的朋友一定见过container_of宏,container_of用来根据成员变量查找所在基结构体的地址,听起来似乎有点绕,通过下面的几张图和分析就可以比较轻松的理解它的工作原理了。有一个结构体定义如下:struct container_type { ... member_type member; //member_type可以为任何类型 ...};比如...
2019-10-01 11:00:17
126
原创 C语言编译报错error: variably modified ‘***’ at file scope
C语言编译报错error: variably modified ‘***’ at file scope报错原因在数组声明中使用了只读类型。造成此报错的原因是由于使用了类似一下的代码const int length = 256;char buffer[length] = {0};在C语言中,const不是一个真真正正的常量,其代表的含义仅仅是只读。使用const声明的对象是一个运行时对...
2019-06-22 17:23:44
28091
5
原创 搭建嵌入式Linux开发环境(一) 串口调试工具
简介UART串口是嵌入式设备最为常用的调试和通讯接口之一,无论是RS232还是RS422/485都有着非常广泛的应用,因此本文就基于嵌入式Linux演示在Linux环境下使用minicom进行串口调试准备可以正常运行Bootloader的开发板串口(RS232 RS422/485 TTL)转USB模块PC硬件连接如果将开发板直接与PC机串口相连接,那只需安装串口调试软件即可如果...
2019-04-14 13:49:56
753
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人