Here are the papers we've read:
The Spork Operating System was an experimental "network operating system" developed at Magnificent University in some year. The next few paragraphs (taken directly from a Spork paper) describe the key principles behind Spork. Based on those principles, answer the following questions.
The motivation for building a new operating system came from three general trends in computer technology: networks, large memories, and multiprocessors. In more and more research and engineering organizations, computing occurs on personal workstations connected by local-area networks, with larger time-shared machines used only for those applications that cannot achieve acceptable performance on workstations. Unfortunately, workstation environments tend to suffer from poor performance and difficulties of sharing and administration, due to the distributed nature of the systems. In Spork, we hope to hide the distribution as much as possible and make available the same ease of sharing and communication that is possible on time-shared machines.
The second technology trend that drove the Spork design is the availability of ever-larger physical memories. Today’s engineering workstations typically contain 4 to 32 Mbytes of physical memory, and we expect memories of 100-500 Mbytes to be commonplace within a few years. We believe that such large memories will change the traditional balance between computation and I/O by permitting all of users’ commonly-accessed files to reside in main memory. The ‘‘RAMdisks’’ available on many commercial personal computers have already demonstrated this effect on a small scale. One of our goals for Spork is to manage physical memory in a way that maximizes the potential for file caching.
The third driving force behind Spork is the imminent arrival of multiprocessor workstations. Workstations with more than one processor are currently under development in several research organizations, and we expect multiprocessor workstations to be available from several major manufacturers within a few years. We hope that Spork will facilitate the development of multiprocessor applications, and that the operating system itself will be able to take advantage of multiple processors in providing system services.
Some of the interesting features of the kernel implementation are:
Justify your answer and then write a few sentences explaining why you think this was a good or bad idea.
What, if any, is the difference between virtualizing virtualization hardware (i.e., allowing nested virtualization) and virtualizing regular hardware (i.e., providing virtualization in the first place)? Would you consider the turtles project para virtualization? Why/Why not?