The Sonar group, headed by Assistant Professor Michael M. Swift, is an operating systems research group at the University of Wisconsin–Madison. The group has produced a number of publications and software solutions tackling system reliability, emerging hardware and improved OS abstractions. Our home page links to those resources, in addition to news about recent progress and updates.
The infamous Ostrich Algorithm left us with the end-all, be-all solution for our concurrent-programming problems. "Maybe," we say, "if we ignore the problem, the problem will ignore us back." Transactional memory, in a sense, enables us to realize this dream, much like a functioning garden hose enables the human body to slide belly-down across a plastic sheet laid out on the front lawn without the slightest loss of skin. Memory transactions execute in parallel with almost boundless optimism and simply, "try again," when it doesn't work out (e.g. a data race). Where this falls flat is at the output-commit problem; once a network packet has been sent ("Robert, launch the missiles!"), for instance, the transaction can't be undone.
xCalls is Sonar's new transactional system call library, written end-to-end by group member Haris Volos. Through the use of deferrals and compensating actions, the library demonstrates the extent to which the output commit problem can be mitigated without any changes or extensions to OS Kernel code. The code is available on Github, with documentation at sonar/projects/xCalls/documentation. The code is licensed under the GPL.
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.