4月12-16号,我在荷兰Amsterdam参加EuroSys会议,主要参加我老板负责的Doctoral Workshop,从中学到真的关于计算机系统的知识,在此做一个总结。
总体印象:
1. 我对系统的理解还停留在入门阶段,我欠缺的知识包括:(1)系统发展的历史,包括各种定义的理解,设计哲学的优劣,例如hyptervisor, microkernel, exokernel 等的定义和各自优劣,背后设计的道理,都不是太了解,需要花一定的时间去夯实这些概念。
2. 专注,然后问题,然后就能很快地弄懂别人在干什么。科研的领域已经很细分了,同是系统领域,不同的研究小组做的东西完全不一样,如果没有背景知识,很容易就会迷糊,很难搞懂。一个很有用的策略就是,上前问问题,等到poster session, 那是学习的黄金机会。
3. 系统的研究大多都是在把OS的职责转移到其他层去,要么往下转,通过硬件来加速;要么往上转,把职责扔给应用程序,以实现更大的灵活性。(Some responsibility are delegated to hardware. The others are shifted to the application layer). [Need to talk to Angela about this idea]
4. Apple mac 4-digit password is too simple. Easy to crack. Not able to protect system safety.
会议记录
我被问到的回到得不好的问题:
1. how do you handle IP conflicts in VM fork? (need to discuss with Eyal)
broken the responsibility. packet forwarding?
2. 老板一般在什么会议上发文章?这个对其他组的人介绍我老板有帮助,我查了一下,他主要在 EuroSys, ICSSC, mobileSys, HotMobile, HotCloud, SOSP, MobileHCI, 上发文,研究领域从从前的网络、移动到现在VM. 但是他对系统的知识了解得很全面,而且他理解得很快,一下子就抓到要害。
3. VM fork latency. How long does it take to fork a VM?
我的回答是 40 秒左右,我需要去认真地去查一查这个数据。
4. 改了 domU 来做什么?
5. xen 到底有什么内部结构?
其他人做的研究
1. Sim**on Pet*er
Generally, optimizing I/O throughput by getting rid of the OS stack.
Motivation:
1. Disk speed has generally changed. It becomes faster. New flash memory is available.
2. Key-value store are new types of storing operations. The read/write for key-value store can be optimized, put/get? Develop new primitives (put/get) for file systems?
disk speed from 5-6 ms -> 100 us, but CPU speed does not change.
In a more dramatic world, disk speed is as fast as memory, it needs a completely new computing paradigm for that.
POSIX file system abstraction are expensive. (How?)
propose LibFS to solve this problem.
2. Stoney Brook University group
libOS for better security.
Problem: how to allocate a PID for different libOS?
3. Peng Wang's talk: assumption: random reads are expensive in SSD.
4. Baidu SSD paper: opening/exposing new chanels for applications. to have higher responsibility.
How it looks like is this: you have many devices handle there, like /dev/sd1, sd2, .,.. then
Q; How do you calculate the weight of operations?
在levelDB 里计算好这个weight, 然后会传下来。
所以, 他们优化的是在levelDB下的存储层。
只有在baidu 里才用到。
5. SSD: 150 req/s
6. TESLA: assertions: how to generate assertions in the program to automatically improve the security?
technique: dynamic instrumentation. by using compiling technique.
7. Marius from ?? (probably Germany?)
Remote DMA. 他们用他们自己的protocol, 不用tcp/ip.
目的是为了,同一网络内的read/write.
8. NUMA: turned on -> kernel live patches.
This feature comes since 2006. RHL is doing this.
9. ELKVM: process governance for fun & profit.
It is a profiling tool, to see what system calls are issued from apps. VM monitoring?
How they do: intercept the sys_call in the KVM hypervisor to get the stats.
10. Author from TU Brunsweg: Replicating object Checksum
innovation: have a cross-checksum across the replicas to ensure
reliability.
needs the compiler support.
11. Xia**oz**hu L**i (Princeton)
optimized concurrent cackoo hashing
concurrent writes. \
change from bread-first search to empty slots.
12. Sebas****tian from TU Darmstadt:
cost-aware multi-cloud network support
existing approach: the node is unaware of the cost of network. Their approach adds a coodrinator node, MCCAF.