跳过正文

Posts

2019

写在毕业一年之后

·3 分钟
转眼毕业一整年了,是时候做一个复盘了。 依稀记得刚入职的时候leader提醒我要有职业规划时的场景。总体来说,这一年虽然没有完全走在最正确的路线上,但是大方向应该没有太偏。

迁移博客到hugo

·1 分钟
发现工作之后更新博客的频率低了很多,以及迫于不想在自己维护服务器了,因此决定把博客迁移到hugo上。

【施工中】 halide学习笔记

·3 分钟
**Halide is a programming language designed to make it easier to write high-performance image and array processing code on modern machines. ** # halide有两个特性比较吸引人。一个是对于各种平台架构的支持。

【施工完毕】MIT 6.828 lab 2: Memory Management

·17 分钟
2019年2月24:完成了除了"Challenge"以外的全部练习和问题. 总共花费15个小时. # 2019年2月26:完成"Challenge 2"(应该是最简单的一个orz,只花了不到一个小时) # Part 1: Physical Page Management # 操作系统必须时刻追踪哪些物理内存在使用,哪些物理内存没有在使用。

C语言变长参数

·2 分钟
说起C语言的变长参数,可能听起来比较陌生,因为很少会需要自己实现。不过想一下scanf和printf,参数个数的确是不固定的。

x86 calling conventions

·3 分钟
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 registers or non-volatile registers) How the task of preparing the stack for, and restoring after, a function call is divided between the caller and the callee 调用约定实际上并不唯一

【施工完成】MIT 6.828 lab 1: C, Assembly, Tools and Bootstrapping

·40 分钟
花费了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 | 8+------------------+ <- 0x000A0000 (640KB) 9| | 10| Low Memory | 11| | 12+------------------+ <- 0x00000000 由于8086/8088只有20跟地址线,因此物理内存空间就是2^20=1MB.地址空间从0x00000到0xFFFFF.其中从0x00000开始的640k空间被称为"low memory",是PC真正能使用的RAM。从 0xA0000 到 0xFFFFF 的384k的non-volatile memory被硬件保留,用作video display buffers和BIOS等。

codeforces round 530 div2

·2 分钟
A,B,C:都很简单,不说了。 D:一棵树,给出树的结构,以及从树根到某个深度为偶数的节点的路径和,问能否构造一种所有节点点权和最小的树,输出最小点权和。

codeforces hello 2019

·5 分钟
好久没玩cf了,竟然还能涨分(虽然我用的小号Orz) 三题,D应该是数学+DP…数学实在是忘干净了。。。

2019 to do list

·1 分钟
* <del>Operating Systems: Three Easy Pieces</del> * fluent python * <del>《计算机网络:自顶向下方法》</del> * 《mysql必知必会》 * PC Assembly Language ( for mit 6.828 )

2018

我在公司的服务器上执行了sudo rm -rf /*

·2 分钟
TL;DR * 依靠人的小心谨慎是不靠谱的,人总有失误的时候 * 看了下docker volume的权限机制,貌似是从docker image中继承。 * 写了两个脚本,用来把rm alias到mv,避免手滑 又是一个可以摸鱼的周五晚上,sensespider系统测试了一天,fix了几个Bug,似乎可以发布了。系统一直是部署在了docker中..这几天测试产生了不少结果文件在host的volume中… 看着不舒服,干脆删一下好了

docker network 与 本地 network 网段冲突

·2 分钟
起因: # 公司部署在hk的爬虫服务器突然挂掉了。后来发现只是在深圳办公区无法访问。排查后发现原因是docker的网络(包括docker network的subnet或者是某个容器的ip)与该host在内网的ip段相同,导致冲突。