
linux
文章平均质量分 83
fengyun_w
这个作者很懒,什么都没留下…
展开
-
i/o复用函数select,poll,epoll的区别
三组i/o复用函数的区别:select、poll、epoll本质都是同步I/O,他们都需要在读写事件就绪之后自己负责读写,即这个读写过程是阻塞的。1.select的类型参数fd_set没有将文件描述符和事件绑定,这使得select不能处理更多的事件,并且由于内核对fd_set集合的在线更改,下次使用select必须得重置这三个fd_set集合。2.poll的参数类型pollfd则是将文件描述符和事...原创 2018-04-19 16:16:21 · 199 阅读 · 0 评论 -
linux里 popen函数的作用
函数原型: #include “stdio.h” FILE *popen( const char *command, const char* mode ) int pclose(FILE *stream_to_close);参数说明: command: 是一个指向以 NULL 结束的 shell 命令字符串的指针。这行命令将被传到 bin/sh 并使用 -c 标志,shell ...原创 2018-05-24 16:07:02 · 1212 阅读 · 0 评论 -
TCP 首部详解
TCP提供了一种可靠的面向连接的字节流运输层服务。 TCP将用户数据打包构成报文段;它发送数据后启动一个定时器;另一端对收到的数据进行确认,对失序的数据重新排序,丢弃重复数据;TCP提供端到端的流量控制,并计算和验证一个强制性的端到端检验和。许多流行的应用程序如 Telent、Rlogin、 FTP 和 SMTP 都使用TCP。 先上图:tcp报文段被封装在一个ip数据报中。每个tcp报文段中都包...原创 2018-06-28 01:41:49 · 12211 阅读 · 0 评论 -
进程和线程的关系
**一、进程 1、进程的概念** 进程是操作系统实现并发执行的重要手段,也是操作系统为程序提供的重要运行环境抽象。 进程最根本的属性是动态性和并发性。以下是从不同角度对进程的解释: a、进程是程序的一次执行 b、进程是可以与其他计算并发执行的计算...原创 2018-08-19 10:54:35 · 26840 阅读 · 0 评论 -
跨平台网络编程,多个windows客户端与linux服务端socket通信,epoll实现i/o复用
本文实现Windows客户端与linux服务器之间的通信,socket网络编程。实现多个客户端连接一个服务器采用的方法不是用while循环,而是更高效的epoll i/o复用,当然你也可以用select 和poll。windows客户端(vs2013):#include <stdio.h>#include <Windows.h>#include <s...原创 2019-04-19 19:51:01 · 1127 阅读 · 0 评论