![](https://img-blog.csdnimg.cn/2020092316043769.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
Linux网络编程
文章平均质量分 77
gcc,gdb调试,MakeFile,tcp,udp,非阻塞IO复用select,poll,高并发epoll,多进程多线程,线程的同不互斥,Signal异步通知,AIO异步非租塞,web服务器设计
DeRoy
微信公众号【编程学习基地】
展开
-
linux-curl环境搭建和项目应用
curl安装使用,get,post,put,gets,posts方法调用原创 2022-09-02 14:44:02 · 310 阅读 · 0 评论 -
高级IO函数
高级IO函数,集中写等案例原创 2022-08-24 22:53:17 · 147 阅读 · 0 评论 -
libpcap抓包
libpcap简介libpcap是unix/linux平台下的网络数据包捕获函数包,大多数网络监控软件都以它为基础。工作原理Libpcap 主要由两部份组成:网络分接头(Network Tap)和数据过滤器(Packet Filter)。网络分接头从网络设备驱动程序中收集数据拷贝,过滤器决定是否接收该数据包。Libpcap 利用 BSD Packet Filter(BPF)算法对网卡接收到的链路层数据包进行过滤。BPF 算法的基本思想是在有 BPF 监听的网络中,网卡驱动将接收到的数据包复制一份交给原创 2022-05-07 10:17:02 · 948 阅读 · 0 评论 -
多线程编程C语言版
来源:微信公众号「编程学习基地」文章目录线程的概念线程的管理创建线程线程退出与等待线程的状态线程取消本文探讨PODIX线程相关内容线程的概念当 Linux 最初开发时,在内核中并不能真正支持线程。那为什么要使用多线程?使用多线程的理由之一是和进程相比,它是一种非常"节俭"的多任务操作方式。运行于一个进程中的多个线程,它们彼此之间使用相同的地址空间,共享大部分数据,启动一个线程所花费的空间远远小于启动一个进程所花费的空间,而且,线程间彼此切换所需的时间也远远小于进程间切换所需要的时间。简要概..原创 2021-11-08 00:47:30 · 1620 阅读 · 0 评论 -
Linux文件IO操作总结(三千字长文总结)
文件操作在进行 Linux 文件操作之前,我们先简单了解一下 Linux 文件系统Linux文件类型Linux中文件类型只有以下这几种:符号文件类型-普通文件d目录文件,d是directory的简写l软连接文件,亦称符号链接文件,s是soft或者symbolic的简写b块文件,是设备文件的一种(还有另一种),b是block的简写c字符文件,也是设备文件的一种(这就是第二种),c是character的文件s套接字文件,这种文件类型用于进程间原创 2021-10-28 23:06:36 · 549 阅读 · 0 评论 -
easylogging++完全使用指南
文章目录前言功能特征版本说明配置使用快速使用自定义日志Qt使用 Easylogging++ DemoLinux使用Easylogging++Demo前言Easylogging++ 使用教程很多,但是那些文件配置都是一个复制另一个人的,原版不可考,Easylogging++文件配置只能自己配置,成功后留下Easylogging++文件配置写法,望周知。Easylogging++最大的特点就是它只有一个头文件,并且无需任何外部依赖。Easylogging++使用起来非常简单,同时还支持文件配置,提供了原创 2021-03-17 17:50:58 · 2874 阅读 · 0 评论 -
GCC全知全解
什么是GCCGCC原名为 GNU C语言编译器(GNU C Compiler)GCC(GNU Compiler Collection,GNU编译套件)是由GNU开发的编程语言编译器。安装命令sudo apt-get insatll gcc g++注意安装版本要大于4.8.5因为4.8.5以后的版本才支持c++11标准查看版本gcc -vgcc --versiong++ -vg++ --versiongcc和g++的区别gcc和g++ 都是GNU (组织)的一个编译器。■误区一:原创 2020-12-20 16:59:28 · 1230 阅读 · 0 评论 -
Linux更改获取进程工作目录
来源:微信公众号「编程学习基地」文章目录getcwd()获取当前工作目录函数的声明:普通的用法:高级用法chdir()改变进程工作目录函数的声明:使用:/home/deroy/Desktop/Linux高性能服务器编程/LinuxServerCodes/7/#includegetcwd()获取当前工作目录函数的声明:#include<unistd.h>char *getcwd(char *buf,size_t size);参数说明:getcwd()会将当前工作目录的绝对路径..原创 2020-11-07 23:44:33 · 599 阅读 · 1 评论 -
dup函数和dup2函数重定向区别
重定向dup函数头文件及函数定义:#include <unistd.h>int dup(int oldfd);示例程序:#include<stdio.h>#include<sys/stat.h>#include<fcntl.h>#include<unistd.h>int main(int argc, char* argv[]){ int fd=open("text.txt", O_CREAT|O_RDWR|O_TRU原创 2020-11-05 14:14:27 · 298 阅读 · 0 评论 -
Linux网络编程---UDP篇
来源:微信公众号「编程学习基地」UDPServersocketbindstruct sockaddr_inrecvfrom/sendtorecvfromsendtoUDP点对点通信serverclient运行套接口选项套接字选项相关函数套接口选项布尔型选项参数全部选项级别SOL_SOCKETSO_ RCVTIMEOSO_SNDTIMEOIPPROTO_lPIP_HDRINCL广播recvsend测试组播sendrecv测试Serversocket#include <sys/socket...原创 2020-09-23 16:38:39 · 274 阅读 · 0 评论 -
Linux网络编程---TCP篇
来源:微信公众号「编程学习基地」TCPTCPServersocketbindstruct sockaddr_inlistenacceptread/writeClientconnectsend/recvServerDemo简单tcp_server多进程/多线程serverClientDemo运行我的TCP使用TCP套接字编程可以实现基于TCP/IP协议的面向连接的通信,它分为服务器端和客户端两部分tcp通信过程:Serversocket#include <sys/socket...原创 2020-09-23 16:33:05 · 241 阅读 · 0 评论 -
Linux查看TCP,UDP端口信息
查看端口命令netastat -aptn #查看tcp端口a:全显示p:显示端口t:tcp端口n:详细显示netastat -aux #查看udp端口ncNetCat,在网络工具中有“瑞士军刀”美誉,其有Windows和Linux的版本。因为它短小精悍(1.84版本也不过25k,旧版本或缩减版甚至更小)、功能实用,被设计为一个简单、可靠的网络工具,可通过TCP或UDP协议传输读写数据。同时,它还是一个网络应用Debug分析器,因为它可以根据需要创建各种不同类型的网络连接。安装s原创 2020-09-23 16:27:49 · 8638 阅读 · 1 评论 -
Linux界面美化---Zsh终端
终端shell查看你的系统有几种shellcat /etc/shells➜ ~ cat /etc/shells# /etc/shells: valid login shells/bin/sh/bin/dash/bin/bash/bin/rbash/usr/bin/tmux/bin/zsh/usr/bin/zsh为什么要用 Zsh相比于默认的 Bash,Zsh 有更多的自定义选项,并支持扩展。因此 Zsh 可以实现更强大的命令补全,命令高亮等一系列酷炫功能不过代价就是启动速度原创 2020-09-23 16:18:04 · 593 阅读 · 0 评论 -
VMware下Ubuntu16.04镜像完整安装配置教程
目录软件下载下载ubantu16.04镜像源VMware Workstation 15 Pro 下载安装VMware下Ubuntu16.04镜像安装Linux环境配置安装VMware Tools安装vim更新软件源安装git:openssh-server安装开启ftp服务软件下载下载ubantu16.04镜像源清华镜像->获取下载链接->选择桌面版VMware Workstation 15 Pro 下载安装下载官网:https://www.vmware.com/cn/product原创 2020-07-02 22:59:34 · 11154 阅读 · 0 评论