ICode9

精准搜索请尝试: 精确搜索
  • 【C语言】无名管道2022-08-13 14:04:02

    #include <unistd.h> #include <sys/types.h> #include <stdio.h> int main(void) { int fd[2]; int pid; if(pipe(fd) == -1) perror("pipe");//创建子进程 pid = fork();//判断如果是父进程 if(pid > 0) {//关闭管道读端

  • linux 多线程之间使用管道进行通讯2022-08-12 16:01:04

      参考  (129条消息) linux c 使用fifo管道进行多线程间通信_土豆西瓜大芝麻的博客-CSDN博客_多线程fifo 稍作修改 #include <stdio.h> #include <stdlib.h> #include <pthread.h> #include <unistd.h> #include <sys/types.h> #include <sys/stat.h> #include <string.h&

  • epoll的实现原理2022-08-12 00:00:22

    1.为什么在用户态协议栈实现epoll? 内核协议栈是对内核文件系统的管理,vfs。fd是用户空间,内核的epoll是没办法管理int类型的fd。 2.协议栈如何与epoll模块通信 客户端与服务器三次握手之后,会加入到全连接队列,这时候会通知epoll   从协议栈回调到epoll 1.通过fd查找对应的节点 2.把

  • 专题8-I2C驱动程序设计-第5课-I2C自编设备驱动设计2022-08-10 23:00:09

    1、概述        2、编程   #include <unistd.h> #include <stdio.h> #include <fcntl.h> int main() { int i, fd; char write_data[256]; char read_data[256]; //打开at24c02对应的sys文件 fd=open("/sys/bus/i2c/devices/0-0050/e

  • CF1713E Cross Swapping2022-08-08 19:35:19

    https://codeforces.com/contest/1713/problem/E 写了个随机合并的并查集,,,没过。。。。。。 反手按秩!!!!!!!!! #include <bits/stdc++.h> //#define int long long #define ID(i,j) ((i-1)*n+j) #define pb push_back using namespace std; const int M=1002,N=(int)(2e6+5); int n,a[M][M

  • accept函数2022-08-04 21:00:41

    #include <sys/socket.h> int accept(int sockfd,struct sockaddr *cliaddr,socklen_t *addrlen);                     返回:若成功返回非负描述符,若出错则返回-1   参数cliaddr和addrlen用来返回已连接的对端(客户)进程的协议地址。addrlen是值-结果参数:调用

  • linux打开V4L2摄像头视频流(MJPEG格式)2022-08-03 20:34:28

    参考链接:https://blog.csdn.net/tugouxp/article/details/118516385 源码:ls /dev/ 查看摄像头是video编号比如:video0 video1 点击查看代码 #include <stdio.h> #include <sys/types.h> #include <sys/mman.h> #include <sys/stat.h> #include <fcntl.h> #includ

  • ZPL语言中怎么调用中文打印2022-08-03 15:34:57

    ZEBRA中文字库的用法在ZEBRA提供的中文字库里包括一个简宋体 Msgbmd24.zsc 和一个繁楷体Mkaimd24.zsc,以及三个码表文件GB.ZSE,BIG5.ZSE,UNICODE.ZSE。1 在开始工作之前首先确认打印机连在并口,或将串口设成N,8,1。建议 用并口。2 根据需要选择字体和内码码表,并将相应的文件COPY 到打印

  • 通过匿名管道实现播放网络视频2022-08-03 08:33:59

    伪代码实现通过匿名管道播放网络视频、音乐等。 示例:player.c(子读父写) #include <stdio.h>#include <stdlib.h>#include <string.h>#include <unistd.h>#include <sys/wait.h>#include <fcntl.h> int main(){   int pfd[2];   pid_t pid;   int fd;   if(pipe(pfd

  • 【操作系统】I/O 多路复用,select / poll / epoll 详解2022-07-27 22:36:52

    1. 文件描述符 fd 与 socket 1.1 什么是文件描述符 文件描述符(file descriptor)是一个非负整数,从 0 开始。进程使用文件描述符来标识一个打开的文件。 系统为每一个进程维护了一个文件描述符表,表示该进程打开文件的记录表,而文件描述符实际上就是这张表的索引。当进程打开(open)或者新

  • ssl 使用流程是如何的(仅供参考)?2022-07-27 10:34:59

    #include <QCoreApplication> #include <chrono> #include <thread> #include <memory> #include <openssl/ssl.h> struct SSL_CTX_Deleter { void operator()(SSL_CTX* object) { SSL_CTX_free(object); } }; struct SSL_Deleter {

  • Linux 文件 IO 基础操作2022-07-22 22:04:37

    Linux文件IO 与 C标准库文件IO 虚拟地址空间 虚拟地址通过页表映射到屋里内存,页表由操作系统维护并被处理器引用。 分为用户段(0~3G)和内核段(3G ~ 4G), 如下图所示。 Ref 文件描述符 def: Linux 系统中,把一切都看做是文件,当进程打开现有文件或创建新文件时,内核向进程返回一个文件

  • Linux上恢复误删除的文件或目录2022-07-21 20:32:10

    一、删除的文件进程还在的状况 1. 若环境未安装lsof,需先安装: yum -y install lsof   2. lsof(list open files):列出当前系统打开的文件 lsof | grep deleted   3. 恢复 找到对应进程fd下的文件(已删除的)cp /proc/pid/fd/1 /需恢复到的目录/已删除的文件名 ps:cp /proc/1985

  • java实现大文件上传分片上传断点续传2022-07-20 12:00:24

    ​ 一、 功能性需求与非功能性需求 要求操作便利,一次选择多个文件和文件夹进行上传; 支持PC端全平台操作系统,Windows,Linux,Mac 支持文件和文件夹的批量下载,断点续传。刷新页面后继续传输。关闭浏览器后保留进度信息。 支持文件夹批量上传下载,服务器端保留文件夹层级结构,服务器端文

  • TCAN1043GDRQ1 CAN收发器 符合AECQ100 汽车应用标准2022-07-19 11:35:15

    TCAN1043GDRQ1故障保护CAN收发器满足ISO 11898-2 (2016) 高速控制器局域网 (CAN) 规范的物理层要求。这些收发器在CAN总线和CAN协议控制器之间提供一个接口。这些器件支持经典的CAN和CAN FD协议,具有最高每秒2兆比特 (Mbps) 的数据速率。零件号包含“G”结尾的器件专为数据速率高达

  • 文件相关函数总结2022-07-19 08:33:33

    1、open函数 open函数:   int open(char *pathname, int flags)    #include <unistd.h> 参数:   pathname: 欲打开的文件路径名   flags:文件打开方式:    #include <fcntl.h>   O_RDONLY|O_WRONLY|O_RDWR    O_CREAT|O_APPEND|O_TRUNC|O_EXCL|O_NONBLOCK .... 返

  • 简单流控--漏桶与令牌桶2022-07-16 21:34:12

    漏桶示例:slowcat.c #include <stdio.h>#include <stdlib.h>#include <unistd.h>#include <signal.h>#include <sys/types.h>#include <sys/stat.h>#include <fcntl.h>#include <errno.h> #define READLENTH 10  //设置一次读取长度stat

  • xv6——文件系统:文件的申请释放与读写操作2022-07-10 23:33:52

    目录数据结构文件的内存中的定义文件全局表函数操作文件全局表的初始化从文件全局表中申请一个文件对象增加文件对象的引用次数关闭一个文件对象读取文件对象的状态读文件写文件 作者:殷某人 更新时间:2022/07/10 数据结构 文件的内存中的定义 xv6中,文件是一个广义的概念, 它即可

  • linux ---- I/O多路复用2022-07-09 11:03:07

      I/O 多路复用使得程序能同时监听多个文件描述符,能够提高程序的性能,Linux 下实现 I/O 多路复用的系统调用主要有 select、poll 和 epoll。 1. select 主旨思想:   1. 首先要构造一个关于文件描述符的列表,将要监听的文件描述符添加到该列表中。   2. 调用一个系统函数,监听该

  • P2 hello驱动-不涉及硬件2022-07-07 23:35:21

    1、字符设备两种驱动框架    2、实现file_operation后,如何告诉内核? 实际上就是把file_ops注册到内核:major = register_chrdev(0, "first_drv", &first_drv_fops); // 注册, 告诉内核 例如内核实际上有一个很大的数组,把fops放到空的数组中的某一个项中,然后返回下标(主设备号)。 ma

  • tcp shutdown2022-07-06 18:32:46

    环境:centos8 x86_64 内核:4.18.0 1. close() 与 shutdown() 我们知道,tcp 有 4 次挥手过程,对于主动端来说: 发送 fin 通知被动端连接即将关闭 等待被动端发送 fin 过来以彻底结束连接 如果进程通过调用 close() 来结束连接,会让 socket 直接关闭成为孤儿连接,即不再绑定任何进程。 不

  • node.js文件系统中同步文件、异步文件、简单文件、流式文件如何写入_nodejs流写入文件2022-07-05 13:36:11

    文件系统(File System) -文件系统简单来说就是通过Node来操作系统中的文件 -使用文件系统,需要先引入fs模块,fs是核心模块,直接引入不需要下载 一、同步文件的写入 -手动操作的步骤 1.打开文件 fs.openSync(path,flags[,mode]) -path 要打开文件的路径 -flags 打开文件要做的操作的类

  • netty系列之:kequeue传输协议详解2022-07-04 15:32:01

    目录简介KQueueEventLoopGroupKQueueEventLoopKQueueServerSocketChannel和KQueueSocketChannel总结 简介 在前面的章节中,我们介绍了在netty中可以使用kequeue或者epoll来实现更为高效的native传输方式。那么kequeue和epoll和NIO传输协议有什么不同呢? 本章将会以kequeue为例进行深

  • Redis 笔记 05:原理篇2022-07-03 11:04:33

    Redis 笔记 05:原理篇 这是本人根据黑马视频学习 Redis 的相关笔记,系列文章导航:《Redis设计与实现》笔记与汇总 网络 阻塞IO 非阻塞IO 如果缓冲区没有数据,会直接返回,但是用户进程会重复询问 从某些方面来看,其似乎并没有什么卵用,而且还不断尝试查询,使得 CPU 处于忙碌状态,但是在

  • OpenHarmony之分布式软总线coap_discover.c(二)2022-06-25 22:01:07

    前言   这部分将分析当设备收到对端设备发现报文时,需要发送响应报文的过程。 接收与响应coap设备发现 1 /* 2 函数功能: 获取服务发现信息 3 函数参数: 4 buf : 指向保存有服务信息的数据缓冲区 5 size : 数据缓冲区大小 6

专注分享技术,共同学习,共同进步。侵权联系[[email protected]]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有