Some current topics Recent OS research and development tends to centre around distributed systems and large scale networks, but not exclusively. What follows is a personal selection of some recent topics presented at the Workshop on Hot Topics in Operating Systems. These topics are from HotOS ’03, as the ’05 proceedings are not yet publicly available.
Why events are a bad idea (in high concurrency servers) by R. von Behren, J. Condit, E. Brewer. Event-driven programming is very widely used (e.g. X server, CGI programming, distributed systems in general), and is widely advocated as the paradigm of choice for highly concurrent systems. This paper argues that good old-fashioned threads are simpler, have less overhead, and work better. The demonstration goes via a user-level thread library (recall discussion earlier), which makes some relatively modest improvements to traditional threads.
TCP Offload is a dumb idea whose time has come by J. Mogul. TCP is the protocol used at the transport layer for the vast majority of Internet traffic. As such, computers spend a lot of resource executing it. As with I/O, one might expect that this computation could be offloaded from the CPU. Historically, this has not been shown to be effective. This paper argues that in a context where dedicated inter-storage channels (such as SCSI or Fibre Channel) are being replaced by gigabit(+) Ethernet, and DMA needs to be extended to RDMA (Remote DMA), offloading TCP is worth the effort.
Scheduling and Simulation: how to upgrade distributed systems , by S. Ajmani, B. Liskov, L. Shrira. How do you upgrade the software on a distributed system comprising many nodes, which may or may not be up, without taking the whole system down? This paper proposes a system for scheduling such upgrades among the nodes, in such a way that persistent state survives upgrades, and the system continues to work during the (possibly long) upgrade process, when different nodes are running different versions.
POST: A Secure, Resilient, Cooperative Messaging System by A. Mislove et 9 al.(!) This paper presents a messaging infrastructure (for email, IM, calendars, shared whiteboards etc.) that uses no centralized server, but rather uses P2P techniques among the participants’ desktop computers.
Cosy: develop in user-land, run in kernel-mode by A. Purohit, C.P. Wright, J. Spadavecchia, E. Zadok. Most communication (Web, FTP, email) involves transporting large amounts of data between userspace and the kernel device drivers, wasting a great deal of time. Some applications (e.g. ls ) make very many small system calls, giving high context-switching overhead. Cosy is an extended GCC which allows segments of code to be marked as compounds . These are then (via a new system call) executed in kernel space. To make this safe, a number of static and dynamic checks are made on the code, as well as techniques such the use of a separate segment. (However, it’s not completely safe; we wouldn’t run it here!)
Certifying program execution with secure processors by B. Chen, R. Morris. This paper presents the design of a secure processor for applications such as copy protection, remote execution, etc. The processor trusts itself and its on-chip cache, but nothing else (not even memory). It is built in to a tamper-resistant package. The user provides encrypted or signed data to the CPU; the CPU encrypts or signs all data sent to memory. The user can run any code, but the processor reports whether it’s running trusted code.
Towards a semantic-aware file store by Z. Xu, M. Karlsson, C. Tang, C. Karamanolis. “Traditional hierarchical namespaces are not sufficient for representing and managing the rich semantics of today’s storage systems. In this paper, we discuss the principles of semantic-aware file stores. We identify the requirements of applications and end-users and propose to use a generic data model to capture and represent file semantics. A distinct challenge that we face is to handle dynamic evolution of the data schemas. Further, we outline a framework of basic relations and tools for generating and using semantic metadata. The proposed data model and framework are aimed to be more generic and flexible than what is offered by existing semantic file systems. We envision a range of applications and tools that will exploit semantic information, ranging from personal storage systems with features for advanced searching and roaming access, to enterprise systems supporting distributed data location or archiving.”
Recommend
More recommend