自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

喜欢打篮球的普通人

https://gitee.com/jiwangreal,https://github.com/Jiwangreal

  • 博客(17)
  • 资源 (68)
  • 收藏
  • 关注

原创 (P20)socket编程(十五):UDP聊天室

文章目录1.UDP聊天室的实现1.UDP聊天室的实现C2S_LOGIN:客户端向服务端发送的登录消息S2C_LOGIN_OK:服务端到客户端的相应S2C_ALREADY_LOGINED:用户已经登录乐了,响应登陆失败S2C_SOMEONE_LOGIN:若有一个用户登录服务器,服务器会给其它用户发送有用户登录的消息C2S_ONLINE_USER:任何时刻客户端都可以向服务端发送一个在线用户请求列表的请求S2C_ONLINE_USER:服务器端将在线用户列表返还给客户端C2S_LOGOUT:客户

2020-06-23 23:01:44 384

原创 Linux内核的组成部分

文章目录1.进程、进程切换、调度2.UNIX进程3.地址空间与特权级别4.页表5.物理内存的分配6.系统调用1.进程、进程切换、调度系统中同时真正在运行的进程数目最多不超过CPU数目确定哪个进程运行多长时间的过程称之为调度2.UNIX进程init是进程树的根,所有进程都直接或间接起源该进程##@##>pstreeUNIX创建新进程的机制:分别是fork和exec(1)fork技术:写时复制(copy on write),原理:将内存复制操作延迟到父进程或子进程向某内存页面

2020-06-22 11:52:18 467

原创 (P19)socket编程(十四):UDP特点,UDP客户/服务基本模型,UDP回射客户/服务器,UDP注意点

文章目录不需要经过三次握手TCP是基于流的传输服务,消息之间没有边界,UDP数据包之间有边界数据包丢失,重复,乱序,以及缺乏流控红色竖线:表示客户端和服务端的边界16:28

2020-06-18 23:15:35 280 1

原创 (P18)socket编程(十三):select vs poll,epoll使用,epoll与select、poll的区别,epoll模式:EPOLLLT,EPOLLET

文章目录poll只有第一个限制cat /proc/sys/fs/file-max因为因为当前内存是512M,所以系统可以打开的最大文件描述符的个数为5万。若是1G,则是10万左右,10G就是百万。select和poll的共同点效率不高的原因:创建一个epoll实例,size不是最大并发数,size仅仅代表内部所创建的hash表的大小epoll_creat1:最新的,而且fd的数量已经由红黑树来控制将一个fd添加到epoll来管理等待事件epoll这块测试代码用c++编写客户

2020-06-17 23:42:53 535

原创 (P17)socket编程(十二):select限制,poll

文章目录1.select限制2.poll:与select差不多1.select限制命令:ulimit -n 2048,进程打开的文件描述符的数量编程:头文件中定义的而且需要重新编译内核客户端没有sleep服务端客户端客户端加了sleep服务端:客户端:客户端0 1 2已经被标准输入,标准输出,标准错误输出所占用1021个连接创建第1022个套接字的时候失败了,客户端sleep(4),就不会发送FIN段给对方了服务端收到这1021个连接,会在已完成连接队列中维护

2020-06-16 23:28:55 384

转载 shell脚本文件锁——避免脚本重复执行

文章目录1.在shell中实现文件锁的两种方式2.使用flock命令1.在shell中实现文件锁的两种方式方法一:利用普通文件(1)在脚本启动时检查特定文件是否存在,如果存在,则等待一段时间后继续检查,直到文件不存时创建该文件,在脚本结束时删除文件。(2)为确保脚本在异常退出时文件仍然能被删除,可以借助于trap “cmd” EXIT TERM INT命令。(3)一般这类文件存放在/var/lock/目录下,操作系统在启动时会对该目录做清理。方法二:使用flock命令(1)使用方式如下

2020-06-15 11:48:56 7382

转载 Docker为什么选择了AUFS?

文章目录1.AUFS2.但是每个 FS层都是 readonly权限,那么容器内部如何向这些文件写入数据呢?1.AUFSAUFS本质上仍是堆栈式的联合文件系统从功能上讲,AUFS可以将分布在不同地方的目录挂载到同一个虚拟文件系统当中(1)首先我们将思路切换到 Linux启动阶段。、典型的 Linux启动时,首先加载 bootfs(Boot File System)目录。这个目录里面包括 Bootloader和kerenl。Bootloader用来加载启动 kerenl。当kerenl成功加载到内存

2020-06-15 10:56:44 1780

原创 (P16)socket编程(十一):套接字I/O超时设置方法,用select实现超时

文章目录1.套接字I/O超时设置方法2.用select实现超时1.套接字I/O超时设置方法2.用select实现超时在都之前设置一个闹钟,若5s钟内没有返回数据(到达5s钟),则会产生一个SIGALRM信号将read打断错误码被打断了因为该闹钟可能会被其它使用,所以一般不使用闹钟来实现超时发送超时时间接收超时时间超时的错误码是EWOULDBLOCK不好移植,因为一些TCP选项不支持这两个选项19:51...

2020-06-14 22:16:34 550

原创 (P2)Linux开发工具——gcc入门下

文章目录1.使用外部库2.静态库与共享库3.生成静态库4.生成动态库1.使用外部库2.静态库与共享库3.生成静态库4.生成动态库

2020-06-13 21:15:18 337

原创 (P1)Linux开发工具——gcc入门上

文章目录1.什么是gcc2.gcc特点3.gcc编译过程4.gcc常用选项5.gcc编译多文件1.什么是gccgcc(GUN C Compile)编译器的作者是Richard Stallman,也是GNU项目的奠基者什么是gcc?gcc是GNU Compiler Collection的缩写。最初是作为C语言的编译器(GNU C Compile),现在已经支持多种语言了,如C,C++,Java,Pascal,Ada,COBOL语言等gcc支持多种硬件平台,甚至对Don Knuth设计的MMIX这类

2020-06-13 20:33:10 543

原创 (P5)Linux开发工具——gdb入门下

文章目录1.查看运行时的数据2.程序错误3.gdb调试逻辑错误4.gdb调试段错误5.core文件调试1.查看运行时的数据print 查看变量值ptype 查看类型print array 查看数组,查看数组,是查看的是静态数组print *array@len 查看动态内存,查看动态数组,静态数组都可以print x=5 改变运行时的数据eg:p arr1这里数组名是打印整个数组的元素p &arr1打印数组的地址p *arr2@10查看内存的10个元素p arr2

2020-06-11 23:46:05 266

原创 (P5)Linux开发工具——gdb入门上

文章目录1.什么是gdb2.gdb功能3.运行程序4.查看源码5.设置断点5.单步调试6.gdb常用命令总结1.什么是gdb什么是gdbgdb是GNU debugger的缩写,是程序的调试工具2.gdb功能启动程序,可以按照用户自定义的要求随心所欲的运行程序可让被调试的程序在用户所指定的调试的断点处停住**(断点可以是条件表达式)**当程序停住时,可以检查此程序中所发生的事动态改变程序的执行环境,可以动态改变变量的值3.运行程序gcc -Wall -g simple.c -o s

2020-06-10 22:44:08 276

原创 (P4)Linux开发工具—Makefile下

文章目录1.make常用内嵌函数2.多级目录Makefile1.make常用内嵌函数函数调用$(function arguments)(1)$(wildcard PATTERN) 当前目录下匹配模式的文件eg:src=$(wildcard *.c) 匹配所有的.c文件,所有.c文件列表保存到src变量中(2)$(patsubst PATTERN, REPLACEMENT, TEXT)模式替换函数eg:$(patsubst %.c,%.o,$src) .c的后缀名都替

2020-06-09 22:46:41 312

原创 (P3)Linux开发工具—Makefle上

文章目录1.make与Makefile介绍2.Makefile基本规则3.简单的Makefile编写4.Make自动化变量5.Makefile编译多个可执行文件1.make与Makefile介绍make工具利用make工具可以自动完成编译工作。这些工作包括:(1)如果仅仅修改了某几个源文件,则只重新编译这几个源文件;(2)如果某个头文件被修改了,则重新编译所有包含该头文件的源文件。利用这种自动编译可大大简化开发工作,避免不必要的重新编译Makefilemake工具通过一个称为Makefil

2020-06-08 22:59:33 259

原创 (P15)socket编程(十):close与shutdown ,进一步改进回射客户程序

文章目录eg:前提:socketA调用了close,socketB没有调用closesocketA向socketB传送数据,socketA调用close是关闭了socketA的发送和接收数据这2个方向(即:socketA不能从套接字中读数据和也不能从套接字中写数据)。相当于socketA向B发送了FIN段,socketB收到后,read返回为0,但是这并不意味着socketB不能通过socket向socketA发送数据,仅仅意味着socketA到socketB的数据传送终止了,并不意味着socket

2020-06-07 11:44:53 383

原创 (P14)socket编程(九):select,select函数读,写,异常事件发生条件,用select改进回射服务器程序

文章目录单核CPU是不可以并行处理;select是并发服务器,对于多核CPU而言,select是无法充分利用的,除非使用多进程select,或者多线程select(1)关注前三个对等方发数据过来,填充了套接口缓冲区;对方调用close,返回为0表示对等方关闭;(2)关注第一个大多数时候缓冲区是不满的,会不断产生可写事件;40:41...

2020-06-03 23:51:24 1910

原创 (P13)socket编程(八):五种I/O模型,select ,用select改进回射客户端程序

文章目录一递交读操作,读操作就阻塞了,直到对方有数据到来;将套接口接收缓冲区拷贝到用户空间缓冲区buff中,拷贝完成,recv函数就返回了将套接口设置非阻塞方式fcntl(fd, F_SETFL, flag|O_NONBLOCK)recv函数即使没有数据到来,也不会阻塞,因为把他设置为了非阻塞模式了EMOULDBLOCK:改正为:EWOULDBLOCK忙等待:想等待一定的数据,而这些数据又没有到来,又需要占用CPU时间片,这种等待称之为忙等待不推荐使用这种非阻塞IO模型,应用很窄

2020-06-01 23:28:44 387

xshell6pjb_4614.zip

这是从xshell官网下载的xshell6,非常好用的免费版。里面的exe文件是64bit的,32bit也有下载链接,下载速度很快

2020-09-24

MobaXterm12hanhua.rar

这是一种Linux终端登录软件,版本是Moba12,中文版的,里面可以设置moba的背景颜色,真的很不错哦

2020-06-22

Shell编程ppt[C++教程网cppcourse[1].com].zip

这是C++教程网的Linux入门的相关ppt,如果需要可以看看。我觉得非常不错的哦,ppt很全的。请各位入门Linux敬请想用

2020-05-06

跟我一起学C++.zip

这是C++教程网的和我一起学习C++的ppt和代码,可惜只有1-25节,后面的代码我会持续补充进去。链接:https://blog.csdn.net/u011436427/article/details/105442484

2020-05-06

NetworkProgramming-master.zip

这是C++教程网之网络编程部分的所有代码,代码应该都可以用,大部分代码使用C语言编写。目录:https://blog.csdn.net/u011436427/article/details/105882800

2020-05-06

muduo_server_learn.zip

大并发服务器开发(实战)https://www.bilibili.com/video/av45560719课程的所有ppt和代码资料,里面还有muduo网络库的使用手册

2020-03-12

20+张高清技能图谱.7z

20+张高清技能图谱.7z,包括:区块链,云计算,ios,linux,前端工程师,hadoop家族等等涵盖了所有软件开发的图谱内容

2020-03-02

Docker学习资料总结.7z

这是我研究Dicker一周以来学习的Docker资料的总结,里面包括:namespace,cgroup等对Docker核心原理的认识和理解,还有一些关于Docke自己做的实验

2020-02-08

RF自动化ppt.7z

这是rf自动化的ppt资料,主要包括四个章节:包括接口,Fiddler,RF接口自动化测试,Jmeter测试接口等,

2020-01-07

mingw-w64.7z

需要下载的mingw-w64的链接,他需要配合llvm使用才可以在vs code编译C/C++代码,积分我设置的很低,只为帮助大家,希望大家能喜欢

2019-12-20

vs code能编译代码.7z

需要下载的LLVM的链接,里面还有某乎博主的安装教程的链接,积分我设置的很低,只为帮助大家,希望大家能喜欢

2019-12-20

VS code的linux服务器端的离线安装教程

这是vscode的linux服务器端的离线安装教程,里面还有win10 vscode的client端的config的权限问题的解决办法

2019-11-09

vs code配置文件和工作空间

这是我按照某乎制作的关于c和cpp的配置文件,所有相关配置和工作区都已经建立好了,拿来直接可以用,编译调试都可以!

2019-10-17

Desktop.zip

这里面是idea常用快捷键的操作背景图片,还有Unix进程间通信卷2的资料

2019-10-08

Linux基础课件.7z

这是Linux快速进阶ppt,包含了:从认识Linux,Linux目录,文件,磁盘,网络等各种指令学习,学开发看鸟哥太浪费时间

2019-09-23

个人简历攥写模板.zip

校招/社招个人简历的最佳模板,欢迎各位有志之士下载,么么哒

2019-09-22

understan中文版v926版本的代码设置.lua

这是我使用understan中文版v926版本的代码设置,供程序员们使用,加载方式:工具-选项-风格-导入

2019-09-19

Understand4_0(内置破解器).zip

understan中文版v926版本,供程序员们使用,非常好用,总共两部分,这是第一部分

2019-09-07

Scientific.Toolworks.Understand.v4.0.811.Incl.Keygen-AMPED.zip

understan中文版v926版本,供程序员们使用,非常好用,总共两部分,这是第二部分

2019-09-07

C++函数库和Linux函数库.zip

这是Linux C语言的库函数和C++标准库函数的.CHM文件,供想深入学习的人学习

2019-08-24

googletestnew.7z

这是我根据googletest测试框架,做的单元测试案例,希望你能喜欢,都能跑!

2019-08-13

ccsetup560.zip

这是我从纯英文的cclean官网上找来的最新的免费版本的cclean,版本是v5.6,供大家下载

2019-07-20

cclean pr密钥.txt

这是2019的cclean pro的密钥,具体的使用方法参考里面的文档,应该不会涉及到版权问题

2019-07-16

嵌入式开发企业直通课2.1.pdf

这是嵌入式开发的努力方向总结,主要是来自某课堂资源

2019-06-03

CPP面试题集锦.doc

这是一份来自2018年秋招的,关于CPP问题的总结,平时有空就多看看

2019-06-02

linux C一站式编程课后答案汇总

linux C一站式编程课后答案汇总,供广大同学使用,大部分的答案已经给出

2019-04-22

关于推荐系统和大数据的研究报告

合工大硕士的电子与通信专业的前沿课程的老师要求写,我写好了一份,供以后的师弟师妹们食用

2019-03-24

kali中安装burpsuit profession脚本工具

kali中安装burpsuit profession脚本工具,一件安装方便使用;支持 Linux和WIndows

2024-01-20

划词翻译v8.7.6用于Chrome和Edge

划词翻译v8.7.6用于Chrome和Edge

2022-09-06

vscode的remote ssh中需要的ubuntu服务器中的sshd配置文件

客户端:win10,服务器端:ubuntu,使用vscode免密登录ubuntu时,会需要到的sshd配置文件

2022-06-19

postgresql数据库插件PG-Strom中Scan算子执行流程分析

postgresql数据库插件PG-Strom中Scan算子执行流程分析; 资源中的.mdj文件请由StartUML软件打开;

2022-03-16

CUDAppt.zip

https://www.bilibili.com/video/BV1kx411m7Fk?p=2&spm_id_from=pageDriver对应的CUDA教程PPT课件

2021-12-28

postgres.zip

pg11源码

2021-11-25

PostGreSQL资料.zip

PostGreSQL资料.

2021-11-25

Downloads.zip

C /C++常见面试题和简历模板

2021-06-26

ant-learn-python-concurrent-main.zip

python并发编程的一些资料

2021-05-24

Linux函数手册等.zip

Linux函数手册等.zip

2021-04-18

cpptools-osx.vsix

这是我找到了的cpptools-osx.vsix资源,是用在离线安装在vs code中的拓展包,可以用来查找定义,查找引用,但是得和https://blog.csdn.net/u011436427/article/details/103382737进行配合,安装完毕后,下载这个网站的链接,用链接后的完整扩展包替换离线安装的包即可

2019-12-05

VSCode Cpptools最新版1.40.2版本.7z

能连接微软的相关网站,从github上更新离线vs code扩展包的结果就是,扩展包安装完毕,却不能完全使用。 eg:C/C++ IntelliSense, debugging, and code browsing(VSCode Cpptools)内网条件下,依赖包可能不能更新完全,代码的跳转等功能不能使用,这是扩展包C/C++ IntelliSensese的问题,所以我在家下好也测试好了,该扩展包绝对可用!

2019-12-04

VSCode Cpptools.7z

我将VSCode Cpptools的相关所有依赖包以及我的VSCode Cpptools完整扩展包上传了,如果你缺少什么就加什么,也可以将这些包分别全加进行,参考我的完整扩展包即可,若还是不行,可以将我的完整扩展包替换掉你原来的扩展包,ps:我没试过!!!

2019-12-04

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除