As the deceleration of processor scaling due to Moore’s law accelerates research in new types of computing structures, the need arises for rethinking operating systems paradigms. Traditionally, an operating system is a... [ view full abstract ]
As the deceleration of processor scaling due to Moore’s law accelerates research in new types of computing structures, the need arises for rethinking operating systems paradigms. Traditionally, an operating system is a layer between hardware and applications and its primary function is managing hardware resources and providing a common abstraction to applications. How does this function apply, to new types of computing paradigms? Are operating systems even needed for these new structures? This paper revisits operating system functionality for new computing paradigms. The structure of these new computers is uncertain as there are many possibilities such as neuromorphic, bio-inspired, adiabatic, reversible, approximate, quantum, combinations of these and others unforeseen [1]. We do know, however, that whatever these new computers will be, there will be some need to manage their resources, to provide programming support, to partition, scale, and connect them and to deal with (partial) failure, along with other traditional operating system’s functionality. There might also be some new functionality, such as creating abstract control loops, reasoning about precision, new ways of reconfiguring, and more. We strongly believe that even if traditional operating systems functionality evolves, that the need for operating systems will remain in the new era of computing.