Posts
2019
x86 calling conventions
·1255 words·3 mins
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
花费了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等。
【施工中】MIT 6.828 Operating System Engineering 学习笔记
课程主页
这课稍微有点硬核…感觉基础稍微有些不扎实就做不下去orz.
codeforces round 530 div2
·651 words·2 mins
A,B,C:都很简单,不说了。
D:一棵树,给出树的结构,以及从树根到某个深度为偶数的节点的路径和,问能否构造一种所有节点点权和最小的树,输出最小点权和。
2019 to do list
* <del>Operating Systems: Three Easy Pieces</del> * fluent python * <del>《计算机网络:自顶向下方法》</del> * 《mysql必知必会》 * PC Assembly Language ( for mit 6.828 )
2018
我在公司的服务器上执行了sudo rm -rf /*
TL;DR
* 依靠人的小心谨慎是不靠谱的,人总有失误的时候 * 看了下docker volume的权限机制,貌似是从docker image中继承。 * 写了两个脚本,用来把rm alias到mv,避免手滑 又是一个可以摸鱼的周五晚上,sensespider系统测试了一天,fix了几个Bug,似乎可以发布了。系统一直是部署在了docker中..这几天测试产生了不少结果文件在host的volume中… 看着不舒服,干脆删一下好了
docker network 与 本地 network 网段冲突
起因: # 公司部署在 hk 的爬虫服务器突然挂掉了。后来发现只是在深圳办公区无法访问。排查后发现原因是 docker 的网络(包括 docker network 的 subnet 或者是某个容器的 ip)与该 host 在内网的 ip 段相同,导致冲突。
记一次在 docker compose 中使用volume的踩坑记录
现象: # 使用docker compose 挂载 named volume 无效(且没有错误提示)
How to use Scrapy with Django Application(转自medium)
在 medium 上看到一篇很赞的文章……无奈关键部分一律无法加载出来,挂了梯子也不行,很心塞。刚刚突然发现加载出来了,以防之后再次无法访问,所以搬运过来。
golang 学习笔记
先放资料,可能比较侧重于go在系统调用方面的内容.
这里不会记录详细的go的语法,只会记录学习的过程,踩到的坑,以及其他我认为值得记录的内容.
spring 学习笔记
迫于生计,又要从零开始学习spring.
在这篇文章之前,对java的基础是2015年写过一个java大作业,对spring是一无所知。
codeforces 501 B. Obtaining the String
·468 words·1 min
题目链接:http://codeforces.com/contest/1015/problem/B