logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

linux进程的七种状态

在学操作系统原理的时候,书上都说进程分为5种状态,分别为:新建状态、就绪状态、运行状态、阻塞状态,结束状态他们的转换关系如下图但是查了linux的进程状态之后,发现并不是那么回事,linux进程状态分为7种,分别如下:1、R (TASK_RUNNING):运行状态,即包括了上图中的就绪状态和运行状态2、S (TASK_INTERRUPTIBLE):可中断的睡眠状态,即上图中的阻...

boost asio实现的TCP客户端(同时支持ssl)

因为要开发TCP客户端用于网络通信,用c++来写,要实现跨平台在window和linux都能用的话,自己去封装原始的套接字操作,要兼容linux和window两个平台,有点困难,工作量也不小,于是用了现有的别人封装好的库,boost的asio来封装一个TCP客户端。 boost 的asio是一个优秀的全异步跨平台的网络通信库,不过源码都是用模板来写的,看起来比较吃力。因为通信也有需要用到SSL的情

#网络协议#tcp/ip
基于 gmssl实现的sm2加密(C++)

项目中需要用到sm2加密,在网上搜索了一下相关的库,发现只有openssl和gmssl这两个库可以用,于是基于gmssl库做了封装,gmssl的版本是:GmSSL 2.5.4 - OpenSSL 1.1.0d 19 Jun 2019搞这个库的确要费不少功夫,现在分享出来给需要的人。目前我是用在linux环境中,因此编译成linux动态库,并且屏蔽相关库的头文件和符号,只暴露sm2加解密相关的接口符

文章图片
升级linux c++标准库

最近在自己的虚拟机运行某个项目用到的程序的时候,报错:./yimi_camera_proxy: /lib64/libstdc++.so.6: version `CXXABI_1.3.8' not found (required by ./libexport_cpp_utility.so)./yimi_camera_proxy: /lib64/libstdc++.so.6: version `GLI

openvpn组网技术原理及配置过程(centos服务器/安卓客户端/linux客户端)

最近研究了一段时间的openvpn组网技术,也试着搭建了一个openvpn环境,大概理解了其中使用的一些技术原理,还是记录一下。本篇文章对专业搞网络的人也许用处不大,但是对于初次接触这些技术(比如vpn,代理技术,加密隧道,防火墙,路由,局域网组网)的人还是有一定价值的,便于理清整个vpn组网技术的脉络,也可以在遇到问题的时候自己排查。openvpn是众多vpn种类的一种,是一个开源的产品,也是应

文章图片
#运维
openvpn组网技术原理及配置过程(centos服务器/安卓客户端/linux客户端)

最近研究了一段时间的openvpn组网技术,也试着搭建了一个openvpn环境,大概理解了其中使用的一些技术原理,还是记录一下。本篇文章对专业搞网络的人也许用处不大,但是对于初次接触这些技术(比如vpn,代理技术,加密隧道,防火墙,路由,局域网组网)的人还是有一定价值的,便于理清整个vpn组网技术的脉络,也可以在遇到问题的时候自己排查。openvpn是众多vpn种类的一种,是一个开源的产品,也是应

文章图片
#运维
windows下ini配置文件的读写

最近在看传奇客户端的源代码,里面有对ini文件的读写。特此记录一下使用方法对ini文件进行写操作用到函数BOOLWINAPIWritePrivateProfileStringA(    __in_opt LPCSTR lpAppName,    __in_opt LPCSTR lpKeyName,    __in_opt LPCSTR lpString,    __in_opt...

#windows
windows下ini配置文件的读写

最近在看传奇客户端的源代码,里面有对ini文件的读写。特此记录一下使用方法对ini文件进行写操作用到函数BOOLWINAPIWritePrivateProfileStringA(    __in_opt LPCSTR lpAppName,    __in_opt LPCSTR lpKeyName,    __in_opt LPCSTR lpString,    __in_opt...

#windows
解决window下使用git clone时没有提示输入用户名密码认证的问题(gitlab使用https协议)

最近在我的windows电脑上,使用了一个新的gitlab账号去拉取新建的git project代码,使用git clone xxxx.git 的时候直接提示找不到项目或者该账号没有权限查看,连提示输入用户名密码验证的步骤都没有,很纳闷,这个项目就是我自己在网页端建的,不可能不存在或者没有权限,在网上找了下原因,原来是 window保存的凭据在作怪。因为之前用其他同事的账号在gitlab上拉过其他

#git
到底了