
tools
zxy131072
嵌入式linux
展开
-
windows下CMD命令大全(仅供参考)
windows下CMD命令大全(仅供参考) CMD命令:开始->运行->键入cmd或command(在命令行里可以看到系统版本、文件系统版本)chcp 修改默认字符集chcp 936默认中文chcp 650011. appwiz.cpl:程序和功能 2. calc:启动计算器 5. chkdsk.exe:Chkdsk磁盘检查(管理员身份运行命令提示符)...原创 2018-08-04 09:05:00 · 562 阅读 · 0 评论 -
vim配置文件之.vimrc
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" 通用设置"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""let mapleader = "," " 定义<leader>键set nocompatible " 设置不兼容原始vi模式filetype on .原创 2020-12-29 22:22:51 · 437 阅读 · 0 评论 -
vim 高级操作总结
ctrl + z ===> 将vim放到后台fg ===> 将vim放到前台b/B ===>往回退一个字{ ===>移动到上一个段落 } ===>移动到下一个段落0 ====>移动到行首$ ====>移动到行尾:set hlsearch ====>设置搜索高亮效果* ====>搜索目前游标的这个字fx ==原创 2020-12-28 17:44:07 · 232 阅读 · 0 评论 -
WSL使用NFS
微软的WLS下挂NFS系统是失败的,因为内核不支持,此路是不通的,至少目前我是没有找到解决办法,可以使用hane winNFS替代。原创 2020-12-14 16:17:32 · 2242 阅读 · 0 评论 -
Linux下操作小技巧
vim打开文件,替换文件中的内容将IP地址114.114.114.114替换为114.114.114.200\1为一个占位,等价于前面小括号中的内容:%s/\(114.114.114.\)114/\1200/原创 2020-10-13 09:14:29 · 279 阅读 · 1 评论 -
Windows子系统的安装与使用(几乎可以抛弃虚拟机了)
硬件环境笔记本或者台式机 win10系统有的没有下面的Linux 子系统,所以也就无法安装,解决办法至今没有。安装步骤控制面板开启支持Linux子系统按照提示需要重启 OSWindows应用商店搜索ubuntu18获取后安装Ubuntu18.04安装完成,可以愉快地使用了。...原创 2020-09-23 21:10:54 · 2613 阅读 · 0 评论 -
C语言优先级
原创 2020-08-20 08:42:15 · 202 阅读 · 0 评论 -
Linux网络编程
========================== 基础知识 =============授课过程中名词的规范:计算机处理的数据: 数据包物理网卡处理的数据: 数据帧IP地址:网间通信协议地址,用来在网络通信中唯一标识一台主机。IP地址目前有两类, IPv4、IPv6,目前主流是IPv4,未来的趋势是IPv6。IPV4地址是32bit的整数,IPv6地址是128bit的整数。IP地址的表示:二进制整数: 11000000 10101000 00000001 00000001点分十进制:原创 2020-08-20 08:42:01 · 245 阅读 · 0 评论 -
IO超级总结
文件:一组数据的集合。文件名:集合的名称。Linux系统下的7种文件类型:b block 块设备文件c character 字符设备文件d directory 目录文件- 普通文件l link 链接文件s socket 套接字文件p pipe 管道文件IO: 输入/输出。输入: 数据由外部流向进程内部。例如读键盘、读磁盘、接受网络数据等。输出: 数据由进程内部流向外部。例如向屏幕打印、写入磁盘、发送网络数据等。标准IO: 是由C标准库提供的函数接口, 有缓存,是高级I原创 2020-08-19 22:03:55 · 172 阅读 · 0 评论 -
C语言高级
gcc的编译过程1.预处理: 展开头文件、宏替换等,处理一切预处理指令(凡是以#号开头的语句) 头文件的作用:声明了函数原型(以便于编译器检测传参)、声明了外部全局变量、定义了数据结构和宏等。2.编译: 进行语法、语义、词法分析,最终把C语言程序编译成汇编语言程序。3.汇编: 进行语法、语义、词法分析,最终把汇编语言程序汇编成机器码。4.链接: 将程序的段内偏移地址重定位为线性地址,根据符号表链接静态运行库或目标文件。二进制代码工具objdump: 反汇编、查看二进制代码原创 2020-08-19 21:59:33 · 328 阅读 · 0 评论 -
C超级总结
=========== C语言源文件的组成 ===================预处理指令:凡是以‘#’开头的行,都属于预处理指令。include define ifndef endif 等例如:#include <stdio.h>#define N 10定义语句:结构体类型定义、别名定义、全局变量定义等。例如:struct student { int id; int score;};typedef int int32;int value = 10;声明原创 2020-08-19 21:56:41 · 382 阅读 · 0 评论 -
Linux下软件管理
离线安装安装: sudo dpkg -i 安装包文件名卸载: sudo dpkg -r 软件包名查看软件状态: dpkg -s 软件包名查看软件安装路径: dpkg -L 软件包名查看软件包内容: dpkg -c 安装包文件名APT高级软件包管理工具集1.安装: sudo apt-get install 软件包名2.卸载: sudo apt-get remove 软件包名3.查看软件基本信息: apt-cache show 软件包名4.更新本地软件包索引表:原创 2020-08-19 16:21:10 · 130 阅读 · 0 评论 -
静态库与动态库的比较
1、静态库在编译的时候被加载,动态库在执行的时候被加载。2、加载静态库编译所生成的可执行文件比使用动态库的方式要大。3、静态库以.a为后缀,动态库以.so为后缀。静态库的制作:1.通过gcc -c add.c 生成目标文件 =》add.o2.通过ar crs -o libadd.a add.o 生成静态库 =》libadd.a3.通过gcc main.c -L. -ladd 链接静态库编译,生成可执行文件a.out4.执行a.out即可动态库的制作:1.通过gcc -c add.c 生成原创 2020-08-19 14:24:19 · 593 阅读 · 0 评论 -
Linux下进程间通信
同一个进程中的线程间由于共享内存地址空间,因此可以使用全局变量或者开放地址的堆空间直接通信, 不需要额外的开销。但是进程间由于各自空间地址独立,导致不可能直接通信,因此需要使用额外的开销——进程间通信机制。LINUX 进程间通信方式:UNIX: /* 传统, 绝大多数类UNIX系统都支持 */ 有名管道:mkfifo write read close 无名管道:pipe write read close 信号: signal kill raise pause alarm POSIX:原创 2020-08-19 13:40:00 · 187 阅读 · 0 评论 -
Linux下线程相关概念
UNIX/Linux的标准分类:BSDSystem VPOSIXpthread是遵循POSIX标准的thread。线程是轻量级的进程。进程是任务资源分配的基本单元。线程是任务时间调度的基本单元。回调函数创建线程int pthread_create(pthread_t *tid, pthread_attr_t *attru, void*(*callback)(void *), void *arg);功能: 创建一个线程,并让新的线程去实行callback函数。返回值: 成功, 0;原创 2020-08-19 13:36:31 · 122 阅读 · 0 评论 -
Linux下进程相关函数接口
创建进程pid_t fork(void);功能: 创建一个子进程。参数: 无。返回值: 成功:在父进程空间返回子进程的PID,在子进程空间返回0; 失败: -1,没有子进程被创建。结束进程void exit(int status);功能: 结束当前进程。返回值:无,一旦调用永不返回。参数: int status, 用户期望带回的状态值,一般表示任务是否成功。void _exit(int status) 同exit, 区别是_exit函数立即结束进程,不清理缓存。获取进程状态原创 2020-08-19 13:30:29 · 287 阅读 · 0 评论 -
文件IO接口函数
open( )#include <sys/types.h>#include <sys/stat.h>#include <fcntl.h>int open(const char *pathname, int flags);int open(const char *pathname, int flags, mode_t mode);功能:创建或者打开文件,得到文件描述符参数:pathname:文件名flags:文件的访问权限O_RDONLY 只读O_W原创 2020-08-18 08:57:13 · 322 阅读 · 0 评论 -
进程基础1
进程进程是一个独立的可调度的任务 进程是一个动态的概念,它是程序执行的过程,包括创建、调度和消亡创建:程序在执行的时候,内核将程序代码载入到虚拟地址空间(4G,映射物理内存,0~3G属于用户空间,3~4G内核空间),为程序数据变量分配空间,建立记账数据结构(task struct),保存进程的属性信息(PID,进程的状态)调度:进程管理单元,上下文切换消亡:内存的释放虚拟的地址空间:内存规划:将虚拟地址空间分割成大小为4K的页单元,同时将RAM分割成相同尺寸的页帧对于进程而言,虚拟地址空间中原创 2020-08-18 08:56:48 · 97 阅读 · 0 评论 -
C语言基础语法
GNU工具1.编译工具:把一个源程序编译为一个可执行程序(gcc)2.调试工具:能对可执行程序进行源码或汇编级调试(gdb)3.软件工程工具:用于协助多人开发或大型软件项目的管理gcc编译器gcc hello.c -o hello1.预处理:将头文件或宏定义展开加到程序中gcc -E hello.c -o hello.i注意:不会检查语法错误2.编译:将源程序编译成汇编语言gcc -S hello.i -o hello.s注意:检查语法错误3.汇编:将汇编文件编译成二进制文件(原创 2020-08-14 11:08:47 · 298 阅读 · 0 评论 -
shell脚本语法
Shell脚本本质:shell命令的有序集合1.存放shell命令2.通过语法格式来管理命令后缀名:.sh基本过程分为三步:建立 shell 文件包含任意多行操作系统命令或shell命令的文本文件;赋予shell文件执行权限用chmod命令修改权限;执行shell文件直接在命令行上调用shell程序.shell变量Shell允许用户建立变量存储数据,但不支持数据类型(整型、字符、浮点型),将任何赋给变量的值都解释为一串字符四种变量:1.用户自定义变量2.环境变量HOME原创 2020-08-14 11:08:38 · 269 阅读 · 0 评论 -
Linux命令2
vi编辑器ctrl + alt + t 打开命令行终端作用 : 编写应用程序vi file :在vi编辑器中打开文件如果目录下没有文件,则创建后打开;如果存在,则直接打开三种模式:1.一般模式2.编辑(输入)模式(1)vi--开始编辑新增 (append)-- a从光标所在位置后面开始新增资料,光标后的资料随新增资料向后移动。-- A从光标所在行最后面的地方开始新增资料插入 (insert) -- i从光标所在位置前面开始插入资料,光标后的资料随新增资料向后移动。 -- I从光标所原创 2020-08-14 11:08:24 · 304 阅读 · 0 评论 -
Linux命令1
less/more:分屏显示文件less:分屏显示文件,可以往前查看,也可以往后查看文件内容,可以搜索字符串(/string) shift + > (pagedown) 向后查看,shift+ < (pageup)想前查看 q:退出more:分屏显示文件,只能按空格键往后查看rmdir: 删除目录grep: 查找字符串grep "myopen" ./* -nR head: 显示文件开头head -number filenametail: 显示文件结尾tail原创 2020-08-13 08:28:13 · 202 阅读 · 0 评论 -
嵌入式基础总结6
结构体结构体数组:本质:数组特点:数组元素是结构体一般定义形式:<结构体数据类型> 数组名[数组元素个数];结构体指针:本质:指针变量特点:该指针变量存放的地址,指向的空间是结构体一般定义形式:<结构体数据类型> *变量名;结构体指针数组:<结构体数据类型>* a[N];变量的存储类型变量生命周期:从分配内存开始到释放内存结束变量作用域: 变量有效范围链接C变量链接:外部链接文件作用域可以在一个多文件程序中的任何地方使用内部链接原创 2020-08-13 08:28:06 · 129 阅读 · 0 评论 -
嵌入式基础总结5
const和voidconst:常量化const int a = 10;int const a = 10;<数据类型> const * 指针变量名 = 初始化值;<数据类型> * const指针变量名 = 初始化值;void:数据类型函数void func(void){}void* p;void修饰的指针变量可以指向任何数据类型的指针int *q;char *l;函数概念完成特定功能的代码块集合函数应该关心的三大问题[1]原创 2020-08-13 08:27:57 · 99 阅读 · 0 评论 -
嵌入式基础总结4
shell编程while循环while 命令或表达式 do 命令表 done循环控制语句break 跳出循环continue 跳出本次循环,继续下一次循环函数function 函数名(){命令集合}函数名(){命令集合}采用命令行参数的形式进行传参返回值通过$?接收SUM=func() —>>> func函数的输出赋值给SUM变量local修饰的变量是局部变量xxx原创 2020-08-13 08:27:41 · 149 阅读 · 0 评论 -
嵌入式基础总结3
文件系统文件系统的类型:按照文件系统存储的位置区分磁盘文件系统 —>>> 磁盘上 —>>>NTFS EXT3 EXT4虚拟文件系统 —>>> 内存上 —>>> proc sysfs网络文件系统 —>>> NFS文件系统的逻辑结构(层次结构):/ : | etc| bin| home| dev| lib| mnt| sys| proc文件系统的目录结构:文件原创 2020-08-13 08:27:30 · 190 阅读 · 0 评论 -
嵌入式基础总结2
软件包管理软件包管理机制:Debian Linux首先提出“软件包”的管理机制——Deb软件包Redhat Linux基于这个理念推出了自己的软件包管理机制——Rpm软件包软件包:二进制包:它包含可执行文件、库文件、配置文件、man/info页面、版权声明和其它文档源码包: 包含软件源代码、版本修改说明、构建指令以及编译工具等软件包的命名规则:eg:rxvt_1%3a2.6.4-14_i386.deb软件名版本号修订版本号(次版本号)软件包管理工具:作用:安装、查询、卸载…[原创 2020-08-13 08:27:20 · 142 阅读 · 0 评论 -
嵌入式基础总结1
嵌入式用于控制、监视或者辅助操作机器和设备的装置嵌入式系统嵌入式系统是以应用为中心,以计算机技术为基础,并且软硬件可裁剪,适用于对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。Linux简介unix操作系统的诞生:multics项目(1964年)麻省理工学院、贝尔实验室以及美国通用电气共同参与开发的项目目的是:开发用于大型、多用户、多任务的操作系统unix(1970)Ken Thompson(肯·汤普森):用汇编语言为PDP-7写了第一个版本的unix操作系统197原创 2020-08-12 21:13:00 · 286 阅读 · 0 评论 -
WIN10下 PL2303HXA自2012已停产,请联系供货商 问题解决
WIN10下 “PL2303HXA自2012已停产,请联系供货商” 问题解决打开设备管理器,发现以下信息右键,更新驱动更新后解决原创 2020-06-24 17:25:39 · 4800 阅读 · 0 评论 -
vim使用空格代替冒号的快捷键映射方法
在家目录下的.vimrc中最后添加如下内容"space to command mode.nnoremap <space> :vnoremap <space> :重启终端,再次打开文件后,可以使用空格替代冒号。原创 2020-05-14 15:50:08 · 1645 阅读 · 0 评论 -
vim超级配置推荐
### 最近在做一个ubuntu16.04的系统,在配置vim中找到了一个自己认为非常不错的vim配置,下载地址:vim下载地址详细的安装说明见相关文档,只是说明一下vi和vim是两个不同的软件,使用vim打开文件,或者自己设置一个软连接指向vim。...原创 2020-05-08 17:11:03 · 760 阅读 · 0 评论 -
vim插件安装报错Error detected while processing function lfMru#record:解决办法
Error detected while processing function lfMru#record:sudo chmod 777 .LfCache/sudo chmod 777 .LfCache/tempMru原创 2020-05-08 11:12:32 · 1944 阅读 · 0 评论 -
解决source insight 4.0打开含有中文文件的乱码问题
SI 4.0是一个阅读源码的好工具,但是一直困扰于打开含有中文的源码总是乱码,经过自己最近的探索,可以说这次解决了这个问题。单个文件 【File】 > 【Reload As Encoding...】 > 【Chinese Simplified (GB2312)】 > 选择后,点击load即可。所有文件乱码解决办法:【Options】 > 【Preference...原创 2020-05-07 16:02:10 · 2214 阅读 · 1 评论 -
Total Command快捷键大全
第一节 Total Commander 可用的快捷键组合Ctrl/Alt/Shift/Win (任意 1/2/3 个的组合)+F1-F12, A-Z, 0-9, Ins/Del/Home/End/PgUp/PgDn/Space/BackSpace/Tab/Num (±*/)/Enter/Esc/↑/↓/←/→可用的快捷键,除了要考虑 TC 本身的使用以外,有时还要注意回避系统级的快捷键,避...原创 2020-04-27 17:10:10 · 4030 阅读 · 0 评论 -
螺钉规格尺寸
原创 2020-01-16 09:12:50 · 1443 阅读 · 0 评论 -
linux下桌面图标的位置,类似于Windows下创建快捷方式的方法
在linux的/usr/share/applications下,存在安装的软件的图标,找到该位置。我现在将我的VS code编辑器放在桌面,只需要选择图标后右键选择Copy to ,选择至桌面即可。...原创 2019-11-03 18:25:08 · 1414 阅读 · 0 评论 -
卸掉notepad++,永远不再使用!!!
昨天看到消息称notepad++这款软件的官网发布了反华言论,自己刚刚去他的官网看了下,还真是。 https://notepad-plus-plus.org/news/v781-free-uyghur-edition/其实我真的绝得这款软件用起来还是比较好的,在学习编程后就一直在使用。也曾经尝试使用过sublime,但是感觉他不是这么友好,后来就放弃了sublime,一直在使用note...原创 2019-11-01 12:40:21 · 74161 阅读 · 39 评论 -
解决Chrome插件安装时程序包无效:"CRX_HEADER_INVALID"
谷歌大神本就很牛,谷歌浏览器的插件更是不可多得的好东西,最近安装新的系统,发现加载插件失败,需要使用下面的步骤解决。1、将crx文件的格式更改为rar。2、在扩展程序中,点击加载已经解压的扩展程序。3、选择自己解压后的文件夹路径,加载即可。...原创 2019-10-29 23:08:56 · 428 阅读 · 0 评论 -
PC机下双系统的安装
PC机下linux系统的安装请参考我的相关文章,以下只是讲述如何做出爽系统来。经过自己的总结,不一定理论准确,但是实际操作是没有问题的,制作爽双系统的核心就是在PC机上挂接两块硬盘,如果是高手的话,可以折腾下在一块硬盘上,但是我实测多次,一块硬盘就是安装不上,要么就是Windows,要么就是linux,因为两个系统的文件格式还是不一样的。最后,我使用一个移动硬盘,完成了最后双系统的安装,可以先...原创 2019-10-20 08:14:08 · 232 阅读 · 0 评论 -
PC机安装ubuntu/mint/centos/manjaro,亲测有效
我是一个爱折腾,并且有一定强迫症的人,在几年前看到一个北航的博士制作了双系统,使用的是win10+win7的双系统,当时就烙下印记,最近自己的笔记本感觉带win10太差,而且开机太慢,后来想抛弃win10,慢慢的制作laptop或者PC端的系统的想法就愈加剧烈,于是就开始折腾起来,最后在自己的笔记本上成功安装了ubuntu18.04、mint19.02、contos8、manjaro系统,最终正在...原创 2019-10-20 08:04:06 · 679 阅读 · 0 评论