- 博客(16)
- 收藏
- 关注
原创 华为云TaurusDB性能挑战赛比赛记录
华为云TaurusDB性能挑战赛KV_Store_Engine_TaurusDB_RaceA C++ KV Store Engine (华为云TaurusDB性能挑战赛,司机队,初赛第11名,复赛第26名)[外链图片转存失败(img-mrDC3K2Y-1566637674377)(https://img.shields.io/github/license/mashape/apistatus.s...
2019-08-24 17:09:37 989
原创 Ubuntu16.04 虚拟机环境下搭建DPDK教程
Ubuntu16.04 虚拟机环境下搭建DPDK教程Date:2018年10月29日我的虚拟机硬件环境:2核CPU,2G内存。添加多两块虚拟网卡,在virtualbox或者VMware软件里面设置两块为intel网卡,网卡*3 (网络连接方式:NAT 桥接 桥接)如果是VMware,也可以在配置文件中直接修改:ethernet1.virtualDev = "e100...
2019-03-14 16:03:06 3889
原创 C++多线程网络服务器项目(1)——概述
A C++ High Performance NetServer (version 0.x.0)GitHub项目地址:https://github.com/chenshuaihao/NetServer如果对您有帮助的话,欢迎点赞star哦!谢谢大家!Introduction本项目为C++编写的基于epoll的网络服务器框架,应用层实现了简单的HTTP服务器HttpServer和一个回显服...
2019-02-22 01:49:02 3986 2
原创 2019虎牙C++后台开发实习生面经
本人2021届毕业的C++菜鸡,提前一年感受下面试流程,积累一波经验,在此分享一波虎牙C++后台开发实习生面经,人生第一次互联网公司现场面,激动又紧张。文章同样发在了牛客网上了,链接:https://www.nowcoder.com/discuss/185349?type=2&order=0&pos=24&page=1(4.26)一面(40min):自我介绍...
2019-04-29 12:51:44 2249 1
原创 Effective C++
闲话:C++程序员分为两类:读过Effective C++和没读过的。条款1:视C++为语言联邦过程、对象、泛型、元编程、函数式;对内置类型而言,pass-by-value通常比pass-by-reference高效;对于用户自定义的对象,由于构造和析构的存在,pass-by-reference-to-const往往更好;对于小的用户定义类型,也不一定是pass-by-v...
2019-03-14 16:20:20 2366
原创 现代操作系统 第4章 文件系统
4.1 文件1.扩展名:UNIX中是一种约定,Windows则是可以在操作系统中注册;2.文件结构:1.文件看成字节序列;2.记录序列;3.树;3.文件类型:普通文件、目录文件、字符特殊文件、块特殊文件;普通文件:ASCII文件和二进制文件;4.文件操作:open:把文件属性和磁盘地址装进内存;4.2 目录1.绝对路径和相对路径:从根目录到文件的路径组成、从当前目...
2019-03-14 16:18:14 249
原创 现代操作系统 第3章 存储管理
3.3 虚拟内存每个程序拥有的地址空间被分为很多块,每一块称为一页page,page被映射到物理内存。当程序用到的部分不在物理空间时,产生缺页中断;分页:1.程序产生的地址称为虚拟地址,构成的空间称为虚拟地址空间;地址空间的单元称为页面,在物理内存对应的单元称为页框;2.虚拟地址送给MMU,MMU转换为物理地址;3.页表:本质:虚拟地址到页框的映射;结构:页框号、访...
2019-03-14 16:17:37 256
原创 现代操作系统 第2章 进程与线程
2.1 进程进程:正在执行的程序的实例;进程退出原因:1.正常退出;2.出错退出;(自愿异常处理)3.严重错误;(内存溢出或引用不当、除0、非法指令)4.被杀死;进程层次结构:1.Windows没有层次概念;2.进程和其所有子女组成进程组;进程三态:1.运行态;(占用CPU)2.就绪态;(可运行,等待调度)3.阻塞态;(等待外部事件)进程表(...
2019-03-14 16:16:54 194
转载 gdb使用学习
GDB调试程序一般有三种方式gdb filename gdb attach pid gdb filename corename、1.直接调试目标程序附加程序,然后run起来;2.附加进程调试正在运行的程序;gdb attach pid detach3.调试core文件程序崩溃,产生core文件;ulimit -c查看是否开启产生core机制;使...
2019-03-14 16:14:49 237
转载 Linux内存管理
系统中内存使用情况 cat /proc/meminfo进程的内存使用情况:/proc/28040/status查询进程 cpu 和内存使用占比 top虚拟内存统计 vmstat查询内存总使用率 freehttps://cloud.tencent.com/developer/article/1005671...
2019-03-14 16:10:27 303
转载 网络编程 I/O 模型
一、I/O 模型 阻塞式 I/O 非阻塞式 I/O I/O 复用 信号驱动 I/O 异步 I/O 五大 I/O 模型比较 二、I/O 复用 select poll 比较 epoll 工作模式 应用场景 参考资料一、I/O 模型一个输入操作通常包括两个阶段:等待数据准备好 从内核向进程复制数据对于一个套接字上的输入操作,第一步通常...
2019-03-14 15:58:27 252
原创 网络编程中常见的基础问题
1.服务器执行了listen监听端口,但是不accept或accept失败会怎样?结论:客户端依然可以发数据,服务器收到数据后一样会回应ACK,把数据缓存起来,等下次accept成功后,再read读数据。客户端连接成功后发送数据,此时服务器断点在accept,没有从accept队列取新连接:服务器继续执行,accept新连接,可以看到服务器成功获取了客户端数据并返回610字节的数据...
2019-03-14 15:52:25 337
原创 服务器accept队列溢出及其解决
之前对我的NetServer服务器进行测试,在经压力测试一段时间之后,数据曲线降0,之后所有的连接都连不上,我认为不是服务器挂了就是监听端口出问题了,于是看了下服务器还在运行,端口还在listened(通过命令查看:netstat -ltp),非常奇怪,这说明监听正常,能够进行三次握手的。后来抓包分析,发现三次握手正常建立,但是服务器竟然重传了第二次握手包,总共5次,根据这个现象来看,表面上是...
2019-03-14 15:42:38 3192
原创 Python 通过微信发送邮件实现电脑关机
Python 通过微信邮件实现电脑关机通过手机微信发送QQ邮件给sina邮箱,然后利用python的pop3定时检查sina邮箱的邮件主题以及邮件来源,并在电脑执行相应的命令行实现关机。Email_test【V1.0】import poplibimport osimport timefrom email.parser import Parserfrom email.
2016-09-06 16:18:49 2474
原创 关于fork()函数的一点思考
关于fork()函数的一点思考最近看操作系统的进程部分,对fork()函数的有些疑惑,于是查书本,看博客,花了一晚上时间研究了一下fork()的执行过程,终于有了一些收获。fork()对初学者来说还是比较容易混淆的,特别是当多个fork连着用时。要想弄清楚fork的执行过程,首先要明白fork的重要特性。fork()是一个创建进程的函数,新创建的子进程相当于父进程的一份拷贝,之前的
2016-07-25 11:49:31 396
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人