[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[MirageOS-devel] some things that look related to bits of mirage

  • To: mirageos-devel <mirageos-devel@xxxxxxxxxxxxxxxxxxxx>
  • From: Richard Mortier <Richard.Mortier@xxxxxxxxxxxxxxxx>
  • Date: Fri, 3 Oct 2014 16:15:15 +0100
  • Accept-language: en-US, en-GB
  • Acceptlanguage: en-US, en-GB
  • Delivery-date: Fri, 03 Oct 2014 15:21:51 +0000
  • List-id: Developer list for MirageOS <mirageos-devel.lists.xenproject.org>
  • Thread-index: Ac/fHNiNJq4lJ5igRbmMtQooB2Nqog==
  • Thread-topic: some things that look related to bits of mirage

from the TRIOS OSDI workshop programme...


We introduce Fracture, a novel framework that transforms and modernizes the 
basic process abstraction. By “fracturing” an application into logical modules, 
Fracture enables powerful and novel run-time configurations that improve 
run-time testing, application availability, and general robustness, all in a 
generic and incremental manner. We demonstrate the utility of fracturing via 
in-depth case studies of a chat client, a web server, and two user-level file 
systems. Through these examples, we show that Fracture enables applications to 
transparently tolerate memory leaks, buffer overflows, and isolate subsystem 
crashes, with little change to source code; through intelligent fracturing, we 
can achieve low overhead as well, thus enabling deployment.


Traditionally, applications use sockets to access the network. The socket API 
is well understood and simple to use. However, its simplicity has also limited 
its efficiency in existing implementations. Specifically, the socket API 
requires the application to execute many system calls like select, accept, 
read, and write. Each of these calls crosses the protection boundary between 
user space and the operating system, which is expensive. Moreover, the system 
calls themselves were not designed for high concurrency and have become 
bottlenecks in modern systems where processing simultaneous tasks is key to 
performance. We show that we can retain the original socket API without the 
current limitations. Specifically, our sockets almost completely avoid system 
calls on the "fast path". We show that our design eliminates up to 99% of the 
system calls under high load. Perhaps more tellingly, we used our sockets to 
boost NewtOS, a microkernel-based multiserver system, so that the performance 
of its network I/O approaches, and sometimes surpasses, the performance of the 
highly-optimized Linux network stack.



Attachment: signature.asc
Description: Message signed with OpenPGP using GPGMail

MirageOS-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.