LinuxNP
Linux网络编程
Kylee Kello
不一定每个人都会失败,但也不一定每个人都运气好。怎么做是你的自由。
展开
-
LinuxNP - 考点归纳
《Linux网络编程 - 考点归纳》 一:题型分布 填空题:28’ 填图题:16’ 应用与编程:56’ 二:复习 GNU是什么? GNU是一项工程,是一个自由软件操作系统,是类Unix操作系统; 90年代初期,GNU团队将除了内核以外的所有东西组合在一起成为“GNU系统”,同时拥有自己的内核GUN Hurd(开发中),但是1992年Linus Torvalds使得Linux内核成为自由软件,于是人们将GNU系统和Linux内核结合在一起,成为了一个使用Linux内核的GNU系统(GNU/Linux原创 2020-09-05 12:20:52 · 966 阅读 · 9 评论 -
LinuxNP - stdio库、stdlib库
C语言 - stdlib库 <一> 常用函数列表 int atoi (const char *str) long int strtol (const char *str, char **endptr, int base) exit() EXIT_FAILURE(1) , EXIT_SUCCESS(0) <一> 常用函数解析 1> atoi 将字符...原创 2020-03-22 20:33:19 · 606 阅读 · 0 评论 -
LinuxNP - fork与exec方法族
进程:操作系统资源调度与分配的基本单位。 fork(void) 产生子进程,父进程接收到子进程PID作为返回值; 子进程返回值为0; waitpid(a,b,c) //waitpid会暂时停止目前进程的执行,直到有信号来到或子进程结束; a>0:结束当前进程的pid=a的子进程; a=-1:等待任何子进程,相当于wait(); 依赖头文件sys/type...原创 2020-02-25 09:42:38 · 266 阅读 · 0 评论 -
LinuxNP - IPC
IPC:Inter-Process Commucation 目录 进程信号量 头文件 自定义semun联合体(semun.h) 封装信号量初始化操作、删除操作、P操作、V操作 测试 共享内存 头文件(<sys/shm.h>) <一> 进程信号量 1> 头文件 #include <unistd.h> #include <stdio.h> #include <stdlib.h> #include &l.原创 2020-06-15 23:49:49 · 369 阅读 · 1 评论 -
LinuxNP - 管道与文件
目录 popen 模拟实现 popen 管道 文件及常用操作 <一> popen 作用解析: popen方法执行传入的命令参数一,返回参数二类型(读、写)的文件指针,从而获取命令的输出结果指针; popen()函数通过创建一个管道,调用fork产生一个子进程,执行一个shell以运行命令来开启一个进程; 这个进程必须由pclose()函数关闭。...原创 2020-03-10 22:21:13 · 466 阅读 · 0 评论 -
LinuxNP - 线程与信号量
Linux网络编程之线程 pthread.h 常用方法 pthread_self() pthread_create(...) <一> pthread.h头文件 pthread.h头文件中包含了unistd.h( fork、sleep等函数 ) <二> 常用方法 1> pthread_self() 2> pthread_create...原创 2020-04-08 00:37:37 · 466 阅读 · 0 评论 -
LinuxNP - 信号与信号处理函数
信号与信号处理函数 信号是当操作系统中某些情况发生改变时,由操作系统向进程发送,进程可对信号进行捕捉并处理; 进程默认会对不同的信号进行处理,用户可通过自定义信号处理函数并使用signal()将自定义的信号处理函数与指定信号进行绑定,信号处理函数在信号默认处理方式之前调用,原先处理方式不执行; <一> SIGNAL信号注册函数原型 #include <signal.h&g...原创 2020-02-29 17:57:41 · 587 阅读 · 0 评论 -
LinuxNP - tcpServer、tcpClient单独分析
头文件细节清单: #include <stdio.h> perror() #include <unistd.h> _exit() //退出清空缓冲区不将其输出至屏幕 #include <stdlib.h> exit()、EXIT_FAILURE(1)、EXIT_SUCCESS(0) #include <sys/sock...原创 2020-02-28 10:47:49 · 502 阅读 · 0 评论 -
LinuxNP - Server与Client数据交互(TCP)
<一> 写入数据函数 write() char data[1024]; /* 返回成功写入的数据长度 */ int size = write(sockfd,data,1024); <二> 读取数据函数 read() char data[1024]; /* 返回成功读取数据的大小 */ int size = read(sockfd,data,1024);...原创 2020-02-28 21:17:49 · 1048 阅读 · 1 评论 -
LinuxNP - Server与Client数据交互(UDP)
UDP编程框架 注意事项: 头文件内容请参考:https://kylee.blog.csdn.net/article/details/104545899 关键函数使用请参考:https://kylee.blog.csdn.net/article/details/104552724 任务要求: 客户端从键盘输入整数发送至服务端,服务端将接收到的数据+1处理后返回到客户端,客户端接收结果...原创 2020-03-05 19:07:13 · 947 阅读 · 1 评论 -
LinuxNP - I/O多路复用之select
目录 什么是I/O多路复用? select() 函数 pselect() 函数 <一> 什么是I/O多路复用? I/O多路复用(I/O Multiplexing)在程序等待时加入超时时间(timeout),当超时时间没有到达时与阻塞状况一致,当超时时间到达仍然没有数据接收到,系统返回,不再等待; select() 函数将按照一定的超时时间轮询(polling); <二...原创 2020-03-20 00:38:40 · 332 阅读 · 0 评论 -
LinuxNP - I/O多路复用之epoll
目录 什么是epoll? 为什么要使用epoll? 如何使用epoll? 查看epoll官方帮助文档 <一> 什么是epoll? epoll = enhance poll 增强版轮询,是poll/select 的升级版; <二> 为什么要使用epoll? 使用epoll在对fd进行监视时,如果有满足条件的fd,则该fd会被添加到一个新的数组区域,该区域存放...原创 2020-03-24 15:59:32 · 388 阅读 · 0 评论