自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 收藏
  • 关注

原创 linux下FTP与NFS环境搭建

#linux下FTP与NFS环境搭建#nfs环境搭建NFS(Network File System)即网络文件系统,是FreeBSD支持的文件系统中的一种,它允许网络中的计算机之间通过TCP/IP网络共享资源。在NFS的应用中,本地NFS的客户端应用可以透明地读写位于远端NFS服务器上的文件,就像访问本地文件一样。##主机配置安装NFS服务:sudo apt-get install nfs-kernel-server rpcbind在主机下创建文件夹以存放要发送的文件:mkdir /home/

2021-08-29 21:38:05 219

原创 开发板uboot移植

#开发板uboot移植移植步骤:1.添加配置文件目录:configs文件内容中对应的名称需要修改cp mx6ull_14x14_evk_emmc_defconfig mx6ull_alientek_emmc_defconfig2.添加头文件目录:include/configscp mx6ullevk.h mx6ull_alientek_emmc.h3.添加板级文件目录:board/freescale/cp mx6ullevk/ -r mx6ull_alientek_emmc目录:

2021-08-29 20:46:01 251

原创 异或交换变量值

不使用临时变量来交换两个变量的值:/*author:@hg*//*data:2021/6/4*//*func:使用^交换两个变量的值*/#include <stdio.h>int main(int argc,char *argv[]){ int a = 3,b = 4; a = a^b; b = a^b; a = a^b; printf("%d %d\n",a,b);}...

2021-06-04 22:36:13 193

原创 并发与竞争

并发:多个用户同时访问同一个资源1.多线程并发访问2.抢占式并发访问3.中断程序并发访问4.SMP(多核)核间并发访问使用如下方式来实现对临界区的保护:1.原子操作主要用于对保护的数据是一个简单的整数或者简单位操作时用typedef struct { int counter;} atomic_t;atomic_t v = ATOMIC_INIT(0); //定义并初始化原子变零 v=0 atomic_set(10); //设置 v=10 atomic_read(&v);

2021-06-02 21:43:24 111

原创 结构体、共用体、枚举、位域使用示例

#include <stdio.h>/*data:2021/6/1*//*author:@hg*//*枚举类型的定义*/enum day{ mon = 1,tue,wed,thu,fri,sat,sun};/*结构体定义*/struct a{ int a; char b; };struct a b = { .a = 7, .b = 'w'};/*共用体*/union c{ int i; float f; char str[20];};

2021-06-01 23:12:41 117

原创 结构体对齐方式

由于存储变量地址对齐的问题,结构体变量需要满足两条原则:1.结构体成员的偏移量必须是成员大小的整数倍(0被认为是任何数的整数倍)2.结构体大小必须是所有成员大小的整数倍#include <stdio.h>/*data:2021/6/1*//*author:@hg*/struct s{//1 char ch1; char ch2; int i; };struct s2{//2 char ch1;//ch1偏移量为0 int i;//i偏移量为4 char

2021-06-01 22:58:44 175

原创 嵌入式常用存储介质

ROM(Read Only Memory)只读存储器,掉电后仍然可以保持数据。分类:a. EMMC:优势在于在封装中集成了一个控制器。b. NORflash: SPI Flash是其中的一种,都是两种主流的非易失性闪存技术之一,支持掉电保存数据。c. NANDflash: 是两种主流的非易失性闪存技术之一,支持掉电保存数据。d. SD卡:SD卡是将Nand Flash芯片叠加到一起,扩大容量e. UFS: UFS闪存是由多个闪存芯片、主控、缓存组成的阵列式存储模块。弥补了eMMC仅支持半双工运

2021-04-06 00:52:11 506

原创 Linux下进程与线程

进程进程是程序的一次执行过程,并且是动态的,包括创建、调度、执行和消亡。进程的类型1.交互进程 2.批处理进程 3.守护进程(生命期很长)进程状态1.运行态 2.等待态(可中断/不可中断) 3.停止态 4.死亡态(僵尸态)(pcb没有释放)查看进程信息psps -ef/aux|grep 关键字 // 查看系统进程快照topls /procjobs//查看系统后台进程bg 作业号 //将挂起的进程在后台运行(ctrl +z)fg 作业号 //把后台的进程放到前台运行改变进

2021-04-06 00:34:20 89

原创 标准IO和文件IO

标准IO通过FILE结构体专门用于访问普通文件,通过缓冲机制减少系统调用,实现更高的效率。而文件IO使用文件描述符来访问文件,遵循posix(可移植操作系统接口规范)标准,标准IO是在文件IO之上封装了一个缓冲机制,更上层。错误处理#include <errno.h>extern errno; //错误号char *strerror(int error);//根据错误号返回对应的错误信息printf("fopen:%s\n",strerror(errno));#include &lt

2021-04-05 22:26:57 169

原创 树莓派在没有显示屏的情况下实现远程控制

一、设置树莓派连接无线网络由于我们没有显示屏和键盘,我们可以在笔记本电脑上通过写sd卡的方式将wifi的名称和密码写入到树莓派根文件系统中的/etc/wpa_supplicant/wpa_supplicant.conf文件中。 1.首先将sd卡插入笔记本并通过ubuntu虚拟机查看具体对应的设备:此处也可使用ls /dev/sd*parted -l 2.我们可以看到sd卡属于/dev/sdb这个设备,然后进入到/dev目录下进行挂载(在我的虚拟机中已经自动为我挂载了,对应的目录在/media下面

2021-04-03 01:18:20 883

原创 c语言指针专题复习笔记

c语言指针/*使用指针的好处:1.使程序简洁、紧凑、高效2.有效的表示复杂的数据结构3.动态分配内存4.得到多于一个的函数返回值*/test1:概念->存储地址的变量test2:运算->算术运算、赋值运算、关系运算test3:二维数组指针test4:字符指针与字符串指针test5:指针数组与多级指针test6:void指针与const修饰符环境—>Visual Stdio 2019#include <stdio.h>void test1(voi

2021-03-31 17:36:31 202

原创 Linux与Windows下文件同步工具Syncthing

Linux与Windows下文件同步工具Syncthing环境安装步骤1.Ubuntu安装syncthing2.Windows下安装syncthing环境安装步骤1.Ubuntu安装syncthing进入官网下载中心https://syncthing.net/downloads/下载linux与windows环境下对应的安装包。对安装包进行解压:hg@ubuntu:~$ tar xzvf syncthing-linux-amd64-v1.14.0.tar.gz 进入到文件目录进行配置复制文..

2021-03-30 20:58:36 1419 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除