标签 include 下的文章

  • 📂Ubuntu20.04下 C/C++ TCP Socket传输文件或图片实例教程

    server#include<stdio.h> #include<stdlib.h> #include<string.h> #include<errno.h> #include<sys/types.h> #include<sys/socket.h> #include<netinet/in.h> #includ...

  • 📂UNIX进程间通信教程

    UNIX进程间通信方式目录无名管道有名管道共享内存消息队列信号灯1.无名管道1.1example:1.1.1无名管道为一种半双工通信方式,需要双方通信时,需要建立起两个管道,只能用于父子进程和兄弟进程之间的通信。 1.1.2无名管道单独构成一种独立的文件系统:管道对于管道两端的进程而言,就是一个文件,但它不是普通的文件,它不属于某种文件系统,而是自立门户,单独构成一种文件系统,并且只存在与...

  • 📂【linux进程间通信】2.管道教程

    一、何为管道管道也称无名管道,是一种特殊类型的文件,在应用层体现为两个打开的文件描述符无名管道是创建在内核空间的,多个进程知道同一个无名管道的空间,就可以利用它进行通信无名管道会给当前进程两个文件描述符,一个用来读操作,一个用来写操作管道的特点:半双工,数据在同一时刻只能在一个方向上流动。数据只能从管道的一端写入,从另一端读出。写入管道中的数据遵循先入先出的规则。管道所传送的数据是无格式的,...

  • 📂【linux进程间通信】1.信号教程

    一、何为进程间通信1.进程是一个独立的资源分配单元,不同进程(用户进程)之间的资源是独立的,没有关联,不能再一个进程中访问别的进程的资源。而实际情况下不同进程间常常需要交互来传递状态等信息,所以需要进程间的通信。2.进程间通信功能:数据传输:一个进程需要将它的数据发送给另一个进程。资源共享:多个进程之间共享同样的资源。通知事件:一个进程需要向另一个或一组进程发送消息,通知它们发生了某种事件。...

  • 📂linux之pipe函数实现ls | wc –l教程

    1.原型:int pipe(int pipefd[2]);2.返回值:成功:0;失败:-1,设置 errno3.函数调用成功返回 r/w 两个文件描述符。无需 open,但需手动 close。规定:fd[0] → r; fd[1] → w4.管道创建成功以后,创建该管道的进程(父进程)同时掌握着管道的读端和写端。5.利用pipe函数实现 ls | wc –l。假定父进程实现 ls,子进程实现...

  • 📂Linux驱动V4L2摄像头教程

    一、内容简介没玩过摄像头,做项目需要在网上找了好长时间没有很合适的,经过自己修改最终实现了摄像头传视频!其实传视频的原理就是一帧一帧的传图片,所以需要获取图片的内容信息和内容长度的信息。再此设置了两个接口,定义了两个变量供主函数调用。二、camera.c#include "camera.h" typedef struct VideoBuffer { void ...

  • 📂Linux 编写一个 字符设备驱动教程

    Linux-DEVICE_ATTR()介绍及使用示例驱动中动态创建设备号、设备节点<pre class="brush:cpp;gutter:true;">#include <linux/init.h> #include <linux/module.h> #include <linux/kernel.h> #include &...

  • 📂如何在Linux下建立包含lua vm的unit test framwork教程

    0 引言lua是一种语法极为灵活、扩展性极强的“胶水语言”, 在使用lua/lua capi时常常会写出一些容易出错的code. 因此,有必要建立以lua vm为基础的unit test帮助程序员及早地发现bug,提高代码的质量。为此,有三件事情需要做。1 编译配置googletest/googlemock环境https://stackoverflow.com/questions/13513...

  • 📂linux驱动之LED驱动教程

    通过之前的学习,了解到linux驱动编写的流程是:先通过注册函数注册我们编写的入口函数,然后在入口函数中获取设备号->注册字符设备->自动创建设备节点->获取设备树信息,最后通过销毁函数将出口函数中需要释放的资源进行释放,想知道具实现的小伙伴可以查看我之前的文章。完成之前的学习,这篇文章所涉及的知识就比较简单了,现在我们开始led驱动的学习。一、准备材料开发环境:VMwar...

  • 📂windows环境下根据进程名杀死进程 并重新拉起教程

    #include <Tlhelp32.h> #include <windows.h> #include <tlhelp32.h> #include "psapi.h" #include <Tlhelp32.h> void terminateMYSQL() { HANDLE hSnapShot=CreateToolhelp32Snapshot(T...

  • 📂十二、linux LED初始化教程

    一、硬件原理图我们今天的目标是将itop4412开发板上的两个led灯控制起来。先看一下原理图:二、GPIO需要的接口和定义1、Linux中申请GPIO的头文件– include/linux/gpio.h主要提供一些GPIO操作函数:2、三星平台的GPIO配置函数头文件– arch/arm/plat-samsung/include/plat/gpio-cfg.h– 包括三星所有处理器的配置函...

  • 📂多线程和多进程对信号的处理教程

    在多进程的情况下,用kill给进程发信号,如果是给进程发信号,那么进程组里只有一个进程能收到,如果是给进程组发信号,那么每个进程都能接收到#include <iostream> #include <csignal> #include <unistd.h> using namespace std; void signalHandler( int si...

  • 📂Linux僵尸进程详解教程

    文章目录僵尸进程概念僵尸进程问题及危害实现一个僵尸进程僵尸进程处理僵尸进程的预防(1)通过信号机制(2)Fork 两次僵尸进程概念在 unix/linux 中,正常情况下,子进程是通过父进程创建的。子进程的结束和父进程的运行是一个异步过程,即父进程永远无法预测子进程到底什么时候结束。当一个进程完成它的工作终止之后,它的父进程需要调用 wait() 或者 waitpid()系统调用取得子进...

  • 📂字符设备驱动-Linux驱动学习(5)教程

    【学习笔记】一、申请字符类设备号1、字符设备和杂项设备的区别================================================================================(1)设备号的不同:杂项设备的主设备号是固定的,固定为10,而字符类设备需要我们自己或者系统来给我们分配。(2)设备节点的生成方式不同:杂项设备可以自动生成设备节点,而字符设...

  • 📂Ubuntu16 基于qt C++与vrep/coppeliasim通讯教程

    Ubuntu16 基于qt C++与vrep/coppeliasim通讯1.系统环境和软件2.安装支撑库3.将支撑文件和库添加到工程4.将支撑文件和库引用到工程中5.打开vrep端的scene6.测试通讯7.自己的vrep模型8.参考1.系统环境和软件系统:ubuntu16.04IDE: QT Creatorvrep(现在称作coppeliasim):CoppeliaSim_Edu_V4_2...

  • 📂内存四区代码演示教程

    栈:#define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <string.h> #include <stdlib.h> char *pMem1() { char *p1 = "hellow12345"; return p1; } //函数调用完毕后,...

  • 📂nginx 做静态资源服务器教程

    1 配置文件/etc/nginx/nginx.conf# For more information on configuration, see: # * Official English Documentation: http://nginx.org/en/docs/ # * Official Russian Documentation: http://nginx.org/ru/do...

  • 📂动态内存分配的方法实现冒泡排序教程

    #include<stdio.h> #include<stdlib.h> void bubble(int a[], int n) { int i,j,temp; for(i=0;i<n-1;i++) { for(j=0;j<n-1-i;j++) { if(a[j]>a[j...

  • 📂C++两种计时方式(windows平台,毫秒级&微秒级)教程

    版权声明:本文为CSDN博主「朱铭德」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/zmdsjtu/article/details/535362911.毫秒级的,利用 ::GetTickCount()获取系统运行的总时间//弊端在于如果系统运行超过49天就会出现问题//如果计时误差要求不高可以考虑用...

  • 📂linux处理僵尸进程教程

    一、进程状态R:在cpu就绪队列中,正在运行或等待运行的进程D:不可中断进程,一般表示进程正在与硬件交互,交互过程不允许被其他进程中断Z:僵尸进程,该类型进程已经结束,但父进程还没回收其资源S:进程因为等待某个事件而被系统挂起。当进程等待的事件发生时,它会被唤醒并进入 R 状态T:进程处于暂停或者跟踪状态,向一个进程发送SIGSTOP信号,该进程会变成暂停状态,再向其发送SIGCONT信号,...

  • 📂linux 内核定时器实例 timer教程

    #include <linux/of.h> #include <linux/device.h> #include <linux/platform_device.h> #include <linux/err.h> #include <linux/errno.h> #include <linux/list.h> #inclu...

  • 📂Linux内核字符设备开发小例子教程

    其实很简单,简单理解了字符设备之后就是一个套模板编程呢个的问题了。这边简单的放一个例子首先简要说明目录结构:我是在内核代码下直接新建了一个自己的chrdev_test的文件夹,下面这些文件都放在该目录下。如果你不想这么做的话,起码要保证的是下面的.c和Makefile文件在一个目录下,不然没办法完成编译#include <linux/module.h> #include <...

  • 📂linux pread/pwrite教程

    pread/pread操作是原子性的,seek和read/write操作一起完成,适合用于多线程中。<pre class="has">``` [email protected]:~/c++$ cat test.txt hello world demo<pre class="has">``` #include...

  • 📂Linux中的高级IO(非阻塞IO与阻塞式IO,多路IO复用,异步IO)教程

    1.非阻塞IO与阻塞式IO(1) 非阻塞式IO和阻塞式IO的区别:非阻塞式IO是用户发出IO请求后不进行等待,直接获得一个结果,通常使用时用O_NONBLOCK配合fcntl来完成。阻塞式IO是当用户线程发出IO请求之后,内核会去查看资源是否就绪,如果没有就绪就会等待数据就绪,而用户线程就会处于阻塞状态,用户线程交出CPU,常见的阻塞有wait、pause、sleep等函数,read或wri...

  • 📂C 获取Linux系统信息教程

    该代码来源于fedora的官方文档,源码地址:https://github.com/xbcsmith/cli-app// Node Info Cli App #include <sys/utsname.h> #include <stdio.h> #include <stdlib.h> #include <errno.h> int main()...

  • 📂Linux 域名解析教程

    #include<iostream> #include<unistd.h> #include<netdb.h> #include<sys/types.h> #include<netinet/in.h> #include<sys/socket.h> #include<arpa/inet.h> using nam...

  • 📂获取windows系统盘符教程

    #include #include int main(){ wchar_t LogicalDrivers[MAX_PATH]={0}; DWORD r=GetLogicalDriveStringsW(MAX_PATH, LogicalDrivers); if(r==0){ wprintf(L"failed to get drive namespace %ld", GetLastError()...

  • 📂【Linux从青铜到王者】第十一篇:Linux进程间信号第一篇教程

    系列文章目录本节重点:掌握Linux信号的基本概念。掌握信号产生的一般方式。理解信号递达和阻塞的概念,原理。掌握信号捕捉的一般方式。重新了解可重入函数的概念。了解竞态条件的情景和处理方式。了解SIGCHLD信号, 重新编写信号处理函数的一般处理机制。-文章目录系列文章目录前言一、信号入门1.生活角度的信号2. 技术应用角度的信号3. 进程的注意事项4. 信号概念5. 用kill -l命令可以...

  • 📂在Linux中用C语言写一个自己的ls -l命令教程

    在Linux中用C语言写一个自己的ls-l命令在Linux中我们会经常使用ls -l 这条命令来查看文件信息,但是这个命令到底是怎么实现的呢?下面我就带大家用C语言来实现ls -l 这条命令,直接上代码吧:#include <stdio.h> #include <string.h> #include <stdlib.h> #include <sys/...

  • 📂Linux-守护进程教程

    -title: 守护进程 date: 2019-08-09 10:00:49 tags: [Linux,进程]categories: Linux守护进程Daemon运行在后台也称作“后台服务进程”。 它是没有控制终端与之相连的进程。它独立与控制终端、通常周期的执行某种任务。那么为什么守护进程要脱离终端后台运行呢?守护进程脱离终端是为了避免进程在执行过程中的信息在任何终端上显示并且进程...