
LinuxC编程
osDetach
只有孜孜不倦地求索,才有源源不断的收获
展开
-
Linux系统新定时器句柄timerfd的使用
主要数据结构struct timespec { time_t tv_sec; /* Seconds */ long tv_nsec; /* 纳秒级别 */};struct itimerspec { struct timespec it_interval; /* 间隔时间*/ struct timespec it...原创 2020-02-04 00:12:05 · 566 阅读 · 0 评论 -
一个文本管控客户端的实现
【管控客户端第2版】 项目概况背景项目来源:2019 深度软件开发大赛项目名称:文件管控客户端运行环境deepin Linux x86_64 系统,理论上也兼容其他 x86_64 Linux 系统条件与限制区分服务端与客户端,一般运行在不同的机器上正式的运行环境是N(N>=2)台计算机节点,通过有线或者无线互联,且运行服务端机器有客户...原创 2020-01-19 19:26:30 · 386 阅读 · 0 评论 -
epoll+fanotify实现监控目录以及子目录
只说下坑点:调用fanotify_mark的时候,传文件的绝对路径,这时候使其忽略AT_FDCWD标志设置。一些功能描述在之前的博客中已经总结!源代码,欢迎Star或Fork...原创 2020-01-17 01:04:53 · 1062 阅读 · 0 评论 -
文件监控机制fanotify学习总结
fanotify是Linux平台上新出现的一种文件监控技术,常被用作杀毒软件或者病毒程序恶意访问控制。之前有听过或使用过inotify的,都知道inotify是相比于fanotify更早的文件操作事件监控技术,fanotify是新出来的,实现的功能不比inotify多,但是他提供的对于监控文件的事件比较重要的功能权限检查和访问控制而inotify没有提供,所以这一点优势是其能存在的原因。fani...原创 2020-01-16 13:09:12 · 2756 阅读 · 2 评论 -
c++进程池实现回射服务器
进程池相对于线程池就没那么麻烦,没有条件变量,没有互斥锁,这些东西!比较简单!参考网上资料,实现一个回射服务器,尽管看着人家实现思路写的,还是出现很多问题,太菜了!确实太菜了!process.h#pragma once#include <iostream>#include <assert.h>#include <string.h>#include &...原创 2019-09-30 00:31:21 · 384 阅读 · 0 评论 -
SystemV消息队列来模拟多“客户端”和一个“服务器”的多进程通信
Linux消息队列是Linux系统中进程间通信的一种实现机制,POSIX和System V都为Linux提供了实现消息队列的相应API,下面是System V的消息队列的一种应用(其实SystemV消息队列已经不是很不常用了,一般都用POSIX消息队列来实现进程间的通信!但学了还是觉得有必要总结一下。)。消息队列的存储形式消息队列在内核中的存在形式是链表,用来存储各个进程发来的消息信息,如...原创 2019-05-11 12:05:55 · 947 阅读 · 0 评论 -
学习Unix域套接字总结
Unix域套接字Unix域套接字为同一计算机上运行的的各个进程之间提供了一种和网络客户端和服务器类似的通信方式。当然,我们平时在自己电脑上所写的服务器和客户端之间通过127.0.0.1+端口进行的通信也是一种特殊的进程间通信方式。同为套接字,Unix域套接字在使用方式上和网络套接字大同小异。那么,有什么差异呢?unix域套接字在数据交互上只负责copy数据,不需要执行协议处理,没有网络报头...原创 2019-05-20 11:40:02 · 1629 阅读 · 0 评论 -
线程学习总结(浅显版)
学完线程,真的感觉头大,所以害怕知识掌握不稳固,所以用博客将自己所学捋一捋。 提到线程,我又想到了前几天写的进程,这两个在Linux系统编程中作用举足轻重,两者名字比较像,甚至用法是比较相似的,两者确实有着比较密切的联系的,在学习过程中,我差点把两者搞混。线程和进程: 线程是进程内部的划分,它是比进程小的能独立运行的基本单位,线程基本不拥有资源,它与同属一个进程的多线程共享本进程的资源。一...原创 2018-08-09 21:56:09 · 264 阅读 · 0 评论