Missing You


  • 主页

  • 分类

  • 时间线

  • 标签

  • 关于

  • 链接

  • 搜索

搭建饥荒专属服务器

发表于 2019-04-03 | 分类于 Game

喜欢玩饥荒的朋友可能都知道,朋友在他的电脑上开一个服务器,你就可以加进去玩,那为什么需要专有服务器呢?原因很简单:家用电脑的性能和网络都不是很 OK(如果你的计算机性能和网络都不错,那就不需要专有服务器,除非你想有一个一直不关闭的服务器,让小伙伴在你下线的时候也能玩)。因为饥荒需要大量的即时演算,可能 1 个人自己玩还能勉强可行,一旦人多就卡出天际。网络也是一方面,作为服务器的电脑需要有不错的上行带宽,而运营商给的上行一般都很低。所以为了和小伙伴愉快地玩耍,我们要搭建一个专属服务器。

阅读全文 »

我需要内核源码

发表于 2019-04-02 | 分类于 Translate

我们可能经常会用到 Linux 内核源码,因此 CentOS 在仓库里提供了内核源码的支持。本文是 CentOS 官网的 HowTos,介绍了如何在 CentOS 里方便地下载内核源码。最初由 JohnnyHughes 创建了该 HowTos,现在由 AlanBartlett and AkemiYagi 维护。

阅读全文 »

关于除数为常量时的快速取余的更多乐趣

发表于 2019-04-01 | 分类于 Translate

在编程中,编译器经常会把除法优化掉,取而代之的是耗时更低的指令,尤其当除数为常量时。我最近写了一些关于除数为常量时的快速取余的内容(译注:翻译内容在 这里)。我有提到如果直接算出余于是非常有效的,而不需要先计算商(就像是除数为常量时编译器做的那样)。

阅读全文 »

除数为常量时的快速取余法:优于编译器优化和libdivide

发表于 2019-03-31 | 分类于 Translate

现代处理器的所有指令耗时并不相同。加法和减法比乘法耗时少,而他们都比除法耗时少。因此,编译器经常将除法替换成乘法。大致来讲,它就是这样工作的。假设你想要用一个常量 d 去除一个变量 n,你可以得到这样一个等式 n/d = n * (2^N/d) / (2^N)。而如果我们使用无符号证书的话,除以 2 的次幂(/ (2^N))可以实现成右移操作,这就编译成一条指令了:因为底层硬件使用 2 进制。因此,如果我们把 2^N/d 事先算出来,就可以使用一次乘法和一次移位来计算 n/d。当然,如果 d 不是 2 的次幂,2^N/d 可能算出来的不是整数。但是只要 N 足够大1,我们就可以近似认为 2^N/d 是一个整数,并能准确计算范围内所有可能的n的余数。我相信所有的带优化的 C/C++ 编译器都会使用这个把戏,无论什么处理器架构,这通常都有用。

  1. N 是多少?如果被除数 n 和 除数 d 都是 32 位无符号整数,那你可以选择 N = 64。但这不是最小的可能值。最小的可能值在 我们论文 的第二个算法里给出了,但是有点数学化(注:论文中的符号和这篇博客里不太一样,N 变成了 F)。 ↩

阅读全文 »

多线程漫谈:走向并发的世界,一步一个脚印

发表于 2019-03-30 | 分类于 Translate

现代计算机具有一次执行多个操作的能力。得益于硬件的精进以及更加聪明的操作系统,这个特性会让你的程序跑得更快,无论是执行速度还是响应速度。

阅读全文 »

Tox: 点对点即时通信

发表于 2019-03-29 | 分类于 Tools

Tox 是一个点对点的即时通信协议,也包括一个通过 Opus 实现音频流,通过 VP8 实现视频流,并使用基于 NaCl 进行开发的 libsodium 加密库进行加密。

阅读全文 »

Citra: 一款 3DS 模拟器

发表于 2019-03-28 | 分类于 Game

世面上有很多游戏主机模拟器,比如像街机模拟器 MAME、NES 模拟器 Fceux,以及我们今天介绍的 Nintendo 3DS 模拟器 Citra 等等。他们中的一些是为了怀旧,比如 MAME 和 Fceux,有了他们,我们可以在电脑上快乐地玩耍几十年前的游戏;也有一些是为了更高清的游戏体验,比如今天介绍的 Citra。

阅读全文 »

IP 所在地查询 -- GeoIP

发表于 2019-03-27 | 分类于 Resourse

通常我们想要知道某个 IP 具体的地理位置,所以网络上出现了很多 IP 地理位置查询的服务,比如我们常用的 cip.cc 和 ipip.net 等。当我们想要在项目中使用时,通过 HTTP 查询的方式就不可行了,因为这通常是这些网站提供的收费服务。比如 ipip.net,其免费 API 每秒最多 5 次请求。

阅读全文 »

多余的话

发表于 2018-10-11 | 分类于 ShakeLike

瞿秋白

阅读全文 »

Linux 系统上程序的退出码

发表于 2018-09-19 | 分类于 Linux
退出 含义 例子 注释
0 正常退出 echo “hello” 正常
1 普通错误 df -abcd  
2 shell内建的错误 empty_function() {} 缺少关键字或命令,或者权限问题
126 调用的命令不可执行 /dev/null 权限问题,或者是不可执行的命令
127 找不到命令 not_command 可能命令不存在,或者未加入环境变量$PATH中
128 无效的退出码 exit 6.18 exit只接受整型退出码
128+n 致命的信号n kill -9 $PPID of script 返回137(128+9)
130 被Ctrl-C终止 Ctrl-C Ctrl-C是错误信号2,(130=2+128)
255* 退出状态超过范围 exit -1 exit只接受0 ~ 255范围的退出码
阅读全文 »
1 … 5 6 7 … 9
Angela

Angela

87 日志
11 分类
94 标签
RSS
GitHub Twitter
© 2021 Angela
由 Jekyll 强力驱动
主题 - NexT.Mist