总结与展望

本文利用用户态中断机制在微内核中设计了一套异步IPC框架,在频繁IPC调用下几乎无需内核转发,并基于异步IPC框架对系统调用也进行了异步化改造,从而设计了一个异步的高性能微内核,经测试,异步IPC将IPC的性能提升了3x,在IPC频繁的系统中(如网络服务器)将系统性能最高提升1x。

本文提出的异步IPC和异步系统调用主要是为了提升高频度、上下文无关的IPC和系统调用请求的整体处理性能,因此在并发度高的系统中拥有卓越的表现,此外,在并发度低的情况下,我们仍然通过用户态中断这种开销相对较小的方式来取代特权级切换,从而在一定程度上弥补了引入异步运行时带来的额外开销。然而我们仍然可以看出,在并发度较低的场景下,我们的运行时开销仍然会导致性能略低于同步,在未来,我们期望用硬件实现异步运行时中的频繁操作(如fetch、wake等),从而尽可能消除运行时对性能的影响,在低并发度的情况下也能取得良好的性能。