logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

多人网络游戏服务器开发基础学习笔记 II: 帧同步 | 游戏客户端预测原理分析 | FPS 游戏状态同步

这篇是对书本 网络多人游戏架构与编程 的学习第二篇,内容还是以基础为主。第一篇主要是讲解了网络多人游戏的一些最基础的知识。同时因为一些点书本内容太简略,所以参照学习了 GDC 2017 守望先锋对 ECS 架构涉及和网络同步的视频分享结合讲解加深理解。尝试提供所有必要基础知识理解游戏客户端预测(但是只是基础角度的分析,有需要深入学习的时候直接看视频)。对于守望先锋 ECS 架构部分这里不涉及,那部

文章图片
#服务器#网络#架构 +2
游戏开发基础笔记:逻辑帧和物理帧辨析 | Gameloop | 游戏循环

显卡帧,物理帧(渲染帧),逻辑帧(轮)辨析首先显卡帧是指显卡接口输出的采样时间,这个理论采样时间无限短?但是由于物理信道线材的限制,传输是带通/低通信道,所以实际受限于接口和线材的带宽,所以才有 30帧 60 帧的限制,这个实现是通过采样 frame buffer 然后给绘制出来。而且由于并不能并行传输(指并行16亿bit)所以显示器必须用扫描的方法显示像素。逻辑帧是每秒进行物体对象状态更新的计算

文章图片
#游戏#游戏开发
C++20 coroutine 探索I:co_await 原理 | 使用 C++ 协程写 python generator

时隔三个月,才回到当时说的学协程的坑,中间学了各种各样的东西,起码对现代C++ 有些许了解了。尾递归优化 快速排序优化 CPS 变换 call/cc setjmp/longjmp coroutine 协程 栈编程和控制流 讲解_我说我谁呢 --CSDN博客看这个文章之前可以先复习一下函数式编程里面的 call/cc 的概念,因为 C++20 的 stackless coroutine 就是用类似

文章图片
#c++
C++20 coroutine 探索I:co_await 原理 | 使用 C++ 协程写 python generator

时隔三个月,才回到当时说的学协程的坑,中间学了各种各样的东西,起码对现代C++ 有些许了解了。尾递归优化 快速排序优化 CPS 变换 call/cc setjmp/longjmp coroutine 协程 栈编程和控制流 讲解_我说我谁呢 --CSDN博客看这个文章之前可以先复习一下函数式编程里面的 call/cc 的概念,因为 C++20 的 stackless coroutine 就是用类似

文章图片
#c++
从无到有构建计算机网络

本学期网络课程使用自底向上的思路学习, 如果思考为什么要做这个东西, 也就是需求的话, 还是要用自顶向下的方法分析. 但是做的时候又要自底向上一层一层建起来的, 有时候又会发现, 有些下层的东西, 又恰好是根据上层的应用才修改的. 只能说两种思路会促使不同角度看问题. 这些总结我希望以自底向上的方法来写, 最后再写一个自顶向下的串起来回顾. 自底向上也能帮助了解更多历史上的设定.由于要传输数据,

文章图片
数据库系统期末复习II: 查询算法实现 | 聚合 | 排序 | 连接

前情提要,上回数据库系统期末复习I:数据库存储与索引技术_我说我谁呢 --CSDN博客 复习完了DBMS存储模型的内模式的实现,包括怎么存储 records,不同的索引实现的数据结构算法以及不同的适用情况。本文聚焦数据库系统中的查询算法。由于 point query 太简单,在上一篇里面就讲完了,这里主要讲解的是 join,aggregation,order by 的实现算法。位置(数据库系统基本

文章图片
#算法#数据库#database
io_uring 使用教程| io_uring 完全指南 | io_uring 实践指导 | io_uring 资料参考

io_uring 完全指南地图背景io_uring 是 2019 年做的,与 kernel 5.1 发布。后续打了很多补丁,比较重要的在 2020年5月之后基本达到了一个很好的可用性。学习这个东西和学习 epoll 系列的、学习 UNP 和 linux 网络编程其实没有什么区别,都是利用已有的工具解决问题,其实不涉及像学 OS、DBMS、分布式系统等这种系统方向技术上的东西,但是有一些惯常做法还是

#linux
io_uring 使用教程| io_uring 完全指南 | io_uring 实践指导 | io_uring 资料参考

io_uring 完全指南地图背景io_uring 是 2019 年做的,与 kernel 5.1 发布。后续打了很多补丁,比较重要的在 2020年5月之后基本达到了一个很好的可用性。学习这个东西和学习 epoll 系列的、学习 UNP 和 linux 网络编程其实没有什么区别,都是利用已有的工具解决问题,其实不涉及像学 OS、DBMS、分布式系统等这种系统方向技术上的东西,但是有一些惯常做法还是

#linux
在Windows 10 中用 Bash on Windows(WSL) 给 VSCode 搭建 编译调试 C/C++ 环境 (本文已过时)

Windows 10 Creator Update 下的VSCode 支持 WSL *了!*本文参考链接(基础2):GitHub*WSL是 Windows 10 下 的一项功能,全称Window Subsystem for Linux你要提前准备的内容(粗体重要)Windows 10 带有 Creator Update(即创意者更新)WSL(Windows Subsystem for Lin

#bash#linux
io_uring 用法分析 III :liburing 接口及高性能 Polling 机制

Interrupt 方案是节约 CPU ,但是延迟高,因为用户态正在休眠,调度到他需要花费一定时间(Linux 调度算法是用红黑树的完全公平调度 CFS,和以前看 APUE 的函数调用有关,然后主要优先级依据是通过 virtual runtime 归一化比较的,同等物理时间下高优先级的虚拟时间过得慢,所以能调度多一些)。鉴于 NAPI 已经要求网卡驱动实现本身提供 poll 接口给 trap ha

文章图片
#服务器#linux
到底了