Recent Changes - Search:

PmWiki

pmwiki.org

edit SideBar

OperatingSystem

The referees' comments in response to our recent TACO submission have prompted me to open a discussion of Operating System options for Jamaica. I can think of 3 significant issues to consider:

1) Do we need a full OS on Jamaica, or do we envisage it as having a conventional front-end processor?

2) Do we want to multiprogram on Jamaica?

3) Do we want Virtual Memory on Jamaica?

Here are my (CCK's) (rather hastily considered) thoughts on these questions. Please feel free to add others ....

1) I don't want to worry about a whole load of boring issues and would be very happy to have a

   conventional front-end processor. I envisage Jamaica as a parallel compute-server, rather than an
   entirely general purpose machine. Certainly that should be sufficient to prove the usefulness of the
   parallelisation techniques, etc. However we still need to consider in detail what the interface
   will be between the front-end and the Jamaica system. That itself will throw up some questions.
   To me this isn't a matter of principle, just pragmatics. When we have demonstrated that Jamaica is
   the way to build processors, we can look at absorbing those functions that we now delegate to the
   front-end; in the meantime, they are not important.

2) Although it is our goal to demonstrate speed-up of individual applications, it seems inevitable

   that multiprogramming should happen - and that we should cater for it. In doing this, note that
   separate processes share the JVM, rather than each having their own. It is just that now we have
   more than one process-initiating thread. Memory allocation is also shared - and probably garbage
   collection should be concurrent. Top-level scheduling probably needs the same sort of information
   about the loading of the system as other parts of the adaptive system ....

3) I put VM last because it is clear that the answers above seriously affect the context in which

   to consider this question. I think the answer is that we DO want some way of over-allocating 
   memory, and of freeing-up rarely used memory, and therefore there is a use for VM. But it is not
   related to separating memory spaces between threads, or even processes.
Edit - History - Print - Recent Changes - Search
Page last modified on October 25, 2005, at 02:19 PM