w h y ? y o u a r e h e r e ?

hook的并发症可以理解成一个有意思的问题,假如地址 addr1 上有一个函数func1,长度为len, 将这个函数 整体换一个位置,挪到 addr2, 移动之后的函数成为func2 1memcpy(addr2 ,addr1,len ); 原来调用 func1 语法是: 1func1(arg1 , ...
Read more »

常见的网络游戏同步模型何为网络同步,通俗点讲,就是在一个网络游戏里有玩家A和B同框,当A释放了一个技能,状态发生了变化,B又是如何及时表现A的当前状态的呢,就是通过网络同步技术。不同的同步模型,目的都是为了保持每个客户端的状态一致,而一般客户端的初始状态是相同的,不同的同步模型采用不同的方式,其实就 ...
Read more »

火焰图 wiki火焰图的每个框代表一个栈里的一个函数,燃烧在火苗尖部的就是CPU正在执行的函数 纵轴代表调用栈的深度(栈桢数),火焰顶端显示正在运行的函数,这之下都是调用者。在下面的函数是上面函数的父函数 横轴代表消耗的时间,因为调用栈在横向会按照字母排序,并且同样的调用栈会做合并,所以一个格子的 ...
Read more »

CSAPP 机器级表示汇编 两个抽象 硬件 指令集 ISA 的抽象 虚拟内存 大数组 汇编与高级语言的区别 暴露的可操作 程序计数器 rip 条件寄存器 整数寄存器 ATT 汇编与 intel 汇编区别 intel 省略了 指示大小的后缀 Intel省略了 寄存器前的 ...
Read more »

那些年我们追过的网络库 为什么要用 C++ 编写服务端程序?如果说答案是性能,那么肯定有人会满不在乎。觉得性能不够的话, 只要加机器就可以了。 然而更少的机器,意味着更低的能耗,更少的硬件投入,更少的人力资源投入去维护机器。总而言之,更低的成本。 肯定会有人说,C++的开发速度太慢了。然而这并不是绝 ...
Read more »

概述对于大型的工程项目,依赖许多人的配合,包含大量不同的代码库与服务,有的我们能够访问程序的源代码,有的可以访问程序的可重定位文件,有的可以访问到可执行文件及其环境,假如我们想在在不同的层面改变或者添加一些逻辑,操作系统、编译器以及程序语言、代码库等都提供了 一些机制使得 开发者可以 方便的 增加或 ...
Read more »

天问一号发射 卫星发射时间表 时间表在网上有很多,善用搜索基本找是没什么问题.微博上关注了一个圈内的小姐姐,更新时间和信息都比较及时. 论坛 http://www.spaceflightfans.cn/china-launch-schedule 微博 https://weibo.com/l ...
Read more »

Linux中的段Intel 微处理器的段机制是从8086 开始提出的, 那时引入的段机制解决了从CPU 内部16 位地址到20 位实地址的转换。为了保持这种兼容性,386 仍然使用段机制,但比以前复杂。因此,Linux 内核的设计并没有全部采用Intel 所提供的段方案,仅仅有限度地使用了一下分段机 ...
Read more »

why位置信息在软件以及显示生活中有了越来越多的应用,比如微信里面附近的人,很多游戏里面也加入了地理位置的玩法,让玩家与玩家有更多的互动,提高黏性。 假想这样一个需求:玩家获取附近的人,一起开黑或者某些社交软件获取附近的人交友或者交流,需要怎么实现,假定该软件的使用者比较多。 本身学过一些硬件、传感 ...
Read more »