在steam上买了 BattleBlock Theater, 官方说支持linux,但是却无法启动。
在steam里启动看不到log,于是找到游戏的安装目录。
/home/coder/.steam/steam/steamapps/common/BattleBlock Theater
在终端下启动,报错:
阅读更多系统版本为Manjaro 18.0.3 Illyria
运行文明5比较容易,只需要设置启动选项为:
LD_PRELOAD=/usr/lib32/libopenal.so.1 %command%
文明6运行会报错 undefined symbol: FT_Done_MM_Var
解决办法是 在终端中用如下办法运行steam:
LD_PRELOAD=/usr/lib/libfreetype.so steam
阅读更多**Halide is a programming language designed to make it easier to write high-performance image and array processing code on modern machines. **
halide有两个特性比较吸引人。一个是对于各种平台架构的支持。
* CPU architectures: X86, ARM, MIPS, Hexagon, PowerPC * Operating systems: Linux, Windows, macOS, Android, iOS, Qualcomm QuRT * GPU …
阅读更多2019年2月24:完成了除了"Challenge"以外的全部练习和问题. 总共花费15个小时.
2019年2月26:完成"Challenge 2"(应该是最简单的一个orz,只花了不到一个小时)
Part 1: Physical Page Management
操作系统必须时刻追踪哪些物理内存在使用,哪些物理内存没有在使用。
阅读更多说起C语言的变长参数,可能听起来比较陌生,因为很少会需要自己实现。不过想一下scanf和printf,参数个数的确是不固定的。
stdarg.h 中提供以一套机制来实现变长参数。以及,要说明的是,变长参数不是什么黑魔法,原理依赖于stack frame的结构,具体可以参考x86-calling-conventions 简单来说,由于函数参数入栈的顺序是固定的,**因此一旦我们知道某函数帧的栈上的一个固定参数的位置,我们完全有可能推导出其他变长参数的位置 **
阅读更多x86的调用约定主要说的是这几件事:
* The order in which atomic (scalar) parameters, or individual parts of a complex parameter, are allocated * How parameters are passed (pushed on the stack, placed in registers, or a mix of both) * Which registers the called function must preserve for the caller (also known as: callee-saved …
阅读更多花费了30+小时,终于搞定了orz
Part 1: PC Bootstrap
The PC’s Physical Address Space
8086/8088时代
1+------------------+ <- 0x00100000 (1MB) 2| BIOS ROM | 3+------------------+ <- 0x000F0000 (960KB) 4| 16-bit devices, | 5| expansion ROMs | 6+------------------+ <- 0x000C0000 (768KB) 7| VGA Display …
阅读更多codeforces round 530 div2
2019-01-06 · 2 min readtags:
- dfs
- codeforces
- acm
- ACM
A,B,C:都很简单,不说了。
D:一棵树,给出树的结构,以及从树根到某个深度为偶数的节点的路径和,问能否构造一种所有节点点权和最小的树,输出最小点权和。
阅读更多codeforces hello 2019
2019-01-05 · 5 min readtags:
- codeforces
- dp
- acm
- ACM
好久没玩cf了,竟然还能涨分(虽然我用的小号Orz)
三题,D应该是数学+DP…数学实在是忘干净了。。。
前面三题大体还好,都是1A,不过因为没有提前配置环境。。耽误了一些时间。。。

阅读更多2019 to do list
2019-01-01 · 1 min readtags:
- python
- todo
- 随笔杂谈
* <del>Operating Systems: Three Easy Pieces</del> * fluent python * <del>《计算机网络:自顶向下方法》</del> * 《mysql必知必会》 * PC Assembly Language ( for mit 6.828 )
阅读更多TL;DR
* 依靠人的小心谨慎是不靠谱的,人总有失误的时候 * 看了下docker volume的权限机制,貌似是从docker image中继承。 * 写了两个脚本,用来把rm alias到mv,避免手滑又是一个
可以摸鱼的周五晚上,sensespider系统测试了一天,fix了几个Bug,似乎可以发布了。系统一直是部署在了docker中..这几天测试产生了不少结果文件在host的volume中… 看着不舒服,干脆删一下好了
阅读更多起因:
公司部署在hk的爬虫服务器突然挂掉了。后来发现只是在深圳办公区无法访问。排查后发现原因是docker的网络(包括docker network的subnet或者是某个容器的ip)与该host在内网的ip段相同,导致冲突。
阅读更多现象:
使用docker compose 挂载 named volume 无效(且没有错误提示)
排查过程:
一开始是没有使用docker-compose命令,直接使用docker run -v 命令,挂载两个绝对路径,没有问题。
阅读更多