linux
郁彼*
嵌入式萌新
展开
-
文件(笔记)
tip1:文件描述符:open函数返回的返回值,对一个文件的读写等操作都需要用到文件描述符0为标准输入;1为标准输出;2为标准错误:tip2:动态文件和静态文件:文件一般存放在块设备中,称为静态文件,当我们调用函数对某一文件进行操作,linux内核会从块设备中复制这个文件,称为动态文件,将我们对文件的操作全部在动态文件中进行,最终将动态文件复制给该静态文件;这么做的原因是:块设备按块读写,非常不灵活,内核按字节读写,较为灵活因此我们操作完文件后,一定要close文件,将动态文件复制给静态文.原创 2021-09-16 20:38:15 · 92 阅读 · 0 评论 -
文件系统的粗浅认识
什么是文件系统? 文件系统是操作系统明确存储设备用于组织文件的方法文件系统的种类有哪些?ext2NFSRAMFSVFATFAT MS-DOS等等什么是分区? windows: 目录即分区 即c盘目录下的文件都属于c盘的分区下的 d盘下的文件都属于d盘分区下的 linux: 按照功能来分区 linux有四个分区如: ...原创 2021-10-18 22:08:48 · 103 阅读 · 0 评论 -
父子进程与exec族函数(笔记)
在实践中发现一些需要注意的点:1、fork子进程时,父进程要注意调用wait函数,不然有可能子进程代码还未执行父进程就提前推出,导致一些代码无法成功运行2、原创 2021-09-16 22:03:43 · 519 阅读 · 0 评论 -
(单机)进程间通信(IPC)笔记
进程间通信的方式有六种:1、无名 管道(单向通信)2、有名管道(单向通信)3、消息队列(双向通信)4.、共享内存(双向通信)5、信号(单向通信)6、信号量(可配合共享内存来使用、合理分配共享资源)一、无名管道: 创建无名管道:int pipe(int pipefd[2]); pipefd[2]为一个数组用以控制无名管道的读端和写端;pipefd[0]为读端;pipefd[1]为写端 返回值:成功返回0,失败返回...原创 2021-09-14 17:06:35 · 391 阅读 · 0 评论 -
线程及其相关函数(笔记)
一、线程线程所涉及的头文件:#include<pthread.h>1、线程的创建:int pthread_create(pthread_t *thread, const pthread_attr_t *attr , void *(*start_routine) (void *), void *arg);thread为线程ID;attr 默认情况下为NULL;start_routine为线程的操作函数名(即你想让线程干啥事);arg为start_routine函数所传递的参数..原创 2021-09-13 20:38:41 · 127 阅读 · 0 评论 -
socket网络编程(笔记)
1.socket函数原型:int socket(int domain, int type, int protocol);注意点;protocol可为0 zi'd原创 2021-06-20 09:37:30 · 241 阅读 · 0 评论 -
STM32F103 中断编写步骤及其范例代码+两个中断冲突问题
bsp_interrupt .h:#ifndef _BSP_INTERRUPT#define _BSP_INTERRUPT#include "stm32f10x.h"#define KEY1_GPIO_PIN GPIO_Pin_0#define KEY1_GPIO_PORT GPIOA#define KEY1_GPIO_CLK RCC_APB2Periph_GPIOA#define KEY2_GPIO_PIN GPI原创 2022-01-27 12:03:00 · 1888 阅读 · 0 评论 -
linux生成了.swp文件怎么办
生成.swp的原因:1:当我们编辑一个文件的时候,有第二个人也在编辑的时候,会出现;2:vi时异常退出,如突然断电,或者突然断网,为了防止数据丢失,也会出现这种文件;、解决方法: 正常情况下,ls是无法看到.swp文件的,用ls -a 显示出当前目录所有的文件(包括隐藏文件),rm xxx.swp将交换文件删除即可...原创 2021-10-14 20:10:46 · 1161 阅读 · 0 评论 -
树状图的形式打印目录下的文件 指令 linux
命令格式 “tree xxx文件夹”它会将该文件目录下的文件以树状图的形式打印出来 如图有助于我们了解一个文件的结构原创 2021-10-18 11:01:14 · 460 阅读 · 0 评论 -
软链接与硬链接
概念: 1. 软链接文件有类似于Windows的快捷方式。 2. 在符号连接中,文件实际上是一个文本文件,其中包含的有另一文件的位置信息。 3. 你选定的位置上生成一个文件的镜像,不会占用磁盘空间 如何生成: ln -s xxx(要被链接的文件 )xxx(软链接文件名字) 硬链接:ln xxx xxx (与软链接类似 只少了一个-s的参数) ...原创 2021-10-17 18:23:41 · 62 阅读 · 0 评论 -
find指令(如何查找文件夹下的某个文件) linux
find . -name *-defconfig 搜索当前文件夹 寻找文件名字 寻找形如xxx_defconfig的文件原创 2021-10-18 11:07:17 · 236 阅读 · 0 评论 -
linux快捷键
gg=G原创 2021-10-14 22:15:45 · 110 阅读 · 0 评论 -
如何让命令在其他目录下也可以运行
添加环境变量: 1、临时添加(当前命令行窗口有效,新命令行窗口无效): export PATH= 在末尾加上命令的目录用":"号分隔 2、永久有效: 修改工作目录下的.bashrc文件 将 “export PATH= 在末尾加上命令的目录用":"号分隔” 加入最后一行即可...原创 2021-10-17 15:28:50 · 260 阅读 · 0 评论 -
linux内核初探
linux内核数据庞大 拥有大概1.4w个c文件 但linux内如此庞大的原因是因为linux可支持在多平台、多架构上进行开发,因此并不是所有的代码都有用到,比如linux运行树莓派平台arm架构 linux内核只会运行关于树莓派arm架构的那部分代码linux的一级目录的大概用途arch:包含和硬件体系结构相关的代码,每种平台占一个相应的目录。和32位PC相关的代码存放在i386目录下,其中比较重要的包括kernel(内核核心部分)、mm(内存管理)、math-emu(...原创 2021-10-18 10:51:37 · 128 阅读 · 0 评论 -
linux grep检索字段
grep xxx * -nirxxx 为检索的字段* 检索目录下的所有文件n 检索的结果显示行数i 不区分大小写r 以递归的顺序一个个检索所有的目录里的文件原创 2021-10-17 16:22:10 · 545 阅读 · 0 评论 -
查看文件的大小指令 linux
du xxx文件 可查看文件的大小原创 2021-10-18 16:35:13 · 148 阅读 · 0 评论 -
检查拷贝文件是否失败指令 linux
该指令常用来检查拷贝文件是否失败如图 若两文件前面的编码不同则说明拷贝失败原创 2021-10-18 16:39:27 · 130 阅读 · 0 评论 -
树莓派Linux内核的配置及其编译
我能在编写驱动代码前,要先复制一份内核的config 因为编写驱动代码前需要一个已经编译好的内核那么如何复制一份内核的config呢? 第一种方法: cp 厂家的xxx.defconfig xxx.confing 完完整整的复制了厂家的config 第二种方法: make menuconfig 基于厂家的配置一项项自己手动配置 可多添加一些配置 第三种方法:...原创 2021-10-18 20:13:22 · 406 阅读 · 0 评论 -
df -T指令 linux
可用df -T指令查看文件系统原创 2021-10-18 20:14:20 · 882 阅读 · 0 评论 -
linux内核的配置
我能在编写驱动代码前,要先复制一份内核的config 因为编写驱动代码前需要一个已经编译好的内核那么如何复制一份内核的config呢? 第一种方法: cp 厂家的xxx.defconfig xxx.confing 完完整整的复制了厂家的config 第二种方法: make menuconfig 基于厂家的配置一项项自己手动配置 可多添加一些配置 第三种方法:...原创 2021-10-18 21:42:41 · 457 阅读 · 0 评论 -
linux 加载内核驱动
sudo insmod xxxx驱动文件原创 2021-10-20 18:55:51 · 86 阅读 · 0 评论 -
linux 查看内核打印指令
dmesg原创 2021-10-20 18:59:56 · 689 阅读 · 0 评论 -
linux查看驱动设备指令
lsmod原创 2021-10-20 19:03:01 · 503 阅读 · 0 评论 -
linux 驱动的编译方法
1、事先写好驱动文件 xxx.c2、进入dev/char目录下 打开Mikefile 加入obj-m += xxx.o3、用make指令编译驱动原创 2021-10-20 19:13:37 · 634 阅读 · 0 评论 -
linux静态库和动态库
1、区别 静态库是在运行之前加到程序当中 动态库是运行时加到程序当中的2、优缺点: 静态库: 优点: 编译时间短、速度快 缺点:1、编译产生的程序大 2、更新麻烦 动态库: 优点:1、编译产生的程序小 2、更新方便 ...原创 2021-10-14 14:33:22 · 90 阅读 · 0 评论 -
wget 报错ERROR: The certificate of ‘xxxxx’ is not trusted
在wget最后加上--no-check-certificate即可 如图原创 2021-11-23 22:19:41 · 538 阅读 · 0 评论 -
error while loading shared libraries:xxx: cannot open shared object file: No such file or directory
./a.out: error while loading shared libraries: libcurl.so.4: cannot open shared object file: No such file or directory有时我们将 .c文件 -l 动态库文件 编译好之后,运行时会发现上述错误,原因是因为你没有将你的动态库加入到环境变量之中,./a.out无法找到动态库,因此我们要将动态库的路径加入到环境变量之中方法一(通用):输入exportLD_LIBRARY_PATH=x..原创 2021-11-22 23:20:26 · 950 阅读 · 0 评论